首页 > 解决方案 > 在 Pandas 中将原始子 DataFrame 添加到更大的 DataFrame 后,是否可以恢复它们?

问题描述

下面的代码将两个子数据帧 df1 和 df2 附加到一个大日期帧中:

     df1 = pd.DataFrame({"a":[1, 2, 3, 4], 
                     "b":[5, 6, 7, 8]}) 

     df2 = pd.DataFrame({"a":[1, 2, 3], 
                "b":[5, 6, 7]}) 

     df1.append(df2) 

给出:

ab
--
0| 15
1| 26
2| 37
3| 48
0| 15
1| 26
2| 37

是否可以将这个附加的 DataFrame 拆分为原始的子 DataFrame,如下所示?

ab
--
0| 15
1| 26
2| 37
3| 48

ab
--
0| 15
1| 26
2| 37

标签: python-3.xpandas

解决方案


这是一种方法

d={x : y for x,y in df.groupby((df.index==0).cumsum())}   

d[1]
Out[434]: 
   a  b
0  1  5
1  2  6
2  3  7
3  4  8

推荐阅读