首页 > 解决方案 > 使用熊猫在多列中执行应用功能

问题描述

我试图找到三个演员在 Facebook 上的点赞数都不应该少于其他两个的一半的行。 在此处输入图像描述

但我收到一个错误KeyError: 'actor_1_facebook_likes'。你能帮我解决这个问题吗?

标签: pythonpandasdataframeapply

解决方案


我想向你展示一种更简洁、更高效的方式来编写代码。创建条件并使用~删除满足这些条件的行。我希望这有帮助:

a1 = popular_trio['actor_1_facebook_likes']
a2 = popular_trio['actor_2_facebook_likes']
a3 = popular_trio['actor_3_facebook_likes']

c1 = (a1/2) < a2
c2 = (a2/2) < a1
c3 = (a3/2) < a2
c4 = (a1/2) < a3
c5 = (a2/2) < a3
c6 = (a3/2) < a1

popular_trio[~(c1|c2|c3|c4|c5|c6)] # or try popular_trio[~((c1)|(c2)|(c3)|(c4)|(c5)|(c6))]

推荐阅读