UPDATE: Fehler -> "kann nicht mit einem nicht eindeutigen Multiindex umgehen!"Python-Datenframe: Berechne die Anzahl der Tage seit dem letzten Datum in der vorherigen Zeile und in der neuen Spalte
Nach den Code ausgeführt wird, erhalte ich die folgende Ausgabe Datenrahmen in Python:
df = df_EVENT5_18[['FLEET', 'SUBFLEET', 'AIRCRAFT', 'DTIN']]
df = df.sort_values(['FLEET', 'SUBFLEET', 'AIRCRAFT', 'DTIN'])
df.set_index(['FLEET', 'SUBFLEET', 'AIRCRAFT'], inplace=True)
# df = df.reset_index()
df['DTIN'] = pd.to_datetime(df['DTIN'])
Aber es Fehler in der allerletzten Zeile Code aus:
df_EVENT5_19 = df.assign(output = df.groupby(['FLEET', 'SUBFLEET', 'AIRCRAFT']).DTIN.apply(lambda x: x.diff()))
Dies ist der Fehler: "Kann nicht mit einem nicht eindeutigen Multiindex umgehen!"
Nachfolgend finden Sie eine Beispieltabelle, die mit denen ich arbeite:
Die Spalten UI_A, UI_B und UI_C zusammen eine eindeutige Kennung genommen.
Ich möchte für jede Zeile und für jede eindeutige Kennung die Anzahl der Tage seit dem letzten Datum berechnen. Wenn Ihre eindeutige ID identisch ist, müssen Sie das Datum in einer Zeile über Ihnen referenzieren.
Diese Logik ist ein wenig schwierig in Worten zu erklären, also schließe ich meine gewünschte Ausgabetabelle unten ein. Ich möchte die Spalte "Tage seit vorherigem Datum"
Gute Antwort! +1 Ich denke, Sie könnten 'as_index = False' in Ihrer Gruppe hinzufügen, um Ihren ursprünglichen Datenrahmen ohne Indizierung zurück zu bekommen. –
Ich erhalte den folgenden Fehler, wenn ich Ihren Code gegen meine tatsächlichen Daten ausprobierte: "Kann nicht mit einem nicht eindeutigen Multiindex umgehen" – PineNuts0