python-2.7 – Pandas:基于空行拆分数据框

python-2.7 – Pandas:基于空行拆分数据框,第1张

概述我有以下数据框架. id A B C 1 34353 917998 x 2 34973 980340 x 3 87365 498097 x 4 98309 486547 x 5 87699 我有以下数据框架.
ID       A        B        C   1      34353    917998     x        2      34973    980340     x      3      87365    498097     x      4      98309    486547     x      5      87699    475132         6      52734    4298894         7      8749267  4918066    x    8      89872    18103         9      589892   4818086    y    10     765      4063       y 11     32369    418165     y12     206      2918137    13     554      3918072    14     1029     1918051    x15     2349243  4918064

对于每组空行,例如5,6我想创建一个新的数据框.需要生成多个数据帧.如下所示:

ID      A        B5      87699    475132         6      52734    4298894
ID      A        B8      89872    18103      
ID      A        B12     206      2918137    13     554      3918072          
ID      A        B15     2349243  4918064          
解决方法
isnull = df.C.isnull()partitions = (isnull != isnull.shift()).cumsum()gb = df[isnull].groupby(partitions)

此时,我们已经完成了为df中每个连续NaN组创建单独数据帧的目标.对于gb.groups中的每个键,可以通过gb.get_group()方法访问它们

为了验证,我们将连接显示.

keys = gb.groups.keys()dfs = pd.concat([gb.get_group(g) for g in keys],keys=keys)dfs

设置为df

我使用了@Alberto Garcia-Raboso的读者

import ioimport pandas as pd# Create your sample dataframedata = io.StringIO("""\ID       A        B        C   1      34353    917998     x        2      34973    980340     x      3      87365    498097     x      4      98309    486547     x      5      87699    475132         6      52734    4298894         7      8749267  4918066    x    8      89872    18103         9      589892   4818086    y    10     765      4063       y 11     32369    418165     y12     206      2918137    13     554      3918072    14     1029     1918051    x15     2349243  4918064""")df = pd.read_csv(data,delim_whitespace=True)
总结

以上是内存溢出为你收集整理的python-2.7 – Pandas:基于空行拆分数据框全部内容,希望文章能够帮你解决python-2.7 – Pandas:基于空行拆分数据框所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1207271.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存