提问人:John-Henry 提问时间:8/25/2023 更新时间:10/13/2023 访问量:84
如何在“vtable::sumtable”中使用 t.test 比较组?
How to compare groups using a t.test in `vtable::sumtable`?
问:
我有一个简单的问题。我想使用参数在两组之间进行 t.test 而不是 f.test。我从帮助文档中看到这应该与函数有关,但我不太确定该怎么做。group.test
independence.test
vtable::sumtable(data = mtcars,
vars = "mpg",
group = "am",
out = "return",
group.test = T)
#> Variable N Mean SD N Mean SD Test
#> 1 am 0 1
#> 2 mpg 19 17 3.8 13 24 6.2 F=16.86***
创建于 2023-08-24 with reprex v2.0.2
答:
1赞
NickCHK
9/27/2023
#1
对于回复缓慢,我们深表歉意;自从我搜索 vtable 以来已经有一段时间了。
根据文档,正如您所注意到的,执行自定义需要您编写一个适合传递给 的函数。这意味着它返回一个列表,其中包含 (1) 检验统计量的名称、(2) 统计量和 (3) p 值。因此,要进行 t 检验,您必须编写一个函数来执行此操作,然后将其作为选项传递给 (或者类似地,如果您想为group.test
independence.test
group.test
numeric.test
factor.test
)
library(vtable)
data(mtcars)
custom_t = function(x, y, w = NULL) {
t_test_result = t.test(y~x)
stat = unname(t_test_result$statistic)
pval = t_test_result$p.value
return(list('t',stat,pval))
}
sumtable(mtcars,
vars = 'mpg',
group = 'am',
group.test = list('numeric.test' = custom_t))
编辑:在现在在 CRAN 上的 vtable 版本 1.4.5 中,它包含在包中,您可以使用group.test = list('numeric.test' = vtable:::groupt.it)
上一个:根据 LFR 基准进行假设检验
下一个:如何使函数成为自定义函数的参数?
评论