【问题标题】:How can I export a csv file with multiple pandas dataframes stacked vertically?如何导出具有多个垂直堆叠的 pandas 数据帧的 csv 文件?
【发布时间】:2023-02-23 18:11:35
【问题描述】:

考虑下面的数据框,

data_a = {'A':[1,2,3],'B':[4,5,6]}
df_a = pd.DataFrame(data_a)

data_b = {'C':[7,8,9],'D':[10,11,12]}
df_b = pd.DataFrame(data_b)

我想将这两个数据帧导出到一个 .csv 文件,在该文件中它们彼此垂直堆叠。如果你做类似的事情,

pd.concat([df_a,df_b],axis=0).to_csv('test.csv')

df_b 不会在 df_a 的正下方,它会向右移动,因为它具有不同的列名。我怎样才能让它们与不同的标题名称完全对齐?

【问题讨论】:

  • 所以你想让df_b C 列在标题 A 下?您不能只重命名df_b 的列以匹配df_a 的列吗?或者你想要 2 个标题,只是将 df_a.to_csv()df_b.to_csv() 进行字符串连接?您能否通过提供的示例给出您期望的示例输出?
  • 但是 'C' 和 'D' 将不再是专栏了吗?还是只保留 A 和 B 并将所有值放在下面?
  • 很好的问题,所以我需要不同的列标题,所以具有不同列名称的不同数据框完全堆叠在一起。

标签: pandas


【解决方案1】:

您可以使用 mode="a" 作为追加:

df_a.to_csv("test.csv", mode="w", index=False)
df_b.to_csv("test.csv", mode="a", index=False)

这将创建test.csv

A,B
1,4
2,5
3,6
C,D
7,10
8,11
9,12

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-06-10
    • 2017-11-27
    • 2021-03-31
    • 2022-08-23
    • 2018-11-26
    • 1970-01-01
    • 2021-10-28
    相关资源
    最近更新 更多