我怎么计算提到的X的数量?

2024-09-27 01:21:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我想数一数一个人被提及的次数

我试着用下面的代码来计算被提及次数最多的用户(这是一个twitter excel文件)是GhostKumi

s = sheet.col(19)

c = s.count('GhostKumi')

print(c)

尽管它带着

0

这是不太正确的考虑

mentions
GhostKumi
GhostKumi
MasryLando
CamUnivMuseums
GhostKumi
CamUnivMuseums
CamUnivMuseums
GhostKumi
GhostKumi
GhostKumi
CamUnivMuseums

这是“提及”专栏

for c1, c2, c3 in zip(sheet.col(23), sheet.col(11), sheet.col(19)):
    print("username:",c1.value) 
    print("has:",c2.value, "retweets")
    print("and mentioned:",c3.value)
    print("***********************")


s = sheet.col(19)

c = s.count('GhostKumi')

print(c)

这是完整的代码(它显示了用户在twitter上的一个线程中提到的用户名和转发量)

上面提到的结果是0,这是不对的,我还想找到一种方法来查找匹配项并计数,然后打印这些匹配项

假设数据是这样的

mentions
GhostKumi
GhostKumi
MasryLando
CamUnivMuseums
GhostKumi
CamUnivMuseums
CamUnivMuseums
GhostKumi
GhostKumi
GhostKumi
CamUnivMuseums

例如:

GhostKumi: 6 mention(s)
CamUnivMuseums: 4 mention(s)
MasryLando: 1 mention(s)

并说明哪些用户拥有最多:

GhostKumi: 6 mention(s) (Most)
MasryLando: 1 mention(s) (Least)

Tags: 代码用户valuecountcoltwitter次数sheet
1条回答
网友
1楼 · 发布于 2024-09-27 01:21:56

Sheet.colreturns a ^{} of ^{} objects

Python的list.count方法将对传入的值进行简单的比较,以计算实例的数量。然而,a Cell和a str永远不会相等。实际上,xldrCelldoesn't even define an ^{} method

您不必在list上调用count,而是可以筛选Cell的列表并获取该列表的长度:

c = len([cell for cell in sheet.col(x) if cell.value == 'GhostKumi'])

相关问题 更多 >

    热门问题