python - 如何在 pandas 数据框中突出显示和计算特定关键字
问题描述
对于Text
my 列中的每一行df
,我想要执行以下操作:
突出显示关键字
gross
,suck
,singing
&ponzi
统计每行关键字的个数,并将它们存储在一
Count
列中
import pandas as pd
data = {'Text': ['The bread tastes good','Tuna is gross','Teddy is a beach bum','Angela suck at singing!','oneCoin was a ponzi scheme'],
'ID': [1001,1002,1003,1004,1005]
}
df = pd.DataFrame(data, columns = ['ID', 'Text'])
print(df)
所需的输出应包括该Count
列,如下所示:
我的尝试(不是最好的!你可以忽略这个):
# keyword list
key_words = ['gross','suck','singing','ponzi']
# highlight the keywords
df['Text'].applymap(lambda x: "background-color: yellow" if x else "")
# count the keywords present in each row
df['Count'] = df['Text'].str.count(r"\b(?:{})\b".format("|".join(key_words)))
高度赞赏所有尝试!
解决方案
使用str,找到所有。那会给你一个清单。使用 str.len() 计算每个列表中的元素
df['count']=df['Text'].str.findall('|'.join(key_words)).str.len()
df
推荐阅读
- pandas - Pandas 通过基于其他列值的平均值来删除列
- c++ - 如何搜索在单词中添加字母的所有可能组合?
- c# - 为什么使用 Assembly.ReflectionOnlyLoadFrom() 而不是使用 Assembly.LoadFrom() 进行接口比较失败?
- angular - 带有登录模式的Angular 8拦截401
- observable - RxJs 管道在加载时保存数据,在加载时发出,在加载时允许发出
- bash - 在google colab中执行shell文件时没有这样的文件或目录
- java - 如何从名称中获取任意枚举的实例作为字符串
- c - C中的百分比计算
- react-admin - 向 react-admin 应用栏添加自定义按钮
- sql - 选择查询 - 如何在查询执行时显示结果