J'écris un outil pour tracer Wich Word était combien de fois utilisé dans un grand nombre de paroles de Rap Genius.
J'ai déjà extrait dans deux listes: une pour le nom du mot. L'autre pour le montant que le mot a été utilisé. p> Les valeurs du même index sont les paires. Je ne sais pas si c'est le moyen le plus utile, mais c'est ainsi que je peux faire un graphique à barres représentant chaque mot et le comte de celui-ci. Maintenant, je veux le trier par le numéro de comptage le plus élevé.
Si je trace List_Count, je ne peux pas vraiment transférer cela pour rendre le nom de liste de liste dans le même ordre que la liste_count. P> Toute suggestion? J'ai essayé des dictionnaires mais je ne pouvais pas trouver un moyen comment ils étaient utiles. p> p>
4 Réponses :
Vous pouvez créer un tuple, trier par une valeur dans le tuple et obtenir vos listes à nouveau après. Ce n'est pas optimal, mais il suffit
par exemple ils sont vraiment utiles p> p>
Merci! Résolu !
La façon dont vous avez structuré vos données facilitera la tâche difficile d'effectuer cette tâche. Avez-vous envisagé à la place de créer Noreferrer"> Nuples à la place?
Vos données ci-dessus ressemblent à ceci: p> alors, vous pouvez trier la liste ci-dessus comme: p> sorted_by_count = sorted(names_and_counts, key=lambda tup: tup[1])
Vous pouvez créer un tuple à l'aide de vos listes.
[('the', 12), ('I', 23), ('you', 42)]
Liste (zip (list_name, list_count)) CODE> Zips la liste des deux dans une liste de tuples li>
-
np.sort code> Tremples par ascendance (le plus petit au plus grand)
-
[:: - 1] code> inverse le tableau li>
ul> li>
ul> xxx pré> h2>
Merci ! n'a pas essayé de pandas avant
Placez chaque paire dans un conteneur, puis trier à l'aide du conteneur. Un conteneur commun est un tuple, par ex.
("i", 23) code>. Ensuite, vous avez juste besoin de fairetriché (paires, clé = lambda x: x [1]) code>.Comment puis-je trier une liste de tuples par l'un de ses articles?
Voir le message suivant: Stackoverflow.com/questions/3121979/...
FYI: Les questions de réponse minutieuse consomment-elles du temps. Si votre question est résolue b>, dites merci par Accepter B> la solution meilleure pour vos besoins b>. I> le i> le < B> Accepter le chèque B> est sous la flèche haut / bas en haut à gauche de la réponse. Une nouvelle solution peut être acceptée si un meilleur apparaît. Vous pouvez également voter sur la qualité / utilité d'une réponse, avec la flèche haut ou bas, si vous avez une plus grande réputation. Laisser un commentaire Si une solution ne répond pas à la question. B> Que dois-je faire quand quelqu'un répond à ma question? . Merci.