世の中には四捨五入以外にもさまざまな端数処理(丸め処理)があります。
本ページでは四捨五入、偶数丸め、五捨五超入をExcelで実現する方法を紹介します。
目次
端数処理
- 四捨五入
-
最も馴染みが深い端数処理手法です。
0.5以上は切り上げ、0.5未満を切り捨てます。
中間値である0.5を切り上げるため、全体としてはプラス方向のバイアス(偏り)が発生します。 - 偶数丸め
-
端数が0.5より大きければ切り上げ、0.5より小さければ切り捨てます。
そして端数がちょうど0.5のとき、偶数になるほうに丸めます。
切り上げと切り捨てが交互に発生するため、丸めによる誤差が正負片側に寄る可能性が低い処理手法です。
銀行丸め、JIS丸め、ISO丸めと呼ばれることもあります。 - 五捨五超入
-
0.5以下を切り捨て、0.5を超えた場合のみ切り上げます。
中間値である0.5を切り捨てるため、全体としてはマイナス方向のバイアスが発生します。
薬価計算に使用されます。
端数処理による結果の差異
| 生値 | 四捨五入 | 偶数丸め | 五捨五超入 |
|---|---|---|---|
| 0.4 | 0 | 0 | 0 |
| 0.5 | 1 | 0 | 0 |
| 0.6 | 1 | 1 | 1 |
| 1.4 | 1 | 1 | 1 |
| 1.5 | 2 | 2 | 1 |
| 1.6 | 2 | 2 | 2 |
| 2.4 | 2 | 2 | 2 |
| 2.5 | 3 | 2 | 2 |
| 2.6 | 3 | 3 | 3 |
Excel計算式

- 四捨五入(C6セルの例)
-
=ROUND(B6,$D$3) - 偶数丸め(D6セルの例)
-
=IF(MOD(ABS(B6)*10^$D$3,1)=0.5,EVEN(ABS(B6)*10^$D$3-0.5)/10^$D$3*SIGN(B6),ROUND(B6,$D$3)) - 五捨五超入(E6セルの例)
-
=CEILING(B6-0.5*10^-$D$3,1*10^-$D$3)

コメント