【问题标题】:Family Wise Error Rate controlled by method of maximum statistics由最大统计方法控制的家庭明智错误率
【发布时间】:2021-04-18 15:31:26
【问题描述】:

我在一袋 50 个硬币中将每个硬币翻转 100 次,然后我想使用最大统计方法来确定家庭明智错误率。但是,我一直得到 1 的 FWER,这感觉不对。

  coins <- rbinom(50, 100, 0.5)

所以我首先定义了一个新函数,在该函数中我们输入我们进行随机化的次数、硬币本身以及我们翻转它们的次数。

simulate_max <- function(n_number_of_randomizations, input_coins, N_number_of_tosses, alpha = 0.05) {

  maxList <- NULL

然后我们为每次指定的时间做一个 for 循环。

  for (iteration in 1:n_number_of_randomizations){

现在我们将硬币列表洗牌

  CoinIteration <- sample(input_coins)  

现在我们将二进制测试应用于袋子中的每一个硬币

testresults <- map_df(CoinIteration, function(x) tidy(binom.test(x,N_number_of_tosses,p=alpha)) )

现在我们要将每个测试的最大结果添加到最大列表中。

  thisRandMax <- max(testresults$statistic)
  maxList <- c(maxList, thisRandMax)

}

最后,我们遍历最大列表的每个成员以减去正面的预期值(即 50 表示 50% 的机会 * 100 次抛掷。

  for (iterator2 in 1:length(maxList)){

maxList[iterator2]<-maxList[iterator2]-(0.5*N_number_of_tosses)  
  
  }

  

返回函数的输出

return(data.frame(maxList))
}

现在我们为每个请求的迭代应用这个模拟。

repsmax = map_df(1:Nreps, ~simulate_max(Nrandomizations,coins,Ntosses))

现在我们通过将增加的数量除以单元格总数来计算较小的值。

fwer = sum(repsmax>0) / (Nreps*Nrandomizations)

【问题讨论】:

  • 我不熟悉家庭明智错误率的概念。 coins 代表什么?
  • @RonakShah 感谢您查看硬币是已被翻转的硬币列表以及它是正面的次数,例如,对于 100 次公平硬币,它看起来像 [50, 53, 48 , 52...]
  • 你能解释一下你想做什么吗?还有一些常量没有在帖子中定义,例如NrandomizationsNrepsNtosses
  • Nrandomizations Nreps Ntosses 每个都只是数字。例如,5 次随机化、100 次重复和 100 次投掷。
  • 我认为如果您可以使您的示例可重现,那么您将更有可能让人们解决这个问题,以便他们可以从您的问题中复制代码,将其粘贴到 R 脚本中,然后运行。现在很难弄清楚代码的结构,有些对象是未定义的。

标签: r statistics


【解决方案1】:

我认为有一些问题需要澄清一下。

考虑到您的实验参数,FWER of ~1 对我来说似乎是正确的。 FWER 与 I 类错误有关,对于 alpha = 0.05FWER = 1 - P(Type I error = 0);FWER = 1 - 0.95 = 0.05 的单个正态分布测试。在alpha = 0.05, FWER = 1 - P(Type I error = 0); FWER = 1 - 0.95^2 = 0.0975 进行两次测试。你有 50 个硬币(50 个测试),所以你在 alpha = 0.05FWER1 - 0.95^50 = 0.923。如果您的代码将 100 个硬币视为 100 个测试,那么您的 FWER 将是 = 0.996 (~1)

您可以使用例如控制类型 I 错误(考虑多次测试)。 Bonferroni 校正 (alpha/n)。如果您将 alpha 更改为"0.05 / 50" = 0.001,您将控制您的FWER(减少它)为0.05 (1 - 0.999^50 = ~0.049)。我怀疑这是您正在寻找的答案:if alpha = 0.001 then FWER = 0.05,并且您有可能错误地拒绝零假设。

我不知道“效果大小的最大估计”是什么,或者如何计算它,但鉴于两个分布大致相同,效果大小将是 ~ 0。那么控制是有道理的FWER 到 0.05(通过将 alpha 调整为 0.001)是该问题的“答案”,如果您的代码能够反映该逻辑,我想您会有自己的解决方案。

【讨论】:

    猜你喜欢
    • 2020-02-19
    • 2012-06-05
    • 1970-01-01
    • 2012-08-03
    • 1970-01-01
    • 1970-01-01
    • 2020-08-11
    • 1970-01-01
    • 2018-05-02
    相关资源
    最近更新 更多