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

使用pandas的to_csv方法无法将自定义命名CSV保存到指定路径问题

问题根源

你两次报错都是因为to_csv()的传参规则理解错误:

  • 该方法的第一个位置参数要求传入包含文件名的完整保存路径,你把父目录路径和文件名拆成两个独立的位置参数传入,导致第二个参数'myDataFrame.csv'被系统识别为sep(分隔符)参数,自然会触发类型不匹配、参数重复的报错。
  • 直接传文件名不生成文件的问题,大概率是你当前Python脚本的工作目录和你预期的不一致,文件其实生成在了脚本运行的工作目录下。

正确实现方案

写法1:手动拼接完整路径

直接把父目录和文件名拼接成完整路径传给to_csv()即可:

import pandas as pd
import os

file_name = "https://raw.githubusercontent.com/.../titanic.csv"
df = pd.read_csv(file_name)

# 拼接完整路径:父目录 + 自定义文件名
save_dir = r'D:\PROJECTS\DATA_SCIENCE\UDEMY_DataAnalysisBootcamp'
save_path = os.path.join(save_dir, 'myDataFrame.csv')

df.to_csv(save_path, encoding='utf-8', index=False)

这里加index=False是避免把DataFrame的行索引也存入CSV,不需要可以删掉。

写法2:切换工作目录后直接传文件名

如果你不想拼接路径,可以先把Python的工作目录切换到目标保存路径,再直接传文件名即可:

import pandas as pd
import os

file_name = "https://raw.githubusercontent.com/.../titanic.csv"
df = pd.read_csv(file_name)

save_dir = r'D:\PROJECTS\DATA_SCIENCE\UDEMY_DataAnalysisBootcamp'
# 切换工作目录到目标路径
os.chdir(save_dir)

df.to_csv('myDataFrame.csv', encoding='utf-8', index=False)

验证文件是否生成的小技巧

运行保存代码后可以加一行打印,确认文件是否真的生成:

print(os.path.exists(save_path))
# 输出True就说明文件已经成功保存在对应路径了

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 15:39:04