首页 > 解决方案 > 合并具有不同和未知字段的数据帧

问题描述

作为一个玩具示例,我有以下来自抓取网站的熊猫数据框

[       num :                  2
0       ma1 :                  1
1       ma2 :                0.2
2       ma3 :                  5
3       ma4 :                1.8]

[       num :                  2
0       ma1 :                  1
1       ma2 :                0.2
2       ma3 :                  5
3       ma4 :                1.8
4       ma5 :                  7]

我想在事先不知道所有字段名称的情况下将它们合并到一个数据库中。为此,我相信我需要将它们转换为类似于下面的内容,以使我能够附加它们。

[       num :    ma1:    ma2:    ma3:   ma4:
0           2       1     0.2      5     1.8]   

[       num :    ma1:    ma2:    ma3:   ma4:    ma5:
0           2       1     0.2      5     1.8       7]   

这是一种明智的方法吗?我该如何实施?

标签: pythonpandas

解决方案


我相信您需要通过以下方式进行列表理解set_index和转置T

dfs = [x.set_index(x.columns[0]).T for x in dfs]

如果需要将它们连接在一起,请添加concat

df = pd.concat([x.set_index(x.columns[0]) for x in dfs], axis=1).T

推荐阅读