我想进行两个样本的独立t-test,我的分组变量"group“被分解为'0‘和'1’。当调用t.test()时,它计算0组的差值作为平均值- 1组的平均值,给我一个负的差值和负的置信区间。
我怎样才能颠倒比较的顺序,使R估计为组1的平均值-组0的平均值?我知道它比较alphabetically,所以我假设它比较数值递增的数字。我已经尝试了forcats包中的fct_rev(),将group '1‘设置为参考组,但这并没有改变t.test比较的顺序,仍然给出了负输出。这很重要,因为这是一个单边的测试,所以我对差异的迹象有期望。
谢谢!
编辑:我希望将名称保留为'0‘和'1’,因为它们需要这样编码,以便后续的分析工作
发布于 2021-11-11 21:17:25
您可以在构造因子时使用levels参数。可以恢复级别(参见下面的代码),也可以指定任意顺序:
# two samples with different mean
x <- c(rnorm(10, 5, 1), rnorm(10, 8, 1))
# the grouping variable
f1 <- factor(rep(0:1, each=10))
# the grouping variable with reverse order of levels
f2 <- factor(f1, levels=rev(levels(f1)))
t.test(x ~ f1)
t.test(x ~ f2)发布于 2021-11-11 21:20:13
出于某种原因,我不能评论,你能不能简单地重新编码你的变量,然后重新运行它,让它们以正确的顺序运行?例如:
mydata <- read.csv(yourdataset.csv, na.strings = "")
#make a new "recoded group" variable
mydata$group.recoded <- mydata$group
mydata <- within(mydata, group.recoded[group.variable==group0] <- "group2")https://stackoverflow.com/questions/69934856
复制相似问题