Python 如何在使用pandas写入csv时保留格式?
我有这样一个文本文件:Python 如何在使用pandas写入csv时保留格式?,python,pandas,Python,Pandas,我有这样一个文本文件: id,name,sex, 1,Sam,M, 2,Ann,F, 3,Peter, 4,Ben,M, 然后,我读了文件: df=pd.read\u csv('data.csv')) 之后,我将其写入另一个文件: df.to_csv('new_data.csv',index=False) 然后,我明白了 id,name,sex,Unnamed: 3 1,Sam,M, 2,Ann,F, 3,Peter,, 4,Ben,M, 您可以看到,第四行中有两个逗号,而不是一个 如何在使
id,name,sex,
1,Sam,M,
2,Ann,F,
3,Peter,
4,Ben,M,
然后,我读了文件:
df=pd.read\u csv('data.csv'))
之后,我将其写入另一个文件:
df.to_csv('new_data.csv',index=False)
然后,我明白了
id,name,sex,Unnamed: 3
1,Sam,M,
2,Ann,F,
3,Peter,,
4,Ben,M,
您可以看到,第四行中有两个逗号,而不是一个
如何在使用
pd.to_csv
时保留格式?正在保留格式-三维行没有性别,因此csv应该有一个空列-这就是为什么要使用逗号,因为您正在分隔一个空列
您的原始文本文件不是有效的csv文件
你想做的是另外一件事,不是写一个有效的csv文件-你必须自己做,我不知道有任何现有的方法来创建你的格式。熊猫
正在保留格式-3d行没有性别,因此csv应该有一个空列-这就是为什么要使用逗号,因为您正在分隔一个空列
您的原始文本文件不是有效的csv文件
你想做的是其他事情,这不是写一个有效的csv文件-你必须自己做,我不知道有任何现有的方法来创建你的格式。你的代码中的问题是你的文件中的sex
列后有一个逗号。所以read_csv认为这是一个新列,没有名称和数据
df= pd.read_csv('data.csv')
df
id name sex Unnamed: 3
0 1 Sam M NaN
1 2 Ann F NaN
2 3 Peter NaN NaN
3 4 Ben M NaN
因此,您有一个额外的未命名列。因此,当您写入到_csv时,它会在第三行中添加两个空值,这就是为什么,两个,
尝试:
代码中的问题是,文件中的sex
列后面有一个逗号。所以read_csv认为这是一个新列,没有名称和数据
df= pd.read_csv('data.csv')
df
id name sex Unnamed: 3
0 1 Sam M NaN
1 2 Ann F NaN
2 3 Peter NaN NaN
3 4 Ben M NaN
因此,您有一个额外的未命名列。因此,当您写入到_csv时,它会在第三行中添加两个空值,这就是为什么,两个,
尝试:
那是因为你的结尾有个逗号,那是因为你的结尾有个逗号。