beyzakizilkaya
Hola,
Estoy tratando de hacer un pronóstico de serie de tiempo en power bi usando un script de Python.
Cuando ejecuto mi código en power bi desktop con algunos filtros que he aplicado, funciona.
Pero después de publicar el informe en app.powerbi.com y aplicar los mismos filtros con el escritorio, aparece el siguiente error:
Error de tiempo de ejecución de la secuencia de comandos
XXXDate
2016-10-01 1
2016-11-01 0
2016-12-01 0
2017-01-01 0
2017-02-01 0
2017-03-01 0
2017-04-01 1
2017-05-01 1
2017-06-01 0
2017-07-01 0
2017-08-01 0
2017-09-01 0
2017-10-01 0
2017-11-01 0
2017-12-01 1
2018-01-01 0
2018-02-01 0
2018-03-01 0
2018-04-01 1
2018-05-01 3
2018-06-01 1
2018-07-01 0
2018-08-01 0
2018-09-01 2
2018-10-01 1
[S-fa538819-1d04-4ba3-9af7-a2963e25b512]C: Python lib site-packages statsmodels tsa base tsa_model.py: 165: ValueWarning: No se proporcionó información de frecuencia, por lo que se utilizará MS de frecuencia inferida.
% freq, ValueWarning)
Rastreo (llamadas recientes más última):
Archivo «C: Script 0.py», línea 63, en
resultados = model.fit ()
Archivo «C: Python lib site-packages statsmodels tsa statespace mlemodel.py», línea 445, en forma
start_params = self.start_params
Archivo «C: Python lib site-packages statsmodels tsa statespace sarimax.py», línea 969, en start_params
self.k_seasonal_ma, self.polynomial_seasonal_ma
Archivo «C: Python lib site-packages statsmodels tsa statespace sarimax.py», línea 845, en _conditional_sum_squares
X = lagmat (endog, k, trim = ‘ambos’)
Archivo «C: Python lib site-packages statsmodels tsa tsatools.py», línea 408, en lagmat
subir ValueError («maxlag debe ser
ValueError: maxlag debe ser
Además, mi secuencia de comandos de Python es la siguiente:
# The following code to create a dataframe and remove duplicated rows is always executed and acts as a preamble for your script:
# dataset = pandas.DataFrame(yyy, XXXDate)
# dataset = dataset.drop_duplicates()
# Paste or type your script code here:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from datetime import datetime
from dateutil.relativedelta import *
import matplotlib.dates as mdates
import seaborn as sns
from statsmodels.tsa.arima_model import ARMA
from statsmodels.tsa.statespace.sarimax import SARIMAX
from numpy import cumsum
dataset["XXXDate"] = pd.to_datetime(dataset["XXXDate"], format="%Y-%m")
pvt_table = pd.pivot_table(dataset, values="yyy", index='XXXDate', aggfunc="count")
pvt_table = pvt_table.sort_index()
prev_index = None
total_df = pd.DataFrame()
for index, row in pvt_table.iterrows():
if prev_index:
prev_index_datetime = prev_index.to_pydatetime()
index_datetime = index.to_pydatetime()
while prev_index_datetime + relativedelta(months=+1) != index_datetime:
prev_index_datetime = prev_index_datetime + relativedelta(months=+1)
populate_df = pd.DataFrame.from_dict(
{"XXXDate": [pd.Timestamp(prev_index_datetime)], "yyy": [0]})
total_df = total_df.append(populate_df)
prev_index = index
if total_df.size > 0:
total_df = total_df.set_index("XXXDate")
pvt_table = pvt_table.append(total_df)
pvt_table = pvt_table.sort_index()
print(str(pvt_table))
model=SARIMAX(pvt_table, order=(0,0,1),seasonal_order=(1,1,1,12))
results=model.fit()
residuals=results.resid
mae=np.mean(np.abs(residuals))
forecast=results.get_forecast(steps=12).predicted_mean
#mean_forecast=np.cumsum(forecast) + cr.iloc[-1,0]
plt.subplot(2,1,1)
plt.plot(pvt_table, label="observed",color="green", linestyle="dashed", linewidth=4, marker="o", markerfacecolor="blue", markersize=12)
plt.plot(forecast, label="forecast",color="green", linestyle="dashed", linewidth=4, marker="o", markerfacecolor="cyan", markersize=12)
plt.legend()
plt.show()
¿Este problema puede ocurrir debido a diferentes versiones de bibliotecas entre el escritorio y app.powerbi.com?
Con otra palabra, ¿desktop y app.powerbi.com usan las mismas versiones o versiones diferentes de las bibliotecas en el script de Python? ¿Cuál es la lógica? Si esto no es la causa del problema, ¿hay alguna idea sobre el problema?
Gracias.
v-yingjl
Hola @beyzakizilkaya,
Puede consultar el artículo anterior como @ vanessafvg mencionado para referirse primero.
Además, también puede probar las siguientes listas de verificación:
- Intente actualizar power bi desktop a la última versión de abril de 2020 para volver a intentarlo.
- Intente crear un nuevo informe que sea el mismo que el informe anterior para publicar e intentarlo de nuevo.
- Intente publicar el informe en diferentes espacios de trabajo para volver a intentarlo.
Atentamente,
Yingjie Li
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.
beyzakizilkaya
En respuesta a v-yingjl
Estimado @ v-yingjl, lamentablemente, los pasos que ha descrito y que he aplicado no funcionaron.
Sigo pensando que el problema puede deberse a que la versión de la biblioteca no coincide.
Necesito respuestas claras y exactas sobre esto.
beyzakizilkaya
En respuesta a v-yingjl
@ v-yingjl Gracias por tu respuesta. Aplicaré sus enfoques de solución y luego daré una actualización si funciona o no.
vanessafvg
¿Esto ayuda en absoluto? https://powerbi.microsoft.com/en-us/blog/python-visualizations-in-power-bi-service/
beyzakizilkaya
En respuesta a vanessafvg
@vanessafvg Gracias por su respuesta, pero necesito las versiones compatibles de las bibliotecas de Python y también necesito comprender cómo los informes que se crean con scripts de Python se publican en app.powerbi.com. la misma versión de las bibliotecas con el escritorio powerbi?