我正在处理一个大熊猫项目,其数据框写得非常慢。形状是,(4116,131711)。它的dtype是浮点数。它在十分钟内写入81行文件。我没有交换;虽然这个过程使用36Gb的内存(这也很奇怪)。在对数据子集进行测试时,20行在大约7秒内写入。
我现在也观察到,在花了一个多小时写第一个gb之后,它在两分钟内写出了最后1.5 gb的输出。 我很困惑。
简单地将数据读入dict,转换为数据帧,对某些摘要统计信息进行过滤,填写缺失值然后写入。
熊猫版本0.15.2 python 2.7.9 gcc 4.4.7 numpy 1.9.2
有什么想法吗?
imps = DataFrame(dict,index=pos)
imps.replace(5,np.nan,inplace=True)
imps = imps.ix[imps.var(1) > .05]
MAF = imps.apply(maf,axis = 1)
imps = imps.ix[MAF>.15]
imps = imps.transpose()
imps.fillna(MAF,inplace=True)
outn = Imp_genotypes.rstrip('.txt')+'.dosage.txt'
imps.to_csv(outn, header=False)