子代与亲代数据的相关性
为了量化子代与亲代喙深之间的相关性,我们希望计算父母与子代之间的统计量,例如皮尔逊相关系数。要为此构建置信区间,我们需要进行成对(pairs)自助法(bootstrap)。
您已经在此前编写过一个函数,用成对自助法来估计由线性回归得到的参数。本练习的任务是编写一个新的函数,调用签名为 draw_bs_pairs(x, y, func, size=1),它执行成对自助法,并在成对样本上计算一个统计量。目标统计量通过调用 func(bs_x, bs_y) 计算。下一道练习中,您将把 pearson_r 作为 func 使用。
本练习是课程的一部分
Python 统计思维(第 2 部分)
练习说明
- 设置一个可供抽样的索引数组。(请记住,在成对自助法中,我们随机选择索引,并用这些索引取得配对数据。)
- 初始化自助法重复值数组。它应为长度为
size的一维数组。 - 编写一个
for循环以抽取样本。 - 从您先前设置的索引数组中随机选择索引。
- 使用刚选取的索引,从输入数组中提取
x值和y值,生成一个自助样本。 - 使用
func从x和y的自助样本中计算目标统计量,并将其存入自助法重复值数组。 - 返回该自助法重复值数组。
交互式实操练习
通过完成这段示例代码来试试这个练习。
def draw_bs_pairs(x, y, func, size=1):
"""Perform pairs bootstrap for a single statistic."""
# Set up array of indices to sample from: inds
inds = ____
# Initialize replicates: bs_replicates
bs_replicates = ____
# Generate replicates
for i in range(size):
bs_inds = ____
bs_x, bs_y = ____
bs_replicates[i] = ____
return bs_replicates