是否可以在一个文件中写入和读取多个 DataFrame?

Jua*_*los 2 python csv dataframe pandas

我目前正在处理一组具有双标头的类似数据帧。它们具有以下结构:

   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
Run Code Online (Sandbox Code Playgroud)

实际上,主要区别在于第一个标题行的排序(可以对所有标题行进行相同的排序)以及第二个标题行中 RHS 标题列的位置。我目前想知道是否有一种简单的方法可以将所有这些 DataFrame 保存到单个 CSV 文件中/从单个 CSV 文件中读取这些 DataFrame,而不是为每个 DataFrame 使用不同的 CSV 文件。

cs9*_*s95 5

不幸的是,没有任何合理的方法可以在单个 CSV 中存储多个数据帧,以便检索每个数据帧不会过于麻烦,但您可以使用pd.ExcelWriter并保存到单个文件中的单独工作表中.xlsx

import pandas as pd

writer = pd.ExcelWriter('file.xlsx')
for i, df in enumerate(df_list):
    df.to_excel(writer,'sheet{}'.format(i))
writer.save() 
Run Code Online (Sandbox Code Playgroud)