0

我有一个带有许多熊猫数据帧进程的大型 python 程序。在每个进程结束时,我需要将输出写入文本文件。因此,在整个程序期间,必须使用“to_csv”和“write”方法更新文本文件。以下是我用来编写文本文件的一些行。问题是文本文件被程序中最后一个进程的行覆盖。我想在程序中多次写入文本文件。

out = open('results.txt','a')

out.write( 'Message' )
out.write( head.idxmax())
df.sort(columns='Requests',  ascending=False).to_csv('results', sep=' ' )

如果您需要更多解释,请告诉我。

4

1 回答 1

3

使用mode参数来.to_csv

In [5]: df = DataFrame({'A': ['foo', 'foo', 'foo', 'bar', 'bar'],
                'B': ['one', 'two', 'three', 'one', 'two'],
                'C': np.random.randn(5)})


In [6]: with open('test.txt', 'w') as f:
    ...:     f.write('Testing\n')
    ...:     


In [7]: !cat 'test.txt'
Testing


In [11]: df.to_csv('test.txt', mode='a')

In [12]: !cat 'test.txt'
Testing
,A,B,C
0,foo,one,0.42364430570326805
1,foo,two,1.1992467813307852
2,foo,three,0.4302171615562164
3,bar,one,0.6837252733791036
4,bar,two,0.16800783901724345
于 2013-06-27T14:36:29.020 回答