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

如何用Pandas将CSV数据正确导入Excel?解决单行写入问题

解决CSV导入Excel内容挤在同一行的问题

方案1:改用Pandas原生to_excel方法(简单直接)

如果只是完成CSV到Excel的导入,直接用Pandas自带的to_excel更高效,无需手动操作工作表对象:

import pandas as pd

# 读取CSV文件
QTH = pd.read_csv(r"C:\Users\SLA.csv")
# 写入Excel,指定工作表、起始位置,不保留DataFrame索引
QTH.to_excel(r"C:\Users\target_file.xlsx", sheet_name="mySheet", startrow=0, startcol=0, index=False)

如果要写入已存在的Excel文件,需用ExcelWriter实现:

from openpyxl import load_workbook

# 加载已有的Excel工作簿
book = load_workbook(r"C:\Users\target_file.xlsx")
writer = pd.ExcelWriter(r"C:\Users\target_file.xlsx", engine='openpyxl') 
writer.book = book

# 写入指定工作表,覆盖原有内容(需追加数据可调整参数)
QTH.to_excel(writer, sheet_name="mySheet", index=False)
writer.close()

方案2:修复xlwings写法(若坚持用原工具)

你当前的xlwings代码中,header=1参数可能导致解析异常,简化参数让xlwings自动识别DataFrame结构即可:

import pandas as pd
import xlwings as xw

QTH = pd.read_csv(r"C:\Users\SLA.csv")
wb = xw.Book(r"C:\Users\target_file.xlsx")  # 确保正确加载工作簿
ws = wb.sheets["mySheet"]

# 移除多余的header参数,让xlwings自动处理表头和数据行
ws["A1"].options(index=False, expand='table').value = QTH

若CSV本身带表头,expand='table'会自动将表头和数据分行列写入,无需额外指定header参数。

排查小提示

  • 检查CSV格式:用记事本打开CSV,确认分隔符是逗号(若为其他符号,读取时需指定sep参数,比如pd.read_csv(..., sep='\t'))
  • 验证DataFrame:执行QTH.info()确认列数、行数正确,排除读取阶段的解析错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 13:50:47