从数组python中随机选择项

2024-06-16 10:03:19 发布

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

Possible Duplicate:
How do I randomly select an item from a list using Python?

我有两个数组pool_list_X,pool_list_Y。它们都有一个numpy数组作为列表中的元素。 所以基本上

pool_list_x[0] = [1 2 3 4] # a multidimensional numpy array.

pool_list_x的每个元素在pool_list_y中都有相应的元素

which is to say, that pool_list_x[i] corresponds to pool_list_y[i]

现在。如果我必须从list_x中随机选择10个元素(以及相应的list_y元素)。我该怎么做。 我能想到一种非常天真的方式。。随机生成数字。等等。。但这不是很有效。。什么是Python的方式来做这件事。 谢谢


Tags: tonumpyan元素方式数组itemrandomly
2条回答

我不确定我是否百分之百地理解你,但我认为使用ziprandom.sample可能有效:

import random
random.sample(zip(list_a,list_b), 10)

一些简短的解释:

  • zip将创建一个成对的列表,也就是说,它确保您选择相应的元素-如果您选择一个,您将自动获得另一个元素(Zip([1,2,3],[4,5,6]) = [(1,4),(2,5),(3,6)]
  • random.sample(l,n)从列表中随机选择n元素l

有一个函数允许您获取给定序列的随机元素:

import random
my_choice = random.choice(my_sequence)

有关详细信息,请参见the documentation

相关问题 更多 >