我设置了100个文档,格式如下:
“足球世界杯” 2法国赢得了上届足球世界杯
“足球世界杯”是文件ID。 我的数据是“ 2”,“法国赢得了上届世界杯足球赛”。
我必须将数据插入相应的文档ID中。一个文档ID可以具有多个值,这些值具有不同的句子编号和数据值
我已经使用了数据框架,并且试图遍历文档并从我创建的用于存储数据和文档ID的字典中读取数据。 并且停留在读取文件的时间超过6小时。
dataFrame = pd.DataFrame()
df = pd.DataFrame(columns=['doc_id', 'document','sent_num'])
sent_num ={}
doc_key = []
dict_sentences = {}
def read_line():
docs1 = []
doc = []
for filename in glob.glob(os.path.join(path, '*.txt')):
if not os.path.isdir(filename):
with open(filename,"r",encoding="utf8") as file1:
print('Current executing file',filename)
for lines in file1:
pos = lines.split()[0:1]
joint_position = ','.join(pos)
line = lines.split(" ")[0]
split_lines = lines.split()[2:]
join_data_lines = ' '.join(split_lines)
if line in dict_sentences.keys():
dict_sentences[line] = dict_sentences[line] + join_data_lines
else:
dict_sentences[line] = join_data_lines
doc_key.append(pos)
if str(pos[0]) in sent_num.keys():
sent_num[pos[0]] = sent_num[pos[0]] + lines.split()[1:2]
else:
sent_num[pos[0]] = lines.split()[1:2]
for a,value in dict_sentences.items():
row = [a, value,sent_num[a]]
df.loc[len(df)] = row
read_line()
我想知道是否可以将数据直接附加到数据框中,并排除将数据写入字典然后存储的步骤吗?