閱讀英文

共用方式為


樞紐資料行

在 Power Query 中,您可以建立數據表,其中包含數據行中每個唯一值的匯總值。 Power Query 會將每個唯一值分組、針對每個值執行匯總計算,並將數據行樞紐分析成新的數據表。

樞紐數據行圖表。

此圖顯示左邊有空白數據列和數據列的數據表。 Attributes 資料行包含 A1、A2 和 A3 重複三次的九個數據列。 Values 資料行包含從上到下的值 V1 到 V9。 透過數據行樞紐,右邊的數據表包含空白數據行和數據列、[屬性值 A1]、[A2] 和 [A3] 作為數據行標頭,而 A1 數據行包含 V1、V4 和 V7 的值、包含 V2、V5 和 V8 值的 A2 數據行,以及包含 V3、V6 和 V9 值的 A3 數據行。

想像一下如下圖所示的數據表。

數據透視表原始數據表。

包含 Country 資料行集做為 Text 資料類型的數據表、將 Date 數據行設定為數據類型,並將 Value 資料行設定為 神秘 le number 數據類型。 Country 數據行包含美國的前三個數據列、接下來三個數據列中的加拿大,最後三個數據列包含巴拿馬。 Date 數據行包含第一、四和第七個數據列的日期、第二個、第五個和第八個數據列的第二個日期,以及第三、第六和第九個數據列的第三個日期。

此數據表包含簡單數據表中依國家/地區和日期的值。 在此範例中,您想要將此數據表轉換成已樞紐處理日期數據行的數據表,如下圖所示。

數據透視表最後一個數據表。

數據表,其中包含 Text 數據類型中的 Country 數據行集,以及設定為 神秘 le number 資料類型的第一個、第二個和第三個日期數據行。 Country 數據行包含加拿大數據列 1、巴拿馬第 2 列,以及第 3 列的美國。

注意

在樞紐數據行作業期間,Power Query 會根據數據表左邊第一個數據行上找到的值,以遞增順序排序數據表。

若要樞紐數據行

  1. 選取您要樞紐分析的數據行。 在此範例中,選取 [ 日期] 數據 行。

  2. 在 [任何數據行群組] 的 [轉換] 索引標籤上,選取 [樞紐數據行]。

    已選取 [轉換] 索引標籤的螢幕快照、所選取數據表中的 [日期] 資料行,以及強調 [樞紐數據行] 選項。

  3. 在 [樞紐數據行] 對話框的 [值] 資料行清單中,選取 [值]。

    [樞紐數據行] 對話框的螢幕快照,其中已選取 [基本] ,並將 [值] 數據行設定為 [值]。

    根據預設,Power Query 會嘗試以匯總方式執行總和,但您可以選取 [進階 ] 選項來查看其他可用的匯總。

    [樞紐數據行] 對話框的螢幕快照,其中已選取 [進階] 和 [匯總值] 函式下拉式清單。

可用的選項如下:

  • 不要匯總
  • 計數(全部)
  • 計數 (非空白)
  • 最小值
  • 最大值
  • 中間值
  • Sum
  • 平均值

無法匯總的數據行

當您使用無法匯總的數據行時,您可以樞紐分析數據行,或您嘗試執行的動作不需要匯總。 例如,想像一個類似下圖的數據表,其 [ 國家/地區]、 [位置] 和 [產品 ] 字段。

樞紐數據行沒有匯總。

包含美國前三個數據列的國家/地區數據行的數據表、接下來三個數據列中的加拿大,以及最後三個數據列的巴拿馬。 Position 數據行包含第一個位置在第一、第四和第七個數據列、第二個、第二個、第五個和第八個數據列,第三個、第六和第九個數據列的第三個位置。

假設您想要在這個數據表中樞紐定位數據行,讓您可以將其值當做新數據行。 針對這些新數據行的值,您可以使用 Product 資料行中的值。 選取 [位置] 數據行,然後選取 [樞紐數據行] 以樞紐分析該數據行。

數據表的螢幕快照,其中已選取 [位置] 資料行,以及 [轉換] 索引標籤中強調的樞紐數據行命令。

在 [ 樞紐數據行 ] 對話框中,選取 [產品 ] 數據行作為值數據行。 選取 [樞紐數據行] 對話框中的 [進階] 選項按鈕,然後選取 [不要匯總]。

[樞紐分析數據行] 對話框的螢幕快照,其中 [匯總值] 函式設定為 [不要匯總]。

此作業的結果會產生下圖所示的結果。

樞紐數據行 不會匯總結果。

包含 Country、First Place、Second Place 和 Third Place 數據行的數據表,其中 Country 數據行包含加拿大數據列 1、巴拿馬列 2,以及第 3 列的 USA。

使用 [不要匯總] 選項時發生錯誤

[不要匯總] 選項的運作方式是,它會擷取單一值,讓樞紐作業放置為數據行和數據列組交集的值。 例如,假設您有類似下圖中的數據表。

樞紐數據行不會匯總錯誤範例初始數據表。

具有 Country、Date 和 Value 數據行的數據表。 Country 數據行包含美國的前三個數據列、接下來三個數據列中的加拿大,最後三個數據列包含巴拿馬。 Date 資料列包含所有數據列中的單一日期。 值數據行包含介於 20 到 785 之間的各種整數。

您想要使用 Date 數據行來樞紐分析該數據表,而您想要使用 Value 數據行中的值。 由於此數據透視表只會讓數據表具有數據列的 Country 值和 Date 作為數據行,因此您會收到每個單一數據格值的錯誤,因為 CountryDate 的每個組合都有多個數據列。 此 樞紐數據行 作業的結果會產生下圖所示的結果。

數據透視表不會匯總錯誤範例最終數據表。

請注意錯誤訊息「Expression.Error:列舉中有太多元素無法完成作業」。之所以發生此錯誤,是因為 「不要」匯總 作業只會預期國家/地區和日期組合的單一值。