Experimento en franjas con 4 bloques y 3 factores (sistema, yeso, fertilización). La aleatorización de los tratamientos fue en franjas, siendo los 2*2=4 niveles de sistema;yeso en el sentido vertical y los 5 niveles de fertilización en el sentido horizontal, en el cultivo del maíz.
sis: plantación convencional; plantación directa
yes: sin yeso; con 2 ton/ha de yeso
dos: dosis de npk (30, 60, 90, 120 e 150 kg/ha)
prod: productividad
cem: peso de 100 semillas
alt: altura de plantas.
Importe el archivo “franjatri.txt” desde una ubicación en Internet y cree el objeto “fai” de la siguiente manera:
fai<- fread("https://archive.org/download/franjatri/franjatri.txt",header=T, sep="\t", dec=",")Para visualizar de manera compacta la estructura del archivo “fai” ejecute:
str(fai)Para visualizar los nombres de las columnas el archivo “fai” ejecute:
names(fai) <- tolower(names(fai));names(fai)Para realizar los gráficos, se invoca el paquete “lattice”
library(lattice)xyplot(prod~dos|sis, groups=yes, data=fai, type=c("p","a"))xyplot(cem~dos|sis, groups=yes, data=fai, type=c("p","a"))xyplot(alt~dos|sis, groups=yes, data=fai, type=c("p","a"))Se convierte en factor que combina sis y yes (Franja Vertical)
fai <- transform(fai, rep=factor(rep), sis=factor(sis), yes=factor(yes), dos=ordered(dos));faiSe convierte en factor para la interacción
fai <- transform(fai, sisyes=interaction(sis, yes));failevels(fai$sis) <- c("PD","PC")levels(fai$yes) <- c("0t","2t")Se visualiza de manera compacta la estructura del archivo “fai”
str(fai)Se crea un vector de datos pr con la columna prod
pr<-as.vector(fai$prod)Luego el vector prod se convierte a un vector prod1 de tipo numérico
prod1<-as.numeric(pr)Se crea un vector de datos ce con la columna cem
ce<-as.vector(fai$cem)Luego el vector cem se convierte a un vector cem1 de tipo numérico
cem1<-as.numeric(ce)Se crea un vector de datos al con la columna alt
al<-as.vector(fai$alt)Luego el vector al se convierte a un vector alt1 de tipo numérico
alt1<-as.numeric(al)Análisis de la productividad, se ajusta el modelo con un error para revisar los residuos
m0 <- lm(prod1~rep/(sisyes+dos)+sis*yes*dos, data=fai)par(mfrow=c(2,2)); plot(m0); layout(1)m1<-aov(prod1~rep+sis*yes*dos+Error(rep:(sisyes+dos)), data=fai)summary(m1)m2 <- aov(prod1~rep+(sis/yes)*dos+Error(rep:(sisyes+dos)), data=fai)coef(m2)summary(m2, expand.split=FALSE,split=list("sis:yes"=list(PD=1,PC=2), dos=list(L=1,Q=2,C=3,QQ=4)))with(fai, tapply(prod1, list(sis, yes), mean))tabla de los efectos
model.tables(m1)model.tables(m1, type="means")Para borrar todos los objetos del Script, ejecute:
rm(list=ls())