Je me demandais s'il y avait un moyen facile depython pour renvoyer un sous-ensemble de mes lignes DataFrame uniquement en cas de changement entre deux lignes consécutives. Par exemple, mon objet dataframe pourrait ressembler à ceci:
Date A B
20160713070000 20 21
20160713070100 20 23
20160713070128 20 23
20160713070128 21 24
20160713070134 23 24
Dans ce cas, je souhaite renvoyer l'objet de base de données suivant:
Date A B
20160713070000 20 21
20160713070100 20 23
20160713070128 21 24
20160713070134 23 24
Merci pour l'aide!
Réponses:
1 pour la réponse № 1J'utiliserais drop_duplicates () fonction:
In [262]: df.drop_duplicates(subset=["A","B"])
Out[262]:
Date A B
0 20160713070000 20 21
1 20160713070100 20 23
3 20160713070128 21 24
4 20160713070134 23 24
1 pour la réponse № 2
En supposant que votre dataframe est df, essayez ce qui suit:
sub_df = df[df.groupby("Date")["A"].transform(lambda x: x.index[-1])==df.index]