python中call函数_call函数在python中使用.apply

我认为有几件事可以帮助你解决这个问题。第一个是将“awesome_count”函数转换为lambda函数。假设awesome_count的目标是返回单词“awesome”出现的次数,我知道products ['word_count']包含单词和计数字典(即“and”=> 5,“awesome”= > 2,“糟糕=”1“)。这里的辛苦工作已经为你完成,因为你拥有产品中的所有计数['word_count']。唯一要注意的是你正在寻找的这个词可能不存在于列表中。

def awesome_count():

if 'awesome' in products['word_count']:

return products['word_count']['awesome']

else

return 0L这里的函数检查单词列表中是否有“awesome”。如果是,那么我们只返回产品['word_count'] ['awesome'](即真棒发生的次数)。如果'awesome'不存在,那么我们默认为0。

所以让我们把它变成一个lambda。基于他的路线:

products['awesome'] = products['word_count'].apply(awesome_count())每次调用lambda函数都传入产品['word_count']。在我们的lambda函数中,这将是x。

lambda x: x['awesome'] if 'awesome' in x else 0L这与上面相同,但是以lambda格式表示。所以将它结合起来:

products['awesome'] = products['word_count'].apply(lambda x: x['awesome'] if 'awesome' in x else 0L)这会奏效,但我们可以做得更好。不要硬编码'awesome'这个词,让我们使用更通用的东西:

word='awesome'

products[word] = products['word_count'].apply(lambda x: x[word] if word in x else 0L)现在我们有一些更通用的东西,我们可以插入任何单词。所以,假设我们有一个我们需要计算的单词列表。我们可以为列表中的所有内容执行此操作。

word_list = ['awesome','and','some','other','words']

for word in word_list:

products[word] = products['word_count'].apply(lambda x: x[word] if word in x else 0L)这是一个很好的通用解决方案,可用于任意数量的单词。快乐的编码。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值