In diesem Tutorial zeigen wir, wie Sie das Vorkommen von Kombinationen zweier Spalten in einem Pandas-DataFrame zählen und identifizieren maximale Anzahl für jeden eindeutigen Wert in einer der gruppierten Spalten.
Beachten Sie den folgenden Pandas DataFrame df:
<code class="python">df = pd.DataFrame([ [1.1, 1.1, 1.1, 2.6, 2.5, 3.4,2.6,2.6,3.4,3.4,2.6,1.1,1.1,3.3], list('AAABBBBABCBDDD'), [1.1, 1.7, 2.5, 2.6, 3.3, 3.8,4.0,4.2,4.3,4.5,4.6,4.7,4.7,4.8], ['x/y/z','x/y','x/y/z/n','x/u','x','x/u/v','x/y/z','x','x/u/v/b','-','x/y','x/y/z','x','x/u/v/w'], ['1','3','3','2','4','2','5','3','6','3','5','1','1','1'] ]).T df.columns = ['col1','col2','col3','col4','col5']</code>
Um die Anzahl jeder eindeutigen Kombination von Spalte 5 und Spalte 2 in df zu erhalten, können wir die Groupby-Funktion gefolgt von der Größenmethode verwenden:
<code class="python">df.groupby(['col5', 'col2']).size()</code>
Die Ausgabe lautet:
col5 col2 1 A 1 D 3 2 B 2 etc...
Um die maximale Anzahl für jeden col2-Wert zu ermitteln, können wir die Größenmethode der Groupby-Funktion verwenden, um die Gruppengrößen zu berechnen, und dann Groupby auf der ersten Ebene verwenden, um das Maximum zu ermitteln für jeden eindeutigen col2-Wert:
<code class="python">df.groupby(['col5', 'col2']).size().groupby(level=1).max()</code>
Dies erzeugt die Ausgabe:
col2 A 3 B 2 C 1 D 3 dtype: int64
Das obige ist der detaillierte Inhalt vonWie gruppiere ich DataFrames nach zwei Spalten, zähle Vorkommen und finde die maximale Anzahl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!