Wie kann ich einen gruppenweisen Prozentsatz in Pandas berechnen?Pandas groupwise Prozentsatz
ähnlich wie Pandas: .groupby().size() and percentages oder Pandas Very Simple Percent of total size from Group by Ich möchte den Prozentsatz eines Wertes pro Gruppe berechnen.
Wie kann ich das erreichen?
My-Datensatz aufgebaut ist wie
ClassLabel, Field
Zunächst aggregieren ich auf beiden ClassLbel
und Field
wie
grouped = mydf.groupby(['Field', 'ClassLabel']).size().reset_index()
grouped = grouped.rename(columns={0: 'customersCountPerGroup'})
Nun würde Ich mag den Prozentsatz der Kunden in jeder Gruppe pro Gruppe auf ein wissen Basis. Die Gruppengesamtheit kann erhalten werden wie mydf.groupby(['Field']).size()
, aber ich kann das weder als eine Spalte verschmelzen, noch bin ich sicher, dass dies der richtige Ansatz ist - es muss etwas einfacher sein.
bearbeiten
Ich möchte nur um den Prozentsatz berechnen auf einer einzigen Gruppe basiert z.B. 3 0 0.125 1 0.250 die Summe von 0 + 1 -> 0.125 + 0.250 = 0.375 und diesen Wert verwenden, um devide/normalisieren gruppiert und nicht grouped.sum()
aber wenn ich will nicht 'grouped.sum() verwenden,' aber wirklich diesen operat ausführen Ionen für jede Gruppe getrennt z.B. Verwenden Sie die Summe von Klasse 0 und Klasse 1 für Feld 1 als Summe. Wie kann ich darauf zugreifen? –
Sorry, können Sie es zur Frage hinzufügen, was ist die gewünschte Ausgabe von Eingabe? Am besten ist, ändern oder verwenden Sie meine Probe oder erstellen Sie eine andere, weil ich nicht sicher bin, ob ich dich verstehe. – jezrael
siehe bitte bearbeiten. –