我正在计算大型文档中的tf-idf。我的单词数量超过80,000。我试图在csv文件中写稀疏矩阵。我使用的代码类似于此处How to add a new column to a CSV file using Python?
输出文件太大,超过700 MB,仅约30,000字。 那么,我的问题是如何有效地编写它? 谢谢。
答案 0 :(得分:11)
您可以使用gzip模块轻松直接编写gzip文件:
import gzip
import csv
f=gzip.open("myfile.csv.gz", "w")
csv_w=csv.writer(f)
for row in to_write :
csv_w.writerow(row)
f.close()
不要忘记关闭文件,否则生成的csv.gz文件可能无法读取。
您也可以采用更加pythonic的方式:
with gzip.open("myfile.csv.gz", "w") as f :
csv_w = csv.writer(f)
...
保证文件将被关闭。
希望这有帮助。
答案 1 :(得分:1)