Importe el archivo “Maiz.txt” desde una ubicación en Internet y cree el objeto “Fran” de la siguiente manera:

Fran<- fread("https://archive.org/download/byrong_Maiz/Maiz.txt",header=T, sep="\t", dec=",")

Para visualizar el contenido de los primeros seis registros del archivo “Fran” ejecute:

print(head(Fran))

Definición del modelo y análisis de la varianza

Se crea un objeto tipo factor Ni con la columna Nitrog

Ni<- factor(Fran$Nitrog)

Se crea un objeto tipo factor Ri con la columna Irrig

Riego<- factor(Fran$Riego)

Se crea un objeto tipo factor BLOF con la columna Bloque

BLOF<-factor(Fran$Bloque)

Se crea un vector de datos Re con la columna Rend (variable de respuesta)

Re<-as.vector(Fran$Rend)

Luego el vector Rend se convierte a un vector Re1 de tipo numérico

Re1<-as.numeric(Re)

Se invoca para su uso el paquete “agricolae”

library(agricolae)

Análisis de varianza usando la función (strip.plot) Strip-Plot

fran.anova<-strip.plot(BLOF, Ni, Riego, Re1)

Pruebas de comparación múltiple de medias

Prueba de Tukey

Para Dosis de Nitrógeno

FactorA<-HSD.test(Re1,Ni,fran.anova$gl.a,fran.anova$Ea);FactorA

Para Niveles de Riego

FactorB<-HSD.test(Re1,Riego,fran.anova$gl.b,fran.anova$Eb);FactorB

Para interacción de Dosis de Nitrógeno y Niveles de Riego

FactorAB<-HSD.test(Re1,Riego:Ni,fran.anova$gl.c,fran.anova$Ec);FactorAB

Pruebas de comparación múltiple de medias y Gráficas de barras

Prueba HSD de Tukey para Dosis de Nitrógeno

out1<-with(Fran,HSD.test(Re1,Ni,fran.anova$gl.a,fran.anova$Ea));out1

Gráfica de barras para Dosis de Nitrógeno

bar.err(out1$means, variation ="SE", ylim=c(0,90), xlab="Dosis de Nitrógeno", ylab="Rendimiento")

Prueba HSD de Tukey para Niveles de Riego

out2<-with(Fran,HSD.test(Re1,Riego,fran.anova$gl.b,fran.anova$Eb));out2

Gráfica de barras para Niveles de Riego

bar.err(out2$means, variation ="SE", ylim=c(0,90), xlab="Riego", ylab="Rendimiento")

Prueba HSD de Tukey para la interacción

out3<-with(Fran,HSD.test(Re1,Riego:Ni,fran.anova$gl.c,fran.anova$Ec));out3

Gráfica de barras para la interacción

bar.err(out3$means, variation ="SE", ylim=c(0,90), xlab="Riego por Nitrógeno", ylab="Rendimiento")

Gráfico de interacción

interaction.plot(Ni,Riego,Re1, fixed=T, xlab="Dosis de Nitrógeno", ylab="Rendimiento", pch = c(20,21),type = "b") 

Efectos simples

Se crea un vector de datos A

A<-fran.anova$data

Se crea una lista a con los niveles de Dosis de Nitrógeno

a<-nlevels(A$Ni)

Se crea una lista b con los Niveles de riego

b<-nlevels(A$Riego)

Se crea una lista r con los niveles de Bloques

r<-nlevels(A$BLOF)

Se crean vectores de datos para los errores experimentales; a, b y c

Ea<-fran.anova$Ea; Eb<-fran.anova$Eb; Ec<-fran.anova$Ec

Se crean vectores de datos para los grados de libertad asociados a los errores a, b y c respectivamente

gla<-fran.anova$gl.a; glb<-fran.anova$gl.b; glc<-fran.anova$gl.c

Medias de las interacciones

B <-tapply.stat(A[,4],A[,2:3],mean);B

Errores estándar de las medias de las interacciones

std<-tapply.stat(A[,4],A[,2:3],function(x) sd(x)/sqrt(length(x)));std

Medias de las interacciones y sus errores estándares

B<-data.frame(B[,1:2],Re1=B[,3],std=std[,3]);B

Cuadrado medio de la interacción

cmab<-(b-1)*Ec + Ea
cmba<-(a-1)*Ec + Eb

Prueba HSD de Tukey

Rango estudiado para Dosis de Nitrógeno

ta <- qtukey(0.95,a,gla);ta

Rango estudiado para Niveles de Riego

tb <- qtukey(0.95,b,glb);tb

Rango estudiado para Interacción

tc <- qtukey(0.95,a*b,glc);tc
tab<- ((b-1)*Ec*tc + Ea*ta)/cmab;tab
tba<- ((a-1)*Ec*tc + Eb*tb)/cmba;tba

Comparaciones de Dosis de Nitrógeno por Niveles de Riego

groups<-by(B,B[,2],function(x) order.group(x$Ni,x$Re1,N=b*r,cmab,tab,std.err=x$std,console=FALSE));groups

Comparaciones de Niveles de Riego por Dosis de Nitrógeno

groups1<-by(B,B[,1], function(x) order.group(x$Riego,x$Re1,N=a*r,cmba,tba,std.err=x$std,console=FALSE));groups1
summary(fran.anova)

Para borrar todos los objetos del Script, ejecute:

rm(list=ls())

Regresar a la página principal de Scripts