栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在熊猫中彼此堆叠数据帧

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在熊猫中彼此堆叠数据帧

您就快到了。

问题在于,每个子数据帧中的列名都不同。因此,当pandas执行时

concat
,它不仅将数据框追加到底部,还扩展了数据框以使其具有正确名称的新列,然后追加了行。

您可以通过重命名子数据框中的列来解决此问题,例如

for sub_df in pieces:    sub_df.columns=range(12)

NB

df2
df8
包含你想要什么,我想。由于某种原因,您
df1
只包含了前7列,而不是12列。我假设这是一个错字。

产生完整的工作代码(我将您的输入数据复制到名为的文件中

'data1.csv'

import pandas as pdimport numpy as npdf = pd.read_csv('data1.csv')df1 = df.ix[:,0:12]df2 = df.ix[:,12:24]df3 = df.ix[:,24:36]df4 = df.ix[:,36:48]df5 = df.ix[:,48:60]df6 = df.ix[:,60:72]df7 = df.ix[:,72:84]df8 = df.ix[:,84:96]pieces = (df1,df2,df3,df4,df5,df6,df7,df8)# Give the columns the same labels in each sub dataframe# I've used numbers for convenience - you can give more descriptive names if you wantfor sub_df in pieces:    sub_df.columns=range(12)df_final = pd.concat(pieces, ignore_index = True)print df_final

关于订购的最后说明

您会注意到示例中列的意外排序。这不会影响我的解决方案,但是为了完整起见,我将对其进行解释。

输出中的列采用所谓的“字典顺序”。在使用Python(和其他语言)对包含数字的字符串进行排序时,这是一个常见问题。它们以看起来
几乎正确 的顺序排序,但是以某种方式运行1,10,11 …
19,2,20,依此类推。这是因为通过排序像字典一样的字母排序的信,但

0
9
来临前
a




转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/662355.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号