数字を操作する

このページでは、Cloud Data Fusion Studio の Wrangler ワークスペースでデータを準備するときに数値計算を行う方法について説明します。

これらの変換は、次のデータ型の列で実行できます。

  • Integer
  • Decimal
  • Double
  • 浮動小数点数
  • 長い
  • 短いコピー

詳細については、set-column ディレクティブをご覧ください。

数値関数は 1 つ以上の列に使用できます。使用できる数値関数は、選択した列の数によって異なります。計算結果を含む新しい列を作成することも、変換を追加する列に結果を表示することもできます。

数値関数を 1 つの列に適用する場合、複数の列に数値関数を適用する場合とは動作が異なります。次に例を示します。

  • 1 つの列Multiply() 関数を使用する場合は、列内の各値に掛ける小数値を指定します。Wrangler はサンプルデータに対して乗算を実行し、新しい値を同じ列または新しい列に表示します。
  • 複数の列Multiply() 関数を使用すると、Wrangler は選択した列の各行の値を乗算し、変換の最初の列に新しい値を表示します。

1 つの列の値に対して数値計算を実行する

1 つの列に数値計算を適用する手順は次のとおりです。

  1. Cloud Data Fusion の Wrangler ワークスペースに移動します
  2. [データ] タブで列名に移動し、arrow_drop_down 展開矢印をクリックします。
  3. [計算] を選択し、[加算] などのオプションを選択します。

    計算を完了するには、一部の関数で小数値を入力する必要があります。たとえば、[減算] を選択した場合は、各行から減算する値を入力する必要があります。

  4. 省略可: 計算値の新しい列を作成するには、[新しい列にコピー] チェックボックスをオンにします。

  5. [適用] をクリックします。

値は計算に基づいて変化します。Wrangler は、対応するディレクティブをレシピのステップとして追加します。たとえば、Price 列の各値から 2 を減算すると、Wrangler は次の変換をレシピに追加します。

set-column :Price Price - 2

データ パイプラインを実行すると、列内のすべての値に変換が適用されます。

1 つの列でサポートされている計算

1 つの列のすべての値に対して、次の計算を実行できます。

関数 説明
絶対値 列内の各値の絶対値を返します。たとえば、-10 の絶対値は 10 です。
追加 正または負の小数を列に追加するか、複数の列を追加して各行の合計を出力します。
Arccos 列内の各値の余弦の逆数を返します。
Arcsin 列内の各値の sin の逆数を返します。
Arctan 列内の各値の逆タンジェントを返します。
Ceil 列の各セルの数値以上の最小の整数を返します。たとえば、値が 2.21 の場合、Ceil は 3 を返します。値が 5.88 の場合、Ceil は 6 を返します。値が -5.15 の場合、Ceil は -5 を返します。
Cos 各列値の余弦を返します。
Cube 列内の各値を 3 乗します。
Cube root 列内の各値の立方根を返します。
÷ 列内の各値を正または負の小数で除算するか、2 つの列の各値を除算します。
階数 列の各セルの数値以上の最大の整数を返します。たとえば、値が 2.21 の場合、FLOOR は 2 を返します。値が 5.88 の場合、FLOOR は 5 を返します。同様に、値が -5.15 の場合、FLOOR は -6 を返します。
ログ 列内の各値のログを返します。
Modulo 列内の各値を正の少数値で除算したときに得られる余りを返します。または、2 つの列内の各値を除算したときに得られる余りを返します。
乗算 列内の各値に正または負の小数値を掛けます。または、2 つの列の各値を掛けます。
自然対数 列内の各値の自然対数を返します。
Power of 列の値を指定された値でべき乗します。
ランダム 指定された列に、予測不可能なランダムな Double 値を生成します。
ラウンド 列内の各値を丸めます。
Sin 列内の各値の sin を返します。
正方形 列内の各値を 2 のべき乗にします。
平方根 列内の各値の平方根を返します。
減算 列内の各値から正または負の小数を減算します。
Tan 列内の各値の接線を返します。

2 つの列の値に対して数値計算を実行する

2 つの列に数値計算を適用する手順は次のとおりです。

  1. Cloud Data Fusion の Wrangler ワークスペースに移動します
  2. [データ] タブで、2 つの列名のチェックボックスをオンにします。
  3. 列名に移動し、arrow_drop_down 展開矢印をクリックします。
  4. [計算] を選択し、[加算] などのオプションを選択します。
  5. 省略可: 計算値の新しい列を作成するには、[新しい列にコピー] チェックボックスをオンにします。それ以外の場合、計算された値が既存の値をオーバーライドします。
  6. [適用] をクリックします。

値は計算に基づいて変化します。Wrangler は、対応するディレクティブをレシピのステップとして追加します。たとえば、Q1_Sales 列と Q2_Sales 列の各行に値を追加して H1_Sales という新しい列を作成すると、Wrangler はレシピに次の変換を追加します。

set-column :H1_Sales arithmetic:add(Q1_Sales, Q2_Sales)

データ パイプラインを実行すると、Wrangler が変換を実行し、Q1_SalesQ2_Sales の合計を含む H1_Sales という新しい列を作成します。

2 列でサポートされている計算

2 つの列の各行の値に対して、次の数値計算を実行できます。

関数 説明
追加 正または負の小数を列に追加するか、複数の列を追加して各行の合計を出力します。
平均 複数の列の各行の平均を返します。
÷ 列内の各値を正または負の小数で除算するか、2 つの列の各値を除算します。
等しい 2 つの列を比較して、値が行ごとに一致するかどうかを確認するブール関数。true または false を返します。
LCM 2 つの列の各数値の最小公倍数を返します。
Max 2 つの列の各行の最大値を返します。
2 つの列の各行の最小値を返します。
Modulo 列内の各値を正の少数値で除算したときに得られる余りを返します。または、2 つの列内の各値を除算したときに得られる余りを返します。
乗算 列内の各値に正または負の小数値を掛けます。または、2 つの列の各値を掛けます。
減算 列内の各値から正または負の小数を減算します。

3 つ以上の列の値に対して数値計算を実行する

Cloud Data Fusion では、バージョン 6.8.0 以降で 3 つ以上の列の値に対する数値計算をサポートしています。

3 つ以上の列に数値計算を適用する手順は次のとおりです。

  1. Cloud Data Fusion の Wrangler ワークスペースに移動します
  2. [データ] タブで、2 つの列名のチェックボックスをオンにします。
  3. 列名に移動し、arrow_drop_down 展開矢印をクリックします。
  4. [計算] を選択し、[加算] などのオプションを選択します。
  5. 省略可: 計算値の新しい列を作成するには、[新しい列にコピー] チェックボックスをオンにします。それ以外の場合、計算された値が既存の値をオーバーライドします。
  6. [適用] をクリックします。

値は計算に基づいて変化します。Wrangler は、対応するディレクティブをレシピのステップとして追加します。たとえば、Q1_SalesQ2_SalesQ3_SalesQ4_Sales 列の各行の値を追加して 2022_Sales という新しい列を作成すると、Wrangler はレシピに次の変換を追加します。

set-column :2022_Sales arithmetic:add(Q1_Sales, Q2_Sales, Q3_Sales, Q4_Sales)

データ パイプラインを実行すると、Wrangler が変換を実行し、Q1_SalesQ2_SalesQ3_SalesQ4_Sales の合計を含む 2022_Sales という新しい列を作成します。

3 つ以上の列でサポートされる計算

3 つ以上の列の各行の値に対して、次の計算を実行できます。

関数 説明
追加 正または負の小数を列に追加するか、複数の列を追加して各行の合計を出力します。
平均 複数の列の各行の平均を返します。
等しい 2 つの列を比較して、値が行ごとに一致するかどうかを確認するブール関数。true または false を返します。
Max 2 つの列の各行の最大値を返します。
2 つの列の各行の最小値を返します。
乗算 列内の各値に正または負の小数値を掛けます。または、2 つの列の各値を掛けます。

次のステップ