【发布时间】:2016-11-07 09:52:19
【问题描述】:
我有一个非常大的 DF,其中包含如下数据:
import pandas as pd
df = pd.DataFrame()
df['CODE'] = [1,2,3,1,2,4,2,2,4,5]
df["DATA"] = [ 'AA', 'BB', 'CC', 'DD', 'AA', 'BB', 'EE', 'FF','GG', 'HH']
df.sort_values('CODE')
df
CODE DATA
0 1 AA
3 1 DD
1 2 BB
4 2 AA
6 2 EE
7 2 FF
2 3 CC
5 4 BB
8 4 GG
9 5 HH
因为我需要将它分成块并解析它。 但是,CODE 列中包含的 equals 元素不应以不同的块结束,而应将它们添加到前一个块中,即使超出大小也是如此。
基本上,如果我选择 4 行的块大小,第一个块可以增加到包括所有带有“2”的元素并且是:
chunk1:
CODE DATA
0 1 AA
3 1 DD
1 2 BB
4 2 AA
6 2 EE
7 2 FF
我发现了一些关于分块和分组的帖子,如下所示:
split dataframe into multiple dataframes based on number of rows
但是,上面提供了相同大小的分块,我需要一个考虑 CODE 列中的值的智能分块。
有什么办法吗?
【问题讨论】: