我目前正在处理一组类似的具有双报头的数据帧。 它们具有以下结构:
age height weight shoe_size
RHS height weight shoe_size
0 8.0 6.0 2.0 1.0
1 8.0 NaN 2.0 1.0
2 6.0 1.0 4.0 NaN
3 5.0 1.0 NaN 0.0
4 5.0 NaN 1.0 NaN
5 3.0 0.0 1.0 0.0
height weight shoe_size age
RHS weight shoe_size age
0 1.0 1.0 NaN NaN
1 1.0 2.0 0.0 2.0
2 1.0 NaN 0.0 5.0
3 1.0 2.0 0.0 NaN
4 0.0 1.0 0.0 3.0
实际上,主要的区别在于第一个标题行的排序(所有标题行都可以相同),以及RHS标题列在第二个标题行中的位置。我现在在想,是否有一种简单的方法可以将所有这些数据帧保存/读取到一个CSV文件中,而不是每个文件都有一个不同的CSV文件。在
举个例子(用随机数代替数值):
首先,重新排列列(How to change the order of DataFrame columns?):
^{pr2}$然后,连接两个数据帧(Merge, join, and concatenate):
我不知道您想如何处理标题的第二行(目前,它只是使用两个子列,这不是很优雅)。如果在您看来,这一行是没有意义的,只需在连接之前重置标题:
最后,将其保存为CSV格式(pandas.DataFrame.to_csv):
不幸的是,没有任何合理的方法可以在一个CSV中存储多个数据帧,这样检索每个数据帧就不会非常麻烦,但是您可以使用
pd.ExcelWriter
并将其保存到单个.xlsx
文件中的单独工作表中:相关问题 更多 >
编程相关推荐