大数据中多列计算的内存错误
Posted
技术标签:
【中文标题】大数据中多列计算的内存错误【英文标题】:memory error of multi column calculation in large data 【发布时间】:2020-05-19 21:42:18 【问题描述】:我想计算现有列并创建一个新列。
df = dd.from_pandas(ddf, npartitions=100)
df['new_column'] = df[['column']].apply(lambda dpan_india_df: dpan_india_df['column']*8000, axis = 1, meta=('object'))
如何有效地使用内存? 供您参考,此文件为 800M 文件。
File "Sectorize3.py", line 55, in <lambda>
df['new_column'] = df[['column']].apply(lambda ddf: ddf['column']*8000, axis = 1, meta=('object'))
MemoryError: occurred at index 1512070
【问题讨论】:
【参考方案1】:你可以这样做。
df['new_column']=df['column']*8000
【讨论】:
我得到 MemoryError lambda x: op(x, rvalues)) MemoryError 如果没有apply也可以,为什么还要使用apply呢?或者我遗漏了什么,可以详细说明一下吗? 我首先按照您的方式进行操作,但出现内存错误并编写了应用程序。但我现在解决了。 “列”的类型不是浮点数。于是我把类型改成了数字,成功了。 我遇到了同样的错误!您能否详细说明或在修复后分享代码?谢谢!以上是关于大数据中多列计算的内存错误的主要内容,如果未能解决你的问题,请参考以下文章