使用 Python 的 LuckyTemplates 預測模型

預測是數據分析的一個重要方面,因為它允許企業根據歷史數據對未來做出明智的決策。執行此任務的一種有效方法是利用使用 Python 的 LuckyTemplates 預測模型。LuckyTemplates 是一種流行的商業智能工具,允許用戶創建交互式數據可視化、報告和儀表板。 

在本教程中,我們將學習如何使用 Python在 LuckyTemplates 中創建預測模型。我們將在 Power Query 中使用 Python 來創建預測值並將其帶入 LuckyTemplates 的可視化中。您可以在本博客底部觀看本教程的完整視頻

目錄

LuckyTemplates 預測模型示例

下面是一些 LuckyTemplates 預測模型,向您展示我們希望在本教程中實現的目標。這些是實際的頁面瀏覽量,揭示了數據中的每周季節性和一些季節性峰值。 

使用 Python 的 LuckyTemplates 預測模型

最後,我們可以看到我們想要在模型中獲取的數據的增長趨勢。

使用 Python 的 LuckyTemplates 預測模型

LuckyTemplates 預測模型:控制和限制 

下面是使用 LuckyTemplates 創建的 30 天預測模型。它與實際頁面瀏覽量具有相同的季節性,並且在 LuckyTemplates 中,我們還可以選擇控制某些數據。

使用 Python 的 LuckyTemplates 預測模型

我們可以通過在可視化面板中打開Analytics來做到這一點。然後,將鼠標懸停到Forecast > Options。 

使用 Python 的 LuckyTemplates 預測模型

在預測長度中輸入30天並將置信區間設置為 95%。系統可以使用其默認設置預測季節性,但我們也可以添加7來表示每周季節性。 

使用 Python 的 LuckyTemplates 預測模型

單擊Apply,我們應該得到一個類似於上面的模型。

Python 和 LuckyTemplates 預測模型的趨勢分析

LuckyTemplates 在建模季節性方面做得很好。然而,它的趨勢線表現不盡相同。

要開始趨勢分析,請打開可視化面板中的趨勢線

使用 Python 的 LuckyTemplates 預測模型

一旦打開,我們可以看到上升趨勢。我們應該能夠將該趨勢添加到我們的數據中,這將影響預測。 

使用 Python 的 LuckyTemplates 預測模型

我們可以用我們的Python模型來做到這一點。正如我們在下面的模型中看到的那樣,趨勢出現了季節性變化,而不是保持平穩。

使用 Python 的 LuckyTemplates 預測模型

使用 Python 代碼進行預測

使用Python來實現我們的目標並不是一件難事。首先,打開您的Jupyter Notebook。 

使用 Python 的 LuckyTemplates 預測模型

引入我們需要的數據:pandas、matplotlib.pyplot、seabornExponentialSmoothing。 

使用 Python 的 LuckyTemplates 預測模型

還有其他模型可能會更準確,但它們需要更多優化。 

我們還將引入seasonal_decompose以查看季節性和趨勢。然後,使用網絡預測web_forecast.xlsx讀取我們的數​​據。 

使用 Python 的 LuckyTemplates 預測模型

然後,使用下面的代碼切換日期。 

使用 Python 的 LuckyTemplates 預測模型

將數據集的索引設置為Date並將其命名為ts。然後,設置數據集的頻率。我們知道我們有每天的數據,所以讓我們將頻率設置為d作為一天並將其保存為ts。 

使用 Python 的 LuckyTemplates 預測模型

最後,使用 ts.plot ( ) 繪圖

使用 Python 的 LuckyTemplates 預測模型

繪圖後,我們應該準確地看到我們在 LuckyTemplates 筆記本中看到的內容。  

使用 Python 的 LuckyTemplates 預測模型

為了更好地了解我們實際趨勢中的組件,我們可以使用以下代碼。

使用 Python 的 LuckyTemplates 預測模型

第一個模型是我們的Actuals。旁邊是我們用seasonal_decompose(ts).plot(); 拾取的趨勢線;.

使用 Python 的 LuckyTemplates 預測模型

使用 Python 的 LuckyTemplates 預測模型

這是我們需要添加到模型中的趨勢。 

使用 Python 的 LuckyTemplates 預測模型

我們還可以將季節性添加到 LuckyTemplates 和指數平滑模型中。 

使用 Python 的 LuckyTemplates 預測模型

我們的最後一個模型顯示了殘差或數據中意外的殘差,這些殘差由點表示。請注意,當我們接近數據末尾時,我們可以看到發生了更多事件。 

使用 Python 的 LuckyTemplates 預測模型

訓練模型

使用我們的模型,我們需要訓練我們的數據,通常隨後進行測試。但是,在這種情況下,我們不會測試我們的模型,因為我們只會使用模型提供給我們的東西。 

使用 Python 的 LuckyTemplates 預測模型

我們的數據集中有298天,但在這個例子中,我們只需要模型記住其中的290天。這是因為我們不想為模型提供它無法學習並最終只會復制的所有數據。 

基本上,我們有 298 天中的 290 天的訓練集。 

使用 Python 的 LuckyTemplates 預測模型

接下來,對我們的模型使用指數平滑。然後,傳入 290 天的訓練數據集,趨勢使用add (加法),季節使用mul (乘法),季節使用7 。然後,將該數據擬合到模型中。

使用 Python 的 LuckyTemplates 預測模型

加法和乘法趨勢

讓我們快速了解一下加法和乘法趨勢是什麼。

加法模型中,趨勢緩慢增加,而在乘法模型中,它呈指數增長,並且還有很多事情在發生。我們可以使用兩者中的任何一個來獲得不同類型的預測。 

使用 Python 的 LuckyTemplates 預測模型

我們可以使用加法和乘法來修改我們的預測。我們目前的數據顯然在增長,因此必須使用加法,但我們也可以嘗試使用乘法,看看我們會得到什麼。 

使用 Python 的 LuckyTemplates 預測模型

例如,將季節性從mul更改為add。 

使用 Python 的 LuckyTemplates 預測模型

運行數據並觀察預測如何變化。

使用 Python 的 LuckyTemplates 預測模型

同樣,我們可以將趨勢從add更改為mul。 

使用 Python 的 LuckyTemplates 預測模型

這應該會產生一個更大一點的乘法趨勢。 

使用 Python 的 LuckyTemplates 預測模型

在嘗試了可能的組合之後,發現對趨勢和季節性使用mul會產生最佳結果。 

使用 Python 的 LuckyTemplates 預測模型

使用 Python 的 LuckyTemplates 預測模型

一旦我們有了這個預測模型,我們就可以用它來提前 30 天進行預測。 

使用 Python 的 LuckyTemplates 預測模型

LuckyTemplates 實施 

讓我們在 LuckyTemplates 筆記本中創建相同的 LuckyTemplates 預測模型。

在我們的 LuckyTemplates Forecast中,轉到可視化 > 分析 > 選項。請注意我們如何將預測長度設置為30 天。 

使用 Python 的 LuckyTemplates 預測模型

使用 Python 的 LuckyTemplates 預測模型

讓我們看看如何在 Power Query 中非常輕鬆地實現該代碼。 

單擊轉換數據。 

使用 Python 的 LuckyTemplates 預測模型

在 Power Query 編輯器中,為類別引入數據和添加 自定義列。使用實際值,以便我們稍後可以將實際值與預測值分開。 

使用 Python 的 LuckyTemplates 預測模型

使用 Python 的 LuckyTemplates 預測模型

如果我們轉到Forecasts Query,我們將看到一個較小的數據集,相當於未來 30 天。

使用 Python 的 LuckyTemplates 預測模型

審查 Python 腳本 

我們的 Python 腳本包含類似的信息。首先,我們引入一個數據集,將其保存為df,將Date更改為datetime,並將頻率設置為d(天)。 

我們還引入了holtwinters的ExponentialSmoothing模型。我們將前 290 天作為訓練集,然後將該數據添加到模型中。 

在我們的指數平滑模型中,我們添加了訓練數據並將趨勢和季節性設置為mul(乘法),將季節性週期設置為7天。然後我們擬合我們的模型。

接下來,我們得到一個包含我們預測的新數據框或表格。我們重置索引並確保它們被命名為DatePageviews以匹配我們在原始數據中的內容。最後,我們點擊確定。 

使用 Python 的 LuckyTemplates 預測模型

在輸出中,我們得到了數據中的所有這些變量。 

使用 Python 的 LuckyTemplates 預測模型

轉到Applied Steps並單擊Added Column這將打開一個表,其中包含我們的預測值和以預測為類別的 自定義列。

使用 Python 的 LuckyTemplates 預測模型

在下一個查詢中,我們只需在ActualsForecasts所在的位置附加兩個數據集。 

使用 Python 的 LuckyTemplates 預測模型

單擊關閉並應用。 

使用 Python 的 LuckyTemplates 預測模型

當我們應用乘法時,模型略有變化。 

與 LuckyTemplates 相比,我們可以通過在Python中更改趨勢和季節性的加性性質來輕鬆地進行預測並進一步優化模型。我們同樣可以將這些預測添加到我們的實際數據集中。 

使用 Python 的 LuckyTemplates 預測模型


使用 DAX 在 LuckyTemplates 中創建遠期預測
如何使用 DAX 在 LuckyTemplates 中進行趨勢分析
在預算分析中管理季節性 – Advanced LuckyTemplates

結論

在此博客中,我們介紹了使用Python在 LuckyTemplates 中創建預測模型的過程。通過將Python集成到 LuckyTemplates 中,我們可以獲得範圍廣泛的數據分析和建模工具,這使我們能夠創建更高級的預測。 

借助您在本教程中學到的技能,您現在可以在 LuckyTemplates 中創建自己的預測模型,並自信地使用它們來規劃未來。請記住,預測是一個迭代過程,因此請毫不猶豫地嘗試不同的算法和技術,以找到最適合您的數據的算法和技術,並在新數據出現時不斷檢查和更新您的模型。

一切順利,

蓋林荷蘭

Leave a Comment

在 Power Automate 中執行直到循環控制

在 Power Automate 中執行直到循環控制

了解有關 Do Until 循環控制如何在 Power Automate 流中工作的基礎過程,並熟悉所需的變量。

使用 Deneb 為 LuckyTemplates 製作自定義視覺對象

使用 Deneb 為 LuckyTemplates 製作自定義視覺對象

受限於 LuckyTemplates 中提供的標準視覺效果?學習使用 Deneb 和 Vega-Lite 為 LuckyTemplates 創建自定義視覺對象,提升您的數據可視化能力。

在 Power Automate Desktop 中將日期添加到文件名

在 Power Automate Desktop 中將日期添加到文件名

在此博客中,您將了解如何使用 Power Automate Desktop 自動將日期添加到文件名的開頭或結尾。

Power Query:如何快速添加註釋

Power Query:如何快速添加註釋

找出幾種不同的方法在 Power Query 中添加註釋,這對於不喜歡記筆記的人非常有幫助。

Power Apps – SharePoint 集成指南

Power Apps – SharePoint 集成指南

在此博客中,您將了解 MS Power Apps 界面的基礎知識並了解 Power Apps-SharePoint 集成的過程。

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

什麼是 Python 中的自我:真實世界的例子

如何在 R 中保存和加載 RDS 文件

如何在 R 中保存和加載 RDS 文件

您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。

回顧前 N 個工作日——DAX 編碼語言解決方案

回顧前 N 個工作日——DAX 編碼語言解決方案

在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

在 LuckyTemplates 中使用多線程動態視覺技術展示見解

本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。

LuckyTemplates 篩選上下文簡介

LuckyTemplates 篩選上下文簡介

在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。