Pivot
概要
ピボットオペレーターは、 ピボットテーブルを作成し、データをグループに再編成し、各グループの合計、平均、またはその他の統計を計算することで、より大きなテーブルのデータを要約します。
詳細
ピボットテーブルの最も一般的な例は、販売概要レポートです。多数の店舗で商品を販売しており、各月の各店舗の総売上を知りたいとします。すべてのストアで発生するすべてのトランザクションをリストするデータテーブルがあります。トランザクションごとに、表の行に店舗と購入日がリストされ、月と日、トランザクションのコストの列が個別に表示されます。ピボットテーブルは、元のテーブルから次の方法で作成された新しいテーブルです。
- 店舗ごとに一意の行を作成します。
- 年の各月に一意の列を作成します。
- トランザクションのコストを追加することにより、すべてのトランザクションを適切な行と列に割り当てます。
この場合、ピボットテーブルのセルには合計 (そのカテゴリの総売上)が表示されますが、他の種類の統計を作成できます。 カウントは、各月に各ストアで発生したトランザクションの数を示します。 平均は、トランザクションの平均コストを示します。統計の完全なリストについては、パラメーター集約属性を参照してください。
通常、ピボットテーブルは、元のExampleSetの3つの属性によって定義されます。
- 属性によるグループ化-通常はカテゴリー(名義)値、行を定義します
- 列グループ化属性-通常、カテゴリー(名義)値、列を定義します
- 集約属性-通常は数値で、合計または平均されます
ただし、実際の属性の数は、選択に応じて3つよりも多い場合も少ない場合もあります。たとえば、 集約属性のセットで複数の属性を選択できます 。
元の例では、属性別グループ (ストア) と列グループ化属性 (月)にはカテゴリ値があり、 集計属性 (コスト)には数値があります。 集計属性に選択した属性にカテゴリ値がある場合、統計の範囲はより制限されます。たとえば、 countはまだ使用可能ですが、 averageは使用できません。
属性ごとのグループまたは列グループ化属性に選択した属性に数値がある場合、数値をビンに入れることで、最初にそれらをカテゴリ値に変換すると便利な場合があります。
分化
Aggregate
ピボット演算子と同様に、集計演算子には、 属性および集計属性 によるパラメーターグループがありますが、 列のグループ化属性はサポートされていません。ピボット演算子は、グループのより高度な概念を備えた集約演算子の一般化と考えることができます。
Transpose
転置演算子は、行列の転置のように、ExampleSetの行と列を交換します。
入力
- 入力 (IOObject)この入力ポートには、ExampleSetが必要です。
出力
- 出力(IOObject)この出力ポートは、ピボットテーブルを提供します。
- オリジナル(IOObject)入力として与えられたExampleSetは、変更なしでパススルーされます。
パラメーター
- group_by_attributesこのパラメーターは、ピボットテーブルの行を指定します。 [属性の選択]をクリックして、1つ以上の属性を選択します。単一の属性を選択した場合、行はその属性の一意の値に対応します。 2つ以上の属性を選択した場合、行は属性値の一意の組み合わせに対応します。属性の値が同じすべてのデータポイントは、同じ行に属します。
範囲:
- column_grouping_attributeこのパラメーターは、ピボットテーブルの列を指定します。ドロップダウンから属性を選択します。列は、この属性の一意の値に対応します。属性の同じ値を持つすべてのデータポイントは、同じ列に属します。
範囲:
- Aggregation_attributes行と列で定義されたピボットテーブルの各セル内で、集計関数を使用して1つ以上の統計が計算されます。 [リストの編集]をクリックし、ドロップダウンから属性と機能を選択します。集計関数の完全なリストを以下に示します。
- 平均
- 連結
- カウント
- カウント(小数)
- カウント(欠落を含む)
- カウント(パーセンテージ)
- 最初
- 少なくとも
- ログ製品
- 最大
- 中央値
- 最小
- モード
- 製品
- 標準偏差
- 和
- 合計(小数)
- 分散
範囲:
- use_default_aggregationオンにすると、このパラメーターにより、残りの属性(最初の3つのパラメーターで使用されないすべての属性)のデフォルトの集計関数を定義できます。データ型がデフォルトの集計関数と互換性がない残りの属性は無視されます。たとえば、カテゴリ(名義)属性には平均が使用できないことに注意してください。
範囲:
- default_aggregation_functionこのパラメーターは、 デフォルトの集計を使用するパラメーターがtrueに設定されている場合にのみ使用できます 。残りの属性(最初の3つのパラメーターで使用されないすべての属性)のデフォルトの集計関数を指定します。問題の属性は、 デフォルトの集約関数と互換性がなければなりません。たとえば、ExampleSetに2つのノミナル属性があり、残りがすべて数値の場合、最初に集計属性に2つのノミナル属性を含めて、 集計関数としてcountを使用し、次にデフォルトの集計関数としてaverageを選択することにより、それらすべてを集計できます 、残りの世話をする。
範囲:
チュートリアルプロセス
クラスと性別によるタイタニック号のサバイバル
このチュートリアルプロセスでは、タイタニックデータを取得し、ピボット演算子を使用して、「Passenger Class」および「Sex」に従って分類されたグループの生存確率を表示します。 「Survived」はカテゴリ変数(「Yes」/「No」)であるため、最初に「Nominal to Numerical Operator」を介して数値に変換します。この演算子は、「Survived」を2つの新しい数値属性「Survived = No」と「Survived = Yes」に変換します。値は0と1です。
ピボットオペレーターのパラメーターについては、グループ化属性-「Passenger Class」(3値)列グループ化属性-「Sex」(2値)集計属性-「Survived = Yes」を選択します。平均は集計関数です。
プロセスにはブレークポイントが含まれているため、「実行」ボタンを2回押す必要があります。
1)[実行]をクリックして、新しい属性を持つExampleSetを表示します。
2)もう一度[実行]をクリックして、6つの各カテゴリの生存確率を確認します。
タイタニック号のファミリーサイズ
このチュートリアルプロセスでは、Titanicデータを取得し、Pivot Operatorを使用して、「Sex」、「Passenger Class」、および「Survived」の値に従って分類されたグループのファミリーサイズを表示します。このピボットテーブルは、3つ以上の属性を使用します。
「ファミリーサイズ」はタイタニックデータセットの属性ではありませんが、既存の2つの属性を追加することで、属性の生成演算子を使用してこの属性を作成できます。[ファミリーサイズ] = [親または子の数] + [ボード上の兄弟または配偶者の数] + 1
ピボットオペレーターのパラメーターについては、次の項目を選択します。属性別グループ-「セックス」および「乗客クラス」(2 x 3 = 6値)列グループ化属性-「存続」(2値)集計属性-「家族サイズ」、集約関数としての平均。 「家族のサイズ」、集計関数としてカウント。
プロセスにはブレークポイントが含まれているため、「実行」ボタンを2回押す必要があります。
1)「実行」をクリックして、新しい「家族サイズ」属性を持つExampleSetを表示します。
2)[実行]をクリックしてピボットテーブルを表示します。最初の2つの数値列は、生存したまたは生存しなかった個人のグループの平均家族サイズを示し、最後の2つの列は各カテゴリの個人数(カウント)を示します。
生き残っていなかったファーストクラスとセカンドクラスの女性の数は重要ではありませんが(カウント値を参照)、サードクラスの女性の列を調べると、生き残っていない女性の平均家族サイズは、生き残った女性の場合(3対2)。