Modification de matrice

Fermé
Louisgsln Messages postés 1 Date d'inscription lundi 13 décembre 2021 Statut Membre Dernière intervention 14 décembre 2021 - 14 déc. 2021 à 00:16
mamiemando Messages postés 33459 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 janvier 2025 - 14 déc. 2021 à 14:55
Bonsoir,

Je travaille en ce moment sur un projet mais une partie me pose problème. J'aimerais utiliser une matrice (dans ce cas précis nblignes = nblivres dans le fichier texte et nbcolonnes = nb de profil dans le fichier texte) afin de pouvoir la modifier selon une note que j'attribue entre 1 et 5 avec un profil en particulier et sur un livre. J'ai initialisé une matrice 0 selon les différents facteurs mais impossible d'y trouver une suite. S'y jamais quelqu'un aurait quelconque idée je suis preneur !
Bonne soirée .




Configuration: Windows / Chrome 96.0.4664.93

2 réponses

jordane45 Messages postés 38380 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 13 janvier 2025 4 727
14 déc. 2021 à 00:32
Bonjour,

Pour commencer, merci de poster ton code en utilisant les balises prévues à cet effet
Explications ( à lire ENTIEREMENT ! ) disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
0
mamiemando Messages postés 33459 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 janvier 2025 7 813
14 déc. 2021 à 14:55
Bonjour,

Comme le souligne jordane45, sur un forum évite les captures d'écran, qui sont peu pratiques pour tout le monde (et peu écologiques) : mieux vaut copier coller ton code et le mettre en forme avec les balises.

Ensuite concernant ton programme, il y a plusieurs manière de faire.
  • Soit tu veux absolument une matrice car tu as des calculs matriciels à faire, et dans ce cas utiliser
    numpy
    et la classe
    numpy.array
    serait l'idéal. Le problème c'est qu'il faut alors maintenir un dictionnaire qui permet de retrouver un titre/auteur à partir de son index et inversement.
  • Soit tu fais plus simple (et à mon avis c'est largement suffisant dans ton cas) en utilisant une structure de dictionnaire imbriqués. Cela t'évitera de devoir convertir chaque titre et chaque auteur en index, ce qui sera bien plus pratique.


from collections import defaultdict

d = defaultdict(lambda: defaultdict(lambda: 0))
d["title"]["author"] = 1
print(d["title"]["author"])


Bonne chance
0