一个R函数从执行ANOVA和TukeyHSD样品平均数,SD,和n

问题描述 投票:0回答:1

我不知道是否有任何一个R函数从样品平均数,SD,和样本大小(N)进行ANOVA和TukeyHSD。我发现ind.oneway.second功能从rpsychi对样品进行统计方差分析,但找不到对样本进行统计的任何TukeyHSD功能。

library("rpsychi")

Mean <- c(90,85,92,100,102,106)
SD <- c(9.035613,11.479667,9.760268,7.662572,9.830258,9.111457)
SampleSize <- c(9,9,9,9,9,9)

fm1 <- ind.oneway.second(Mean, SD, SampleSize)
fm1
names(fm1)
TukeyHSD(fm1$anova.table)
r statistics anova
1个回答
2
投票

这应该工作。基本上,它只是模拟完全匹配给定的装置的数据,标准偏差和样本大小。之后,你可以适合关注模型,做你感兴趣的任何事后检验。

Mean <- c(90,85,92,100,102,106)
SD <- c(9.035613,11.479667,9.760268,7.662572,9.830258,9.111457)
SampleSize <- c(9,9,9,9,9,9)


gen_data <- function(means, sds, samplesizes){
  n.grp <- length(means)
  grps <- factor(rep(1:n.grp, samplesizes))
  dat <- lapply(1:n.grp, function(i) {scale(rnorm(samplesizes[i]))*sds[i] + means[i]})
  y <- do.call(rbind, dat)
  out <- data.frame(group = grps, y = y)
  out
}

simulated_data <- gen_data(Mean, SD,SampleSize)
av <- aov(y ~ group, data = simulated_data)
summary(av)
TukeyHSD(av)
© www.soinside.com 2019 - 2024. All rights reserved.