Forum Discussion
Syndicate_Admin
4 years agoAdministrator
No se puede ejecutar correctamente el script de Python
Hola Estoy tratando de ejecutar un script de Python que esencialmente realizará pronósticos de series de tiempo en mis datos de entrada. Lo que quiero son los próximos 12 valores predichos. Hic...
Syndicate_Admin
4 years agoAdministrator
Así que hice algunas modificaciones en el código y estoy obteniendo la salida ahora.
Sin embargo, mi power bi y python muestran diferentes predicciones.
Me pregunto dónde tengo que poner la semilla, si ese es el caso.
Código nuevo
import numpy as np
import matplotlib.pyplot as plt
import pypyodbc as pyodbc
import pandas as pd
from statsmodels.tsa.arima_model import ARMA,ARMAResults,ARIMA,ARIMAResults
from statsmodels.graphics.tsaplots import plot_acf,plot_pacf # for determining (p,q) orders
from statsmodels.tsa.holtwinters import ExponentialSmoothing
SERVER_NAME = 'db.its.corp.net'
DATABASE_NAME = 'GDB'
cnxn = pyodbc.connect(Driver='{SQL Server}', Server=SERVER_NAME , database=DATABASE_NAME,
trusted_connection='Yes')
cursor = cnxn.cursor()
sql_query = """
select * from my_table
"""
# With Headers
df = pd.read_sql(sql_query, cnxn,index_col='date',parse_dates=True)
#index col is required to make sure stasmodel on this dataset we need to set index frequency
df.index.freq = 'MS'
method_TESmul12 = ExponentialSmoothing(df['tcv'],trend='mul',seasonal='mul',seasonal_periods=12).fit()
range = pd.date_range('01-02-2022',periods=12,freq='MS')
predictions = method_TESmul12.forecast(12).astype(int)
predictions_range = pd.DataFrame({'Date':range, 'TCV':predictions})
predictions_range