共用方式為


了解時間序列模型的需求 (中繼資料採礦教學課程)

當您準備要用於預測模型的資料時,必須確認該資料包含可用於識別時間序列步驟的單一資料行。該資料行將用於做為 Key Time 資料行,而且必須包含唯一數值。如果在序列開頭或結尾處之外的資料有間距,您可以使用 MISSING_VALUE_SUBSTITUTION 參數來填滿序列。Analysis Services 提供數個選項,讓您以值 (例如平均值或常數值) 取代遺漏資料。

如果您計畫分析多個資料序列,請務必確認所有序列的開始和結束時間在同一天。

在這項工作中,您將在 Business Intelligence Development Studio 中建立簡單的樞紐資料表,藉以瀏覽時間序列。此外,您還將學習尋找及處理資料間距的方法。

識別預測模型的時間索引鍵

  1. 在 [SalesByRegion.dsv [設計]] 窗格中,以滑鼠右鍵按一下 vTimeSeries 資料表,然後選取 [瀏覽資料]

    隨即開啟一個標題為 [瀏覽 vTimeSeries 資料表] 的索引標籤。這個索引標籤之中包含四個索引標籤:[資料表][樞紐資料表][圖表][樞紐圖表]

  2. [資料表] 索引標籤上,按一下索引標籤右側的 [取樣選項] 按鈕。

  3. [資料瀏覽選項] 對話方塊中,注意預設取樣方法 (在 [取樣方法] 底下) 使用 [最高計數] 選項,且針對前 5000 個資料列進行取樣。

  4. [取樣方法] 變更為 [隨機取樣],並且將 [取樣計數] 變更為 1000,然後按一下 [確定]

    [!附註]

    變更取樣選項並不會影響用於資料採礦的資料。圖表和資料表只是方便您瀏覽及了解資料的工具。

  5. [資料表] 索引標籤上,檢閱用於 TimeIndex 和 Reporting Date 資料行的資料。

    這兩個資料行都是具有唯一值的序列;不過,您需要檢查資料行的資料類型。

    [!附註]

    如果看不到 Reporting Date 資料行,可能是因為您使用舊版的 AdventureWorksDW 資料庫。本教學課程需要 AdventureWorksDW2008R2 資料庫,以便使用 SQL Server 2008 中的日期與時間新功能。如需有關日期與時間變更的詳細資訊,請參閱<SQL Server 2008 R2 中對於 Database Engine 的重大變更>。

  6. 按一下 [SalesByRegion.dsv [設計]] 索引標籤。

  7. 選取 Reporting Date 資料行。

    [屬性] 視窗中,可以看出 TimeIndex 欄位擁有 System.Int32 資料類型,而 Reporting Date 欄位則擁有 System.DateTime 資料類型。Microsoft 時間序列演算法不要求使用 datetime 資料類型,只要求使用的值必須相異且經過排序。因此,您可以使用任何一個資料行做為預測模型的時間索引鍵。不過,由於您要使用日曆日期表示銷售資料預測,因此需要使用 Reporting Date 資料行做為唯一序列識別碼。

設定資料來源檢視中的索引鍵

  1. 在 [SalesByRegion.dsv] 窗格中,選取 vTimeSeries 資料表。

  2. 以滑鼠右鍵按一下 Reporting Date 資料行,然後選取 [設定邏輯主索引鍵]

使用樞紐圖表檢查資料序列中的間距

  1. 在 [SalesByRegion.dsv [設計]] 窗格中,以滑鼠右鍵按一下 vTimeSeries 資料表,然後選取 [瀏覽資料]

  2. 按一下 [樞紐資料表] 索引標籤。

  3. [樞紐分析表欄位清單] 對話方塊中,選取 [Quantity][Amount] 欄位,將它們拖曳到資料表的 [將總計或詳細資料欄位放置到此處] 區域。

  4. 同樣地,將 TimeIndex 欄位拖曳到 [將資料行欄位放置到此處] 方塊。

    [!附註]

    TimeIndex 欄位不是用於表示時間序列的欄位,只是針對回溯相容性而提供的。此外,TimeIndex 欄位還提供簡單的序列檢視,供您在瀏覽樞紐圖表資料時使用。

  5. 將 ModelRegion 欄位拖曳到 [將資料列欄位放置到此處] 方塊。

    所建立的樞紐資料表會在左邊資料行中顯示產品和區域清單,而接下來的資料行之中包含各日曆月與日曆年的銷售數量與金額。

  6. 將軸捲拖曳到右邊,以查看 T1000 序列的銷售日期開始日期。

    您可以在這個資料表中看出,在 2003 年 7 月之前沒有 T1000 產品線的資料。在 SQL Server 2008 中,Microsoft 時間序列演算法有一個重要的需求,就是包含在單一模型中的任何序列都要具有相同的結束點。由於 T1000 自行車模型從 2003 年開始,這個序列的資料比其他自行車模型開始時間較晚。不過結束日期相同,所以這個序列的資料可以接受。

  7. 將 TimeIndex 拖曳到資料表之外,以變更用於表示時間序列的欄位。

  8. 將下列其中一個欄位從 [樞紐分析表欄位清單] 拖曳到 [將資料行欄位放置到此處] 方塊。嘗試以不同方法檢視時間序列,例如將資料行拖曳到資料表之外,或是選取季或月之類的不同彙總。

    • ReportingDate

    • ReportingDate By Week

    • ReportingDate By Month

處理遺漏資料 (選擇性)

如果有任何序列遺漏資料,當您嘗試處理模型時,可能會收到錯誤訊息。解決遺漏資料的方法有好幾種:

  • 讓 Analysis Services 計算平均值或使用上一個值,藉此填滿遺漏值。若要這麼做,請在建立採礦模型時設定參數。如需詳細資訊,請參閱<Microsoft 時間序列演算法技術參考>。

  • 改變資料來源或是篩選基礎檢視,以便刪除序列或取代原有值。您可以在關聯式資料來源中進行此動作,或是建立客戶命名查詢或具名計算以修改資料來源檢視。如需詳細資訊,請參閱<設計資料來源檢視 (Analysis Services)>。此課程稍後的一項工作提供了如何建立具名查詢與自訂計算的範例。

在這個案例中,有一個序列開頭處的某些資料遺漏,但所有序列的結束日期都相同,而且沒有遺漏值。因此,您不需要進行任何額外變更,因為這些資料符合時間序列模型的需求。

關閉資料來源檢視設計師

  • 以滑鼠右鍵按一下 [瀏覽 vTimeSeries 資料表] 索引標籤,然後選取 [關閉]