—| title: “Taller N°3” author: “Daniel Villamarin” date: “2024-04-26” output: html_document — ##Costruya una base de datos de veinte (20)historias clinicas con los siguientes campos: 1.1 Identidad de Pacientes: (Número de Cédula, Nombres del paciente, Apellidos del paciente, Edad, Sexo, Domicilio, Ciudad, Departamento, Número de teléfono, Número de historial clínico, Fumante(S/N))

#Crear un data frame con 20 historias clinicas

library(ggplot2)
library(openxlsx)
## Warning: package 'openxlsx' was built under R version 4.3.3
historias_clinicas = data.frame(
  Numero_de_Cedula = c("1234567890","9876543210","5678901234","3456789012","9012345678","7890123456","2345678901","6543210987","4321098765","2109876543","6789012345","9012345678","5432109876","7890123456","2345678901","6543210987","4321098765","2109876543","6789012345","8901234567"),

  
Nombres = c("Juan","María","Carlos","Ana","Luis","Laura","Pedro","Sofía","Jorge","Daniel","Roberto","Paola","Diego","Camila","Andrés","Mariana","Gustavo","Fernanda","Santiago","Valentina"),

Apellidos =c("Alvarez", "Garcia", "Santiago", "Morales", "Navarro","Cabrera", "Suarez", "Pereira", "Rivas", "Villa","Mendoza", "Guerra", "Delgado", "Molina", "Vega","Silva", "Bautista", "Guzman", "Montoya", "Paz"),

Edad =c(30, 40, 25, 32, 21, 48, 39, 18, 36, 41, 50, 31, 45, 24, 37, 46, 29, 19, 20, 27),

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

Domicilio =c("Calle 56", "Av.  Libertador", "Carrera 23", "Diagonal 78", "Calle 34","Av. Bolivar", "Carrera 89", "Diagonal 45", "Calle 90", "Av. Principal","Carrera 12", "Diagonal 67", "Calle 78", "Av. Sucre", "Carrera 56","Diagonal 23", "Calle 67", "Av. Miranda", "Carrera 45", "Diagonal 12"),

Ciudad = c("Bogota", "Medellin", "Cucuta", "Barranquilla", "Cartagena","Santa Marta", "Bucaramanga", "Pereira", "Manizales", "Cali","Ibague", "Pasto", "Villavicencio", "Neiva", "Armenia","Popayan", "Tunja", "Riohacha", "Valledupar", "Quibdo"),
 
Departamento = c("Cundinamarca", "Antioquia", "Norte de Santander", "Atlantico", "Bolivar","Magdalena", "Santander", "Risaralda", "Caldas", "Valle del cauca","Tolima", "Narino", "Meta", "Huila","Quindio","Cauca", "Boyaca", "La Guajira", "Cesar", "Choco"),

 Numero_de_telefono = c("9876543210", "8765432109", "7654321098", "6543210987", "5432109876","4321098765", "3210987654", "2109876543", "1098765432", "0987654321","5544332211", "6655443322", "7766554433", "8877665544", "9988776655","0099887766", "1100998877", "2211009988", "3322110099", "4433221100"), 

Numero_de_historial_clinico = c(101, 102, 103, 104, 105,106, 107, 108, 109, 110,111, 112, 113, 114, 115,116, 117, 118, 119, 120),

Fumante = c("S", "N", "N", "S", "N","N", "S", "N", "N", "S","N", "S", "N", "N", "S","N", "S", "N", "N", "S"))

# Mostrar la base de datos
print(historias_clinicas)
##    Numero_de_Cedula   Nombres Apellidos Edad Sexo       Domicilio        Ciudad
## 1        1234567890      Juan   Alvarez   30    M        Calle 56        Bogota
## 2        9876543210     María    Garcia   40    F Av.  Libertador      Medellin
## 3        5678901234    Carlos  Santiago   25    M      Carrera 23        Cucuta
## 4        3456789012       Ana   Morales   32    F     Diagonal 78  Barranquilla
## 5        9012345678      Luis   Navarro   21    M        Calle 34     Cartagena
## 6        7890123456     Laura   Cabrera   48    F     Av. Bolivar   Santa Marta
## 7        2345678901     Pedro    Suarez   39    M      Carrera 89   Bucaramanga
## 8        6543210987     Sofía   Pereira   18    F     Diagonal 45       Pereira
## 9        4321098765     Jorge     Rivas   36    M        Calle 90     Manizales
## 10       2109876543    Daniel     Villa   41    M   Av. Principal          Cali
## 11       6789012345   Roberto   Mendoza   50    M      Carrera 12        Ibague
## 12       9012345678     Paola    Guerra   31    F     Diagonal 67         Pasto
## 13       5432109876     Diego   Delgado   45    M        Calle 78 Villavicencio
## 14       7890123456    Camila    Molina   24    F       Av. Sucre         Neiva
## 15       2345678901    Andrés      Vega   37    M      Carrera 56       Armenia
## 16       6543210987   Mariana     Silva   46    F     Diagonal 23       Popayan
## 17       4321098765   Gustavo  Bautista   29    M        Calle 67         Tunja
## 18       2109876543  Fernanda    Guzman   19    F     Av. Miranda      Riohacha
## 19       6789012345  Santiago   Montoya   20    M      Carrera 45    Valledupar
## 20       8901234567 Valentina       Paz   27    F     Diagonal 12        Quibdo
##          Departamento Numero_de_telefono Numero_de_historial_clinico Fumante
## 1        Cundinamarca         9876543210                         101       S
## 2           Antioquia         8765432109                         102       N
## 3  Norte de Santander         7654321098                         103       N
## 4           Atlantico         6543210987                         104       S
## 5             Bolivar         5432109876                         105       N
## 6           Magdalena         4321098765                         106       N
## 7           Santander         3210987654                         107       S
## 8           Risaralda         2109876543                         108       N
## 9              Caldas         1098765432                         109       N
## 10    Valle del cauca         0987654321                         110       S
## 11             Tolima         5544332211                         111       N
## 12             Narino         6655443322                         112       S
## 13               Meta         7766554433                         113       N
## 14              Huila         8877665544                         114       N
## 15            Quindio         9988776655                         115       S
## 16              Cauca         0099887766                         116       N
## 17             Boyaca         1100998877                         117       S
## 18         La Guajira         2211009988                         118       N
## 19              Cesar         3322110099                         119       N
## 20              Choco         4433221100                         120       S

##1.2. Proceso de Ingreso a la entidad: (Procedencia, Fecha de ingreso, Número de piso, Número de cama, Causa de Ingreso)

# Añadir los campos de Proceso de Ingreso a la base de datos existente

historias_clinicas$Procedencia = c("Urgencias", "Consulta Externa", "Referencia de otro centro", "Urgencias", "Consulta Externa","Consulta Externa", "Urgencias", "Consulta Externa", "Referencia de otro centro","Urgencias","Urgencias", "Consulta Externa", "Consulta Externa", "Urgencias", "Consulta Externa",     "Consulta Externa", "Urgencias", "Consulta Externa", "Referencia de otro centro", "Urgencias")

historias_clinicas$Fecha_de_ingreso = as.Date(c("2023-01-01", "2023-02-15","2023-03-10", "2023-04-05","2023-05-20","2023-06-12", "2023-07-30", "2023-08-25", "2023-09-18", "2023-10-02","2023-11-15", "2023-12-20", "2024-01-02", "2024-02-17", "2024-03-08","2024-04-12", "2024-05-25", "2024-06-18", "2024-07-05", "2024-08-30"))

historias_clinicas$Numero_de_piso =c(1, 3, 2, 4, 1, 2, 3, 4, 1, 2,3, 4, 1, 2, 3, 4, 1, 2, 3, 4)

historias_clinicas$Numero_de_cama =c(201, 302, 203, 403, 202, 302, 303, 405, 203, 302,303, 402, 201, 204, 306, 404, 202, 302, 402, 405)

historias_clinicas$Causa_de_ingreso =c("Dolor abdominal", "Fiebre", "Fractura de brazo", "Accidente de tráfico","Cefalea","Fiebre", "Infarto agudo de miocardio","Dolor abdominal", "Gripe","Neumonía","Dolor torácico","Gripe", "Intoxicación alimentaria", "Fiebre", "Neumonía","Dolor abdominal","Fractura de pierna", "Problema respiratorio", "Dolor abdominal", "Gripe")

# Mostrar la base de datos actualizada
print(historias_clinicas)
##    Numero_de_Cedula   Nombres Apellidos Edad Sexo       Domicilio        Ciudad
## 1        1234567890      Juan   Alvarez   30    M        Calle 56        Bogota
## 2        9876543210     María    Garcia   40    F Av.  Libertador      Medellin
## 3        5678901234    Carlos  Santiago   25    M      Carrera 23        Cucuta
## 4        3456789012       Ana   Morales   32    F     Diagonal 78  Barranquilla
## 5        9012345678      Luis   Navarro   21    M        Calle 34     Cartagena
## 6        7890123456     Laura   Cabrera   48    F     Av. Bolivar   Santa Marta
## 7        2345678901     Pedro    Suarez   39    M      Carrera 89   Bucaramanga
## 8        6543210987     Sofía   Pereira   18    F     Diagonal 45       Pereira
## 9        4321098765     Jorge     Rivas   36    M        Calle 90     Manizales
## 10       2109876543    Daniel     Villa   41    M   Av. Principal          Cali
## 11       6789012345   Roberto   Mendoza   50    M      Carrera 12        Ibague
## 12       9012345678     Paola    Guerra   31    F     Diagonal 67         Pasto
## 13       5432109876     Diego   Delgado   45    M        Calle 78 Villavicencio
## 14       7890123456    Camila    Molina   24    F       Av. Sucre         Neiva
## 15       2345678901    Andrés      Vega   37    M      Carrera 56       Armenia
## 16       6543210987   Mariana     Silva   46    F     Diagonal 23       Popayan
## 17       4321098765   Gustavo  Bautista   29    M        Calle 67         Tunja
## 18       2109876543  Fernanda    Guzman   19    F     Av. Miranda      Riohacha
## 19       6789012345  Santiago   Montoya   20    M      Carrera 45    Valledupar
## 20       8901234567 Valentina       Paz   27    F     Diagonal 12        Quibdo
##          Departamento Numero_de_telefono Numero_de_historial_clinico Fumante
## 1        Cundinamarca         9876543210                         101       S
## 2           Antioquia         8765432109                         102       N
## 3  Norte de Santander         7654321098                         103       N
## 4           Atlantico         6543210987                         104       S
## 5             Bolivar         5432109876                         105       N
## 6           Magdalena         4321098765                         106       N
## 7           Santander         3210987654                         107       S
## 8           Risaralda         2109876543                         108       N
## 9              Caldas         1098765432                         109       N
## 10    Valle del cauca         0987654321                         110       S
## 11             Tolima         5544332211                         111       N
## 12             Narino         6655443322                         112       S
## 13               Meta         7766554433                         113       N
## 14              Huila         8877665544                         114       N
## 15            Quindio         9988776655                         115       S
## 16              Cauca         0099887766                         116       N
## 17             Boyaca         1100998877                         117       S
## 18         La Guajira         2211009988                         118       N
## 19              Cesar         3322110099                         119       N
## 20              Choco         4433221100                         120       S
##                  Procedencia Fecha_de_ingreso Numero_de_piso Numero_de_cama
## 1                  Urgencias       2023-01-01              1            201
## 2           Consulta Externa       2023-02-15              3            302
## 3  Referencia de otro centro       2023-03-10              2            203
## 4                  Urgencias       2023-04-05              4            403
## 5           Consulta Externa       2023-05-20              1            202
## 6           Consulta Externa       2023-06-12              2            302
## 7                  Urgencias       2023-07-30              3            303
## 8           Consulta Externa       2023-08-25              4            405
## 9  Referencia de otro centro       2023-09-18              1            203
## 10                 Urgencias       2023-10-02              2            302
## 11                 Urgencias       2023-11-15              3            303
## 12          Consulta Externa       2023-12-20              4            402
## 13          Consulta Externa       2024-01-02              1            201
## 14                 Urgencias       2024-02-17              2            204
## 15          Consulta Externa       2024-03-08              3            306
## 16          Consulta Externa       2024-04-12              4            404
## 17                 Urgencias       2024-05-25              1            202
## 18          Consulta Externa       2024-06-18              2            302
## 19 Referencia de otro centro       2024-07-05              3            402
## 20                 Urgencias       2024-08-30              4            405
##              Causa_de_ingreso
## 1             Dolor abdominal
## 2                      Fiebre
## 3           Fractura de brazo
## 4        Accidente de tráfico
## 5                     Cefalea
## 6                      Fiebre
## 7  Infarto agudo de miocardio
## 8             Dolor abdominal
## 9                       Gripe
## 10                   Neumonía
## 11             Dolor torácico
## 12                      Gripe
## 13   Intoxicación alimentaria
## 14                     Fiebre
## 15                   Neumonía
## 16            Dolor abdominal
## 17         Fractura de pierna
## 18      Problema respiratorio
## 19            Dolor abdominal
## 20                      Gripe
  1. Por medio de informe gráfico clasifique por:
  1. Pacientes mujeres y Hombres
# Contar el número de pacientes por género
pacientes_por_genero = table(historias_clinicas$Sexo)

# Crear un data frame con los resultados
df_pacientes_genero = data.frame(Genero = names(pacientes_por_genero),
                                  Cantidad = as.numeric(pacientes_por_genero))

# Graficar el número de pacientes por género
ggplot(df_pacientes_genero, aes(x = Genero, y = Cantidad, fill = Genero)) +
  geom_bar(stat = "identity") +
  labs(title = "Cantidad de pacientes por género",
       x = "Género",
       y = "Cantidad") +
  theme_minimal()

B. Edad y si es fumante o no

ggplot(historias_clinicas, aes(x = Edad, fill = Fumante)) +
  geom_bar(position = "dodge") +
  labs(title = "Distribución de edades por fumador/no fumador",
       x = "Edad",
       y = "Cantidad",
       fill = "Fumante") +
  theme_minimal()

C.Pacientes por piso divididos por sexo

ggplot(historias_clinicas, aes(x = factor(Numero_de_piso), fill = Sexo)) +
  geom_bar() +
  labs(title = "Pacientes por piso divididos por sexo",
       x = "Número de piso",
       y = "Cantidad de pacientes",
       fill = "Sexo") +
  theme_minimal()

D.Edad y causa de ingreso

# Crear un diagrama de caja
ggplot(historias_clinicas, aes(x = factor(Edad), fill = Causa_de_ingreso)) +
  geom_bar() +
  labs(title = "Relación entre edad y causa de ingreso",
       x = "Edad",
       y = "Numero de personas",
       fill = "Causa de ingreso") +
  theme_minimal()

E.Promedio de edad (M,H)

# Calcular el promedio de edad por sexo
promedio_edad = aggregate(Edad ~ Sexo, data = historias_clinicas, FUN = mean)

# Crear un gráfico de barras para el promedio de edad por género
ggplot(promedio_edad, aes(x = Sexo, y = Edad, fill = Sexo)) +
  geom_bar(stat = "identity", width = 0.5) +
  labs(title = "Promedio de edad por género",
       x = "Género",
       y = "Edad promedio") +
  theme_minimal()

F.Datos independientes de 3 pacientes

# Seleccionar datos de tres pacientes específicos
paciente1 = historias_clinicas[historias_clinicas$Numero_de_historial_clinico == 101, ]
paciente2 = historias_clinicas[historias_clinicas$Numero_de_historial_clinico == 102, ]
paciente3 = historias_clinicas[historias_clinicas$Numero_de_historial_clinico == 103, ]

# Mostrar los datos de los tres pacientes
print(paciente1)
##   Numero_de_Cedula Nombres Apellidos Edad Sexo Domicilio Ciudad Departamento
## 1       1234567890    Juan   Alvarez   30    M  Calle 56 Bogota Cundinamarca
##   Numero_de_telefono Numero_de_historial_clinico Fumante Procedencia
## 1         9876543210                         101       S   Urgencias
##   Fecha_de_ingreso Numero_de_piso Numero_de_cama Causa_de_ingreso
## 1       2023-01-01              1            201  Dolor abdominal
print(paciente2)
##   Numero_de_Cedula Nombres Apellidos Edad Sexo       Domicilio   Ciudad
## 2       9876543210   María    Garcia   40    F Av.  Libertador Medellin
##   Departamento Numero_de_telefono Numero_de_historial_clinico Fumante
## 2    Antioquia         8765432109                         102       N
##        Procedencia Fecha_de_ingreso Numero_de_piso Numero_de_cama
## 2 Consulta Externa       2023-02-15              3            302
##   Causa_de_ingreso
## 2           Fiebre
print(paciente3)
##   Numero_de_Cedula Nombres Apellidos Edad Sexo  Domicilio Ciudad
## 3       5678901234  Carlos  Santiago   25    M Carrera 23 Cucuta
##         Departamento Numero_de_telefono Numero_de_historial_clinico Fumante
## 3 Norte de Santander         7654321098                         103       N
##                 Procedencia Fecha_de_ingreso Numero_de_piso Numero_de_cama
## 3 Referencia de otro centro       2023-03-10              2            203
##    Causa_de_ingreso
## 3 Fractura de brazo
# Crear un data frame con los datos de los tres pacientes
pacientes = rbind(paciente1, paciente2, paciente3)

# Crear un gráfico de puntos para los datos de los tres pacientes
ggplot(pacientes, aes(x = Numero_de_historial_clinico, y = Edad, color = Sexo)) +
  geom_point(size = 3) +
  labs(title = "Datos independientes de 3 pacientes",
       x = "Número de historial clínico",
       y = "Edad") +
  scale_color_manual(values = c("black", "green"), labels = c("M", "F")) +
  theme_minimal()

G.Datos de 3 pacientes por identidad

cedulas_pac = c("1234567890", "9876543210", "5678901234")
pacientes_seleccionados = historias_clinicas[historias_clinicas$Numero_de_Cedula %in% cedulas_pac, ]

print(pacientes_seleccionados)
##   Numero_de_Cedula Nombres Apellidos Edad Sexo       Domicilio   Ciudad
## 1       1234567890    Juan   Alvarez   30    M        Calle 56   Bogota
## 2       9876543210   María    Garcia   40    F Av.  Libertador Medellin
## 3       5678901234  Carlos  Santiago   25    M      Carrera 23   Cucuta
##         Departamento Numero_de_telefono Numero_de_historial_clinico Fumante
## 1       Cundinamarca         9876543210                         101       S
## 2          Antioquia         8765432109                         102       N
## 3 Norte de Santander         7654321098                         103       N
##                 Procedencia Fecha_de_ingreso Numero_de_piso Numero_de_cama
## 1                 Urgencias       2023-01-01              1            201
## 2          Consulta Externa       2023-02-15              3            302
## 3 Referencia de otro centro       2023-03-10              2            203
##    Causa_de_ingreso
## 1   Dolor abdominal
## 2            Fiebre
## 3 Fractura de brazo

H.Lista de causas de ingreso

# Obtener las causas de ingreso únicas
causas_ingreso = unique(historias_clinicas$Causa_de_ingreso)

# Mostrar la lista de causas de ingreso
print(causas_ingreso)
##  [1] "Dolor abdominal"            "Fiebre"                    
##  [3] "Fractura de brazo"          "Accidente de tráfico"      
##  [5] "Cefalea"                    "Infarto agudo de miocardio"
##  [7] "Gripe"                      "Neumonía"                  
##  [9] "Dolor torácico"             "Intoxicación alimentaria"  
## [11] "Fractura de pierna"         "Problema respiratorio"

3.Exportar base de datos a Excel

write.xlsx(historias_clinicas, "historias_clinicas.xlsx")