Pandas拼接DataFrame后导出为空格分隔文件的实现方法
解决DataFrame导出时用空格替代逗号分隔的问题
嘿,看你已经搞定了DataFrame的拼接,现在就差把导出的分隔符从逗号改成空格对吧?这个调整超级简单,只需要在to_csv()方法里加一个参数就行!
核心修改点
在to_csv()中添加sep=' '参数,明确指定字段分隔符为空格
修改后的完整代码
import pandas as pd import csv # 假设df2和df17是你已有的数据对象 df16 = pd.DataFrame("<SOURCE BUSINESSNAME ='' DATATYPE =''" + df2 + "''>") df18 = pd.DataFrame("NAME =''" + df17 + "'' />") result = pd.concat([df16, df18], axis=1) # 关键新增参数:sep=' ',替换默认的逗号分隔 result.to_csv('C:\\SAM\\TEST.dat', quoting=csv.QUOTE_NONE, header=0, index=False, mode='a+', sep=' ')
参数解释
sep=' ':直接告诉pandas用空格作为列之间的分隔符,彻底替代默认的逗号- 你原来设置的
quoting=csv.QUOTE_NONE、header=0、index=False、mode='a+'这些参数保持不变就好
修改后效果
导出的TEST.dat内容会完全符合你的期望:
return (<SOURCE BUSINESSNAME ="" DATATYPE ="CHAR"/> NAME ="BA_RECCODE" )
另外提个小细节:你原代码里的字符串拼接有多余的嵌套引号(""''),可以简化成''的形式,比如把"<SOURCE BUSINESSNAME =""'' DATATYPE =""''"+df2+""''">"改成"<SOURCE BUSINESSNAME ='' DATATYPE =''" + df2 + "''>",这样输出的引号格式会更整洁哦~
内容的提问来源于stack exchange,提问作者Sam
相关产品推荐
相关产品推荐

