python - 应用 lambda 函数在熊猫数据框中创建新列时出现内存错误
问题描述
我正在尝试通过将 df.apply 与 lambda 一起使用,基于用户定义的函数在 pandas 数据框中创建一个新列。数据帧是 241573 行,在语句完成之前出现内存错误。
当前代码示例:
def func(col1,col2,col3)
if "string1" in col2
return col3
else "string2" in col2
return col1
df.apply(lambda x: func(x["column1"],x["column2"],x["column3"]), axis = 1)
在上面的示例中,我已经简化了函数,因此对于不使用上述实际函数格式的任何解决方案,还包括另一个 elif,它采用包含每个单元格中的列表的列并遍历列表,执行一些字符串函数以删除某些子字符串. 这就是我最初选择使用 lambda 的原因,因为它最容易编写为函数。
该错误只是说明没有足够的内存来创建数组。
欢迎所有解决方案和建议。
解决方案
推荐阅读
- google-chrome-extension - 使用范围 = 名称电子邮件在 chrome 扩展中使用 Apple 登录
- python - 我该如何解决这个问题 pymongo.errors.OperationFailure?
- hadoop - 带有 Iceberg 和 S3 的独立 Hive Metastore
- sql - 用户“示例”未通过身份验证(对等)
- java - 为什么我的值没有被正确更新和传递?
- python - 而真正的循环实际上并不循环
- c++ - 需要帮助理解 FFT 算法中的这一行
- vba - 运行时错误“2467”:您输入的表达式引用了已关闭或不存在的对象
- powershell - Powershell SendKeys 命令不发送数据
- android - RenderScript 不生成输出