Data INEI:

library(rio)
reporte=import("reporteEXA.xlsx")
names(reporte)
##  [1] "Código"                 "Provincia"              "No usa electricidad"   
##  [4] "Sí usa electricidad"    "No usa gas (balón GLP)" "Sí usa gas (balón GLP)"
##  [7] "No usa carbón"          "Sí usa carbón"          "No usa leña"           
## [10] "Sí usa leña"

Análisis factorial con los datos:

str(reporte)
## 'data.frame':    197 obs. of  10 variables:
##  $ Código                : chr  "101" "102" "103" "104" ...
##  $ Provincia             : chr  "Amazonas, provincia: Chachapoyas" "Amazonas, provincia: Bagua" "Amazonas, provincia: Bongara" "Amazonas, provincia: Condorcanqui" ...
##  $ No usa electricidad   : num  14763 20313 7689 9853 13112 ...
##  $ Sí usa electricidad   : num  574 161 124 14 90 65 255 921 16 33 ...
##  $ No usa gas (balón GLP): num  4696 10557 3154 8331 6863 ...
##  $ Sí usa gas (balón GLP): num  10641 9917 4659 1536 6339 ...
##  $ No usa carbón         : num  15161 20185 7755 9841 13169 ...
##  $ Sí usa carbón         : num  176 289 58 26 33 26 335 218 4 4 ...
##  $ No usa leña           : num  7236 7357 2345 1059 1833 ...
##  $ Sí usa leña           : num  8101 13117 5468 8808 11369 ...
reporte=reporte[-c(197),]
names(reporte)[names(reporte)=="Código"]<-"Codigo"
reporte$Codigo<-as.numeric(reporte$Codigo)
str(reporte$Codigo)
##  num [1:196] 101 102 103 104 105 106 107 201 202 203 ...
summary(reporte)
##      Codigo        Provincia         No usa electricidad Sí usa electricidad
##  Min.   : 101.0   Length:196         Min.   :    687     Min.   :     1.00  
##  1st Qu.: 507.8   Class :character   1st Qu.:   8176     1st Qu.:    57.75  
##  Median :1056.0   Mode  :character   Median :  15798     Median :   146.50  
##  Mean   :1145.9                      Mean   :  40812     Mean   :  1291.95  
##  3rd Qu.:1702.2                      3rd Qu.:  32071     3rd Qu.:   479.00  
##  Max.   :2504.0                      Max.   :2228751     Max.   :125199.00  
##  No usa gas (balón GLP) Sí usa gas (balón GLP) No usa carbón    
##  Min.   :   572         Min.   :    116        Min.   :    600  
##  1st Qu.:  4649         1st Qu.:   2740        1st Qu.:   8193  
##  Median :  7776         Median :   7402        Median :  15618  
##  Mean   : 12711         Mean   :  29393        Mean   :  40983  
##  3rd Qu.: 12664         3rd Qu.:  17661        3rd Qu.:  31502  
##  Max.   :515782         Max.   :1838168        Max.   :2329530  
##  Sí usa carbón      No usa leña       Sí usa leña   
##  Min.   :    4.0   Min.   :    175   Min.   :  510  
##  1st Qu.:   33.0   1st Qu.:   1801   1st Qu.: 4987  
##  Median :  106.5   Median :   5155   Median : 9004  
##  Mean   : 1120.6   Mean   :  30459   Mean   :11645  
##  3rd Qu.:  348.2   3rd Qu.:  16494   3rd Qu.:15076  
##  Max.   :29288.0   Max.   :2310046   Max.   :58210
sum(is.na(reporte))
## [1] 0
library(psych)
library(GPArotation)
## 
## Attaching package: 'GPArotation'
## The following objects are masked from 'package:psych':
## 
##     equamax, varimin

Seleccionando:

dontselect=c("Codigo", "Provincia")
select=setdiff(names(reporte), dontselect)
theData=reporte[,select]
library(magrittr)
head(theData,10)%>%
  rmarkdown::paged_table()
library(polycor)
## 
## Attaching package: 'polycor'
## The following object is masked from 'package:psych':
## 
##     polyserial
summary(theData)
##  No usa electricidad Sí usa electricidad No usa gas (balón GLP)
##  Min.   :    687     Min.   :     1.00   Min.   :   572        
##  1st Qu.:   8176     1st Qu.:    57.75   1st Qu.:  4649        
##  Median :  15798     Median :   146.50   Median :  7776        
##  Mean   :  40812     Mean   :  1291.95   Mean   : 12711        
##  3rd Qu.:  32071     3rd Qu.:   479.00   3rd Qu.: 12664        
##  Max.   :2228751     Max.   :125199.00   Max.   :515782        
##  Sí usa gas (balón GLP) No usa carbón     Sí usa carbón      No usa leña     
##  Min.   :    116        Min.   :    600   Min.   :    4.0   Min.   :    175  
##  1st Qu.:   2740        1st Qu.:   8193   1st Qu.:   33.0   1st Qu.:   1801  
##  Median :   7402        Median :  15618   Median :  106.5   Median :   5155  
##  Mean   :  29393        Mean   :  40983   Mean   : 1120.6   Mean   :  30459  
##  3rd Qu.:  17661        3rd Qu.:  31502   3rd Qu.:  348.2   3rd Qu.:  16494  
##  Max.   :1838168        Max.   :2329530   Max.   :29288.0   Max.   :2310046  
##   Sí usa leña   
##  Min.   :  510  
##  1st Qu.: 4987  
##  Median : 9004  
##  Mean   :11645  
##  3rd Qu.:15076  
##  Max.   :58210
library(DescTools)
## 
## Attaching package: 'DescTools'
## The following objects are masked from 'package:psych':
## 
##     AUC, ICC, SD
library(lmtest)
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
library(kableExtra)
CorMatrix=cor(theData)
print(CorMatrix)
##                        No usa electricidad Sí usa electricidad
## No usa electricidad              1.0000000           0.9938651
## Sí usa electricidad              0.9938651           1.0000000
## No usa gas (balón GLP)           0.9780567           0.9761117
## Sí usa gas (balón GLP)           0.9984237           0.9920048
## No usa carbón                    0.9997453           0.9951775
## Sí usa carbón                    0.5305094           0.4873608
## No usa leña                      0.9981924           0.9973195
## Sí usa leña                      0.3660628           0.2868231
##                        No usa gas (balón GLP) Sí usa gas (balón GLP)
## No usa electricidad                 0.9780567              0.9984237
## Sí usa electricidad                 0.9761117              0.9920048
## No usa gas (balón GLP)              1.0000000              0.9649201
## Sí usa gas (balón GLP)              0.9649201              1.0000000
## No usa carbón                       0.9780216              0.9982153
## Sí usa carbón                       0.5189556              0.5269917
## No usa leña                         0.9726519              0.9979630
## Sí usa leña                         0.4226288              0.3426981
##                        No usa carbón Sí usa carbón No usa leña Sí usa leña
## No usa electricidad        0.9997453     0.5305094   0.9981924   0.3660628
## Sí usa electricidad        0.9951775     0.4873608   0.9973195   0.2868231
## No usa gas (balón GLP)     0.9780216     0.5189556   0.9726519   0.4226288
## Sí usa gas (balón GLP)     0.9982153     0.5269917   0.9979630   0.3426981
## No usa carbón              1.0000000     0.5117848   0.9985713   0.3567675
## Sí usa carbón              0.5117848     1.0000000   0.5141232   0.4168478
## No usa leña                0.9985713     0.5141232   1.0000000   0.3095933
## Sí usa leña                0.3567675     0.4168478   0.3095933   1.0000000
high_corr <- which(abs(CorMatrix) > 0.9 & abs(CorMatrix) < 1, arr.ind = TRUE)
print(high_corr)
##                        row col
## Sí usa electricidad      2   1
## No usa gas (balón GLP)   3   1
## Sí usa gas (balón GLP)   4   1
## No usa carbón            5   1
## No usa leña              7   1
## No usa electricidad      1   2
## No usa gas (balón GLP)   3   2
## Sí usa gas (balón GLP)   4   2
## No usa carbón            5   2
## No usa leña              7   2
## No usa electricidad      1   3
## Sí usa electricidad      2   3
## Sí usa gas (balón GLP)   4   3
## No usa carbón            5   3
## No usa leña              7   3
## No usa electricidad      1   4
## Sí usa electricidad      2   4
## No usa gas (balón GLP)   3   4
## No usa carbón            5   4
## No usa leña              7   4
## No usa electricidad      1   5
## Sí usa electricidad      2   5
## No usa gas (balón GLP)   3   5
## Sí usa gas (balón GLP)   4   5
## No usa leña              7   5
## No usa electricidad      1   7
## Sí usa electricidad      2   7
## No usa gas (balón GLP)   3   7
## Sí usa gas (balón GLP)   4   7
## No usa carbón            5   7
sample_size <- nrow(theData)
print(sample_size)
## [1] 196
library(robust)
## Loading required package: fit.models
#CorMatrix_robust <- covRob(theData)$cov
#print(CorMatrix_robust)

Existe una matriz cuya covarianza es singular o casi singular, lo que hace que no podamos invertirla. reciprocal condition number = 1.13996e-17

#CorMatrix=polycor::hetcor(theData)$correlations

PARTE 2: