python如何使用apply或not apply
python如何使用apply或not apply
这篇文章将为大家详细讲解有关python如何使用apply或not apply,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
apply or not apply
如果我们想创建一个新的列,并将其他列作为输入,那么apply函数有时非常有用。
defrule(x,y):ifx==‘high'andy>10:return1else:return0df=pd.DataFrame({'c1':['high','high','low','low'],'c2':[0,23,17,4]})df['new']=df.apply(lambdax:rule(x['c1'],x['c2']),axis=1)df.head()
在上面的代码中,我们定义了一个带有两个输入变量的函数,并使用apply函数将其应用于列'c1'和'c2'。
但“apply函数”的问题是它有时太慢了。 如果你想计算两列“c1”和“c2”的最大值,你可以:
df[‘maximum'] = df.apply(lambda x: max(x[‘c1'], x[‘c2']), axis = 1)
但你会发现它比这个命令慢得多:
df[‘maximum'] = df[[‘c1','c2']].max(axis =1)
注意:如果可以使用其他内置函数完成相同的工作(它们通常更快),请不要使用apply。例如,如果要将列'c'舍入为整数,请执行round(df ['c'],0)而非使用apply函数:
df.apply(lambda x: round(x['c'], 0), axis = 1)
关于“python如何使用apply或not apply”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
推荐阅读
-
Lightly IDE 快捷键:Python 开发者必学的效率提升操作
-
GitHub Codespaces 模板配置:快速初始化项目环境的技巧
-
Python 类型注解进阶:mypy 静态类型检查与 IDE 集成
-
Python 3.12 模式匹配增强:结构分解与多分支逻辑简化实战
-
Lightly IDE 快捷键定制:Python 开发者专属效率提升方案
-
Python 装饰器高级用法:类装饰器与元类结合实践
-
Python 生成器表达式优化:内存占用与迭代效率平衡技巧
-
Python 类型注解深度:Protocol 协议与泛型类型约束实践
-
Python 3.12 新特性解析:模式匹配增强与性能优化实战
-
Lightly IDE 深度评测:轻量级 Python 开发工具是否适合团队协作?
