小编lin*_*ing的帖子

如何采样一个非常大的CSV文件(6GB)

有一个很大的CSV文件(第一行作为标题),现在我想要100个样本(line_num%100例如),如何有效地使用主内存约束?

将文件分成100个较小的一个.或者每1/100行作为子文件1,每2/100行作为子文件2,...,每100/100行作为文件100.获得100个大小约600的文件M.

没有获得100行或1/100大小的样本.

我试着像这样执行:

fi  = [open('split_data//%d.csv'%i,'w') for i in range(100)]
i = 0
with open('data//train.csv') as fin:
    first = fin.readline()
    for line in fin:
        fi[i%100].write(line)
        i = i + 1
for i in range(100):
    fi[i].close()
Run Code Online (Sandbox Code Playgroud)

但是文件太大而无法运行它有限的内存,如何处理呢?我想用一轮〜来做

(我的代码有效,但它消耗了太多时间,我错误地认为它崩溃了,对不起~~)

python memory file

2
推荐指数
1
解决办法
546
查看次数

标签 统计

file ×1

memory ×1

python ×1