试图学习一些东西,我搞乱了Kaggle上的全球鲨鱼攻击数据库,我试图找到最好的方法来使用lambda
函数和str.contains
。使用lambda有条件和pandas str.contains来包含字符串
基本上任何地方一个字符串包含一个短语skin diving
例如, 'skin diving for abalone'
,在data['Activity']
列中,我想用skin diving
替换活动。 (有92个,因此对于变化皮肤潜水尝试使用lambda函数)
我可以回用
data['Activity].str.contains('skin diving')
一个布尔系列,但我不能确定如何更改值,如果这个条件为真
我的lambda函数= data.apply(lambda x: 'free diving' if x.str.contains('free diving))
但我得到一个语法错误,我不熟悉lambda函数和熊猫得到它的权利,任何帮助将不胜感激。
的'if'表达式必须有'else'部分:'x if condition else y'。你的lambda没有'else'部分。 – DyZ