在内部包含列表的列表中获取最频繁的值(python)

时间:2020-07-04 16:51:55

标签: python list

我正在尝试获取maxlist中每个列表的最频繁值。但是,每次我尝试这些功能或教程时,要么显示完整列表,要么显示“对象列表不可调用”。

最后,我的目标是从maxlist的每个列表中获取最频繁的值(此处为“ 2”),并将新值放入名为“ results”的新列表中。

maxlist

2 个答案:

答案 0 :(得分:1)

我认为您正在寻找这个。替换为您的输入

from collections import Counter 

l = [[0,0,1],
     [1,1,2]]

list_ = []
for ele in l:
    list_.append(Counter(ele).most_common(1)[0][0])
print(list_)

输出:

[0, 1]

答案 1 :(得分:0)

另一种解决方案是使用numpy

import numpy as np
l = [[0,0,1],
     [1,1,2]]

nums, counts = np.unique(l, return_counts = True)
print(nums[np.argwhere(counts == counts.max())])