Ejercicio 2.1

# Cargar la biblioteca ggplot2
library(ggplot2)

# Crear la base de datos con los pacientes
historias_clinicas <- data.frame(
  cedula = c(1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020),
  nombres = c("Juan Pérez", "María Gómez", "Carlos López", "Ana Rodríguez", "Pedro Martínez", "Isabel González", "David Sánchez", "Laura Fernández", "Miguel Ramírez", "Sandra García", "José Torres", "Carolina Ortiz", "Luis Jiménez", "Andrea López", "Cristian Gómez", "Diana Hernández", "Juan Carlos Sánchez", "Mariana Gutiérrez", "Diego López", "Alejandra Martínez"),
  apellidos = c("García", "Martínez", "Fernández", "Blanco", "López", "Pérez", "Gómez", "Ramírez", "Sánchez", "Torres", "Ortiz", "Jiménez", "Hernández", "García", "Martínez", "López", "Gómez", "Ramírez", "Sánchez", "Torres"),
  edad = c(30, 25, 42, 58, 36, 45, 39, 50, 47, 29, 34, 60, 31, 48, 55, 27, 40, 43, 52, 38),
  sexo = c("M", "F", "M", "F", "M", "F", "M", "F", "M", "F", "M", "F", "M", "F", "M", "F", "M", "F", "M", "F"),
  domicilio = c("Calle 123", "Carrera 456", "Avenida 789", "Barrio 1011", "Calle 456", "Avenida 789", "Carrera 123", "Barrio 1011", "Calle 789", "Avenida 456", "Barrio 123", "Carrera 789", "Calle 456", "Avenida 123", "Barrio 789", "Carrera 456", "Calle 789", "Avenida 123", "Barrio 456", "Carrera 789"),
  ciudad = c("Medellín", "Cali", "Bogotá", "Barranquilla", "Medellín", "Cali", "Bogotá", "Barranquilla", "Medellín", "Cali", "Bogotá", "Barranquilla", "Medellín", "Cali", "Bogotá", "Barranquilla", "Medellín", "Cali", "Bogotá", "Barranquilla"),
  departamento = c("Antioquia", "Valle del Cauca", "Cundinamarca", "Atlántico", "Antioquia", "Valle del Cauca", "Cundinamarca", "Atlántico", "Antioquia", "Valle del Cauca", "Cundinamarca", "Atlántico", "Antioquia", "Valle del Cauca", "Cundinamarca", "Atlántico", "Antioquia", "Valle del Cauca", "Cundinamarca", "Atlántico"),
  telefono = c(1234567890, 9876543210, 0123456789, 9087654321, 1234567890, 9876543210, 0123456789, 9087654321, 1234567890, 9876543210, 0123456789, 9087654321, 1234567890, 9876543210, 0123456789, 9087654321, 1234567890, 9876543210, 0123456789, 9087654321),
  historia_clinica = 1:20,
  fumante = c("S", "N", "S", "N", "S", "N", "S", "N", "S", "N", "S", "N", "S", "N", "S", "N", "S", "N", "S", "N"),
  procedencia = c("Remisión externa", "Hospitalización", "Urgencias", "Consulta externa", "Hospitalización", "Urgencias", "Consulta externa", "Remisión externa", "Urgencias", "Consulta externa", "Remisión externa", "Hospitalización", "Urgencias", "Consulta externa", "Remisión externa", "Hospitalización", "Urgencias", "Consulta externa", "Remisión externa", "Hospitalización")
)

R Markdown

This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.

When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:

Ejercicio 2.1.2 :

# Crear una tabla con los datos de la imagen
datos_ingreso <- data.frame(
  Procedencia = c("Remisión médica", "Urgencias", "Consulta externa", "Hospitalización", "Urgencias"),
  Fecha_Ingreso = c("2024-04-10", "2024-04-11", "2024-04-12", "2024-04-13", "2024-04-14"),
  Piso = c(5, 3, 2, 1, 4),
  Cama = c(10, 15, 20, 25, 30),
  Causa_Ingreso = c("Neumonía", "Fractura de pierna", "Infarto agudo de miocardio", "Apendicitis", "Diabetes mellitus")
)

# Visualizar la tabla
View(datos_ingreso)

# Contar el número de pacientes por procedencia
pacientes_por_procedencia <- table(datos_ingreso$Procedencia)
View(pacientes_por_procedencia)


# Agregar la columna de edad a la tabla
datos_ingreso$Edad <- c(30, 25, 40, 55, 60)

# Calcular el promedio de edad por piso
promedio_edad_por_piso <- aggregate(Edad ~ Piso, data = datos_ingreso, mean)
View(promedio_edad_por_piso)

Ejercicio 2.2 a)

# Crear un gráfico de barras o circular para mostrar la distribución de género
library(ggplot2)

# Ejemplo de datos (reemplaza con tus datos reales)
pacientes <- data.frame(
  ID = 1:100,
  Genero = sample(c("Mujer", "Hombre"), 100, replace = TRUE)
)

# Gráfico de barras
ggplot(pacientes, aes(x = Genero)) +
  geom_bar() +
  labs(title = "Distribución de Pacientes por Género", x = "Género", y = "Cantidad")

Ejercicio 2.2 b)

# Ejemplo de datos (reemplaza con tus datos reales)
pacientes <- data.frame(
  ID = 1:100,
  Edad = sample(18:80, 100, replace = TRUE),
  Fumante = sample(c("Sí", "No"), 100, replace = TRUE)
)

# Gráfico de dispersión
ggplot(pacientes, aes(x = Edad, y = Fumante)) +
  geom_point() +
  labs(title = "Relación entre Edad y Hábito de Fumar", x = "Edad", y = "Fumante")

Ejercicio 2.2 c)

# Ejemplo de datos (reemplaza con tus datos reales)
pacientes <- data.frame(
  ID = 1:200,
  Piso = sample(1:5, 200, replace = TRUE),
  Genero = sample(c("Mujer", "Hombre"), 200, replace = TRUE)
)

# Gráfico de barras agrupado
ggplot(pacientes, aes(x = factor(Piso), fill = Genero)) +
  geom_bar(position = "dodge") +
  labs(title = "Distribución de Pacientes por Piso y Género", x = "Piso", y = "Cantidad")

Ejercicio 2.2 d)

# Ejemplo de datos (reemplaza con tus datos reales)
pacientes <- data.frame(
  ID = 1:150,
  Edad = sample(20:90, 150, replace = TRUE),
  CausaIngreso = sample(c("Accidente", "Enfermedad", "Otro"), 150, replace = TRUE)
)

# Gráfico de violín
ggplot(pacientes, aes(x = CausaIngreso, y = Edad)) +
  geom_violin() +
  labs(title = "Distribución de Edad por Causa de Ingreso", x = "Causa de Ingreso", y = "Edad")

Ejercicio 2.2 e)

# Ejemplo de datos (reemplaza con tus datos reales)
pacientes <- data.frame(
  ID = 1:200,
  Genero = sample(c("Mujer", "Hombre"), 200, replace = TRUE),
  Edad = sample(18:80, 200, replace = TRUE)
)

# Cálculo del promedio de edad por género
promedio_edad_mujeres <- mean(pacientes$Edad[pacientes$Genero == "Mujer"])
promedio_edad_hombres <- mean(pacientes$Edad[pacientes$Genero == "Hombre"])

cat("Promedio de edad para mujeres:", round(promedio_edad_mujeres, 2), "años\n")
## Promedio de edad para mujeres: 46.79 años
cat("Promedio de edad para hombres:", round(promedio_edad_hombres, 2), "años\n")
## Promedio de edad para hombres: 53.59 años

Ejercicio 2.2 f)

# Ejemplo de datos (reemplaza con tus datos reales)
pacientes <- data.frame(
  ID = 1:3,
  Nombre = c("Paciente1", "Paciente2", "Paciente3"),
  Edad = c(30, 45, 22),
  Genero = c("Mujer", "Hombre", "Mujer"),
  Fumante = c("No", "Sí", "No"),
  CausaIngreso = c("Accidente", "Enfermedad", "Otro")
)

# Visualización de datos
pacientes
##   ID    Nombre Edad Genero Fumante CausaIngreso
## 1  1 Paciente1   30  Mujer      No    Accidente
## 2  2 Paciente2   45 Hombre      Sí   Enfermedad
## 3  3 Paciente3   22  Mujer      No         Otro

Ejercicio 2.2 g)

# Ejemplo de datos (reemplaza con tus datos reales)
pacientes <- data.frame(
  ID = 1:3,
  Nombre = c("Paciente1", "Paciente2", "Paciente3"),
  Edad = c(30, 45, 22),
  Genero = c("Mujer", "Hombre", "Mujer"),
  Fumante = c("No", "Sí", "No"),
  CausaIngreso = c("Accidente", "Enfermedad", "Otro")
)

# Visualización de datos
print("Datos de 3 pacientes por identidad:")
## [1] "Datos de 3 pacientes por identidad:"
print(pacientes)
##   ID    Nombre Edad Genero Fumante CausaIngreso
## 1  1 Paciente1   30  Mujer      No    Accidente
## 2  2 Paciente2   45 Hombre      Sí   Enfermedad
## 3  3 Paciente3   22  Mujer      No         Otro

Ejercicio 2.2 h)

# Crear una lista de causas de ingreso
causas_ingreso <- c("Accidente", "Enfermedad", "Otro")

# Visualización de la lista de causas de ingreso
print("\nLista de causas de ingreso:")
## [1] "\nLista de causas de ingreso:"
print(causas_ingreso)
## [1] "Accidente"  "Enfermedad" "Otro"
load("C:/Users/nidia/OneDrive/Escritorio/R talleres/.RData")
 #install.packages("openxlsx")
 library(openxlsx)
 
 # Especifica el nombre del archivo de Excel
nombre_archivo <- "Practica_3.xlsx"
#install.packages("openxlsx")
library(openxlsx)

# Especifica el nombre del archivo de Excel
nombre_archivo <- "historias_clinicas.xlsx"

# Exporta la base de datos a un archivo de Excel
write.xlsx(historias_clinicas, nombre_archivo)
# Obtener el directorio de trabajo actual
directorio <- getwd()

# Imprimir la ubicación del directorio de trabajo actual
print(directorio)
## [1] "C:/Users/nidia/OneDrive/Escritorio/R talleres"