分类变量的可能排列数
number of possible permutations of a categorical variable
我有一个包含 16 个测量值的数据集。我有一个分类变量 "type",它是 0 或 1。我想对我的分类器进行排列测试。
我想在有 8 = 1 和 8 = 0 的地方创建新标签
我正在使用
sample(type, 16, replace = FALSE)
它工作正常。
但我在想,因为我可以 运行 解决的问题很少,所以测试组合比实际组合多。这是一个问题,因为您将获得 p 值的 under/overestimation,例如在只有 1000 种可能的情况下进行一百万种排列。
所以我的问题是:
我如何计算一个向量的可能排列数,其中有 N 个患者并且必须有一个 P 和另一个 (N-P)。
其次,出于好奇,您会在什么时候(有多少可能的排列)选择进行完整测试而不是随机抽样。
我知道这很可能很简单,我就是想不通。
这样的 combinations 的数量是 Choose K from N
C(N,K) = N! / (K!*(N-K)!)
针对你的情况C(16,8)=12870
可以使用R命令:
choose(N, K)
例如:
choose(16,8)
# [1] 12870
我有一个包含 16 个测量值的数据集。我有一个分类变量 "type",它是 0 或 1。我想对我的分类器进行排列测试。
我想在有 8 = 1 和 8 = 0 的地方创建新标签
我正在使用
sample(type, 16, replace = FALSE)
它工作正常。
但我在想,因为我可以 运行 解决的问题很少,所以测试组合比实际组合多。这是一个问题,因为您将获得 p 值的 under/overestimation,例如在只有 1000 种可能的情况下进行一百万种排列。
所以我的问题是:
我如何计算一个向量的可能排列数,其中有 N 个患者并且必须有一个 P 和另一个 (N-P)。
其次,出于好奇,您会在什么时候(有多少可能的排列)选择进行完整测试而不是随机抽样。
我知道这很可能很简单,我就是想不通。
这样的 combinations 的数量是 Choose K from N
C(N,K) = N! / (K!*(N-K)!)
针对你的情况C(16,8)=12870
可以使用R命令:
choose(N, K)
例如:
choose(16,8)
# [1] 12870