You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何按列将DataFrame导出至独立CSV文件?以及如何将不同DataFrame的列追加至对应独立CSV文件(附示例数据)

嘿,我来帮你搞定这两个Pandas操作的问题,结合你提供的示例数据,咱们一步步来实现:

1. 按列将DataFrame导出为多个独立CSV文件

首先,我们可以通过遍历指定列名的方式,把df1里的frequency、resistance、phase分别导出成单独的CSV文件。这里要注意如果只需要列数据,记得处理好表头和索引的设置。

先构造你给的df1数据:

import pandas as pd

# 构造示例df1数据
df1_data = {
    'accel_name': [3,4,5,6,12,13],
    'numb': ['K','K','K','K','K','K'],
    'frequency': [0,1,2,3,4,5],
    'resistance': [-33,-16,-18,-14,-2,-18],
    'phase': [1,2,12,-3,17,12],
    'idx': [4030,4028,4036,4054,4048,4048]
}
df1 = pd.DataFrame(df1_data)

然后执行导出操作:

# 指定需要导出的目标列
target_cols = ['frequency', 'resistance', 'phase']

# 循环遍历每个列,导出为单独CSV
for col in target_cols:
    # 导出时保留表头,不保留索引(可根据需求调整index参数)
    df1[[col]].to_csv(f'{col}.csv', index=False)

这样执行后,你就会得到三个独立的CSV文件:frequency.csv、resistance.csv、phase.csv,每个文件里只包含对应列的数据和表头。

2. 将不同DataFrame的对应列追加到已导出的CSV文件中

接下来要把df2里的对应列追加到刚才生成的CSV里,这里关键是用mode='a'(追加模式),并且设置header=False避免重复写入表头。

先构造df2的示例数据:

# 构造示例df2数据
df2_data = {
    'accel_name': [7,8,9,10,11,14],
    'numb': ['P','P','P','P','P','P'],
    'frequency': [0,1,2,3,4,5],
    'resistance': [-452,-428,-382,-363,-347,-373],
    'phase': [4089,4082,4078,4052,4064,4068],
    'idx': [329,427,518,545,508,409]
}
df2 = pd.DataFrame(df2_data)

然后执行追加操作:

# 同样遍历目标列,追加到对应CSV
for col in target_cols:
    # mode='a'表示追加,header=False不写入表头(因为文件已有表头)
    df2[[col]].to_csv(f'{col}.csv', mode='a', header=False, index=False)

执行完后,每个CSV文件里就会有df1和df2对应列的所有数据了——比如frequency.csv里会先有df1的6行数据,接着是df2的6行数据。

一些注意事项

  • 一定要确保df2的列名和要追加的CSV文件的列名完全一致,否则数据会错位或者不符合预期
  • 如果你的数据需要保留索引,可以调整to_csv里的index=True,但追加时也要保持一致
  • 操作前确保文件路径正确,并且有读写权限,避免出现文件找不到或权限错误的问题

内容的提问来源于stack exchange,提问作者user_scc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.27 17:29:09