У меня есть большой набор данных временного ряда, причем некоторые из наблюдений (каждое с уникальным идентификатором) имеют разную длину.У меня также есть столбец «Раздел», в котором подсчитываются временные шаги или строки для каждого уникального идентификатора.
df.groupby([df['ID']]).agg({'count'})
A B Z
count count ... count
ID
25782 194 194 194
25783 198 198 198
25784 194 194 194
25785 192 192 192
... ... ... ... ...
25787 192 192 192
25788 195 195 195
25789 196 196 196
25790 200 200 200
говорят, что я хочу создать новый кадр данных, состоящий только из тех случаев, когда длина уникального идентификатора = 192. Т.е. раздел'до 192.
До сих пор я пробовал следующее, но безрезультатно.Пожалуйста, помогите.
mask = df.groupby('ID')(len(df['Section']) == 192)
df = df.loc[mask]
print(df)
И
df.groupby('ID').df[df['Section'].max() == 192]
edit
Желаемый вывод
new_df.groupby([new_df['ID']]).agg({'count'})
A B Z
count count ... count
ID
25752 192 192 192
25137 192 192 192
25970 192 192 192
25440 192 192 192