Я могу разбить фрейм данных на куски, используя следующее:
def split_df_into_num_chunks(cls, df, chunks = 10):
list_of_df = list()
initial_len = len(df.index)
chunk_size = initial_len // chunks
for i in range(chunks):
list_of_df.append(df[i*chunk_size:(i+1)*chunk_size])
if (i+1)*chunk_size < initial_len:
list_of_df.append(df[(i+1)*chunk_size:initial_len])
return list_of_df
Однако я не могу понять, как разделить DataFrameGroupBy, например,
id date qty
0 540689582 2017-09-22 00:00:00+00:00 41
1 540689582 2017-09-23 00:00:00+00:00 44
2 540689582 2017-09-24 00:00:00+00:00 52
3 540689583 2017-09-22 00:00:00+00:00 56
4 540689583 2017-09-23 00:00:00+00:00 31
, где я хочу разделить DataFrameGroupByв n примерно равного размера sub-DataFrameGroupBys, и я хочу сохранить группы идентификаторов (то есть сохранить каждую группу без изменений, разделить между группами при разделении)
Любые подсказки?