複数の数値列があった時に、その中で最も値が大きい列の列名を値として返す方法について紹介します。
今回は以下のように「CAT1」から「CAT4」まである数値列のデータを使用します。
最終的には、以下のように最も大きい値をもつ列の列名を以下のように作りたいです。
まず初めに、各行を識別するために行番号の列を追加します。
列ヘッダメニューから「表計算を作成」の「行番号」を選択します。
表計算のダイアログが表示されるため、そのまま実行します。
次に、行番号を追加したステップの時点から「ブランチを作る」をクリックします。
ブランチ名に任意の名前を指定して作成します。
ブランチデータフレームにて、「CAT1」から「CAT4」までをShiftキーを押しながら複数選択し、「ワイド型からロング型へ」の「選択された範囲」を指定します。
ワイド型からロング型へのダイアログが表示されるため、実行ボタンをクリックします。
それぞれの列名と値をまとめたロング型のデータに変形することができました。
作成していた行番号ごとに処理をしたいため、ステップメニューから「グループ化」を選択します。
グループ化の対象には「行番号(Row_Number)」を選択します。
次に、値の列(value)から「フィルタ」の「等しい」を選択します。
フィルタのダイアログが表示されるため、「集計関数」にチェックをつけ、集計関数には「最大値(max)」を選択して実行します。
各行番号でvalue列の最大値のみが残るようになっています。
今後はグループ化は不要となるため、「グループ解除」を行います。
valueの列は不要となるため、valueの列から「列を選択 / 削除」を選択します。
取り除くにチェックをつけて、value列が取り除かれていることを確認して実行します。
列名を変更したいため、列ヘッダメニューから「列名を変更」の「新しい列名を指定」を選択します。
列名には任意の列名を指定してください。今回は、「Max_Cat」としておきます。
列名を変更して結合に必要なデータが完成しました。
メインのデータフレームに戻り、行番号の列から「結合」を選択します。
結合する列には「行番号(Row_Number)」の列が指定されていることを確認して実行します。
これによって、複数の数値列があった時にその中で最も値が大きい列の列名を値として返すことができました。