繁体   English   中英

Python:从列表列表中获取随机模式

[英]Python: Get randomised mode from list of lists

list = [1, 2, 1, 2, 4]
matrix = [[3], [2], [3], [2], [9]]

当我使用这个 function 从普通列表计算随机模式时,它工作正常。

def get_mode(numbers):
modes = statistics.multimode(numbers)
return random.choice(modes)

但是我需要从列表列表中获取随机模式,下面的这个 function 只返回矩阵中的最后一个数字,即使它不是模式。 我将如何解决这个问题?

注意:我只允许在 function 这是列表列表中的一个参数

def get_mode(numbers):
for item in numbers:
    modes = statistics.multimode(item)
return random.choice(modes)

我猜您想将列表列表展平为单个列表,然后计算模式。 这应该工作。

def get_mode(numbers):
    #Flatten list
    flatnumbers = [item for sublist in numbers for item in sublist]
    #Compute modes
    modes = statistics.multimode(flatnumbers)
    return random.choice(modes)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM