コンテンツにスキップ

数値列の丸め

数値の端数を処理します。小数点以下を切り捨てる、100 円単位に丸める、1000 刻みの区切りにまとめる、といった使い方をします。

列どうしを計算した結果を丸めたいときは、先に数値列同士の演算をつないでください。

入出力

ポート内容
入力データデータ
出力データデータ(新規列に挿入なら 1 列、右端に増えます)

Spark エンジンでも動きます。

設定項目

「オプション」はチェックを入れるまで中身が出ません。 見出しの横のチェックボックスを on にすると、任意の始点を設定する が出ます。

結果の挿入先を設定
新規列に挿入(既定)か既存列に上書き。
新規列名を入力必須
「新規列に挿入」のときに出ます。結果を入れる列の名前。
処理対象列を選択必須
丸める列。数値の列だけ選べます。選べるのは 1 列だけです。「既存列に上書き」のときは「数値列を選択」という名前で出て、この列がそのまま結果の入り先になります(元の値は残りません)。
処理を選択
切り捨て(既定)/ 四捨五入 / 切り上げ / 任意の刻み幅で丸める。
桁数を入力必須
切り捨て・四捨五入・切り上げのときに出ます。整数だけ入れられます。マイナスも入れられます。
刻み幅を入力必須
「任意の刻み幅で丸める」のときに出ます。小数も入れられます。
任意の始点を設定する
「任意の刻み幅で丸める」のときに出ます。刻みの起点。入れないと 0 から数えます。

桁数の数え方

0 が小数点の位置、プラスが小数側、マイナスが整数側です。切り捨て・四捨五入・切り上げの 3 つに共通です。

桁数1234.567 を四捨五入
21234.57
11234.6
01235
-11230
-21200
-31000

「100 円単位に丸める」なら -2 です。

ちょうど真ん中の値とマイナスの値

四捨五入は、5 を 0 から遠い方に送ります。 桁数 0 なら 0.5 は 1、1.5 は 2、2.5 は 3、マイナス側は -1.5 が -2、-0.5 が -1 です。「2 の次は偶数に寄せる」といった別の丸め方はしません。

マイナスの値では、3 つの処理の向きに気を付けてください。 切り捨て・切り上げは「0 に近づける/遠ざける」ではなく、数直線の小さい方・大きい方に動きます。

元の値切り捨て(桁数 0)四捨五入(桁数 0)切り上げ(桁数 0)
1.5122
-1.5-2-2-1
-0.5-1-10

刻み幅で丸める

「任意の刻み幅で丸める」は、始点から刻み幅ごとの区切りのうち、その値を超えない一番近いところに落とします。

始点 0、刻み幅 1000 なら、0 1000 2000 … のいずれかになります。始点を 500 にすると 500 1500 2500 … になります。

始点より小さい値も扱えます。 始点から下にも同じ刻みで区切りが続きます。始点 500、刻み幅 1000 なら、200 は -500 になります。

年齢を 5 歳刻みにする、金額を 1000 円刻みのランクにする、といった使い方です。

空欄のある行

空欄はそのまま空欄で出ます。 どの処理を選んでも、0 とみなしたりはしません。先に埋めたいときは欠損値処理を使ってください。

エラーと対処

どのエラーも、設定を直してからノードを実行し直せば先に進めます。

数値でない列を指定した

処理対象列に数値以外の列が入っているとき。列を選んだあとで前の処理が変わり、型が数値でなくなったときにも出ます。

処理対象列には数値型しか指定できません。

直し方 — 列の型変更で数値にしてください。

新規列名が既にある

「新規列名を入力」に入れた名前が、入力データに既にあるとき。

新規列名({{new_col}})が既存の列名と重複しています。

{{new_col}} には、重複した列名が入ります。

直し方 — 別の列名を入れるか、「既存列に上書き」に切り替えてください。

列を選ばずに実行した

処理対象列を選択(「既存列に上書き」なら列を選択)が空のまま実行したときに出ます。前の処理で列名が変わり、選んでいた列が入力データからなくなったときにも同じメッセージです。

対象の列が選択されていません。

直し方 — 列を選び直してください。

よく使う例

1. 小数を整数にする

お題 — 平均の小数点以下を落としたい

入力

商品平均単価
りんご123.4
みかん98.7

設定 — 新規列名 平均単価_整数、処理対象列 平均単価、処理「切り捨て」、桁数 0

出力

商品平均単価平均単価_整数
りんご123.4123
みかん98.798

2. 小数第 2 位までにする

お題 — 比率を見やすくしたい

入力

商品構成比
りんご0.33333
みかん0.66667

設定 — 新規列名 構成比_丸め、処理対象列 構成比、処理「四捨五入」、桁数 2

出力

商品構成比構成比_丸め
りんご0.333330.33
みかん0.666670.67

3. 100 円単位に丸める

お題 — 金額をざっくり見たい

入力

店舗売上
A12345
B9850

設定 — 新規列名 売上_百円単位、処理対象列 売上、処理「四捨五入」、桁数 -2

出力

店舗売上売上_百円単位
A1234512300
B98509900

4. 年齢を 5 歳刻みにする

お題 — 年代より細かい刻みで集計したい

入力

会員年齢
A23
B38
C40

設定 — 新規列名 年齢区分、処理対象列 年齢、処理「任意の刻み幅で丸める」、刻み幅 5、始点 0

出力

会員年齢年齢区分
A2320
B3835
C4040

5. 端数が出たら必ず 1 つ上にする

お題 — 必要数に端数があるときは 1 つ多く用意したい

入力

商品必要数
りんご2.1
みかん3.0

設定 — 新規列名 発注数、処理対象列 必要数、処理「切り上げ」、桁数 0

出力

商品必要数発注数
りんご2.13
みかん3.03

6. 元の列を丸めた値で置き換える

お題 — 丸める前の値は要らないので、列を増やしたくない

入力

店舗売上
A12345.6
B9850.2

設定 — 結果の挿入先「既存列に上書き」、処理対象列 売上、処理「切り捨て」、桁数 0

出力 — 列は増えず、売上 の中身が入れ替わります

店舗売上
A12345
B9850

7. 500 円刻みの価格帯にまとめる

お題 — 500 円ごとの価格帯で件数を数えたい

入力

商品価格
りんご1200
みかん1800
ぶどう2000

設定 — 新規列名 価格帯、処理対象列 価格、処理「任意の刻み幅で丸める」、刻み幅 500、始点 0

出力

商品価格価格帯
りんご12001000
みかん18001500
ぶどう20002000

関連