Pandas Duplikate
Verfasst: Donnerstag 26. Dezember 2019, 16:00
Hallo zusammen,
ich möchte gerne den Wert von Duplikaten in meinem Dataframe anpassen.
Der Dataframe sieht folgendermaßen aus:
date | value
2002-02-28 | 3
2002-02-28 | 3
2002-02-28 | 3
Der Zieldataframe sieht folgendermaßen aus:
date | value
2001-12-31 | 3
2002-01-31 | 3
2002-02-28 | 3
Hintergrund ist folgender: Ich habe Daten auf Quartalsebene und ich möchte diese Daten jedem Monat innerhalb diesem Quartal zuweisen. Dazu habe ich die rows in meinem Dataframe dreimal kopiert.
Meine Idee war eine Spalte einzufügen:
Damit bekomme ich für das erste Duplicate den Wert False. Basierend auf dieser Spalte würde ich das 'date' ändern:
Dies würde ich nochmal durchführen und danach 60 Tage abziehen.
Leider führt das nicht zu dem gewünschten Ergebnis sondern führt dazu, dass zwei der drei Zeilen mit NULL Values gekennzeichnet werden und das date sich gar nicht ändert.
Kann mir jemand dabei weiterhelfen? Wäre echt sehr dankbar dafür.
ich möchte gerne den Wert von Duplikaten in meinem Dataframe anpassen.
Der Dataframe sieht folgendermaßen aus:
date | value
2002-02-28 | 3
2002-02-28 | 3
2002-02-28 | 3
Der Zieldataframe sieht folgendermaßen aus:
date | value
2001-12-31 | 3
2002-01-31 | 3
2002-02-28 | 3
Hintergrund ist folgender: Ich habe Daten auf Quartalsebene und ich möchte diese Daten jedem Monat innerhalb diesem Quartal zuweisen. Dazu habe ich die rows in meinem Dataframe dreimal kopiert.
Meine Idee war eine Spalte einzufügen:
Code: Alles auswählen
df['is_duplicate']=df.duplicated()
Code: Alles auswählen
df['date']=df.where(df['is_duplicate']==False, df['date']- timedelta(days=30), axis=1)
Leider führt das nicht zu dem gewünschten Ergebnis sondern führt dazu, dass zwei der drei Zeilen mit NULL Values gekennzeichnet werden und das date sich gar nicht ändert.
Kann mir jemand dabei weiterhelfen? Wäre echt sehr dankbar dafür.