在 Power Query 中,您可以建立資料表,其中包含資料行中每個唯一值的彙總值。 Power Query 會將每個唯一值分組,針對每個值進行彙總計算,並將其資料行旋轉生成新資料表。
顯示左側表格的圖表,其中包含空白欄和行。 「屬性」欄包含九列,其中 A1、A2 和 A3 重複三次。 一個「值」資料行會從上到下包含值 V1 到 V9。 透視欄後,右側表格包含空白欄和列。 屬性值 A1、A2 和 A3 是直欄標頭。 A1 資料行包含 V1、V4 和 V7 值。 A2 資料行包含 V2、V5 和 V8 值。 最後,包含 V3、V6 和 V9 值的 A3 列。
想像一個如下圖所示的資料表。
包含設定為 [文字] 資料類型的 [國家/地區] 資料行、設定為 [資料] 資料類型的 [日期] 資料行,以及設定為 [整數] 資料類型的 [值] 資料行的資料表。 Country 數據行包含美國的前三個數據列、接下來三個數據列中的加拿大,最後三個數據列包含巴拿馬。 「日期」欄包含第一列、第四列和第七列中的日期,第二列、第五列和第八列中的第二個日期,以及第三、第六和第九列中的第三個日期。
此表格在簡單表格中包含依國家/地區和日期的值。 在此範例中,您想要將此資料表轉換為透視日期資料行的資料表,如下圖所示。
包含「文字」資料類型中設定的「國家/地區」資料行,以及設定為「整數」資料類型的第一個、第二個和第三個日期資料行的資料表。 「國家/地區」欄在第 1 列中包含加拿大、在第 2 列中包含巴拿馬,在第 3 列中包含美國。
備註
在樞紐列作業期間,Power Query 會根據資料表左側第一欄的值以遞增順序排序資料表。
旋轉欄位
選取要旋轉的資料行。 在此範例中,選取日期欄。
在 [轉換] 索引標籤的 [任何欄位] 群組中,選取 [樞紐欄位]。
在 [樞紐資料行] 對話方塊的 [值] 資料行清單中,選取 [值]。
根據預設,Power Query 會嘗試將總和做為彙總,但您可以選取 [ 進階 ] 選項來查看其他可用的彙總。
可用的選項如下:
- 不要彙總
- 計數(全部)
- 計數 (非空白)
- 最小值
- 最大值
- 中位數
- 總和
- 平均
無法彙總的樞紐分析欄
當您使用無法彙總的資料行或不需要彙總時,您可以旋轉這些資料行。 例如,假設如下圖所示的資料表,其中 [國家/地區]、[ 位置] 和 [產品 ] 作為欄位。
表格中,國家欄的前三列是 USA,接下來三列是 Canada,最後三列是 Panama。 「位置」欄包含第一列、第四列和第七列中的「第一名」、第二列、第五列和第八列中的「第二名」,以及第三列、第六列和第九列中的第三名。
假設您想要透視此表中的 「位置」 列,以便將其值作為新列。 對於這些新資料行的值,您可以使用 Product 資料行中的值。 選取 [位置] 資料行,然後選取 [透視資料行] 以旋轉該資料行。
在 [樞紐分析欄] 對話方塊中,選取 [產品] 欄作為值欄。 選取 [進階] 按鈕,在 樞紐欄 對話方塊中,然後選擇 [不彙總]。
此作業的結果會產生下圖所示的結果。
表格包含 [國家/地區]、[第一名]、[第二名] 和 [第三名] 資料行,其中 [國家/地區] 資料行在第 1 列中包含加拿大,在第 2 列中包含巴拿馬,在第 3 列中包含美國。
使用「不彙總」選項時發生錯誤
不彙總 選項的運作方式是,它會擷取樞紐分析中所需的一個單一值,並將其放置於欄和列交集的相應位置。 例如,假設您有一個如下圖所示的資料表。
包含國家、日期和數值欄的資料表。 Country 數據行包含美國的前三個數據列、接下來三個數據列中的加拿大,最後三個數據列包含巴拿馬。 「日期」欄在所有列中都包含單一日期。 值欄包含介於 20 到 785 之間的各種整數。
您想要使用 [日期] 資料行來進行樞紐分析該資料表,並想要使用 [值] 資料行中的值。 由於此樞紐會使您的表格在行上只有 [國家/地區] 值,並將 [日期] 作為列,因此每個儲存格值都會收到錯誤,因為 每個國家/地區 和 日期的組合都有多個資料列。 此 樞紐資料行 作業的結果會產生下圖所示的結果。
請注意錯誤訊息 Expression.Error: There were too many elements in the enumeration to complete the operation. 發生此錯誤,因為 Don't aggregate 作業只會預期國家/地區和日期組合的單一值。