Python 序贯抽样

Python 序贯抽样,python,sampling,normal-distribution,Python,Sampling,Normal Distribution,从N(1,2)中取样,样本量为100,并计算该样本的平均值,我们可以这样做: import numpy as np s = np.random.normal(1, 2, 100) mean = np.mean(s) 现在,如果我们想生产10000个样品并保存每个样品的平均值,我们可以: sample_means = [] for x in range(10000): sample = np.random.normal(1, 2, 100) sample_means.appen

从N(1,2)中取样,样本量为100,并计算该样本的平均值,我们可以这样做:

import numpy as np

s = np.random.normal(1, 2, 100)
mean = np.mean(s)
现在,如果我们想生产10000个样品并保存每个样品的平均值,我们可以:

sample_means = []
for x in range(10000):
    sample = np.random.normal(1, 2, 100)
    sample_means.append (sample.mean())

当我们想从N(1,2)开始按顺序取样并按顺序估计分布平均值时,我该怎么做?

IIUC你的意思是累加

sample = np.random.normal(1,2,(10000, 100))
sample_mean = []
for i,_ in enumerate(sample):
    sample_mean.append(sample[:i+1,:].ravel().mean())
然后
sample_-mean
包含累积样本平均值

sample_mean[:10]
[1.1185342714036368,
 1.3270808654923423,
 1.3266440422140355,
 1.2542028664103761,
 1.179358517854582,
 1.1224645540064788,
 1.1416887857272255,
 1.1156887336750463,
 1.0894328800573165,
 1.0878896099712452]

也许是列表理解

sample_means=[np.random.normal(1,2100).means(),代表范围(10000)内的i]
提示在Python中使用小写字母命名变量