【问题标题】:Back calculating t-statistic in R在 R 中反向计算 t 统计量
【发布时间】:2021-07-26 23:34:08
【问题描述】:

我从独立样本 t 检验中获得这些信息。

p-value=0.989
sample size for group 1 (n1)= 17
sample size for group 2 (n2)= 18
mean difference= 0.30

我需要此测试的 t 统计量。我对 p 值的代码进行了反复试验以获得 t 统计量,即 0.014 2*pt(0.014, 33, lower.tail=F) #p=0.989

我需要一个 R 代码,它获取 p 值和 df 作为输入,并提供 0.014 作为输出。

【问题讨论】:

标签: r p-value t-test


【解决方案1】:

假设指定函数的根位于 0 到 6 之间:

给予:

uniroot(function(x, p) p - 2 * pt(x, 33, lower.tail = FALSE), c(0, 6), p = 0.989)

给予:

$root
[1] 0.01390167

$f.root
[1] 7.863003e-06

$iter
[1] 3

$init.it
[1] NA

$estim.prec
[1] 6.103516e-05

这是另一个例子:

2 * pt(1.901367, 19, lower.tail = FALSE)
## [1] 0.07252959

uniroot(function(x, p) p - 2 * pt(x, 19, lower.tail = FALSE), c(0, 6), p = 0.07252959)

给予:

$根 [1] 1.901365

$f.root [1] -2.672236e-07

$iter [1] 9

$init.it [1] 不适用

$estim.prec [1] 6.103516e-05

【讨论】:

  • 在你发表评论之前我已经改变了,而不是回应它。
【解决方案2】:

不需要uniroot。使用qt

> qt(0.989/2, df = 33, lower.tail = FALSE)
[1] 0.01389174

【讨论】:

  • 是的!我在找这个。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-28
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多