ich meine Daten in Pandas Datenrahmen haben wie folgt:einzigartige Kombinationen von Werten in ausgewählten Spalten in Datenrahmen Pandas und zählen
df1 = pd.DataFrame({'A':['yes','yes','yes','yes','no','no','yes','yes','yes','no'],
'B':['yes','no','no','no','yes','yes','no','yes','yes','no']})
Also, meine Daten wie diese, ich würde
----------------------------
index A B
0 yes yes
1 yes no
2 yes no
3 yes no
4 no yes
5 no yes
6 yes no
7 yes yes
8 yes yes
9 no no
-----------------------------
sieht möchte es in einen anderen Datenrahmen umwandeln. Die erwartete Ausgabe kann in der folgenden Python-Skript angezeigt:
output = pd.DataFrame({'A':['no','no','yes','yes'],'B':['no','yes','no','yes'],'count':[1,2,4,3]})
Also, meine erwartete Ausgabe sieht wie folgt aus
--------------------------------------------
index A B count
--------------------------------------------
0 no no 1
1 no yes 2
2 yes no 4
3 yes yes 3
--------------------------------------------
Eigentlich kann ich erreichen, alle Kombinationen zu finden, und sie zählen mit dem folgenden Befehl: mytable = df1.groupby(['A','B']).size()
Es stellt sich jedoch heraus, dass solche Kombinationen in einer einzigen Spalte sind. Ich möchte jeden Wert in einer Kombination in unterschiedliche Spalte trennen und auch eine weitere Spalte für das Ergebnis des Zählens hinzufügen. Ist es möglich, das zu tun? Darf ich Ihre Vorschläge haben? Vielen Dank im Voraus.
Oh. Vielen Dank. Es funktioniert perfekt. –
Hey, kannst du erklären, wie diese Abfolge von Anrufen funktioniert? Sie haben einen Pandas-Datenrahmen, dann haben Sie die Größe, die Sie zurücksetzen, und so weiter? Einige Erklärung würde helfen: D – user2253546
@ user2253546 siehe aktualisierte Antwort – EdChum