Denis Fernando Flamenco Nolasco
17 de marzo de 2019
library(readr)
library(dplyr)
ruta_archivo<-"C:/Users/74/Downloads/practica_1_ejercicio.csv"
datos<-read_csv(file = ruta_archivo)
datos## # A tibble: 6 x 3
## Y X1 X2
## <dbl> <dbl> <dbl>
## 1 90 1 0
## 2 100 2 0
## 3 110 3 0
## 4 135 4 1
## 5 145 5 1
## 6 165 6 1
datos %>% select("Y") %>% as.matrix()->Yregresada
Yregresada## Y
## [1,] 90
## [2,] 100
## [3,] 110
## [4,] 135
## [5,] 145
## [6,] 165
datos %>% mutate(Cte=1) %>% select("Cte","X1","X2") %>% as.matrix()->Xregresor
Xregresor## Cte X1 X2
## [1,] 1 1 0
## [2,] 1 2 0
## [3,] 1 3 0
## [4,] 1 4 1
## [5,] 1 5 1
## [6,] 1 6 1
columna_1<-as.matrix(Xregresor[,1])
columna_2<-as.matrix(Xregresor[,2])
Tras<-t(columna_1)
productoescalar<-((t(columna_1)%*%columna_2))
productoescalar## [,1]
## [1,] 21
Xtranspuesta<-t(Xregresor)
sigmamatriz<-(Xtranspuesta%*%Xregresor)
sigmamatriz## Cte X1 X2
## Cte 6 21 3
## X1 21 91 15
## X2 3 15 3
cruzada<-(Xtranspuesta%*%Yregresada)
cruzada## Y
## Cte 745
## X1 2875
## X2 445
inversigma<-solve(sigmamatriz)
inversigma## Cte X1 X2
## Cte 1.333333 -0.50 1.166667
## X1 -0.500000 0.25 -0.750000
## X2 1.166667 -0.75 2.916667
betaestimado<-(inversigma%*%cruzada)
betaestimado## Y
## Cte 75.00000
## X1 12.50000
## X2 10.83333
matrizp<-(Xregresor%*%inversigma%*%Xtranspuesta)
matrizp## [,1] [,2] [,3] [,4] [,5]
## [1,] 5.833333e-01 3.333333e-01 8.333333e-02 2.500000e-01 -7.771561e-16
## [2,] 3.333333e-01 3.333333e-01 3.333333e-01 -4.440892e-16 -5.551115e-16
## [3,] 8.333333e-02 3.333333e-01 5.833333e-01 -2.500000e-01 -2.220446e-16
## [4,] 2.500000e-01 -2.220446e-16 -2.500000e-01 5.833333e-01 3.333333e-01
## [5,] -2.220446e-16 -2.220446e-16 -2.220446e-16 3.333333e-01 3.333333e-01
## [6,] -2.500000e-01 0.000000e+00 2.500000e-01 8.333333e-02 3.333333e-01
## [,6]
## [1,] -2.500000e-01
## [2,] -6.661338e-16
## [3,] 2.500000e-01
## [4,] 8.333333e-02
## [5,] 3.333333e-01
## [6,] 5.833333e-01
pidempotente<-(matrizp%*%matrizp)
pidempotente## [,1] [,2] [,3] [,4] [,5]
## [1,] 5.833333e-01 3.333333e-01 8.333333e-02 2.500000e-01 -1.628329e-15
## [2,] 3.333333e-01 3.333333e-01 3.333333e-01 -8.557947e-16 -1.073216e-15
## [3,] 8.333333e-02 3.333333e-01 5.833333e-01 -2.500000e-01 -4.024558e-16
## [4,] 2.500000e-01 -4.163359e-16 -2.500000e-01 5.833333e-01 3.333333e-01
## [5,] -3.978277e-16 -3.700743e-16 -3.238173e-16 3.333333e-01 3.333333e-01
## [6,] -2.500000e-01 -9.714677e-17 2.500000e-01 8.333333e-02 3.333333e-01
## [,6]
## [1,] -2.500000e-01
## [2,] -1.290634e-15
## [3,] 2.500000e-01
## [4,] 8.333333e-02
## [5,] 3.333333e-01
## [6,] 5.833333e-01
Yproyectada<-(matrizp%*%Yregresada)
Yproyectada## Y
## [1,] 87.5000
## [2,] 100.0000
## [3,] 112.5000
## [4,] 135.8333
## [5,] 148.3333
## [6,] 160.8333
error<-(Yregresada-Yproyectada)
error## Y
## [1,] 2.500000e+00
## [2,] 3.410605e-13
## [3,] -2.500000e+00
## [4,] -8.333333e-01
## [5,] -3.333333e+00
## [6,] 4.166667e+00
autovalor<-eigen(sigmamatriz)
autovalor## eigen() decomposition
## $values
## [1] 98.356654 1.377669 0.265677
##
## $vectors
## [,1] [,2] [,3]
## [1,] -0.2238107 0.8591615 0.4601633
## [2,] -0.9616881 -0.1179798 -0.2474608
## [3,] -0.1583188 -0.4979179 0.8526505
pautovalor<-eigen(matrizp)
pautovalor## eigen() decomposition
## $values
## [1] 1.000000e+00 1.000000e+00 1.000000e+00 1.239518e-15 -2.771913e-16
## [6] -2.581015e-15
##
## $vectors
## [,1] [,2] [,3] [,4] [,5]
## [1,] 0.44417350 -0.04515477 0.61968079 -0.08041677 0.64046746
## [2,] 0.01029591 0.19169554 0.54449991 0.58524525 -0.44635626
## [3,] -0.42358169 0.42854584 0.46931903 -0.50482849 -0.19411121
## [4,] 0.14712398 -0.70779482 0.24640286 0.01366530 -0.38951772
## [5,] -0.28675362 -0.47094451 0.17122198 -0.45174232 -0.05554324
## [6,] -0.72063121 -0.23409420 0.09604109 0.43807702 0.44506096
## [,6]
## [1,] 0.001112332
## [2,] -0.353441306
## [3,] 0.352328974
## [4,] 0.514544336
## [5,] -0.677872031
## [6,] 0.163327695
traza<-sum(diag(matrizp))
sumautovalores<-sum(pautovalor$values)
sumautovalores## [1] 3
c1<-c(1,0,0,0,0,0)
c2<-c(0,1,0,0,0,0)
c3<-c(0,0,1,0,0,0)
c4<-c(0,0,0,1,0,0)
c5<-c(0,0,0,0,1,0)
c6<-c(0,0,0,0,0,1)
c<-c(c1,c2,c3,c4,c5,c6)
matrizidentidad<-cbind(c1,c2,c3,c4,c5,c6)
matrizidentidad## c1 c2 c3 c4 c5 c6
## [1,] 1 0 0 0 0 0
## [2,] 0 1 0 0 0 0
## [3,] 0 0 1 0 0 0
## [4,] 0 0 0 1 0 0
## [5,] 0 0 0 0 1 0
## [6,] 0 0 0 0 0 1
identimenosp<-(matrizidentidad-matrizp)
identimenosp## c1 c2 c3 c4 c5
## [1,] 4.166667e-01 -3.333333e-01 -8.333333e-02 -2.500000e-01 7.771561e-16
## [2,] -3.333333e-01 6.666667e-01 -3.333333e-01 4.440892e-16 5.551115e-16
## [3,] -8.333333e-02 -3.333333e-01 4.166667e-01 2.500000e-01 2.220446e-16
## [4,] -2.500000e-01 2.220446e-16 2.500000e-01 4.166667e-01 -3.333333e-01
## [5,] 2.220446e-16 2.220446e-16 2.220446e-16 -3.333333e-01 6.666667e-01
## [6,] 2.500000e-01 0.000000e+00 -2.500000e-01 -8.333333e-02 -3.333333e-01
## c6
## [1,] 2.500000e-01
## [2,] 6.661338e-16
## [3,] -2.500000e-01
## [4,] -8.333333e-02
## [5,] -3.333333e-01
## [6,] 4.166667e-01
identimasp<-(matrizidentidad+matrizp)
identimasp## c1 c2 c3 c4 c5
## [1,] 1.583333e+00 3.333333e-01 8.333333e-02 2.500000e-01 -7.771561e-16
## [2,] 3.333333e-01 1.333333e+00 3.333333e-01 -4.440892e-16 -5.551115e-16
## [3,] 8.333333e-02 3.333333e-01 1.583333e+00 -2.500000e-01 -2.220446e-16
## [4,] 2.500000e-01 -2.220446e-16 -2.500000e-01 1.583333e+00 3.333333e-01
## [5,] -2.220446e-16 -2.220446e-16 -2.220446e-16 3.333333e-01 1.333333e+00
## [6,] -2.500000e-01 0.000000e+00 2.500000e-01 8.333333e-02 3.333333e-01
## c6
## [1,] -2.500000e-01
## [2,] -6.661338e-16
## [3,] 2.500000e-01
## [4,] 8.333333e-02
## [5,] 3.333333e-01
## [6,] 1.583333e+00