Problema 1

Inciso A

#Todo el problema 1 se asume muestra grande dado n-p > 50

miu <- matrix(c(80,95,70,40),ncol = 4,byrow = TRUE)
sigma <- matrix(c(20,-6,8,9,-6,15,-5,4,8,-5,30,10,9,4,10,12),ncol = 4,byrow = TRUE)

miuA <- 1*80-3*95+0*70+1*40 #Media combinacion lineal 
cmatrix <- matrix(c(1,-3,0,1),ncol = 4,byrow = TRUE) #matriz de coeficientes de combinacion lineal
sigmaA <- sqrt(cmatrix %*% sigma %*% t(cmatrix))#Matriz varianzas y covarianzas 

A <- pnorm(215,miuA,sqrt(sigmaA))
# El promedio me da negativo entonces tiene bastante sentido que sea 1
A
## [1] 1

Inciso B

x1 <-  matrix(c(101,77,320,114),ncol = 4,byrow = TRUE)
x2 <-  matrix(c(118,97,124,210),ncol = 4,byrow = TRUE)
d <- sqrt((x1-x2) %*% solve(sigma) %*% t(x1-x2))
d
##         [,1]
## [1,] 96.8771

Inciso C

cmatrix <- matrix(c(3,-2,0,-4,1,-2,1,-1,2,1,0,0),ncol = 4,byrow = TRUE)
# Y = aX
# miuY = amiux
miuC <- cmatrix %*% t(miu)
# sigmay = c*sigma*CT
sigmaC <- cmatrix %*% sigma %*% t(cmatrix)
miuC
##      [,1]
## [1,] -110
## [2,]  -80
## [3,]  255
sigmaC
##      [,1] [,2] [,3]
## [1,]  352  187    8
## [2,]  187  160   17
## [3,]    8   17   71

Problema 2

Inciso A

#Todo el problema 2 se asume muestra pequeƱa dado n-p < 50 / 
#Dependiendo de como se quiera analizar n-p > 40 tambien hubiera funcionado, 
#Esta segunda aseveración si se cumple (45-4) pero pero para cuestiones de poner en practica teoria de muestra pequeña, se utilizarÔ 50. 

n <- 45
miu <- matrix(c(110,250,85),ncol = 3,byrow = TRUE)
sigma <- matrix(c(40,7,-10,7,60,5,-10,5,80),ncol = 3,byrow = TRUE)
S <- (1/n)*sigma

miuB <- 1*miu[1]+2*miu[2]-1*miu[3] #Media combinacion lineal 
cmatrix <- matrix(c(1,2,-3),ncol = 3,byrow = TRUE) #matriz de coeficientes de combinacion lineal
sigmaA <- sqrt(cmatrix %*% S %*% t(cmatrix))#Matriz varianzas y covarianzas 

B <- pnorm(255,miuA,sqrt(sigmaA))
# El promedio me da 525 entonces tiene bastante sentido que sea 1, revisar despues. 
B
## [1] 1

Inciso B

x1 <-  matrix(c(95,310,91),ncol = 3,byrow = TRUE)
d <- sqrt((x1-miu) %*% solve(S) %*% t(x1-miu))
d
##          [,1]
## [1,] 57.18544

Inciso C

cmatrix <- matrix(c(2,3,0,1,0,-1),ncol = 3,byrow = TRUE)
# Y = aX
# miuY = amiux
miuC <- cmatrix %*% t(miu)
# sigmay = c*sigma*CT
sigmaC <- cmatrix %*% S %*% t(cmatrix)

Problema 3

health <- read.csv(file = 'C:/Users/Joel Rodarte/Desktop/Health.csv')
IT <- read.csv(file = 'C:/Users/Joel Rodarte/Desktop/IT.csv')

#Ho: miuH - miuIT = 0 
#Es decir los vectores de medias son iguales 
#H1: miuH - miuIT =! 0 

#Se asume que las varianzas son constantes 
#Se asumen teoria de muestra grande Dado que n1-p y n2-p son >40 utilizarƩ 

p = 4
nH = 45
nIT = 57
#Dado que n1-p y n2-p son >40 utilizarƩ teoria de muestra grande 

delta <- matrix(c(0,0,0,0),ncol = 4,byrow = TRUE)
miuH <- colMeans(health)
miuIT <- colMeans(IT)
sigmaH <- cov(health)
sigmaIT <- cov(IT)

Spond <-  ((nH-1)*sigmaH + (nIT-1)*sigmaIT)/(nH+nIT-2)

T2 <- (miuH - miuIT - delta ) %*% solve((1/nH + 1/nIT)*Spond)   %*% t(miuH - miuIT - delta)
#7.075
C2 <- (p*(nH+nIT-2))/(nH+nIT-p-1)*9.487729037 # ==CHISQ.INV.RT(.05,4)
#39.12
T2 > C2 #False 
##       [,1]
## [1,] FALSE
# T2 dos es menor entonces NO se rechaza Ho las medias de los vectores son iguales. 


#Ho = La varianzas poblacionales son iguales 
#Ha = Las varianzas poblacionales son diferentes
US <- read.csv(file = 'C:/Users/Joel Rodarte/Desktop/Us.csv')
library(biotools)
## Warning: package 'biotools' was built under R version 4.2.2
## Loading required package: MASS
## Warning: package 'MASS' was built under R version 4.2.2
## ---
## biotools version 4.2
res <- boxM(as.matrix(US[,1:4]), as.factor(US$Sector))
res
## 
##  Box's M-test for Homogeneity of Covariance Matrices
## 
## data:  as.matrix(US[, 1:4])
## Chi-Sq (approx.) = 129.5, df = 10, p-value < 2.2e-16
#pvalor = 2.2e-16
# Conclusión = Se rechaza Ho. Se tiene evidencia para pensar que las varianzas poblacionales no son iguales y por ende no seria valido las conlcusiónes anteriores. 


library(MVN)
## Warning: package 'MVN' was built under R version 4.2.2
mvn(US[,1:4],mvnTest = "hz",univariateTest = "SW",univariatePlot="histogram",multivariatePlot = "qq")

## $multivariateNormality
##            Test       HZ p value MVN
## 1 Henze-Zirkler 22.92577       0  NO
## 
## $univariateNormality
##           Test     Variable Statistic   p value Normality
## 1 Shapiro-Wilk    Assets       0.6336  <0.001      NO    
## 2 Shapiro-Wilk    Sales        0.6178  <0.001      NO    
## 3 Shapiro-Wilk Market.Value    0.4971  <0.001      NO    
## 4 Shapiro-Wilk   Profits       0.5238  <0.001      NO    
## 
## $Descriptives
##                n      Mean    Std.Dev Median  Min   Max   25th  75th     Skew
## Assets       102 35.912745  51.822608 14.750  1.6 331.1  7.450 37.85 2.911144
## Sales        102 26.840196  40.681677 11.150  1.1 217.5  4.825 27.25 2.808347
## Market.Value 102 64.400980 116.856828 26.000  1.0 752.0 13.750 55.70 3.761581
## Profits      102  2.766755   5.758131  0.807 -3.7  45.2  0.421  2.65 4.562910
##               Kurtosis
## Assets       10.593213
## Sales         8.386789
## Market.Value 15.584169
## Profits      27.579467
#Se encuentra que esta No es una normal multivariada entonces el procedimiento presente no es valido. Se rechaza H0 con un pvalor de una pruebe de henke zilke de 0

Problema 4

WS <- read.csv(file = 'C:/Users/Joel Rodarte/Desktop/W_S.csv')
WN <- read.csv(file = 'C:/Users/Joel Rodarte/Desktop/W_N.csv')

p = 2
nWS =26 
nWN =35 
 

delta <- matrix(c(0,0),ncol = 2,byrow = TRUE)
miuWS <- colMeans(WS)
miuWN <- colMeans(WN)
sigmaWS <- cov(WS)
sigmaWN <- cov(WN)

Spond <-  ((nWS-1)*sigmaWS + (nWN-1)*sigmaWN)/(nWS+nWN-2)

T2 <- (miuWS - miuWN - delta ) %*% solve((1/nWS + 1/nWN)*Spond)   %*% t(miuWS - miuWN - delta)
#53.11267
C2 <- (p*(nWS+nWN-2))/(nWS+nWN-p-1)*3.153123258 # =CHISQ.INV.RT(D24,D25)(1-.05,4,97)
#6.414975
T2 > C2 #TRUE 
##      [,1]
## [1,] TRUE
# T2 es mayor entonces Rechaza Ho las medias de los vectores son diferentes
# TIene sentida dado que la nmedia de hardness y mortality son sumamente diferentes 

#Se asume que las varianzas son constantes 
#Se asumen teoria de muestra grande Dado que n1-p y n2-p son >40 utilizarƩ 


#Ho = La varianzas poblacionales son iguales 
#Ha = Las varianzas poblacionales son diferentes
Water <- read.csv(file = 'C:/Users/Joel Rodarte/Desktop/Water.csv')
library(MASS)
library(biotools)
res <- boxM(as.matrix(Water[,2:3]), as.factor(Water$location))
res
## 
##  Box's M-test for Homogeneity of Covariance Matrices
## 
## data:  as.matrix(Water[, 2:3])
## Chi-Sq (approx.) = 5.7782, df = 3, p-value = 0.1229
#pvalor = 0.1229
# Conclusión = No se rechaza Ho, las varianzas poblacionales son iguales por lo que lo que se concluyó es vÔlido. 

library(MVN)
mvn(Water[,2:3],mvnTest = "hz",univariateTest = "SW",univariatePlot="histogram",multivariatePlot = "qq")

## $multivariateNormality
##            Test       HZ     p value MVN
## 1 Henze-Zirkler 1.360545 0.002846094  NO
## 
## $univariateNormality
##           Test  Variable Statistic   p value Normality
## 1 Shapiro-Wilk mortality    0.9855  0.6884      YES   
## 2 Shapiro-Wilk hardness     0.8879  <0.001      NO    
## 
## $Descriptives
##            n       Mean   Std.Dev Median  Min  Max 25th 75th        Skew
## mortality 61 1524.14754 187.66875   1555 1096 1987 1379 1668 -0.08033603
## hardness  61   47.18033  38.09397     39    5  138   14   75  0.65856235
##             Kurtosis
## mortality -0.6254457
## hardness  -0.7836902
#Se encuentra que esta No es una normal multivariada entonces el procedimiento presente no es valido. Se rechaza H0 con un pvalor de una pruebe de henke zilke de .002

Problema 5

olive <- read.csv(file = 'C:/Users/Joel Rodarte/Desktop/olive.csv')

#Ho: El vector de medias de las 8 variables son iguales
#Ha: El vector de medias de las 8 variables es diferente

inf_manova <- manova(as.matrix(olive[,2:8])~as.factor(olive$Region), data=olive)
summary(inf_manova, test="Wilks")
##                          Df   Wilks approx F num Df den Df    Pr(>F)    
## as.factor(olive$Region)   2 0.08264   199.35     14   1126 < 2.2e-16 ***
## Residuals               569                                             
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Pvalor = 2.2e-16
#Se rechaza H0 los vectores de medias son diferentes para las propiedades del olivo entre las tres regiones. 





### Igualdad de matrices de covarianzas
#Ho = La varianzas poblacionales son iguales 
#Ha = Las varianzas poblacionales son diferentes
### Igualdad de matrices de covarianzas
#Ho = La varianzas poblacionales son iguales 
#Ha = Las varianzas poblacionales son diferentes
library(biotools)
# res2 <- boxM(as.matrix(as.matrix(olive[,2:8])~as.factor(olive$Region))
#Pvalor=2.2e-16
# Se rechazas Ho. La covarianas entre las rgtiones es diferentes, entonces no es valido utilizar las aseveraciónes anteriores. 


library(MVN)
mvn(olive[,2:8],mvnTest = "hz",univariateTest = "SW",univariatePlot="histogram",multivariatePlot = "qq")

## $multivariateNormality
##            Test       HZ p value MVN
## 1 Henze-Zirkler 4.808038       0  NO
## 
## $univariateNormality
##           Test    Variable Statistic   p value Normality
## 1 Shapiro-Wilk  palmitic      0.9675  <0.001      NO    
## 2 Shapiro-Wilk palmitoleic    0.9611  <0.001      NO    
## 3 Shapiro-Wilk   stearic      0.9478  <0.001      NO    
## 4 Shapiro-Wilk    oleic       0.9713  <0.001      NO    
## 5 Shapiro-Wilk  linoleic      0.9461  <0.001      NO    
## 6 Shapiro-Wilk  linolenic     0.9604  <0.001      NO    
## 7 Shapiro-Wilk  arachidic     0.9129  <0.001      NO    
## 
## $Descriptives
##               n       Mean   Std.Dev Median  Min  Max    25th    75th
## palmitic    572 1231.74126 168.59226 1201.0  610 1753 1095.00 1360.00
## palmitoleic 572  126.09441  52.49436  110.0   15  280   87.75  169.25
## stearic     572  228.86538  36.74494  223.0  152  375  205.00  249.00
## oleic       572 7311.74825 405.81022 7302.5 6300 8410 7000.00 7680.00
## linoleic    572  980.52797 242.79922 1030.0  448 1470  770.75 1180.75
## linolenic   572   31.88811  12.96870   33.0    0   74   26.00   40.25
## arachidic   572   58.09790  22.03025   61.0    0  105   50.00   70.00
##                   Skew   Kurtosis
## palmitic     0.3422686 -0.1962058
## palmitoleic  0.4540451 -0.5871442
## stearic      0.9847540  1.5142504
## oleic        0.0762623 -0.8909229
## linoleic    -0.2087071 -1.2033393
## linolenic   -0.5485431  0.4653325
## arachidic   -0.9785804  0.9577348
#Se encuentra que esta No es una normal multivariada entonces el procedimiento presente no es valido. Se rechaza H0 con un pvalor de una pruebe de henke zilke de 0.
#De hecho ninguna de las variables sigue una distribución normal con pruebas de shapiro wilk