我的代码写了一个包含大量数据的txt文件。我正在尝试将熊猫数据帧作为该代码的一部分打印到该txt文件中,但是不能使用.write(),因为它仅接受字符串。
如何获取以DF1为例存储的熊猫数据框并将其打印在文件中?
我也看到过类似的问题,但是这些问题旨在仅为数据框创建一个txt文件,我希望我的数据框出现在txt文件中
答案 0 :(得分:3)
使用to_string
方法,然后可以将write
的模式设置为append
('a'
)
tfile = open('test.txt', 'a')
tfile.write(df.to_string())
tfile.close()
样本数据
import pandas as pd
import numpy as np
df = pd.DataFrame({'id': np.arange(1,6,1),
'val': list('ABCDE')})
test.txt
This line of text was here before.
代码
tfile = open('test.txt', 'a')
tfile.write(df.to_string())
tfile.close()
输出:test.txt
This line of text was here before.
id val
0 1 A
1 2 B
2 3 C
3 4 D
4 5 E
答案 1 :(得分:1)
Pandas DataFrame具有to_string()
,to_json()
和to_csv()
方法可能对您有帮助,请参见:
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_string.html
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_csv.html
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_json.html
将文本文件写入字符串的示例。使用“ w”标志写入,并使用“ a”附加到文件。
example_string = df1.to_string()
output_file = open('file.txt','a')
output_file.write(example_string)
output_file.close()
如果您只想在文本文件中放入某些信息,则可以使用pandas或json方法将其选中,等等,并查看上面的docs链接。
在OP评论附加之前,我最初写了一个有关json的示例。 json
支持dump()
方法来帮助写入文件。但是,在大多数情况下,它不是将输出附加到vs. csv或txt的最理想的格式。如果它对任何人都有用:
import json
filename = 'file.json'
with open(filename, 'w') as file:
json.dump(df1.to_json(), file)