Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
import pandas as pd
import numpy as np
from datetime import datetime, timedelta
from statsmodels.tsa.statespace.sarimax import SARIMAX
from scipy.stats import norm
dataset = dataset[['Start of Week','23756856']]
def datetimeix(dataset):
dataset['Start of Week'] = pd.DatetimeIndex(dataset['Start of Week'])
dataset.set_index('Start of Week', inplace = True)
return dataset
dataset = datetimeix(dataset)
data_train = dataset[:45]
data_for_dist_fitting = dataset[45:]
history = np.log(dataset.astype(float))
predictions= []
train_end =datetime(2022,2,28)
rolling_predictions = data_for_dist_fitting.copy()
i=0
for train_end in data_for_dist_fitting.index+timedelta(7):
train_data = history[:train_end+timedelta(7)]
model = SARIMAX(train_data,order=(1,1,1),seasonal_order=(1, 1, 1, 12),enforce_invertibility=False, enforce_stationarity=False)\
model_fit = model.fit()
output = model_fit.predict()
yhat = np.exp(output)
rolling_predictions[train_end] = yhat
predictions[i]= rolling_predictions.iloc[i, i+1]
i=i+1
predictions = pd.DataFrame({'Date': data_for_dist_fitting.index ,'#Prediction':predictions })
Hi
I ran it on visual studio code and debugged it. It still is not working on power bi.
Hi, @Anonymous ;
Sorry, since this is the Power query forum, your python will have some shortcomings, you can try the following code can be executed in pycharm or other software; Are there any error messages?
Secondly, you check whether you have a python environment installed below and related libraries, such as pandas.
Using Python in Power BI Power Query Editor - Power BI | Microsoft Learn
Best Regards,
Community Support Team _ Yalan Wu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.