如何计算numpy数组中字符串的出现次数? [复制]
Posted
技术标签:
【中文标题】如何计算numpy数组中字符串的出现次数? [复制]【英文标题】:How to count occurrences of string in numpy array? [duplicate] 【发布时间】:2021-03-27 19:28:56 【问题描述】:所以我改变了我以前的代码
if advice[i] == real_choice[i]:
correct[i] = "CORRECT"
else:
correct[i] = "INCORRECT"
到
correct = np.where( advice == real_choice, "CORRECT", "INCORRECT")
但现在我的代码在此之后计算"INCORRECT"
在correct
中的出现次数,不再有效:
num_incorrect = correct.str.count("INCORRECT").sum()
我怎样才能以与新方法兼容的方式完成上述行?
【问题讨论】:
【参考方案1】:np.where
返回一个 numpy 数组,而不是 pandas 系列。所以你想要:
(correct=='INCORRECT').sum()
【讨论】:
那行得通,它实际上让我意识到它确实非常简单,而我做错了其他事情。谢谢【参考方案2】:# numpy array
(correct == "INCORRECT").sum()
dict(zip(*np.unique(correct, return_counts=True)))["INCORRECT"]
# list
list(correct).count("INCORRECT")
或
correct = np.where( advice[i] == real_choice[i], 1, 0)
incorrect_size = correct.size - correct.sum()
【讨论】:
以上是关于如何计算numpy数组中字符串的出现次数? [复制]的主要内容,如果未能解决你的问题,请参考以下文章