||
介绍GenStat、ASReml和R语言处理的方法
数据:wang9.1.csv
wang9.1.csv
GenStat 处理方法
ANOVA
对数据进行筛选,选择第一个地点的数据,进行分析,得到第一个地点的MSE。
第一个地点的自由度和MSE
10个地点的DF和MSE:
Bartlett’s test
GenStat command:
VHOMOGENEITY [group=Loc] ;var=MSE;DF=DF
Result:
Bartlett’s test for homogeneity of variances
Chi-square 15.37 on 9 degrees of freedom: probability 0.081
Line Mixed Model
Model 1
Model 2
LRT检验
X = -535.76+551.36 = 15.6
DF = 239-230 =9
结果是0.075,不显著,地点间方差其次。
asreml-r
和GenStat的Anova和mixed model结果一样。
dat <- dat[order(dat$loc),] library(asreml) summary(dat) model1 <- asreml(yield ~1 + cul*loc+loc/block, rcov =~ units,data=dat) model2 <- asreml(yield ~1 + cul*loc+loc/block, rcov =~ at(loc):units,data=dat) 1- pchisq(2*(model2$loglik-model1$loglik),9)
结果:
R语言代码
lianhe <- dat head(lianhe) a <- levels(lianhe$loc) ams <- NULL DF <- NULL for(i in 1:length(a)) { rr = lianhe[which(lianhe$loc == a[i]),] result <- aov(yield ~ cul + block,data=rr) DF[i] = result$df.residual; ms[i] = sum(residuals(result)^2/DF[i])} msdata <- data.frame(DF = DF,ms=ms) msdatamean_ms <- mean(ms);mean_ms# qq <- log(ms,base=exp(1)); qq# S <- sum(qq);S# X <- DF*(10*log(mean_ms,base=exp(1))-S) XS <- sum(log10(ms)); Smslength(a) ->b W <- b*log10(mean_ms); Wdf <-DF[1];df <- as.numeric(df); dfX2 <- 2.3026*df*(W-S); X2C <- 1+(b+1)/((3*b)*DF[1]) #C# > C# [1] 1.015278XXc <- X2/C; XXcchi <- qchisq(0.95,b-1); chi 1- pchisq(XXc,b-1) msdata
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-7-25 09:06
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社