开始使用免费开始使用

生成一次置换

在接下来的几个练习中,您将使用置换检验来进行显著性检验。正如视频中所述,我们想比较两个设计 A 和 B 所带来的捐赠金额是否存在差异。假设这两个版本已经各自运行了几天,A 获得了 500 笔捐赠,B 获得了 700 笔捐赠,分别保存在变量 donations_Adonations_B 中。

我们首先需要为"均值差"生成一个零假设分布。方法是对数据集进行多次置换,并在每次置换中计算均值差。

先从简单开始:生成一次置换,并计算该置换数据集中的均值差。

本练习是课程的一部分

Python 中的统计模拟

查看课程

练习说明

  • 使用 np.concatenate() 将数组 donations_Adonations_B 连接,赋值给 data
  • 使用 np.random.permutation() 获取一次置换,赋值给 perm
  • 计算 permuted_Apermuted_B 的均值之差,记为 diff_in_means

交互式实操练习

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

# Concatenate the two arrays donations_A and donations_B into data
len_A, len_B = len(donations_A), len(donations_B)
data = ____([donations_A, donations_B])

# Get a single permutation of the concatenated length
perm = ____(len(donations_A) + len(donations_B))

# Calculate the permutated datasets and difference in means
permuted_A = data[perm[:len(donations_A)]]
permuted_B = data[perm[len(donations_A):]]
diff_in_means = ____
print("Difference in the permuted mean values = {}.".format(diff_in_means))
编辑并运行代码