Python 使用np.random.choice创建从1到5的10000个随机数列表的问题

Python 使用np.random.choice创建从1到5的10000个随机数列表的问题,python,numpy,Python,Numpy,我不太确定我做错了什么。 我想做的是使用numpy的random.choice从students数组中模拟5个绘图,然后重复以获得10000个额外的比例,其中每个样本的大小为5。将这些存储在名为sample_props的变量中 import numpy as np students = np.array([1,0,1,1,1,1,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0]) sample_props = [] n = 10000 i = 0 while i <= n:

我不太确定我做错了什么。 我想做的是使用numpy的random.choice从students数组中模拟5个绘图,然后重复以获得10000个额外的比例,其中每个样本的大小为5。将这些存储在名为sample_props的变量中

import numpy as np
students = np.array([1,0,1,1,1,1,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0])
sample_props = []
n = 10000
i = 0
while i <= n:
    #y = np.random.choice(students, 5)
    sample_props.append(np.random.choice(students, 5))
    i = i+1
print(len(sample_props))
将numpy导入为np
students=np.数组([1,0,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,0])
示例_props=[]
n=10000
i=0
而我只要做:

sample_props = [list(np.random.choice(students, size=5)) for i in range(10000)]
只要做:

sample_props = [list(np.random.choice(students, size=5)) for i in range(10000)]

这是什么?另外,
当i>=n时:
将永远不允许您为i=0和n=10000y的值输入循环是一个变量,因此我可以稍后使用它来更轻松地附加它。没有其他问题。所以你建议我把“I”放在while循环中?至少应该是while I在y=ohhh之后,我看到了我的第一个问题,列表()是一个元组,所以不能更改。它应该是一个[]列表。。。由于某些原因,代码仍然没有正确执行这是什么?另外,
当i>=n时:
将永远不允许您为i=0和n=10000y的值输入循环是一个变量,因此我可以稍后使用它来更轻松地附加它。没有其他问题。所以你建议我把“I”放在while循环中?至少应该是while I在y=ohhh之后,我看到了我的第一个问题,列表()是一个元组,所以不能更改。它应该是一个[]列表。。。由于某些原因,代码仍然无法正确执行