所有
我正在运行代码,使用apply函数为面板中的每个成分(组)计算一个新变量(newvar
):
df['newvar'] = df.groupby('group')['var1'].apply(lambda x : x - x.shift() + df['var2'] - df['var3'])
代码返回内存错误( MemoryError )。我认为发生的事情是代码生成了大量独立的数据帧,然后导致系统内存不足,因为df本身就是一个非常大的文件。我可以通过for循环来实现这一点,但是有更简洁/计算效率的方法吗?
非常感谢, 安德烈