Hier ist ein minimal reproduzierbares Beispiel:
Code: Select all
import pandas as pd
df = pd.DataFrame({
'group': ['A','A','B','B','B'],
'value': [1,2,1,2,2]
}, index=[0,1,1,2,3]) # note the duplicate index: 1 appears twice
result = df.groupby('group').apply(lambda g: g)
print(result)
Code: Select all
group value
group
A A 1
A 2
B B 1
B 2
B 2
Code: Select all
df2 = df.reset_index(drop=True)
print(df2.groupby('group').apply(lambda g: g))
Warum ändert das Vorhandensein doppelter Indexwerte die Art und Weise, wie groupby().apply() den zurückgegebenen Index erstellt? Wie können die ursprünglichen Zeilen korrekt beibehalten werden und unerwartete Indexverschachtelungen beim Anwenden von Funktionen vermieden werden?
Mobile version