Python,Pandas:将DataFrame的内容写入文本Fi

2024-04-25 08:57:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这样的熊猫数据框

        X    Y  Z    Value 
0      18   55  1      70   
1      18   55  2      67 
2      18   57  2      75     
3      18   58  1      35  
4      19   54  2      70   

我想用这种方式把这些数据写进一个文本文件

18 55 1 70   
18 55 2 67 
18 57 2 75     
18 58 1 35  
19 54 2 70 

我试过像

f = open(writePath, 'a')
f.writelines(['\n', str(data['X']), ' ', str(data['Y']), ' ', str(data['Z']), ' ', str(data['Value'])])
f.close()

但它不起作用。 怎么做?


Tags: 数据writelinesclosedatavalue方式open文本文件
3条回答

您只需使用^{}并访问np属性.values

np.savetxt(r'c:\data\np.txt', df.values, fmt='%d')

收益率:

18 55 1 70
18 55 2 67
18 57 2 75
18 58 1 35
19 54 2 70

^{}

df.to_csv(r'c:\data\pandas.txt', header=None, index=None, sep=' ', mode='a')

注意对于np.savetxt您必须传递一个用append模式创建的文件句柄。

迟到:试试这个>

#pd: your pandas dataframe
base_filename = 'Values.txt'
with open(os.path.join(WorkingFolder, base_filename),'w') as outfile:
    pd.to_string(outfile)
#Neatly allocate all columns and rows to a .txt file

您可以使用pandas.DataFrame.to_csv(),并将indexheader设置为False

In [97]: print df.to_csv(sep=' ', index=False, header=False)
18 55 1 70
18 55 2 67
18 57 2 75
18 58 1 35
19 54 2 70

pandas.DataFrame.to_csv可以直接写入文件,有关更多信息,请参阅上面链接的文档。

相关问题 更多 >