UNMSM - CIENCIA POLÍTICA

Curso de Estadística

Sesión 1: Práctica dirigida

Información sobre afiliados a diversosn partidos: 1. Columnas del Data frame

nombre=c("Juan", "Rocío", "Manuel", "Pedro", "Carla", "Fresia", "Alfredo", "Teresa", "María")

partido=c("Mundo colorado", "Los verdes", "Los Tibios", "Mundo Colorado", "Los tibios", "Los verdes", "Los verdes", "Los verdes", "Los tibios")

edad=c(45, 42, 34, 41, 25, 24, 30, 35, 37)

tafiliación=c(11, 3, 2, 9, 3, 2, 2, 12, 7)

sexo=c("M", "F", "M", "M", "F", "F", "M", "F", "F")

nivelEdu=c("secundaria", "bachiller", "bachiller", "bachiller", "bachiller", "bachiller", "magíster", "bachiller", "bachiller")
  1. Armando el Data frame
afilPart=data.frame(nombre, partido, edad, tafiliación, sexo,nivelEdu, stringsAsFactors = F)

Viendo Data frame:

afilPart
##    nombre        partido edad tafiliación sexo   nivelEdu
## 1    Juan Mundo colorado   45          11    M secundaria
## 2   Rocío     Los verdes   42           3    F  bachiller
## 3  Manuel     Los Tibios   34           2    M  bachiller
## 4   Pedro Mundo Colorado   41           9    M  bachiller
## 5   Carla     Los tibios   25           3    F  bachiller
## 6  Fresia     Los verdes   24           2    F  bachiller
## 7 Alfredo     Los verdes   30           2    M   magíster
## 8  Teresa     Los verdes   35          12    F  bachiller
## 9   María     Los tibios   37           7    F  bachiller

Parte 1: * El mayor del grupo es:

afilPart[afilPart$edad==max(afilPart$edad), "nombre"]
## [1] "Juan"
  • El sexo del menor del grupo es:
afilPart[afilPart$edad==min(afilPart$edad), "sexo"]
## [1] "F"
  • El partido de Fresia es:
afilPart[afilPart$nombre=="Fresia", "partido"]
## [1] "Los verdes"

*El nivel educativo y nombre de la persona con más años de afiliación es:

afilPart[afilPart$tafiliación==max(afilPart$tafiliación), c('nivelEdu', "nombre")]
##    nivelEdu nombre
## 8 bachiller Teresa

*El nombre de las mujeres del partido Los verdes:

afilPart[afilPart$sexo=="F" & (afilPart$partido=="Los verdes"), "nombre"]
## [1] "Rocío"  "Fresia" "Teresa"

*La edad y nombre de la persona con mayor tiempo de afiliación en el partido Los verdes

afilPart[afilPart$tafiliación==max(afilPart$tafiliación[afilPart$partido=="Los verdes"]), c("nombre", "edad")]
##   nombre edad
## 8 Teresa   35

*¿Quiénes son los mayores de 24, afiliados al partido Los Verdes?

afilPart[afilPart$edad>24 &afilPart$partido=="Los verdes", "nombre" ]
## [1] "Rocío"   "Alfredo" "Teresa"

*Ordene el cuadro alfabéticamente (Partidos) y la edad en forma descendente

afilPart_2=afilPart[order(partido, -edad),]

Probando…

afilPart_2
##    nombre        partido edad tafiliación sexo   nivelEdu
## 9   María     Los tibios   37           7    F  bachiller
## 5   Carla     Los tibios   25           3    F  bachiller
## 3  Manuel     Los Tibios   34           2    M  bachiller
## 2   Rocío     Los verdes   42           3    F  bachiller
## 8  Teresa     Los verdes   35          12    F  bachiller
## 7 Alfredo     Los verdes   30           2    M   magíster
## 6  Fresia     Los verdes   24           2    F  bachiller
## 1    Juan Mundo colorado   45          11    M secundaria
## 4   Pedro Mundo Colorado   41           9    M  bachiller

Creando otra Data Frame

nombre=c("Lorena", "Celinda", "Pablo")

partido=c("Marrón", "Marrón", "Azul")

edad=c(49, 32, 27)

tafiliación=c(3, 4, 8)

nivelEdu=c("bachiller", "magíster", "bachiller")

auto=c("sí", "sí", "no")

Creando…

AuPart=data.frame(nombre, partido, edad, tafiliación, nivelEdu, auto, stringsAsFactors = F)

Comprobando…

AuPart
##    nombre partido edad tafiliación  nivelEdu auto
## 1  Lorena  Marrón   49           3 bachiller   sí
## 2 Celinda  Marrón   32           4  magíster   sí
## 3   Pablo    Azul   27           8 bachiller   no

Usando el comando merge unimos ambas Datas:

afiliados_total= merge(afilPart, AuPart)

Comprobando…

afiliados_total
## [1] nombre      partido     edad        tafiliación nivelEdu    sexo       
## [7] auto       
## <0 rows> (or 0-length row.names)