Question des débutants ...
Si possible sans pandas, je voudrais résumer des groupes dans une liste ou un tableau.
Entrée: sortie souhaitée: p> merci! P> p> p>
5 Réponses :
Vous pouvez utiliser ceci: A Suivant, nous ithétons par Nous n'avons besoin que de la convertir en forme que vous souhaitez, à l'aide d'une liste de compréhension. P> p> dict code> ne peut avoir que des clés uniques, donc nous résolvons la moitié des problèmes. Pour démarrer, chaque valeur de chaque touche sera 0. p>
entrée code> et ajoute chaque valeur à sa clé correspondante dans notre
dict code> . Alors maintenant, notre travail est presque terminé. P>
Vous pouvez résumer sur une touche égale à l'aide d'un dictionnaire. Si vous avez vraiment besoin, vous pouvez toujours recréer le résultat à une liste de listes via une compréhension de la liste:
Le d.get (sl [0], 0) code> est excellent, il simplifie beaucoup la boucle! +1
Merci, fonctionne parfaitement!
Je recommanderais d'aller pour un sortie: strong> p> dict code> comme indiqué ci-dessous:
Vous pouvez en faire cela:
from collections import defaultdict sums = defaultdict(lambda: 0) for arr in input: sums[arr[0]] += arr[1] output = [[key, value] for key,value in sums.items()]
Cela devrait fonctionner:
Output = [ [k,sum(a[1] for a in Input if a[0] == k)] for k in set(a[0] for a in Input) ]
Je vous suggère de commencer par avoir un morceau de papier et de crayon et écrivez les étapes que vous devez faire cela. Une fois que vous avez une idée claire dans votre tête, en utilisant l'anglais ou la langue écrite que vous connaissez le mieux, il sera plus facile de le traduire en python.