微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

手动计算R中配对t检验的功效

如何解决手动计算R中配对t检验的功效

作为一项练习,我想在R中手动执行配对的t检验,以刷新过去的演讲。一切进展顺利,但是后来我想到了要计算配对t检验的功效,这就是麻烦的开始。

我知道,功效是替代分布下的面积减去II型误差的面积,该面积由临界值界定。因此,基本上,在此示例中,我需要找到 1-P(X≤alpha | mean = obsMean),但是坦率地说,我不确定如何在R中构造该分布。使用与null下t统计量相同的过程。但这没有意义,因为期望均值和观察到的均值是相同的,因此整个项将仅等于0( 1-pt((expMean - obsMean)*stdError,df)。从现在开始,我变得更加困惑,我认为我缺少明显的东西。

我使用了 pwr 包中的 pwr.t.test 函数来比较我的结果。

如果有人可以帮助我手动进行此类测试,这将非常有帮助,因为我在其他地方找到的大多数解决方案都跳过了我尝试手动完成的部分,而只是使用某种功率计算器。

我使用的代码

# data
aP <- c(0.5331039,0.4578532,0.3129205,0.5144858,0.8149759,0.4136268)
aM <- c(0.2750040,0.5056830,0.4828734,0.4439654,0.2738658,0.3081768)

# difference between P and M
Diff <- aM - aP

# INIT t test
obsMean <- mean(Diff)
expMean <- 0

stdError <- (sqrt(length(Diff))/sd(Diff))

df <- n - 1
alpha = 0.05

# T-statistic

T_stat <- (obsMean-expMean)*stdError; T_stat


# critical value
crit_values <- qt(c(0.025,0.975),df) # lower bound = -2.570582


p_value <- 2*(pt(T_stat,df)); p_value
p_value < alpha

# comparison
t.test(aM,aP,paired = TRUE,alternative = "two.sided")


# INIT power
obsMean <- mean(Diff)
expMean <- mean(Diff)

# power???

power <- 1-pt((expMean - obsMean)*stdError,df); power

# comparison

cohensD <- (mean(aM)-mean(aP))/(sqrt((sd(aM)^2+sd(aP)^2)/2))

pwr.t.test(n = 6,d = cohensD,type = "paired",alternative = "two.sided")

# power = 0.4210006 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。