Ho uno script Python che importa un file CSV di grandi dimensioni e quindi conta il numero di occorrenze di ogni parola nel file, quindi esporta i conteggi in un altro file CSV.
Ma quello che sta succedendo è che una volta che la parte di conteggio è finita e l'esportazione inizia, viene detto Killed
nel terminale.
Non penso che questo sia un problema di memoria (se lo fosse, presumo che avrei ricevuto un errore di memoria e non Killed
).
Potrebbe essere che il processo stia impiegando troppo tempo? In tal caso, esiste un modo per estendere il periodo di timeout in modo da poterlo evitare?
Ecco il codice:
csv.field_size_limit(sys.maxsize)
counter={}
with open("/home/alex/Documents/version2/cooccur_list.csv",'rb') as file_name:
reader=csv.reader(file_name)
for row in reader:
if len(row)>1:
pair=row[0]+' '+row[1]
if pair in counter:
counter[pair]+=1
else:
counter[pair]=1
print 'finished counting'
writer = csv.writer(open('/home/alex/Documents/version2/dict.csv', 'wb'))
for key, value in counter.items():
writer.writerow([key, value])
E Killed
succede dopo che finished counting
è stato stampato, e il messaggio completo è:
killed (program exited with code: 137)