python - 如何优化 df.assign?
问题描述
我正在处理data
形状为 (55025, 12) 的 dataframe() 上的 python,并且我正在尝试分配一个新列,我的代码是:
data_cat=data.assign(
type0 = lambda dataframe: dataframe['value'].map(lambda x: x>0),
type1= lambda dataframe: dataframe['value'].map(lambda x: x>1,
type2 = lambda dataframe: dataframe['value'].map(lambda x: x>2)
)
它需要永远运行。我该如何优化呢?
谢谢!
解决方案
You can create new columns on the original dataframe directly to avoid copying data, if it won't hurt.
data["type0"] = data["value"].gt(0)
data["type1"] = data["value"].gt(1)
...
otherwise assign
is fine
data_cat = data.assign(
type0=data["value"].gt(0),
type1=data["value"].gt(1),
...
)
See also pandas accessors for some other frequent operations that may have been already implemented in pandas.
推荐阅读
- jenkins - 如何将多个詹金斯文件合并为一个
- python - 如何在python中找到两个列表的笛卡尔积?
- python - 如何从列表列表创建嵌套字典
- rxjs - RXJS 中的观察者和订阅者有什么区别?
- java - 清洁编码使用超类中子类的属性
- javascript - 在函数参数中将 VueJS 组件渲染为 HTMLElement
- autodesk-forge - Placing custom markup by dbId not showing the markups on viewer
- oracle - Powershell 自定义对象多行字符串
- python - 使用 Flask 和 Docker 运行 TensorFlow 时出现内存问题
- python - 将 python 转换为 ruby 来做同样的事情