• 1000 CSV-файл. Ниже приведен снимок экрана CSV-файла.
Ниже приведены мои код:
from datetime import date,datetime
import numpy as np
import xlrd
import codecs
import time
import re
import os
import jieba
from itertools import repeat
import sys
import csv
maxInt = sys.maxsize
while True:
# decrease the maxInt value by factor 10
# as long as the OverflowError occurs.
try:
csv.field_size_limit(maxInt)
break
except OverflowError:
maxInt = int(maxInt/10)
sys.setrecursionlimit(100000000)
jieba.load_userdict('./data/dict.txt')
file_name = 'Real/B_Seg_output.csv'
with open (file_name, 'r', encoding="utf-8") as csvfile:
reader = csv.reader(csvfile)
column = [row[0] for row in reader]
author_list = list(column)
#print(author_list)
print('-'*30)
with open('Real/Other_Content_Count_All.csv', 'a', newline='', encoding='utf-8') as csvfile:
csvfile.write('回復內容\n')
j=0
cnt = set(author_list)
for i in cnt:
j += 1
print(j)
if(j % 10000 == 0):
print('*'*10+str(j)+" is sleeping"+'*'*10)
time.sleep(10)
if author_list.count(i)>0:
#print(i+',',author_list.count(i))
#print(i)
#print(author_list.count(i))
with open('Real/First_Author_Count_All.csv', 'a', newline='', encoding='utf-8') as csvfile:
csvfile.write(i+','+str(author_list.count(i))+'\n')
Когда я запустил этот код, у меня возникла следующая проблема:
Traceback (most recent call last):
File ".\count_All_Other_Content.py", line 38, in <module>
column = [row[0] for row in reader]
File ".\count_All_Other_Content.py", line 38, in <listcomp>
column = [row[0] for row in reader]
IndexError: list index out of range
Я искал связанные проблемы. Я подозревал, что причина в том, что у некоторых строк есть пробел.
Однако я не могу найти решение. И тогда я подозревал, что количество строк CSV превышает предел списка.
Мне нужно использовать этот файл CSV, чтобы подсчитать количество вхождений каждого слова. Не знаю, что решать.