2.1.1
#en algunas variables se generan datos entre rangos para rellenar el ejemplo de los 20 datos de pacientes
cedula = c(sample(1141336113:1144209404,20,replace = F))
nombres = c("Nicolle","Nicolas","Kelly","Valentina","Santiago","Jose","Celeste","Carlos", "Sebastian","Daniel","Natalia","Jonatan","Sandra","Lucas","Laura","Camilo","Catalina", "Sthepania","Andres","Daniela")
apellidos = c("Aguirre","Amado","Florez","Martinez","Lucumí","Morales","Zules","Sevillano",
"Arcos","Muñoz","Méndez","Ortiz","Marin","Gómez","Solano","Lozano","García",
"Roldan","Díaz","Castaño")
edad = c(sample(15:68,20,replace = T))
sexos = c("F","M","F","F","M","M","F","M","M","M","F","M","F","M","F","M","F","F","M","F")
domicilio = c("Calle 20 # 3-03","Calle 8B # 2-40","Avenida pasoancho# 43-37","Avenida 3 norte # 50Bis-10",
"Carrera 16 # 21N -63","Calle 55 # 5A-35","Carrera 54 # 68 - 23","Calle 44 # 1 - 49",
"Carrera 9Bis # 7A - 34","Carrera 7A # 32 - 63","Carrera 56 # 5C-48","Calle 8N # 12-21",
"Carrera 23 # 10C - 10","Calle 3 # 13 - 71","Carrera 16 # 8 - 34","Carrera 5 # 9 - 08",
"Calle 3Oeste # 38 - 42","Calle 25 # 4 - 38","Carrera 7a # 47 - 68","Calle 23 # 12 - 27")
ciudades = c("Palmira","Cali","Cali","Pasto","Popayan","Popayan","Cali","Cali","Armenia","Cali","Palmira","Cali","Yumbo",
"Yumbo","Cali","Palmira","Cali","Buga","Palmira","Cali")
telefonos_contacto = c(sample(3059221:4805602,20,replace = F))
numero_historial_clinico = c(sample(0:50,20,replace = F))
fumantes = c(sample(0:1,20,replace = T))
for(i in 1:length(fumantes)) if(fumantes[i]==0) fumantes[i]="N" else(fumantes[i]="S")
b_datos = data.frame(cedula,nombres,apellidos,edad,sexos,domicilio,ciudades,
telefonos_contacto,numero_historial_clinico,fumantes)
colnames(b_datos)=c("Cédula","Nombre","Apellido","Edad","Sexo","Domicilio","Ciudad","Teléfono",
"Número historial clínico","Fumante")
b_datos
## Cédula Nombre Apellido Edad Sexo Domicilio
## 1 1142699376 Nicolle Aguirre 55 F Calle 20 # 3-03
## 2 1141789686 Nicolas Amado 58 M Calle 8B # 2-40
## 3 1141573534 Kelly Florez 21 F Avenida pasoancho# 43-37
## 4 1143572222 Valentina Martinez 40 F Avenida 3 norte # 50Bis-10
## 5 1142261794 Santiago Lucumí 21 M Carrera 16 # 21N -63
## 6 1143856652 Jose Morales 51 M Calle 55 # 5A-35
## 7 1143397111 Celeste Zules 42 F Carrera 54 # 68 - 23
## 8 1141926050 Carlos Sevillano 68 M Calle 44 # 1 - 49
## 9 1141828187 Sebastian Arcos 22 M Carrera 9Bis # 7A - 34
## 10 1143752767 Daniel Muñoz 65 M Carrera 7A # 32 - 63
## 11 1141930776 Natalia Méndez 29 F Carrera 56 # 5C-48
## 12 1142030065 Jonatan Ortiz 46 M Calle 8N # 12-21
## 13 1143842503 Sandra Marin 65 F Carrera 23 # 10C - 10
## 14 1143506044 Lucas Gómez 55 M Calle 3 # 13 - 71
## 15 1144143367 Laura Solano 62 F Carrera 16 # 8 - 34
## 16 1142639518 Camilo Lozano 40 M Carrera 5 # 9 - 08
## 17 1141700634 Catalina García 37 F Calle 3Oeste # 38 - 42
## 18 1142115997 Sthepania Roldan 48 F Calle 25 # 4 - 38
## 19 1143987794 Andres Díaz 34 M Carrera 7a # 47 - 68
## 20 1143315634 Daniela Castaño 42 F Calle 23 # 12 - 27
## Ciudad Teléfono Número historial clínico Fumante
## 1 Palmira 3743462 5 N
## 2 Cali 3377320 30 S
## 3 Cali 3957718 8 S
## 4 Pasto 4270343 46 S
## 5 Popayan 3669882 39 N
## 6 Popayan 4368916 41 S
## 7 Cali 4095229 6 S
## 8 Cali 4243484 24 N
## 9 Armenia 3144265 43 N
## 10 Cali 3092070 12 S
## 11 Palmira 3196232 9 N
## 12 Cali 4012364 4 N
## 13 Yumbo 4636651 1 S
## 14 Yumbo 3210434 18 S
## 15 Cali 3177184 49 S
## 16 Palmira 3979627 40 N
## 17 Cali 4018546 0 N
## 18 Buga 4634650 25 S
## 19 Palmira 3198673 38 N
## 20 Cali 3894680 44 N
2.1.2
procedencias = c("Buga","Medellin","Cali","Pasto","Armenia","Popayan","Cali","Cali","Bogota","Cali","Palmira",
"Ibagué","Cali","Cali","Cali","Popayan","Cartagena","Cali","Pasto","Cali")
fecha_ingreso = c(sample(seq(as.Date('2018-02-01'), as.Date('2020-02-01'), by = "day"), 20))
numero_cama = c(sample(1:25,20,replace = T))
causa_ingreso = c(sample(1:3,20,replace = T))
numero_piso=c()
for(i in 1:20) {
if(causa_ingreso[i]==1) {
causa_ingreso[i]="Problema respiratorio"
numero_piso[i]=3
} else if(causa_ingreso[i]==2){
causa_ingreso[i]="Gripa común"
numero_piso[i]=2
} else{
causa_ingreso[i]="Fiebre alta"
numero_piso[i]=1
}
}
b_datos = data.frame(cedula,nombres,apellidos,edad,sexos,domicilio,ciudades,
telefonos_contacto,numero_historial_clinico,fumantes,procedencias,fecha_ingreso,
numero_piso,numero_cama,causa_ingreso)
colnames(b_datos)=c("Cédula","Nombre","Apellido","Edad","Sexo","Domicilio","Ciudad","Teléfono",
"Historialclinico","Fumante","Procedencia","Fechas_ingreso",
"Npiso","Ncama","Causa_ingreso")
b_datos
## Cédula Nombre Apellido Edad Sexo Domicilio
## 1 1142699376 Nicolle Aguirre 55 F Calle 20 # 3-03
## 2 1141789686 Nicolas Amado 58 M Calle 8B # 2-40
## 3 1141573534 Kelly Florez 21 F Avenida pasoancho# 43-37
## 4 1143572222 Valentina Martinez 40 F Avenida 3 norte # 50Bis-10
## 5 1142261794 Santiago Lucumí 21 M Carrera 16 # 21N -63
## 6 1143856652 Jose Morales 51 M Calle 55 # 5A-35
## 7 1143397111 Celeste Zules 42 F Carrera 54 # 68 - 23
## 8 1141926050 Carlos Sevillano 68 M Calle 44 # 1 - 49
## 9 1141828187 Sebastian Arcos 22 M Carrera 9Bis # 7A - 34
## 10 1143752767 Daniel Muñoz 65 M Carrera 7A # 32 - 63
## 11 1141930776 Natalia Méndez 29 F Carrera 56 # 5C-48
## 12 1142030065 Jonatan Ortiz 46 M Calle 8N # 12-21
## 13 1143842503 Sandra Marin 65 F Carrera 23 # 10C - 10
## 14 1143506044 Lucas Gómez 55 M Calle 3 # 13 - 71
## 15 1144143367 Laura Solano 62 F Carrera 16 # 8 - 34
## 16 1142639518 Camilo Lozano 40 M Carrera 5 # 9 - 08
## 17 1141700634 Catalina García 37 F Calle 3Oeste # 38 - 42
## 18 1142115997 Sthepania Roldan 48 F Calle 25 # 4 - 38
## 19 1143987794 Andres Díaz 34 M Carrera 7a # 47 - 68
## 20 1143315634 Daniela Castaño 42 F Calle 23 # 12 - 27
## Ciudad Teléfono Historialclinico Fumante Procedencia Fechas_ingreso Npiso
## 1 Palmira 3743462 5 N Buga 2018-05-11 2
## 2 Cali 3377320 30 S Medellin 2018-05-16 2
## 3 Cali 3957718 8 S Cali 2019-09-03 2
## 4 Pasto 4270343 46 S Pasto 2018-06-19 3
## 5 Popayan 3669882 39 N Armenia 2018-08-31 2
## 6 Popayan 4368916 41 S Popayan 2018-12-15 3
## 7 Cali 4095229 6 S Cali 2018-08-06 3
## 8 Cali 4243484 24 N Cali 2018-07-09 2
## 9 Armenia 3144265 43 N Bogota 2018-09-28 2
## 10 Cali 3092070 12 S Cali 2018-02-10 3
## 11 Palmira 3196232 9 N Palmira 2019-02-27 1
## 12 Cali 4012364 4 N Ibagué 2018-06-15 1
## 13 Yumbo 4636651 1 S Cali 2018-06-23 1
## 14 Yumbo 3210434 18 S Cali 2019-05-31 1
## 15 Cali 3177184 49 S Cali 2019-12-21 2
## 16 Palmira 3979627 40 N Popayan 2018-03-01 2
## 17 Cali 4018546 0 N Cartagena 2018-12-30 2
## 18 Buga 4634650 25 S Cali 2018-09-12 1
## 19 Palmira 3198673 38 N Pasto 2019-02-16 1
## 20 Cali 3894680 44 N Cali 2019-04-29 3
## Ncama Causa_ingreso
## 1 8 Gripa común
## 2 12 Gripa común
## 3 21 Gripa común
## 4 5 Problema respiratorio
## 5 15 Gripa común
## 6 17 Problema respiratorio
## 7 11 Problema respiratorio
## 8 19 Gripa común
## 9 3 Gripa común
## 10 12 Problema respiratorio
## 11 8 Fiebre alta
## 12 22 Fiebre alta
## 13 10 Fiebre alta
## 14 15 Fiebre alta
## 15 20 Gripa común
## 16 20 Gripa común
## 17 24 Gripa común
## 18 3 Fiebre alta
## 19 23 Fiebre alta
## 20 17 Problema respiratorio
2.2
#install.packages("ggplot2")
#library(ggplot2)
#Punto a: pacientes mujeres y hombres
b_datos[b_datos$Sexo=='M',] #Acceder a pacientes hombres
## Cédula Nombre Apellido Edad Sexo Domicilio Ciudad
## 2 1141789686 Nicolas Amado 58 M Calle 8B # 2-40 Cali
## 5 1142261794 Santiago Lucumí 21 M Carrera 16 # 21N -63 Popayan
## 6 1143856652 Jose Morales 51 M Calle 55 # 5A-35 Popayan
## 8 1141926050 Carlos Sevillano 68 M Calle 44 # 1 - 49 Cali
## 9 1141828187 Sebastian Arcos 22 M Carrera 9Bis # 7A - 34 Armenia
## 10 1143752767 Daniel Muñoz 65 M Carrera 7A # 32 - 63 Cali
## 12 1142030065 Jonatan Ortiz 46 M Calle 8N # 12-21 Cali
## 14 1143506044 Lucas Gómez 55 M Calle 3 # 13 - 71 Yumbo
## 16 1142639518 Camilo Lozano 40 M Carrera 5 # 9 - 08 Palmira
## 19 1143987794 Andres Díaz 34 M Carrera 7a # 47 - 68 Palmira
## Teléfono Historialclinico Fumante Procedencia Fechas_ingreso Npiso Ncama
## 2 3377320 30 S Medellin 2018-05-16 2 12
## 5 3669882 39 N Armenia 2018-08-31 2 15
## 6 4368916 41 S Popayan 2018-12-15 3 17
## 8 4243484 24 N Cali 2018-07-09 2 19
## 9 3144265 43 N Bogota 2018-09-28 2 3
## 10 3092070 12 S Cali 2018-02-10 3 12
## 12 4012364 4 N Ibagué 2018-06-15 1 22
## 14 3210434 18 S Cali 2019-05-31 1 15
## 16 3979627 40 N Popayan 2018-03-01 2 20
## 19 3198673 38 N Pasto 2019-02-16 1 23
## Causa_ingreso
## 2 Gripa común
## 5 Gripa común
## 6 Problema respiratorio
## 8 Gripa común
## 9 Gripa común
## 10 Problema respiratorio
## 12 Fiebre alta
## 14 Fiebre alta
## 16 Gripa común
## 19 Fiebre alta
b_datos[b_datos$Sexo=='F',] #Acceder a pacientes mujeres
## Cédula Nombre Apellido Edad Sexo Domicilio
## 1 1142699376 Nicolle Aguirre 55 F Calle 20 # 3-03
## 3 1141573534 Kelly Florez 21 F Avenida pasoancho# 43-37
## 4 1143572222 Valentina Martinez 40 F Avenida 3 norte # 50Bis-10
## 7 1143397111 Celeste Zules 42 F Carrera 54 # 68 - 23
## 11 1141930776 Natalia Méndez 29 F Carrera 56 # 5C-48
## 13 1143842503 Sandra Marin 65 F Carrera 23 # 10C - 10
## 15 1144143367 Laura Solano 62 F Carrera 16 # 8 - 34
## 17 1141700634 Catalina García 37 F Calle 3Oeste # 38 - 42
## 18 1142115997 Sthepania Roldan 48 F Calle 25 # 4 - 38
## 20 1143315634 Daniela Castaño 42 F Calle 23 # 12 - 27
## Ciudad Teléfono Historialclinico Fumante Procedencia Fechas_ingreso Npiso
## 1 Palmira 3743462 5 N Buga 2018-05-11 2
## 3 Cali 3957718 8 S Cali 2019-09-03 2
## 4 Pasto 4270343 46 S Pasto 2018-06-19 3
## 7 Cali 4095229 6 S Cali 2018-08-06 3
## 11 Palmira 3196232 9 N Palmira 2019-02-27 1
## 13 Yumbo 4636651 1 S Cali 2018-06-23 1
## 15 Cali 3177184 49 S Cali 2019-12-21 2
## 17 Cali 4018546 0 N Cartagena 2018-12-30 2
## 18 Buga 4634650 25 S Cali 2018-09-12 1
## 20 Cali 3894680 44 N Cali 2019-04-29 3
## Ncama Causa_ingreso
## 1 8 Gripa común
## 3 21 Gripa común
## 4 5 Problema respiratorio
## 7 11 Problema respiratorio
## 11 8 Fiebre alta
## 13 10 Fiebre alta
## 15 20 Gripa común
## 17 24 Gripa común
## 18 3 Fiebre alta
## 20 17 Problema respiratorio
barplot(table(b_datos$Sexo),beside = T,col = c("green","darkorange"), ylab = "Cantidad de personas", main = "Cantidad de Mujeres vs Hombres",ylim=c(0,20))
#punto b:edad y si es fumante o no
barplot(table(b_datos$Fumante,b_datos$Edad), main = "Edad y si fuma o no", ylab="# personas", xlab="Edades", las=1, col = c("gold", "blueviolet"),ylim=c(0,5))
legend(x = "topright", legend = c("No", "Si"), fill = c("gold", "blueviolet"), title = "Fuma")
#Se interpréta la grafica basándose en la frecuencia de pacientes por cada edad y el color de las barras indican cuántas de esas frecuencias (personas) fuman o nó.
#Punto c: Pacientes por piso divididos por sexo
puntoc = table(b_datos$`Npiso`,b_datos$Sexo) #las comillas son para no generar error si el nombre de la columna Npiso posee espacios intermedios.
barplot(puntoc, beside = T, col = c("thistle","brown","darkolivegreen1"), ylab = "# Pacientes",xlab = "Sexo",
main = "Pacientes por piso y por sexo")
legend("top",c("Piso 1","Piso 2","Piso 3"),cex = 1,fill = c("thistle","brown","darkolivegreen1"))
#Punto d: Edad y causa de ingreso
barplot(table(causa_ingreso,edad), col = c("tomato", "darkgreen", "gold") ,main = "Edad y causa de ingreso", ylab="# personas", xlab="Edades", las=1,ylim=c(0,5))
legend(x = "topright", legend = c("Problemas respiratorios","gripa común","Fiebre alta"), fill = c("tomato", "darkgreen", "gold"), title = "Causas de ingreso")
#Punto e: Promedio de edad(M/H)
vm=c() #se crea vector mujeres vacío
vh=c() #se crea vector hombres vacío
for (i in 1:20){
if (b_datos$Sexo[i]=='F'){
vm[i]= b_datos$Edad[i]
prom_mujeres = mean(vm,na.rm = T)
} else {
vh[i]= b_datos$Edad[i]
prom_hombres = mean(vh,na.rm = T)
}
}
prom_mujeres
## [1] 44.1
prom_hombres
## [1] 46
barplot(c(mean(edad[sexos=="F"]), mean(edad[sexos=="M"])),
main = "Promedio de edad Mujeres y Hombres", names.arg=c("FEMENINO", "MASCULINO"),
col=c("gold","skyblue"), ylab=" promedio de Edades", xlab="Sexo", las=1, ylim=c(0,70))
#punto f: Datos independientes de 3 pacientes
barplot(c(b_datos$Edad[b_datos$Nombre=="Celeste"],b_datos$Historialclinico[b_datos$Nombre=="Nicolle"],b_datos$Npiso[b_datos$Nombre=="Laura"]), main = "Datos 3 Pacientes",names.arg=c("Edad-Celeste","#Historial clínico-Nicolle","#Piso-Laura"),col=c("dimgrey","skyblue","pink"), ylab="Datos", xlab="Descripción", las=1, ylim=c(0,50))
#punto G: Datos de identidad de 3 pacientes
barplot(c(b_datos$Historialclinico[b_datos$Nombre=="Daniela"],b_datos$Historialclinico[b_datos$Nombre=="Carlos"],b_datos$Historialclinico[b_datos$Nombre=="Santiago"]),main = "Datos de identidad de 3 pacientes", names.arg=c("Daniela", " Carlos", "Santiago"),col=c("aquamarine","darkolivegreen1","coral"), ylab="Numero Historial clinico", xlab="Nombre", las=1, ylim=c(0,50))
#punto H:
barplot(table(b_datos$Causa_ingreso),main = " Lista de causas de ingreso", ylab="No. personas", xlab="Causa de ingreso", col=c("darkblue","white","red"), las=1,ylim=c(0,14))
2.3
write.table(b_datos, file ="b_datos.csv", sep= ",",qmethod="double")
library(openxlsx)
## Warning: package 'openxlsx' was built under R version 4.0.5
write.xlsx(b_datos, "Base de datos.xlsx")