使用引导 random.choice

Using bootstrapping random.choice

我正在尝试使用引导程序对子项 (np.random.choice) 进行 1000 次复制以进行替换重采样,以便我可以计算每次复制的平均值。然后我会比较这些平均值的标准差与标准。

但是我的引导部分不正确,如何解决?

import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
import seaborn as sns
from scipy import stats

df = pd.read_csv('http://www.math.uah.edu/stat/data/Pearson.txt',
                 delim_whitespace=True)
df.head()
y = df['Son'].values

Replications = np.random.choice(y, 1000, replace = True)
print("Replications: " , Replications)
print("")
Mean = np.mean(Replications)

print("Mean: " , Mean)

sem = stats.sem(y)
print ("The SEM : ", sem)

您可以创建 1000 个长度为 len(df) 的复制,每个复制如下:

Replications = np.array([np.random.choice(df.Son, len(df), replace = True) for _ in range(1000)])
Mean = np.mean(Replications, axis=1)
print("Mean: " , Mean)

谢谢!