Me preguntaba si había una manera fácil de entrar.python para devolver un subconjunto de mis filas de DataFrame solo cuando hay un cambio entre dos filas consecutivas. Por ejemplo, mi objeto de marco de datos podría verse así:
Date A B
20160713070000 20 21
20160713070100 20 23
20160713070128 20 23
20160713070128 21 24
20160713070134 23 24
En este caso, me gustaría devolver el siguiente objeto de marco de datos:
Date A B
20160713070000 20 21
20160713070100 20 23
20160713070128 21 24
20160713070134 23 24
¡Gracias por la ayuda!
Respuestas
1 para la respuesta № 1Yo uso drop_duplicates () función:
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 para la respuesta № 2
Suponiendo que su marco de datos es df, intente lo siguiente:
sub_df = df[df.groupby("Date")["A"].transform(lambda x: x.index[-1])==df.index]