viernes, 17 de noviembre de 2023

caso 1 - Covid 19 "MEDICINA"

 Por: Julia Torrez

Paso 1: Definición del Problema

Objetivo del Proyecto: Simular y analizar la propagación de COVID-19 en una comunidad ficticia para evaluar la efectividad de diversas medidas preventivas.

Paso 2: Metodología

2.1 Simulación de Datos Ficticios

Generaremos datos ficticios que representan la información sobre la infección en la comunidad a lo largo del tiempo.

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# Generar datos ficticios
personas = 500
dias = 120
fechas = pd.date_range('2022-01-01', periods=dias, freq='D')
datos = {'Fecha': [], 'Infectados': [], 'Recuperados': [], 'Susceptibles': []}

# Inicialización de la simulación
infectados_iniciales = 5
recuperados_iniciales = 0
susceptibles_iniciales = personas - infectados_iniciales - recuperados_iniciales

for fecha in fechas:
    datos['Fecha'].append(fecha)
    datos['Infectados'].append(infectados_iniciales)
    datos['Recuperados'].append(recuperados_iniciales)
    datos['Susceptibles'].append(susceptibles_iniciales)

    nuevos_infectados = np.random.randint(0, 10)
    nuevos_recuperados = np.random.randint(0, 5)

    infectados_iniciales += nuevos_infectados
    recuperados_iniciales += nuevos_recuperados
    susceptibles_iniciales = personas - infectados_iniciales - recuperados_iniciales

# Crear un DataFrame
df = pd.DataFrame(datos)

2.2 Modelado de la Propagación

Modelaremos la propagación del virus aplicando un modelo simple.

# Parámetros del modelo
tasa_contagio = 0.03
tasa_recuperacion = 0.02

# Simulación de la propagación
for i in range(1, len(df)):
    nuevos_infectados = np.round(df['Susceptibles'][i - 1] * tasa_contagio * df['Infectados'][i - 1] / personas)
    nuevos_recuperados = np.round(df['Infectados'][i - 1] * tasa_recuperacion)

    df.at[i, 'Infectados'] = df['Infectados'][i - 1] + nuevos_infectados - nuevos_recuperados
    df.at[i, 'Recuperados'] = df['Recuperados'][i - 1] + nuevos_recuperados
    df.at[i, 'Susceptibles'] = personas - df['Infectados'][i] - df['Recuperados'][i]

# Visualización de la simulación
plt.figure(figsize=(10, 6))
plt.plot(df['Fecha'], df['Infectados'], label='Infectados')
plt.plot(df['Fecha'], df['Recuperados'], label='Recuperados')
plt.plot(df['Fecha'], df['Susceptibles'], label='Susceptibles')
plt.xlabel('Fecha')
plt.ylabel('Número de Personas')
plt.title('Simulación de Propagación de COVID-19')
plt.legend()
plt.show()

2.3 Análisis de resultados

Calcular estadísticas descriptivas y analizar la efectividad de las medidas preventivas.

# Estadísticas descriptivas
estadisticas = df.describe()

# Análisis de la efectividad de medidas preventivas
porcentaje_reduccion_contagio = 0.5
df['Infectados_Preventiva'] = df['Infectados'] * (1 - porcentaje_reduccion_contagio)

# Visualización de resultados con y sin medidas preventivas
plt.figure(figsize=(10, 6))
plt.plot(df['Fecha'], df['Infectados'], label='Infectados Sin Prevención')
plt.plot(df['Fecha'], df['Infectados_Preventiva'], label='Infectados Con Prevención')
plt.xlabel('Fecha')
plt.ylabel('Número de Personas Infectadas')
plt.title('Efectividad de Medidas Preventivas')
plt.legend()
plt.show()


Paso 3: Resultados y Recomendaciones

Analizar los resultados y proporcionar recomendaciones basadas en la simulación y análisis de la propagación.

# Resultados
print(estadisticas)

# Recomendaciones
if df['Infectados'].max() > 0:
    print("Se recomienda implementar medidas preventivas para reducir la propagación del virus.")
else:
    print("Las medidas preventivas han sido efectivas en controlar la propagación del virus.")







No hay comentarios:

Publicar un comentario

La importancia de la Evaluación sumativa en Ciberseguridad

 Por: Julia Torrez 1. Definición del Problema En este proyecto, realizaremos un análisis de la evaluación sumativa en el ámbito de la cibers...