Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
robertopucp
GitHub Repository: robertopucp/1eco35_2022_2
Path: blob/main/Trabajo_grupal/WG2/Grupo_9_r.R
2714 views
1
################ Trabajo 2 ############################
2
## Curso: Laboratorio de R y Python ###########################
3
## @author: Grupo 9
4
5
6
#-------------------------------------------------------------------------------
7
#*. Descargar librerias
8
library(dplyr) # librería de limpieza de datos
9
library(tidyr) # librería de limpieza de datos
10
library(readxl) # librería para subir archivos excel, csv
11
12
#*. Cargar ruta
13
user <- Sys.getenv("USERNAME") # username
14
print(user)
15
16
setwd(paste0("C:/Users/",user,"/Documents/GitHub/1ECO35_2022_2")) # set directorio
17
18
junin_data <- read_excel("data/Region_Junin.xlsx")
19
na.strings=c("",NA) # reemplaza vacios por missing
20
21
View(junin_data)
22
23
#-------------------------------------------------------------------------------
24
# 1. Información de cada variable - # Obtener el nombre de todas las variables
25
26
str(junin_data) #nombre de variables op.1
27
names (junin_data) #nombre de variables op.2
28
head(junin_data) #nombre de variables op.3
29
30
31
#-------------------------------------------------------------------------------
32
# 2. Mostrar el tipo de variables (type) así como presentar los principales estadísticos
33
class(junin_data) #tipo de archivo
34
35
lapply(junin_data, class) #tipos de variable en lista op.1
36
sapply(junin_data, class) #tipos de variable en vector op.2
37
38
summary(junin_data) # estadisticas descriptivas de cada variable
39
40
#-------------------------------------------------------------------------------
41
# 3. Verifique si las columnas presentan missing values
42
43
apply(X=is.na(junin_data),MARGIN = 2,FUN=sum)
44
#estos resultados se leen así, la variable 'Region' tiene 0 missings, la variable
45
# 'Place' tiene 11 missings (así para todas las variables).
46
47
#-------------------------------------------------------------------------------
48
# 4.Renombrar las siguientes variables (se crea nueva data para ello):
49
50
#place : comunidad
51
#men_not_read: homxlee
52
#women_not_read: mujerxlee
53
#total_not_read: totalxlee
54
55
Junin2 <- junin_data %>% rename( comunidad = Place, homxlee = men_not_read,mujerxlee=women_not_read,totalxlee=total_not_read)
56
57
#-------------------------------------------------------------------------------
58
#5.Muestre los valores únicos de las siguientes variables (comunidad , District)
59
60
#*Para variable "comunidad"
61
unique(Junin2$comunidad)
62
length(unique(Junin2$comunidad)) #183 valores únicos de comunidad
63
64
#Comprobación: 197 obs -14 obs duplicadas= 183 obs únicas
65
sum(duplicated(Junin2$comunidad) ) #14 valores duplicados
66
67
#*Para variable "District"
68
unique(Junin2$District)
69
length(unique(Junin2$District)) #35 valores únicos de District
70
71
#Comprobación: 197 obs -162 obs duplicadas= 35 obs únicas
72
sum(duplicated(Junin2$District) ) #162 valores duplicados
73
74
75
#-------------------------------------------------------------------------------
76
# 6. Crear columnas con las siguiente información:
77
# a. % de mujeres que no escriben ni leen
78
# b. % de varones que no escriben ni leen
79
# c. % de nativos respecto al total de la población
80
81
#a.
82
Junin2['porct_mujer']=Junin2$mujerxlee/(Junin2$totalxlee)
83
#b.
84
Junin2['porct_hombre']=Junin2$homxlee/(Junin2$totalxlee)
85
86
#c.
87
Junin2['total']=(Junin2$peruvian_men+Junin2$peruvian_women+Junin2$foreign_men+Junin2$foreign_women) # primero se crea variable de poblacion total
88
Junin2['porct_natives']=Junin2$natives/(Junin2$total)
89
90
91
#-------------------------------------------------------------------------------
92
# 7. Crear una base de datos con la siguiente información
93
94
#a. Quedarse con la información de los distritos
95
96
Junin2 <- Junin2[junin_data$District %in% c("CIUDAD DEL CERRO","JAUJA","ACOLLA","SAN GERÓNIMO","TARMA","OROYA","CONCEPCIÓN"),]
97
dim(Junin2) #57=filas, 43=columnas
98
View(Junin2)
99
100
#b. Quedarse con las comunidades que cuentan con nativos y mestizos.
101
102
Junin2 <- Junin2 %>% filter( (natives > 0) & (mestizos > 0 ))
103
View(Junin2)
104
105
106
#c. Solo quedarse con las variables trabajadas en el punto 8)
107
Junin2 <- Junin2[,c('porct_mujer','porct_hombre','porct_natives','District','comunidad')]
108
View(Junin2)
109
110
#d. Guardar la base de datos en formato csv y excel en la carpeta data
111
112
write.csv(Junin2, 'data/Base_cleaned_WG9.csv') #guardado en csv
113
114
install.packages("writexl") # instalar paquete de ser necesario
115
library(writexl)
116
117
write_xlsx(Junin2, 'data/Base_cleaned_WG9.xlsx') #guardado en xlsx
118