Я хочу провести 400 повторных случайных выборок (т.е. 400 различных результатов выборки) с размером выборки 90. Однако вопрос усложняется, так как общая численность населения в 1800 человек (n_pop) состоит из 3 различных подгрупп населения (300, 500,1000) каждый обычно распределен вокруг своего собственного стандартного отклонения и среднего значения, как в (std_list) & (mean_list).
, то есть субпопуляция 300 (sub_pop = 300) обычно распределена вокруг стандартного отклонения 40 и среднего значения 50и так далее.Кроме того, пропорции каждой подгруппы в объеме выборки должны быть пропорциональны пропорции в общей популяции (n_pop), которую я уже жестко закодировал как samplesize = [10, 30, 50].
т.е.нужен случайный размер выборки 10 из sub_pop 300, размер выборки 30 из sub_pop 500 и так далее.поэтому я хочу создать список для хранения 400 повторных случайных выборок размером 90. Это то, что я сделал до сих пор:
import numpy as np
n_pop = 1800 #total population (300+500+1000=1800)
obs_size = 90 #sample size
sub_pop = [300, 500, 1000] #sub population
samplesize = [10, 30, 50] #sub sample size (10+30+50=90)
std_list = [40, 50, 60] #standard deviation
mean_list = [50, 60, 70] #mean
list = []
for i in range(300):
list += np.random.normal(loc = 50, scale = 40, size = 10).tolist()
for i in range(500):
list += np.random.normal(loc = 60, scale = 50, size = 30).tolist()
for i in range(1000):
list += np.random.normal(loc = 70, scale = 60, size = 50).tolist()
Я не уверен, каккак сделать это несколько раз 400 раз, а затем добавить результат в список.