Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
0
respuestas

Este modelo es simple pero muestra cómo una cadena de Markov captura patrones de transición entre estados. En la práctica, se puede ajustar la matriz de transición con datos históricos reales de la ciudad para mejorar la precisión.

Código:
#paso 1 Definir estados y matriz de transición
import numpy as np

Estados

estados = ["Soleado", "Nublado", "Lluvioso"]

Matriz de transición (cada fila suma 1)

Ejemplo: desde Soleado → 0.6 prob. seguir Soleado, 0.3 Nublado, 0.1 Lluvioso

matriz_transicion = np.array([
[0.6, 0.3, 0.1], # Soleado
[0.2, 0.5, 0.3], # Nublado
[0.1, 0.3, 0.6] # Lluvioso
])

#Paso 2 Función de predicción
def predecir_clima(estado_inicial, dias):
estado_actual = estado_inicial
predicciones = [estado_actual]

for _ in range(dias):
    idx_estado = estados.index(estado_actual)
    estado_actual = np.random.choice(estados, p=matriz_transicion[idx_estado])
    predicciones.append(estado_actual)

return predicciones

#Paso 3 Probar el modelo
resultado = predecir_clima("Soleado", 10)
print("Predicción de clima para los próximos 10 días:")
print(resultado)

Resultado:
Predicción de clima para los proximos 10 días:
['Soleado', np.str_('Lluvioso'), np.str_('Lluvioso'), np.str_('Lluvioso'), np.str_('Lluvioso'), np.str_('Lluvioso'), np.str_('Lluvioso'), np.str_('Lluvioso'), np.str_('Nublado'), np.str_('Lluvioso'), np.str_('Lluvioso')]