#------------------------------------------------------------ # Experimento: Ácido linoléico conjugado na dieta de suínos - # para manipular a deposição de lipídios e a - # composição de ácidos graxos na carne. (CLA) - # Prof. Ana Maria Bridi, CCA-UEL - # Doutoranda: Cátia Barata - # Mestranda: Bárbara Giangarelli - # - # Equipe: Ana Clara Canto Souza e Bruno Ambrozini. - #------------------------------------------------------------ # #----------------------------------------------- # Análise de delineamento interamente - # casualizado fatorial de níveis de cla e sexo - #----------------------------------------------- rm(list=ls()) # dados = read.csv2('C:/Aulas/Ciência Animal/R/CLA.csv') dados = read.csv2('http://www.uel.br/pessoal/silvano/Dados/CLA.csv', head=T, dec=',') head(dados) tail(dados) str(dados) attach(dados) dados$Trat = interaction(Sexo, Conc) dados = transform(dados, Animal=factor(Animal), Baia=factor(Baia), conc=factor(Conc)) str(dados) # dados$trat = interaction(Sexo, Conc) attach(dados) #------------------------------------------------------------- # Conc - Concentração de CLA utilizada: 0,0 - 0,5 - 1,0 - 1,5 # PesoF - Peso Final # PCQ - Peso de Carcaça Quente # EG - Espessura de Gordura # Trat - Combinação Sexo*CLA # 6 repetições por tratamento #-------------------------------------------------------------- # #--------------------------- # Estatísticas descritivas - #--------------------------- # (medias.conc = tapply(PCQ, Conc, mean)) (variância.conc = tapply(EG, Conc, var)) (desvio.conc = tapply(EG, Conc, sd)) (cv.conc = desvio.conc / medias.conc * 100) (medias.sex = tapply(EG, Sexo, mean)) (variância.sex = tapply(EG, Sexo, var)) (desvio.sex = tapply(EG, Sexo, sd)) (cv.sex = desvio.sex / medias.sex * 100) (soma = tapply(EG, Trat, sum)) (medias = tapply(EG, Trat, mean)) (variância = tapply(EG, Trat, var)) (desvio = tapply(EG, Trat, sd)) (cv = desvio / medias * 100) # Forma mais direta (médias.sexo.conc = tapply(EG, list(Sexo, Conc), mean)) (variâncias.sexo.conc = tapply(EG, list(Sexo, Conc), var)) (desvios.sexo.conc = tapply(EG, list(Sexo, Conc), sd)) (CV.sexo.conc = desvios.sexo.conc / médias.sexo.conc * 100) #----------------------- # Gráficos descritivos - #----------------------- par(mai=c(1.1, .8, .2, .2)) boxplot(EG ~ Trat, ylab="Espessura de Gordura (mm)", xlab="Tratamentos", las=1, col='LightYellow') points(medias, pch="+", col=2, cex=1.5) boxplot(EG ~ Conc, ylab="Espessura de Gordura (mm)", xlab="Concentração de CLA", las=1, col='LightYellow') (médias.conc = tapply(EG, Conc, mean)) points(médias.conc, pch="+", col=2, cex=1.5) boxplot(EG ~ Sexo, ylab="Espessura de Gordura (mm)", xlab="Sexo", names=c('Fêmeas', 'Machos'), las=1, col='LightYellow') points(medias.sex, pch="+", col=2, cex=1.5) require(car) Boxplot(EG ~ Sexo, ylab="Espessura de Gordura (mm)", xlab="Sexo", names=c('Fêmeas', 'Machos'), las=1, col='LightYellow') points(medias.sex, pch="+", col=2, cex=1.5) #------------------------- # Gráficos de Interação - #------------------------- interaction.plot(Sexo, Conc, EG, las=1, xlab='Sexo', ylab='Espessura de Gordura (mm)', col=c('red','blue'), bty='l', trace.label = deparse(substitute(Tratamentos)), lwd=2.5) interaction.plot(Conc, Sexo, EG, las=1, xlab='Concentração de CLA', ylab='Espessura de Gordura (mm)', col=c('red','blue'), bty='l', trace.label = deparse(substitute(Sexo)), lwd=2.5) #------------------------ # Tendência dos modelos - #------------------------ require(plotly) graf = ggplot(data=dados, aes(x=Conc, y=EG)) + geom_point(aes(text=paste("Sexo:", Sexo))) + geom_smooth(aes(colour=Sexo, fill=Sexo)) + facet_wrap(~ Sexo) ggplotly(graf) # Usando as médias require(plyr) (estat = ddply(dados, .(conc, Sexo), summarise, mean=mean(EG), sd=sd(EG))) #------------------------ # Análise de variâncias - #------------------------ dados.av = aov(EG ~ Trat) summary(dados.av) mod = aov(EG ~ Sexo*conc) summary(mod) #------------------------------- # Verificação dos pressupostos - #------------------------------- # # Normalidade dos erros shapiro.test(dados.av$res) par(mai=c(1, 1, .5, .2)) plot(dados.av, which=c(2:2), pch=19, col='red', las=1) # Homogeneidade de variâncias bartlett.test(dados.av$res ~ Trat) #----------------------------------- # Desdobramentos dentro dos níveis - #----------------------------------- require(ExpDes.pt) mod.anava = fat2.dic(Sexo, Conc, EG, quali=c(TRUE, TRUE), fac.names=c("Sexo", "Concentração de CLA")) mod.reg = fat2.dic(Sexo, Conc, EG, quali=c(TRUE, FALSE), fac.names=c("Sexo", "Concentração de CLA")) #--------------------------------------- # Gráfico das doses de CLA para fêmeas - #--------------------------------------- b0=10 ; b1=-5.96; b2=26.24 ; b3=-14.51 plot(EG[Sexo=='F'] ~ Conc[Sexo=='F'], las=1, bty='l', pch=19, col='red', xlab='Dose do CLA', ylab='Espessura de Gordura') curve(b0 + b1*x + b2*x^2 + b3*x^3, col='blue', lwd=2, from=0, to=1.5, add=TRUE) deriv(~ b0 + b1*x + b2*x^2 + b3*x^3, 'x') z = matrix(c(b1, 2*b2, 3*b3), ncol=1) (raizes = polyroot(z)) (x1 = raizes[1]) (x2 = raizes[2]) # Eq = 10,0 - 5,96*d + 26,24*d^2 - 14,51*d^3 (y1 = b0 + b1*x1 + b2*x1^2 + b3*x1^3) (y2 = b0 + b1*x2 + b2*x2^2 + b3*x2^3) abline(v = c(x1, x2), lty='dashed') abline(h = c(y1, y2), lty='dashed') # Somente as médias das concentrações (médias.fem = tapply(EG[Sexo=='F'], Conc[Sexo=='F'], mean)) plot(médias.fem ~ c(0,.5,1,1.5), las=1, bty='l', pch=19, col='red', ylim=c(0,20), xlab='Dose do CLA', ylab='Espessura de Gordura') curve(b0 + b1*x + b2*x^2 + b3*x^3, col='blue', lwd=2, from=0, to=1.5, add=TRUE) abline(v = c(x1, x2), lty='dashed') abline(h = c(y1, y2), lty='dashed') #--------------------------------------- # Gráfico das doses de CLA para machos - #--------------------------------------- b0=18.144 ; b1=-2.9103 plot(EG[Sexo=='M'] ~ Conc[Sexo=='M'], las=1, bty='l', pch=19, col='red', xlab='Doses do CLA', ylab='Espessura de Gordura') curve(b0 + b1*x, col='blue', lwd=2, from=0, to=1.5, add=TRUE) (médias.macho = tapply(EG[Sexo=='M'], Conc[Sexo=='M'], mean)) plot(médias.macho ~ c(0,.5,1,1.5), las=1, bty='l', pch=19, col='red', ylim=c(0,25), xlab='Dose do CLA', ylab='Espessura de Gordura') curve(b0 + b1*x, col='blue', lwd=2, from=0, to=1.5, add=TRUE)