如何将DataFrame中存储列表的列正确导出保存为CSV文件?
解决方案
- 第一步:处理列表类型的目标列,将列表元素用换行符
\n拼接为单个字符串
示例代码:import pandas as pd # 请将下方target_col替换为你的实际列名 df["target_col"] = df["target_col"].apply(lambda x: "\n".join(map(str, x))) - 第二步:按需求选择导出格式,两种方案如下:
方案1:导出为CSV格式
导出时配置适配Excel的编码和引用规则:
用Excel打开导出的文件后,选中目标列,点击「开始」选项卡中的「自动换行」按钮,即可实现单个列表元素占一行的显示效果。import csv df.to_csv( "result.csv", encoding="utf-8-sig", # 避免Excel打开中文乱码 quoting=csv.QUOTE_NONNUMERIC, # 非数值内容统一加引号,保障换行符被正确识别 index=False )方案2:导出为XLSX格式(更推荐,兼容性更强)
无需额外配置CSV的特殊规则,导出后直接打开即可适配:
打开文件后开启目标列的「自动换行」即可达到预期样式。# 提前安装依赖:pip install openpyxl df.to_excel("result.xlsx", engine="openpyxl", index=False)
内容的提问来源于stack exchange,提问作者nuttychan
相关产品推荐
相关产品推荐

