我应该如何修复我的代码以读取 CSV 文件中的所有行?


import csv
import ujson
from konlpy.tag import Okt
def ss(line):

line = line.strip().replace(". ", ".n")
line = line.splitlines()
return line 
def anal(analyzer, sent):
tp =[]
for i in sent:
text = analyzer.pos(i)
text_pos.append(text)

return tp
input_file_name = r"data.csv"
with open(input_file_name, "r", encoding = "utf-8") as input_file:
okt=Okt()

for line in input_file:   
sent = split_sentences(line)
text_pos = get_pos(okt, sentence)
output_file_name=r"data1.json"

with open(output_file_name, "w", encoding="utf-8") as output_file:
for get_pos in text_pos:
text_str = ujson.dumps(text_pos, ensure_ascii=False)
print(text_str, file=output_file)

这就是我目前所拥有的,但只有 CSV 文件的最后一行正在被读取和分析。我想修复我的代码以读取 CSV 文件的所有行(它总共有 5276 行(并进行分析。我应该尝试什么?

在下面的循环中,您将覆盖句子并text_pos循环的每次迭代。

for line in input_file:   
sentence = split_sentences(line)
text_pos = get_pos(okt, sentence)

在循环的最后一次迭代中,text_pos和句子将从最后一行开始。如果我是你,我会尝试在循环之前创建一个列表并将get_pos的结果附加到列表中。稍后,您可以将每个结果写入输出文件。

免责声明:我没有使用 Okt 库的经验。希望我的预感是正确的。

相关内容

  • 没有找到相关文章

最新更新