【发布时间】:2016-12-28 01:58:55
【问题描述】:
我有一个充满txt 文档的目录:
.
├── file.txt
├── file.txt
├── file.txt
...
├── file.txt
└── file.txt
如何将所有文档读入 pandas 数据框?换句话说,我的目标是在 pandas 数据框对象中存储一些像这样的文档 (*):
id text_blob
0 file_name.txt Lore lipsum dolor done
1 file_name.txt Lore lipsum ...
2 file_name.txt dolor ...
3 file_name.txt lore lipsum lore ...
4 file_name.txt dolor...
到目前为止,我尝试了以下代码。但是,它不是 pythonic 并且我有一些格式错误(例如空间问题,'",格式。):
import glob, os, csv, argparse, sys
def retrive(directory_path):
for filename in sorted(glob.glob(os.path.join(directory_path, '*.txt'))):
with open(filename, 'r') as f:
important_stuff = f.read().splitlines()
oneline = [' '.join(important_stuff)]
yield filename.split('/')[-1] + ', ' +str(oneline).strip('[]"')
def trans(directory,directory2):
test = tuple(retrive(directory))
with codecs.open(directory2,'w', encoding='utf8') as out:
csv_out=csv.writer(out, delimiter='|')
csv_out.writerow(['name','text_blob'])
for row in test:
csv_out.writerow(row.split(', ', 1))
input_d = '../in'
out_d = '../out'
trans(input_d,out_d)
【问题讨论】:
-
我不知道你期望的结果是什么样的。请阅读stackoverflow.com/help/mcve和stackoverflow.com/help/how-to-ask
-
@piRSquared,感谢您的帮助。我希望在熊猫数据框中包含所有文档。正如您在 (*) 中看到的,pandas 数据框符合 .txt 文档的名称,右侧是文档的内容。
标签: python python-3.x pandas dataframe