我有一个基于我先前的question的问题。下面的代码运行良好,它告诉我search_string
是否出现在整行中。如何修改最后一行,使其提供匹配计数而不是1或0?例如,对于第一行,它应该返回4,因为mysearch_string
位于该行的4个位置。在
sales = [{'account': 'Jones LLC jones', 'Jan': '150', 'Feb': '200', 'Mar': '140 jones jones'},
{'account': 'Alpha Co', 'Jan': 'Jones', 'Feb': '210', 'Mar': '215'},
{'account': 'Blue Inc', 'Jan': '50', 'Feb': '90', 'Mar': '95' }]
df = pd.DataFrame(sales)
df
search_string = 'Jones'
(df.apply(lambda x: x.str.contains(search_string))
.sum(axis=1).astype(int))
使用前面的question中的代码,我们简单地将
any
方法更改为sum
方法。将所有的1相加,以有效地计算给定行(轴=1)中出现的次数。在您可以使用
findall
和.str.len
:输出:
^{pr2}$将@Vaishali edit添加到解决方案:
输出:
相关问题 更多 >
编程相关推荐