如何在嵌套数组中找到模式?

2024-06-24 13:25:57 发布

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

我试图找到一个数组的模式,然后计算这个数字在数组中出现的次数。但是,我试图解决的问题是设置嵌套数组的方式,因此每个数组(字符串)中的[1]索引是不相关的。如何运行此代码以仅应用于所有嵌套数组的[0]索引

from statistics import mode

arr = [[1,'cat'][1,'dog'][2,'fish']]
modeNum = mode(arr)
print(arr.count(modeNum))

Tags: 字符串代码fromimportmode方式模式数字
2条回答

你可以用发电机来做。计数行(带print)取自What is a good way to do countif in Python

from statistics import mode

arr = [[1,'cat'][1,'dog'][2,'fish']]
modeNum = mode(x[0] for x in arr)
print(sum(1 for x in arr if x[0] == modeNum))

假设您希望按照您的示例找到[1,1,2]模式,您可以使用一个理解列表,例如

numbers = [x[0] for x in arr]

然后用mode(numbers)找到模式

相关问题 更多 >