python - 计算熊猫中一堆特定关键字出现次数的最有效方法是什么?
问题描述
我知道在 pandas 数据框中获取特定关键字的计数的方法,但我想知道是否有任何有效的方法可以将一组特定关键字中的每一个都一起获取而不是一个一个地进行?
解决方案
这不是一个好问题,因为细节太少了,但我假设您有一系列字符串,每个字符串都包含一些由“分隔符”分隔的“单词”,并且您有一个您想要的关键字主列表每行的计数?在这种情况下,
>>> import pandas as pd, re
>>> s = pd.Series(['a,b', 'b,c', 'c'])
>>> s
0 a,b
1 b,c
2 c
dtype: object
>>> keywords = ['a', 'b']
>>> pattern = re.compile('|'.join(map(re.escape, keywords))) # Form regex matching any keyword
>>> s.str.count(pattern)
0 2
1 1
2 0
dtype: int64
推荐阅读
- python - 我们如何使用 python 将 JSON 转换为 .csv 文件?我的 json 值具有数据数组和字典格式:
- javascript - 如何在画布中隐藏元素/对象?
- vba - 如何将多个 word 文件的属性更改为“只读推荐”
- ios - 如何使用 Swift 处理 tableView 单元格音频播放和暂停按钮?
- excel - 值范围之间的Excel索引匹配
- php - Laravel:无法在视图中显示多对多关系
- sql - 在 SQL 中查找具有最高值的行
- python - 将 BCD 的大型 numpy 数组转换为十进制
- android - 通知单击时打开活动 - 意图标志问题
- c++ - 具有等待时间限制的线程之间的通信