[PYTHON] Ich möchte eindeutige Werte in einem Array oder Tupel zählen

Was du machen willst

['a', 'a', 'b', 'b', 'b'],[('a', 2), ('b', 3)]ich will Ich möchte nur zwei oder mehr von dort nehmen. SQL scheint einfach zu sein. Ist es etwas, das mit Python allein nicht möglich ist?

Weise

Gemacht mit

[(g[0], len(list(g[1]))) for g in itertools.groupby(array.sort())]

Example

>>> import itertools
>>> array = ['a', 'a', 'b', 'b', 'b']
>>> uniq = [(g[0], len(list(g[1]))) for g in itertools.groupby(array.sort())]
>>> uniq
[('a', 2), ('b', 3)]

Was ich machen wollte

>>> tuples = [('aaa', 'bbb'), ('aaa', 'bbb'), ('aaa', 'vvv'), ('bbb', 'ccc'), ('bbb', 'ccc')]
>>> uniq = [(g[0], len(list(g[1]))) for g in itertools.groupby(tuples.sort())]
>>> uniq
[(('aaa', 'bbb'), 2), (('aaa', 'vvv'), 1), (('bbb', 'ccc'), 2)]
>>>  filter(lambda f: f[1] > 1, uniq)
[(('aaa', 'bbb'), 2), (('bbb', 'ccc'), 2)]

Nur zwei oder mehr wurden herausgezogen.

Referenz

http://stackoverflow.com/questions/2392929/how-to-get-unique-values-with-respective-occurance-count-from-a-list-in-python


Ich habe einen Kommentar zu einer nützlicheren Bibliothek erhalten.

Es gab eine bequemere `` `Sammlungen```

>>> from collections import Counter
>>> tuples = [('aaa', 'bbb'), ('aaa', 'bbb'), ('aaa', 'vvv'), ('bbb', 'ccc'), ('bbb', 'ccc')]
>>> uniq = Counter(tuples)
>>> uniq 
Counter({('aaa', 'bbb'): 2, ('bbb', 'ccc'): 2, ('aaa', 'vvv'): 1})
>>> filter(lambda f: f[1] > 1, uniq.items())
[(('aaa', 'bbb'), 2), (('bbb', 'ccc'), 2)]

collections.Verwenden wir Counter!!



# Referenz
http://docs.python.jp/2/library/collections.html



Recommended Posts

Ich möchte eindeutige Werte in einem Array oder Tupel zählen
Ich möchte den Wörterbuchtyp in der Liste eindeutig machen
Ich möchte eine Pipfile erstellen und im Docker wiedergeben
Ich möchte in der Einschlussnotation drucken
Ich möchte Matplotlib in PySimpleGUI einbetten
Ich möchte Dunnetts Test in Python machen
Ich möchte Datetime.now in Djangos Test reparieren
Ich möchte DB-Informationen in einer Liste speichern
Ich möchte verschachtelte Dicts in Python zusammenführen
Ich möchte den Fortschritt in Python anzeigen!
Ich möchte visualisieren, wo und wie viele Leute in der Fabrik sind
Ich möchte den Dateinamen, die Zeilennummer und den Funktionsnamen in Python 3.4 erhalten
Ich möchte in Python schreiben! (1) Überprüfung des Codeformats
Ich möchte eine Variable in einen Python-String einbetten
Ich möchte Timeout einfach in Python implementieren
Ich möchte mit einem Knopf am Kolben übergehen
Ich möchte mich mit Backpropagation (tf.custom_gradient) (Tensorflow) selbst verwenden.
Ich möchte die Optimierung mit Python und CPlex behandeln
Ich möchte in Python schreiben! (2) Schreiben wir einen Test
Auch mit JavaScript möchte ich Python `range ()` sehen!
Ich möchte eine Datei mit Python zufällig testen
Ich möchte mit einem Roboter in Python arbeiten.
Ich möchte in Python schreiben! (3) Verwenden Sie Mock
Ich möchte R-Datensatz mit Python verwenden
Ich möchte am Ende etwas mit Python machen
Ich möchte Strings in Kotlin wie Python manipulieren!
Ich möchte die Variablen in der Python-Vorlagendatei ersetzen und in einer anderen Datei in Massenproduktion herstellen
Ein Skript, das bis zu 5 Sekunden zählt und in Blenders Python stoppt
Ich möchte Importwarnungen von Pyright und pylint in VSCode entfernen
Ich möchte SUDOKU lösen
Ich habe versucht, die Zeit und die Zeit der C-Sprache zu veranschaulichen
Ich möchte die Effizienz mit Python auch in experimentellen Systemen verbessern (2) RS232C und pySerial
Ich möchte ein englisches Papier aus dem PDF-Format kopieren und in die Google-Übersetzung einfügen
So erhalten Sie alle Schlüssel und Werte im Wörterbuch
[Django] Ich möchte mich nach einer neuen Registrierung automatisch anmelden
Ich möchte die Natur von Python und Pip kennenlernen
[Einführung in Pytorch] Ich möchte Sätze in Nachrichtenartikeln generieren
Ich möchte den EDINET-Code und die Wertpapiernummer zuordnen
Ich möchte die gültigen Zahlen im Numpy-Array ausrichten
Ich möchte, dass Sphinx bequem ist und von allen benutzt wird
Ich möchte Python mit VS-Code ausführen können
Ich möchte eine schöne Ergänzung zu input () in Python hinzufügen
Ich möchte VS Code und Spyder ohne Anakonda verwenden! !! !!
Ich wollte den AWS-Schlüssel nicht in das Programm schreiben
Ich möchte die Ausführungszeit aufzeichnen und ein Protokoll führen.
[Linux] Ich möchte das Datum wissen, an dem sich der Benutzer angemeldet hat
Ich möchte Rails mit Rails auch in einer vagabundierenden Umgebung betreiben
LINEbot-Entwicklung möchte ich den Betrieb in der lokalen Umgebung überprüfen
Ich möchte sowohl den Schlüssel als auch den Wert des Python-Iterators verwenden
[Python / AWS Lambda-Ebenen] Ich möchte nur Module in AWS Lambda-Ebenen wiederverwenden
Ich möchte japanische Bestandsdaten erfassen und auflisten, ohne sie zu kratzen
Holz kratzen und essen - ich möchte ein gutes Restaurant finden! ~ (Arbeit)
Ich möchte die zweite Zeile zum Spaltennamen in Pandas machen
Ich möchte den G-Test in einem Monat Tag 1 bestehen
Ich war süchtig nach falschen Klassenvariablen und Instanzvariablen in Python
Ich möchte die Bevölkerung jedes Landes der Welt kennenlernen.
Ich möchte Robomaster S1 ① Rooting und Dateikonfigurationsprüfung hacken
Ich möchte systemd grob verstehen
Ich möchte Bilder kratzen und trainieren