开始使用免费开始使用

对青蛙数据进行置换检验

青蛙 A 的平均击打力为 0.71 牛顿(N),青蛙 B 为 0.42 N,二者相差 0.29 N。也有可能两只青蛙的击打力实际上相同,而该观测差异只是偶然产生。您将计算在假设两只青蛙的击打力分布相同的前提下,出现至少 0.29 N 的平均击打力差异的概率。我们将使用以均值差为检验统计量的置换检验来检验该假设。

为方便起见,数据已存储在数组 force_aforce_b 中。

本练习是课程的一部分

Python 统计思维(第 2 部分)

查看课程

练习说明

  • 定义一个函数,调用签名为 diff_of_means(data_1, data_2),返回两个数据集的均值之差,即 data_1 的均值减去 data_2 的均值。
  • 使用此函数计算青蛙数据中观测到的经验均值差。
  • 抽取 10,000 个均值差的置换重复。
  • 计算 p 值。
  • 打印 p 值。

交互式实操练习

通过完成这段示例代码来试试这个练习。

def diff_of_means(data_1, data_2):
    """Difference in means of two arrays."""

    # The difference of means of data_1, data_2: diff
    diff = ____

    return diff

# Compute difference of mean impact force from experiment: empirical_diff_means
empirical_diff_means = ____

# Draw 10,000 permutation replicates: perm_replicates
perm_replicates = draw_perm_reps(____, ____,
                                 ____, size=10000)

# Compute p-value: p
p = np.sum(____ >= ____) / len(____)

# Print the result
print('p-value =', p)
编辑并运行代码