Zeilen eines gruppierten DataFrames zählen und als separate Spalte hinzufügen
Verfasst: Freitag 17. März 2023, 14:06
Hallo,
ich hoffe das hier wird kein Zwillingsbeitrag eines Bestehenden. Aber zumindest habe ich keinen passenden Beitrag mit meinen Stichworten gefunden.
Wie der Name schon sagt, möchte ich eine Dataframe nach mehreren Spalten gruppieren, dann eine Berechnung über die übrigen Spalten durchführen und die Anzahl der gruppierten Zeilen zählen. Bis auf das Zählen klappt auch alles:
Nach den Spalten 'DatumSchicht','Schicht','MATERIALNUMMER' wurde gruppiert. Jetzt möchte ich die Anzahl der darin enthaltenen Zeilen zählen und als Extraspalte mit dem Namen 'Anzahl' dem DataFrame hinzufügen. Ich habe gesehen, dass man .size() bis .count() nutzen kann. Obwohl size() wohl sicherer ist, falls man mal nan Werte hat. Aber ich bekomme das irgendwie nicht in den Code oben eingebaut. Ich bekomme immer einen TypeError: 'numpy.int32' object is not callable. Der hat ja sonst etwas mit [] und () zutun. Aber ich komme gerade nicht weiter. Kann mir jemand helfen?
ich hoffe das hier wird kein Zwillingsbeitrag eines Bestehenden. Aber zumindest habe ich keinen passenden Beitrag mit meinen Stichworten gefunden.
Wie der Name schon sagt, möchte ich eine Dataframe nach mehreren Spalten gruppieren, dann eine Berechnung über die übrigen Spalten durchführen und die Anzahl der gruppierten Zeilen zählen. Bis auf das Zählen klappt auch alles:
Code: Alles auswählen
dfData=dfData.groupby(['DatumSchicht','Schicht','MATERIALNUMMER'], sort=False)[['FTB_WULST_NIO',
'FTB_HOEHE_NIO',
'KLEBERAUPE_NIO',
'WIEGEERGEBNIS_NIO',
'PRESSERGEBNIS_P1_NIO',
'PRESSERGEBNIS_P2_NIO',
'PRESSERGEBNIS_P3_NIO',
'PRESSERGEBNIS_P4_NIO',
'KRAFTPRUEFUNG_FTB_NIO',
'OPTISCHE_PRFG_VBG_NIO',
'OPTPRFGVBG_ZAHNZAHL_NIO',
'OPTPRFGVBG_KAEFIGTYP_NIO',
'OPTPRFGVBG_DREHRILL_NIO',
'OPTPRFGVBG_KUGELZAHL_NIO',
'OPTPRFGVBG_DECKEL_NIO',
'KANTENKONTROLLE_VBG_NIO',
'OPTISCHE_PRFG_FTB_NIO',
]].agg(lambda x: max(x) - min(x))