使用 pandas 的 df.to_csv 方法不适用于 space 作为分隔符

df.to_csv method using pandas does not work well with space as separator

我正在尝试使用 pandas 将此数据框导出为 CSV,并使用 space 作为分隔符。我这样做是因为我有两个数据框,我想并排(水平)而不是垂直堆叠它们。我使用 concat 来执行此操作,但导出为 CSV 会使 python 自动将它们视为单个单元格。因此,我在编写 CSV 时尝试强制使用 space 分隔符(参数 sep=" ")。但是输出仍然忽略分隔符,结果仍然是单列数据。我的代码如下

import pandas as pd
file='RALS-03.csv'
df=pd.read_csv(file
#get two items on two different columns                )
items1=df.iloc[:,0] 
items2=df.iloc[:,4]

#get corresponding numbers for the two columns of items
mar1=df.iloc[:,2]
mar2=df.iloc[:,6]

#stack them vertically
df1=items1.append(items2)
df2=mar1.append(mar2)

#put them side by side 
df4=pd.concat([df1, df2], axis=1)

#write to CSV file, with a space as a separator
df4.to_csv("new.csv", sep=" ")

有什么建议吗?感谢 adv

使用 sep= '\t'

df4.to_csv('new.csv', sep='\t')

在连接之前打印 df1 和 df2。检查他们的列标签和行索引,列标签不能相同。但行索引必须相同。

然后使用以下命令将结果打印到文件

with open('df_out.txt', 'w') as f:
    print(df4, file=f)