拆装大型分组熊猫数据框

时间:2019-04-11 14:23:19

标签: pandas python-2.7 dataframe

我有一个5M条记录和40万个带有两列的组的pandas数据框,我正在尝试将行拆成几列,并将所有列的值连接到一个列中。为了说明,我从数据框中获取了一部分数据

EVENT_ID     DIAGNOSIS
  24601           637
  24601          1561
  24601           360
  24601          3002
  82903          1580
  82903           923
  82903           986
  94261          1940
  94261          2353
  94261          4553

我试图使用以下代码来旋转数据框。

df_pivot = df.pivot(index='EVENT_ID', columns='DIAGNOSIS', values ='DIAGNOSIS').add_prefix('').reset_index()

这给了我一个错误,说:

  

未堆积的数据框太大,导致int32溢出

我拿了一个子集,看看它是否正常工作。

我希望我的数据框看起来像

EVENT_ID  637  1561  360  3002 1580 923 986 231 1940 2353 4553  all_diagnosis
  24601    637  1561  360  3002                                  637|1561|360|3001
  82903                         1580 923 986                     1580|923|986
  94261                                          1940 2353 4553 1940|2353|4553 

最终,我想为EVENT_ID创建一个字典:all_echos 看起来像:

{
24601 : 637|1561|360|3001
82903 : 1580|923|986
94261 : 1940|2353|4553 
}

我有创建字典的代码,就像我尝试处理数据的子集一样,它正在运行。

当我为完整数据尝试相同的代码时,它不起作用。如果有人可以建议我如何处理完整数据,我将非常感谢。

0 个答案:

没有答案