我正在尝试设置一个数据集,用于检查文章列表中提到的几个不同名称的频率。因此,对于每篇文章,我想知道提及nameA,nameB等的频率。但是,我在迭代列表时遇到了麻烦。
我的代码如下:
for element in list_of_names:
for i in list_of_articles:
list_of_namecounts = len(re.findall(element, i))
list_of_articles中的文章示例:
我得到的错误是:期望的字符串或缓冲区
我虽然在迭代字符串列表时,re.findall命令应该使用这样的列表,但对Python也是新的。知道怎么解决我的问题吗?
谢谢!
答案 0 :(得分:0)
如果您的列表是['apple','apple','banana']并且您想要结果:apple = 2,那么:
from collections import Counter
list_count = Counter(list_of_articles)
for element in list_of_names:
list_of_namecounts = list_count[element]
假设list_of_namecounts是一个列表¿?
list_of_namecounts = []
for element in list_of_names:
list_of_namecounts.append(list_count[element])