Indice

1.Ejercicio 1

2.Ejercicio 2

3.Ejercicio 3

knitr::opts_chunk$set(echo = T)
library(knitr)
library(readxl)
library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5     v purrr   0.3.4
## v tibble  3.1.3     v dplyr   1.0.7
## v tidyr   1.1.4     v stringr 1.4.0
## v readr   2.0.2     v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
Jalisco<-read_excel("C:/Users/divis/Downloads/Jalisco.xlsx", na=c("*", "N/D"))
#
EJERCICIO 1

Utilizando la información correspondiente a los resultados del Censo de Población y Vivienda 2020 del INEGI para el estado de Jalisco disponible en la plataforma Moodle, obtener lo siguiente:

#1.1

Los 10 municipios con mayor proporción de población con alguna discapacidad.

sum_disc_mun<-aggregate(Jalisco$PCON_DISC~NOM_MUN,
          FUN = sum, data = Jalisco)
val_disc_mun<-sort(sum_disc_mun[,2], decreasing = T)
prin_mun_disc<-which(sum_disc_mun[,2]>=val_disc_mun[10])

kable(sum_disc_mun[prin_mun_disc,])
NOM_MUN Jalisco$PCON_DISC
35 El Salto 10873
40 Guadalajara 73785
56 Lagos de Moreno 7758
63 Ocotlán 6053
67 Puerto Vallarta 12531
80 San Pedro Tlaquepaque 28756
95 Tepatitlán de Morelos 5335
99 Tlajomulco de Zúñiga 25325
102 Tonalá 23641
120 Zapopan 54121

##1.2

Los 30 municipios con mayor proporción de población con 65 años o más.

#POB65_MAS
sum_65_mun<-aggregate(Jalisco$POB65_MAS~NOM_MUN,
                        FUN = sum, data = Jalisco)
sum_PT_mun<-aggregate(Jalisco$POBTOT~NOM_MUN,
                      FUN = sum, data = Jalisco)
x1<-sum_65_mun[,2]/sum_PT_mun[,2]
x2<-sort(x1, decreasing = T)
x3<-which(x1>=x2[30])
x4<-data.frame(sum_65_mun[x3,1], x1[x3])
x5<-x4[order(x4$x1.x3., decreasing = TRUE), ]
colnames(x5)<-c("Municipio", "Proporcion>65")
kable(x5)
Municipio Proporcion>65
7 Ejutla 0.1918223
8 El Limón 0.1846125
25 Totatiche 0.1787081
19 Santa María de los Ángeles 0.1721195
16 Quitupan 0.1651151
10 Huejúcar 0.1648649
6 Cuautla 0.1602031
5 Chapala 0.1539242
4 Cañadas de Obregón 0.1536007
13 Mexticacán 0.1514980
9 Guachinango 0.1514646
2 Atenguillo 0.1496648
23 Teocuitatlán de Corona 0.1486548
18 San Sebastián del Oeste 0.1460873
20 Santa María del Oro 0.1460055
22 Tenamaxtlán 0.1457135
24 Tonaya 0.1446066
14 Mixtlán 0.1423859
11 Juchitlán 0.1407662
28 Villa Guerrero 0.1402715
1 Atengo 0.1384176
27 Valle de Juárez 0.1381889
30 Yahualica de González Gallo 0.1375815
29 Villa Purificación 0.1371317
26 Unión de Tula 0.1358794
17 San Martín Hidalgo 0.1342609
12 Mascota 0.1339700
15 Pihuamo 0.1331460
21 Tecolotlán 0.1299163
3 Atoyac 0.1298193

##1.3

Los 30 municipios con mayor población económicamente activa.

sum_pea_mun<-aggregate(Jalisco$PEA~NOM_MUN,
                       FUN = sum, data = Jalisco)
val_pea_mun<-sort(sum_pea_mun[,2], decreasing = T)
prin_mun_pea<-which(sum_pea_mun[,2]>=val_pea_mun[10])
inter_pea<-data.frame(sum_pea_mun[prin_mun_pea,1],
           sum_pea_mun[prin_mun_pea,2])
colnames(inter_pea)<-c("Municipio", "PEA")
tabla_pea<-inter_pea[order(inter_pea$PEA,
                           decreasing = T),]
kable(tabla_pea)
Municipio PEA
9 Zapopan 781705
2 Guadalajara 747410
7 Tlajomulco de Zúñiga 370745
5 San Pedro Tlaquepaque 357168
8 Tonalá 294989
4 Puerto Vallarta 163237
1 El Salto 111997
3 Lagos de Moreno 86038
6 Tepatitlán de Morelos 78547
10 Zapotlán el Grande 60735

##1.4

Los 10 municipios con mayor proporción de población sin educación básica.

# 1.4
#P15PRI_IN, P15SEC_IN, P15YM_SE

POB_NEB<-Jalisco$P15PRI_IN+Jalisco$P15SEC_IN+Jalisco$P15YM_SE
PROP_NEB<-POB_NEB/Jalisco$POBTOT
e1<-sort(PROP_NEB, decreasing = T)
e2<-which(PROP_NEB>=e1[10])
frame_pob_NEB<-data.frame(Jalisco$NOM_MUN[e2], PROP_NEB[e2])
colnames(frame_pob_NEB)<-c("Municipio", "Proporcion poblacion SEB")
table_PSEB<-frame_pob_NEB[order(frame_pob_NEB$`Proporcion poblacion SEB`,
                   decreasing = T ),]
kable(table_PSEB)
Municipio Proporcion poblacion SEB
5 Santa María del Oro 0.3217631
4 Jilotlán de los Dolores 0.3069496
8 Quitupan 0.2870442
6 Mezquitic 0.2801703
9 Santa María de los Ángeles 0.2705548
10 Cañadas de Obregón 0.2643573
3 Jesús María 0.2638816
7 Pihuamo 0.2589145
1 Chimaltitán 0.2568807
2 Huejúcar 0.2479730

##1.5

Los 10 municipios con mayor población indígena.

# 1.5
# P3YM_HLI
i1<-sort(Jalisco$P3YM_HLI, decreasing = T)
i2<-which(Jalisco$P3YM_HLI>=i1[10])
MUN_POB_IND<-data.frame(Jalisco$NOM_MUN[i2],Jalisco$P3YM_HLI[i2])
colnames(MUN_POB_IND)<-c("Municipio", "Total poblacion indigena")
table_mun_ind<-MUN_POB_IND[order(MUN_POB_IND$`Total poblacion indigena`,
                                 decreasing = T),]
kable(table_mun_ind)
Municipio Total poblacion indigena
3 Mezquitic 16102
10 Zapopan 14413
2 Guadalajara 4150
7 Tlajomulco de Zúñiga 4052
1 Bolaños 4026
8 San Pedro Tlaquepaque 3194
4 Puerto Vallarta 3069
9 Tonalá 1413
5 El Salto 1283
6 Tala 1038

##1.6

Los 10 municipios con mayor proporción de viviendas particulares habitadas con internet.

# TVIVPARHAB, VPH_INTER

prop_viv_int<-Jalisco$VPH_INTER/Jalisco$TVIVPARHAB
vi1<-sort(prop_viv_int, decreasing = T)
vi2<-which(prop_viv_int>=vi1[10])
frame_viv_int<-data.frame(Jalisco$NOM_MUN[vi2],
                          prop_viv_int[vi2])
colnames(frame_viv_int)<-c("Municipio",
                           "Prop viviendas con internet")
table_viv_int<-frame_viv_int[order(frame_viv_int$`Prop viviendas con internet`,
                                   decreasing = T),]
kable(table_viv_int)
Municipio Prop viviendas con internet
3 Guadalajara 0.7526666
10 Zapopan 0.7520238
5 Puerto Vallarta 0.6884412
1 Zapotlán el Grande 0.6696874
8 San Pedro Tlaquepaque 0.6658985
2 Chapala 0.6355346
9 Tonalá 0.6341901
7 Tlajomulco de Zúñiga 0.6209957
4 Ocotlán 0.6108821
6 Sayula 0.6079034
#
EJERCICIO 2

Demostrar que la siguiente cadena de texto es un palíndromo: A mama Roma le aviva el amor a papa y a papa Roma le aviva el amor a mama

t<-str_c(unlist(strsplit(tolower("A mama Roma le aviva el amor a papa y a papa Roma le aviva el amor a mama"),
             " ")),sep = "", collapse = "")
nchar(t)
## [1] 55
palind_fun<-function(w,s){
  (substr(w, start = nchar(w)-s,
          stop = nchar(w)-s))==(substr(w, start = nchar(w)-nchar(w)+s+1,
                                       stop = nchar(w)-nchar(w)+s+1))
}

vec_palind<-c(palind_fun(t,0), palind_fun(t,1), palind_fun(t,2), palind_fun(t,3),
              palind_fun(t,4), palind_fun(t,5), palind_fun(t,6), palind_fun(t,7),
              palind_fun(t,8), palind_fun(t,9), palind_fun(t,10), palind_fun(t,11),
              palind_fun(t,12), palind_fun(t,13), palind_fun(t,14), palind_fun(t,15),
              palind_fun(t,16), palind_fun(t,17), palind_fun(t,18), palind_fun(t,19),
              palind_fun(t,20), palind_fun(t,21), palind_fun(t,22), palind_fun(t,23),
              palind_fun(t,24), palind_fun(t,25), palind_fun(t,26))
vec_palind
##  [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [16] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
#
Ejercicio 3

Probar si la siguiente matriz (X) es definida positiva y, si sí, obtener su inversa. Y una vez obtenida su inversa, comprobar que \(XX^{−1} = I\)

\[X = \begin{bmatrix}3&4&-1\\ 2&-1&3\\ 2&2&1 \end{bmatrix}\]

mat3<-matrix(c(3,4,-1,2,-1,3,2,2,1), ncol = 3, byrow = T)
inv_cond<-function(m){
  if(det(matrix(m[1,1]))>0&det(matrix(m[1:2,1:2],
                                         ncol = 2, byrow = T))>0&det(m)>0)
  {
   inv_mat<-solve(m)
   inv_mat%*%m
  }
  else
  {
    paste("La matriz no es definida positiva")
  }
}
inv_cond(mat3)
## [1] "La matriz no es definida positiva"
jn<-solve(mat3)
jn%*%mat3
##              [,1]         [,2]          [,3]
## [1,] 1.000000e+00 0.000000e+00 -1.110223e-16
## [2,] 0.000000e+00 1.000000e+00  0.000000e+00
## [3,] 2.220446e-16 2.220446e-16  1.000000e+00