Módulo 3

Distribución Normal

x<-rnorm(5000,0.0,1)
x2<-seq(-4,4,length=200)
hist(x,breaks=30,freq = FALSE)
lines(x2,dnorm(x2,0,1),type="l")
print(mean(x))
## [1] 0.01725774
abline(v=-1.96)
abline(v=1.96)

x2<-seq(-4,4,length=200)
plot(x2,dnorm(x2,0,1),type = "l")

pnorm(1.96,0,1)  #Probabilidad acumulativa
## [1] 0.9750021
qnorm(0.97,0,1)  #quantile
## [1] 1.880794

Ho: media grupo_A <> media grupo_B Ha: media grupo_A = media grupo_B

grupo_A <- rnorm(30, mean = 75, sd = 10)
grupo_B <- rnorm(30, mean = 80, sd = 12)
resultado <- t.test(grupo_A, grupo_B,
                    alternative = "two.sided",
                    var.equal = FALSE)
print(resultado)
## 
##  Welch Two Sample t-test
## 
## data:  grupo_A and grupo_B
## t = -3.0321, df = 57.462, p-value = 0.00364
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -15.283842  -3.127017
## sample estimates:
## mean of x mean of y 
##  71.80845  81.01388
x<-seq(50,120,length=200)
plot(x,dnorm(x,75,5),type="l")
lines(x,dnorm(x,90,5),type="l")

qqnorm(grupo_B)
qqline(grupo_B)

Ho: no es normAl Ha: es normal pvalue>0.05 se acepta Ha

shapiro.test(grupo_A)
## 
##  Shapiro-Wilk normality test
## 
## data:  grupo_A
## W = 0.97858, p-value = 0.7866

##Prueba de ANOVA

parcela<-c("A","A","A","A","B","B","B","B","C","C","C","C")
datos<-c(rnorm(4,12,2),rnorm(4,25,2.3),rnorm(4,11,1.9))
df<-data.frame(parcela=parcela,datos=datos)
df$parcela<-factor(df$parcela)
df
##    parcela     datos
## 1        A  9.458031
## 2        A  8.184695
## 3        A 11.737808
## 4        A 10.692292
## 5        B 23.270964
## 6        B 26.194433
## 7        B 23.287987
## 8        B 25.170899
## 9        C 13.451401
## 10       C  9.415386
## 11       C 11.181436
## 12       C  9.436402

Ho: media 1 = media2 = media 3 Ha: por lo menos uno de los tratamientos es diferente pvalue>0.05

modelo<-aov(datos~parcela,data=df)
summary(modelo)
##             Df Sum Sq Mean Sq F value   Pr(>F)    
## parcela      2  526.8   263.4   97.49 7.96e-07 ***
## Residuals    9   24.3     2.7                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
boxplot(datos~parcela,data=df)

url<-"https://sigpri.com/seminarioR/DatosModulo3.csv"
df2<-read.csv(url)
df2$Especie<-factor(df2$Especie)
df2$Tratamiento<-factor(df2$Tratamiento)
df2
##    Especie Tratamiento     Valor
## 1        A       trat1 6.7415120
## 2        A       trat1 1.5898228
## 3        A       trat1 7.3666530
## 4        A       trat1 5.3171126
## 5        A       trat1 1.3756336
## 6        A       trat1 4.7247241
## 7        A       trat2 3.6096438
## 8        A       trat2 1.0660475
## 9        A       trat2 9.9657925
## 10       A       trat2 9.5981954
## 11       A       trat2 0.4573696
## 12       A       trat2 4.8660935
## 13       A       trat3 3.4173670
## 14       A       trat3 2.3257174
## 15       A       trat3 0.2024711
## 16       A       trat3 7.8728936
## 17       A       trat3 1.3620005
## 18       A       trat3 8.9337429
## 19       B       trat1 3.2295988
## 20       B       trat1 5.8473325
## 21       B       trat1 8.2547306
## 22       B       trat1 6.3732184
## 23       B       trat1 7.0241692
## 24       B       trat1 5.2308266
## 25       B       trat2 4.0866511
## 26       B       trat2 4.3561235
## 27       B       trat2 8.7170661
## 28       B       trat2 6.5464608
## 29       B       trat2 0.3247144
## 30       B       trat2 0.5892915
## 31       B       trat3 9.6694802
## 32       B       trat3 5.5677655
## 33       B       trat3 2.7433846
## 34       B       trat3 7.3186340
## 35       B       trat3 3.4272121
## 36       B       trat3 0.9509871
modelo2<-aov(Valor~Especie*Tratamiento,data=df2)
summary(modelo2)
##                     Df Sum Sq Mean Sq F value Pr(>F)
## Especie              1   2.49   2.488   0.249  0.621
## Tratamiento          2   4.59   2.297   0.230  0.796
## Especie:Tratamiento  2   8.65   4.323   0.433  0.653
## Residuals           30 299.84   9.995
qqnorm(modelo2$residuals)
qqline(modelo2$residuals)

shapiro.test(modelo2$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  modelo2$residuals
## W = 0.94173, p-value = 0.05752
TukeyHSD(modelo2)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Valor ~ Especie * Tratamiento, data = df2)
## 
## $Especie
##          diff       lwr      upr    p adj
## B-A 0.5258252 -1.626335 2.677986 0.621435
## 
## $Tratamiento
##                    diff       lwr      upr     p adj
## trat2-trat1 -0.74099040 -3.922779 2.440798 0.8348484
## trat3-trat1 -0.77363988 -3.955429 2.408149 0.8214834
## trat3-trat2 -0.03264948 -3.214438 3.149139 0.9996472
## 
## $`Especie:Tratamiento`
##                        diff       lwr      upr     p adj
## B:trat1-A:trat1  1.47406966 -4.077591 7.025730 0.9638858
## A:trat2-A:trat1  0.40794732 -5.143713 5.959608 0.9999148
## B:trat2-A:trat1 -0.41585846 -5.967519 5.135802 0.9999063
## A:trat3-A:trat1 -0.50021096 -6.051871 5.051450 0.9997675
## B:trat3-A:trat1  0.42700086 -5.124660 5.978661 0.9998932
## A:trat2-B:trat1 -1.06612235 -6.617783 4.485538 0.9913587
## B:trat2-B:trat1 -1.88992812 -7.441589 3.661732 0.9021165
## A:trat3-B:trat1 -1.97428062 -7.525941 3.577380 0.8848057
## B:trat3-B:trat1 -1.04706881 -6.598729 4.504592 0.9920442
## B:trat2-A:trat2 -0.82380578 -6.375466 4.727855 0.9974052
## A:trat3-A:trat2 -0.90815827 -6.459819 4.643502 0.9958906
## B:trat3-A:trat2  0.01905354 -5.532607 5.570714 1.0000000
## A:trat3-B:trat2 -0.08435250 -5.636013 5.467308 1.0000000
## B:trat3-B:trat2  0.84285932 -4.708801 6.394520 0.9971084
## B:trat3-A:trat3  0.92721181 -4.624449 6.478872 0.9954711
boxplot(Valor~Especie+Tratamiento,data=df2)

Especie<-rep(c("A","B"),each=18)
Tratamiento<-rep(rep(c("Trat1","Trat2","Trat3"),each=6),2)
Tratamiento
##  [1] "Trat1" "Trat1" "Trat1" "Trat1" "Trat1" "Trat1" "Trat2" "Trat2" "Trat2"
## [10] "Trat2" "Trat2" "Trat2" "Trat3" "Trat3" "Trat3" "Trat3" "Trat3" "Trat3"
## [19] "Trat1" "Trat1" "Trat1" "Trat1" "Trat1" "Trat1" "Trat2" "Trat2" "Trat2"
## [28] "Trat2" "Trat2" "Trat2" "Trat3" "Trat3" "Trat3" "Trat3" "Trat3" "Trat3"
Valor<-c(rnorm(6,5,0.9),rnorm(6,8,0.9),rnorm(6,4,0.9),rnorm(6,7,0.9),rnorm(6,5,0.9),rnorm(6,5.8,0.9))
df3<-data.frame(Especie=Especie,Tratamiento=Tratamiento,Valor=Valor)
boxplot(Valor~Especie+Tratamiento,data=df3)

modelo3<-aov(Valor~Especie*Tratamiento,data=df3)
summary(modelo3)
##                     Df Sum Sq Mean Sq F value   Pr(>F)    
## Especie              1   1.39   1.386   1.498  0.23053    
## Tratamiento          2  12.43   6.214   6.713  0.00389 ** 
## Especie:Tratamiento  2  53.37  26.684  28.828 1.04e-07 ***
## Residuals           30  27.77   0.926                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
qqnorm(modelo3$residuals)
qqline(modelo3$residuals)

shapiro.test(modelo3$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  modelo3$residuals
## W = 0.9818, p-value = 0.8044
TukeyHSD(modelo3)
##   Tukey multiple comparisons of means
##     95% family-wise confidence level
## 
## Fit: aov(formula = Valor ~ Especie * Tratamiento, data = df3)
## 
## $Especie
##          diff        lwr      upr     p adj
## B-A 0.3924927 -0.2624621 1.047447 0.2305281
## 
## $Tratamiento
##                   diff       lwr        upr     p adj
## Trat2-Trat1 -0.2852273 -1.253523  0.6830684 0.7500398
## Trat3-Trat1 -1.3642941 -2.332590 -0.3959985 0.0043890
## Trat3-Trat2 -1.0790668 -2.047362 -0.1107712 0.0264439
## 
## $`Especie:Tratamiento`
##                       diff        lwr        upr     p adj
## B:Trat1-A:Trat1  1.9385458  0.2490406  3.6280510 0.0172279
## A:Trat2-A:Trat1  2.2067878  0.5172826  3.8962931 0.0050216
## B:Trat2-A:Trat1 -0.8386966 -2.5282018  0.8508086 0.6607972
## A:Trat3-A:Trat1 -1.5372296 -3.2267348  0.1522756 0.0911353
## B:Trat3-A:Trat1  0.7471872 -0.9423181  2.4366924 0.7579726
## A:Trat2-B:Trat1  0.2682420 -1.4212632  1.9577473 0.9964286
## B:Trat2-B:Trat1 -2.7772424 -4.4667476 -1.0877372 0.0003104
## A:Trat3-B:Trat1 -3.4757754 -5.1652806 -1.7862702 0.0000095
## B:Trat3-B:Trat1 -1.1913586 -2.8808639  0.4981466 0.2927104
## B:Trat2-A:Trat2 -3.0454844 -4.7349896 -1.3559792 0.0000813
## A:Trat3-A:Trat2 -3.7440174 -5.4335227 -2.0545122 0.0000025
## B:Trat3-A:Trat2 -1.4596007 -3.1491059  0.2299045 0.1215241
## A:Trat3-B:Trat2 -0.6985330 -2.3880382  0.9909722 0.8049168
## B:Trat3-B:Trat2  1.5858838 -0.1036215  3.2753890 0.0755981
## B:Trat3-A:Trat3  2.2844168  0.5949116  3.9739220 0.0034730
boxplot(Valor~Especie+Tratamiento,data=df3)