Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
robertopucp
GitHub Repository: robertopucp/1eco35_2022_2
Path: blob/main/Trabajo_grupal/WG7/Grupo_4_r.R
2714 views
1
%>% ############################################################################
2
# #
3
# TAREA 7 - GRUPO 4 #
4
# #
5
################################################################################
6
7
# Flavia Oré - 20191215
8
# Seidy Ascencios - 20191622
9
# Luana Morales - 20191240
10
# Marcela Quintero - 20191445
11
12
13
#------------------------------------------------------------------------------#
14
# #
15
# PREGUNTA 1 #
16
# #
17
#------------------------------------------------------------------------------#
18
19
#Recursos necesarios para la pregunta
20
pacman::p_load(haven,dplyr, stringr, fastDummies,srvyr )
21
22
library(readxl)
23
library(stringr)
24
library(haven)
25
library(dplyr)
26
library(tidyverse)
27
library (reshape)
28
29
#Seteamos el directorio
30
31
user <- Sys.getenv("USERNAME")
32
33
setwd( paste0("C:/Users/",user,"/Documents/GitHub/1ECO35_2022_2/data/crime_data") )
34
35
data_administrativa <- read_excel("data_administrativa.xlsx")
36
37
sapply(data_administrativa, typeof)
38
39
apply(data_administrativa , 2, function(x) sum(is.na(x)))
40
41
#Covertimos el nombre de las variables en minusculas
42
43
colnames(data_administrativa) <- tolower(colnames(data_administrativa))
44
45
46
#------------------------------------------------------------------------------#
47
# #
48
# PREGUNTA 2 #
49
# #
50
#------------------------------------------------------------------------------#
51
52
#Limpiamos la columna nombre
53
54
data_administrativa$nombre<- apply(data_administrativa['nombre'],
55
1 ,
56
function(x) str_replace(x,"[^a-zA-Z\\s]+",''))
57
58
#------------------------------------------------------------------------------#
59
# #
60
# PREGUNTA 3 #
61
# #
62
#------------------------------------------------------------------------------#
63
64
#Limpiamos la fecha de nacimiento de aquellos elementos que la ensucien
65
66
data_administrativa$born_date<- apply(data_administrativa['born_date'],
67
1 ,
68
function(x) str_replace(x,"(00:00)|(!)|(#)|(%)",''))
69
70
#Creamos la nueva variable en formato fecha
71
72
data_administrativa$fecha_nacimiento <-as.Date(data_administrativa$born_date,format='%d/%m/%Y')
73
74
#------------------------------------------------------------------------------#
75
# #
76
# PREGUNTA 4 #
77
# #
78
#------------------------------------------------------------------------------#
79
80
# Limpiamos la columna age
81
data_administrativa$age <- apply(data_administrativa['age'],
82
1 ,
83
function(x) gsub("[^0-9]", '', x))
84
85
#------------------------------------------------------------------------------#
86
# #
87
# PREGUNTA 5 #
88
# #
89
#------------------------------------------------------------------------------#
90
91
#Creamos dummies según el rango del sentenciado en la organización criminal
92
93
#dum1: toma el valor de 1 si el sentenciado fue líder de la banda criminal
94
#dum2: toma el valor de 1 si el sentenciado fue cabecilla local
95
#dum3: toma el valor de 1 si el sentenciado fue cabecilla regional
96
#dum4: toma el valor de 1 si el sentenciado fue sicario
97
#dum5: toma el valor de 1 si el sentenciado realizó extorsión
98
#dum6: toma el valor de 1 si el sentenciado fue miembro regular
99
#dum7: toma el valor de 1 si el sentenciado fue novato o principiante
100
101
#Limpiamos la variable novate y extorsion
102
103
data_administrativa$rank<- apply(data_administrativa['rank'],
104
1 ,
105
function(x) str_replace(x,"(novto)|(noato)|(principiante)",'novato'))
106
107
data_administrativa$rank<- apply(data_administrativa['rank'],
108
1 ,
109
function(x) str_replace(x,"(extorcionador)",'extorsion'))
110
#Creamos las variables dummies
111
112
data_administrativa$dum1 <- ifelse(data_administrativa$rank == 'lider de la banda criminal', 1, 0)
113
data_administrativa$dum2 <- ifelse(data_administrativa$rank == 'cabecilla local', 1, 0)
114
data_administrativa$dum3 <- ifelse(data_administrativa$rank == 'cabecilla regional', 1, 0)
115
data_administrativa$dum4 <- ifelse(data_administrativa$rank == 'sicario', 1, 0)
116
data_administrativa$dum5 <- ifelse(data_administrativa$rank == 'extorsion', 1, 0)
117
data_administrativa$dum6 <- ifelse(data_administrativa$rank == 'miembro', 1, 0)
118
data_administrativa$dum7 <- ifelse(data_administrativa$rank == 'novato', 1, 0)
119
120
#------------------------------------------------------------------------------#
121
# #
122
# PREGUNTA 7 #
123
# #
124
#------------------------------------------------------------------------------#
125
126
#Extraemos el usuario del número de correos
127
128
data_admi$correo_abogado <- apply(data_administrativa['correo_abogado'],
129
1 ,
130
function(x) str_extract(x,"[\\w+)\\@\\.*]"))
131
#------------------------------------------------------------------------------#
132
# #
133
# PREGUNTA 8 #
134
# #
135
#------------------------------------------------------------------------------#
136
137
#Creamos una columna con información del dni
138
data_administrativa$dni <- apply(data_administrativa['dni'],
139
1 ,
140
function(x) str_replace(x,"(dni es)", ''))
141
#------------------------------------------------------------------------------#
142
# #
143
# PREGUNTA 9 #
144
# #
145
#------------------------------------------------------------------------------#
146
147
# Creamos las siguientes variables
148
149
#crimen: debe contener información del delito cometido
150
#n_hijos: cantidad de hijos del criminal
151
#edad_inicio : edad de inicio en actividades criminales
152
153
#Creamos la variable crimen
154
155
data_administrativa$crimen <- data_administrativa$observaciones |> str_extract("(?<= por )[^\\d\\:]+")
156
157
data_administrativa$crimen <- apply(data_administrativa['crimen'],
158
1 ,
159
function(x) str_replace(x,"(tiene)|(dice tener)|(inio de actividades ilegales) |(,)", ''))
160
161
#Creamos la variable número de hijos del criminal
162
163
data_administrativa$n_hijos <- data_administrativa$observaciones |> str_extract("(?<=tiene )[\\d+\\:]+")
164
165
#Creamos la variable inicio en actividades criminales
166
167
data_administrativa$edad_inicio <- data_administrativa$observaciones |> str_extract("[\\d+\\:]+(?= años)")
168
169