1

我正在尝试对效果大小进行成对比较。我可以用 来做到这一点coh_d,但是,它让我重复比较。例如,在以下代码中,setosa vs. versicolor 与 versicolor vs. setosa 相同(除了翻转的负号/正号)。

library(esvis)
iris<- iris

coh_d(Sepal.Length ~ Species, data=iris)

1.) 这两种组合都需要报告吗?如果没有,有没有办法删除重复的比较?

2.) 有没有办法在每次比较的输出中添加一个识别列。在上面的代码中,这将添加 6 行标记为 Sepal.Length,因此当我找到多列的效果大小时,我知道比较属于哪个变量。我希望最终输出看起来像:

a <- colnames(iris)
a <- a[1:4]

effect_fun<- function(y,x){
  form2<- as.formula(paste0(y, "~", x))
  res2<-  effect<- rstatix::kruskal_effsize(data = iris, form2, conf.level = 0.95)
  
  return(res2)
  
}

effect.sizes<- lapply(a, FUN = effect_fun, x="Species")
effect.sizes<- do.call(rbind, effect.sizes)
View(effect.sizes)

虽然 usingkruskal_effsize给了我想要的输出格式,但它没有显示成对比较,这就是我切换到coh_d.

任何帮助,将不胜感激。

4

1 回答 1

0
m <- lm(Sepal.Length ~ Species, data=iris)
emm <- emmeans(m, ~Species)
eff_size(emm, sigma = sigma(m), edf = df.residual(m))
于 2022-02-15T00:51:46.663 回答