我需要处理一个大文件并更改一些值。在
我想做些类似的事情:
for index, row in dataFrame.iterrows():
foo = doSomeStuffWith(row)
lol = doOtherStuffWith(row)
dataFrame['colx'][index] = foo
dataFrame['coly'][index] = lol
对我不好,我不能做dataFrame['colx'][index]=foo!在
我的行数非常大,需要处理大量的列。所以我担心,如果我这么做的话,达斯克可能会读几遍这个文件数据帧应用(…)表示每列。在
其他的解决方案是手动将数据分成块,使用pandas,或者直接将任何内容放入数据库。但如果我继续使用我的.csv,让dask为我做块处理,那就太好了!在
谢谢你的帮助。在
一般来说,迭代一个数据帧(Pandas或Dask)可能非常慢。另外,Dask不支持行元素插入。这种工作量很难扩展。在
相反,我建议使用dd.系列。其中(请参见this answer)或在函数中进行迭代(在复制之后,以便不在适当的位置操作),然后使用map_分区跨Dask数据帧中的所有Pandas数据帧调用该函数。在
您只需使用与pandas相同的语法,尽管它会在您执行过程中评估dask数据帧。在
相关问题 更多 >
编程相关推荐