Gus*_*avo 0 python lambda pandas
我正在尝试与Pandas一起处理一些数据问题,并且已经达到了我正在编写这样的代码的程度:
groups.segment = groups.topic.map(lambda x: 'friends' if 'friend' in str(x) else x)
groups.segment = groups.topic.map(lambda x: 'friends' if 'bro' in str(x) else x)
groups.segment = groups.topic.map(lambda x: 'friends' if 'girls' in str(x) else x)
Run Code Online (Sandbox Code Playgroud)
我想以更简洁的方式编写它,我不必拥有一堆复制和粘贴代码.python有点新,所以不确定如何让它变得更好.任何帮助赞赏.
有点像:
groups.segment = groups.segment.map(lambda x: 'friends' if 'bro' or 'girls' or 'friend' in str(x) else x)
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点 ?
谢谢你的帮助 !
最好不要在lambda这里使用:
def mapper(x)
if any(y in str(x) for y in ('friend', 'bro', 'girls')):
return 'friends'
return x
groups.segment = groups.topic.map(mapper)
Run Code Online (Sandbox Code Playgroud)
你可以使用any这里True至少有一个传递的值返回True.