Excelで統計分析や品質管理のデータを扱っていると、「相補誤差関数の値を求めたい」という場面に出くわすことがありますよね。手計算で積分するのは正直しんどいですが、ExcelのERFC.PRECISE関数を使えば値を指定するだけでサッと計算できますよ。
この記事では、ERFC.PRECISE関数の基本的な使い方から実践的な活用例、エラーの対処法まで丁寧に解説していきます。
ExcelのERFC.PRECISE関数とは?
ERFC.PRECISE関数は、相補誤差関数(complementary error function)の積分値を返す関数です。
読み方は「イー・アール・エフ・シー・プリサイス関数」です。ERFCは「Error Function Complementary」の略で、誤差関数の補関数を意味します。PRECISEは「正確な」という意味ですよ。
ERFC.PRECISE関数で何ができる?
ERFC.PRECISE関数は、指定した値xから無限大(+∞)までの範囲で、相補誤差関数を積分した値を返します。数式で表すと次のとおりです。
ERFC.PRECISE(x) = (2/vPI) * Integral(x to Infinity) e^(-t^2) dt
ERF関数が「0からxまでの誤差関数の積分値」を求めるのに対して、ERFC.PRECISE関数は「xから無限大までの積分値」を求めます。ERF(x)とERFC.PRECISE(x)を足すと常に1になる関係ですね。
どんな場面で使う?
相補誤差関数は、次のような分野で活用されています。
- 品質管理: 製造工程の不良率や工程能力指数の計算
- 統計分析: 正規分布に基づくデータの確率計算
- 通信工学: 信号のビット誤り率(BER)の評価
- 物理学: 熱拡散や粒子拡散のモデリング
ちょっと専門的に見えるかもしれませんが、関数自体の使い方はとてもシンプルですよ。
対応バージョン
ERFC.PRECISE関数は Excel 2010 で導入された関数です。Excel 2010 以降のすべてのバージョンと、Microsoft 365 で利用できます。お使いのバージョンが対応しているか、確認しておきましょう。
ERFC.PRECISE関数の書き方(構文と引数)
基本構文
=ERFC.PRECISE(x)
引数は1つだけなので、覚えやすいですよね。
引数の説明
| 引数 | 必須/省略可 | 説明 |
|---|---|---|
| x | 必須 | 相補誤差関数を積分するときの下限値を数値で指定します |
xに指定できる値のポイント:
- 数値(整数・小数のいずれもOK)を指定します
- 0を指定すると、ERFC.PRECISE(0) = 1 を返します
- 負の値も指定できます
- 数値以外(文字列など)を指定すると #VALUE! エラーになります
ERFC.PRECISE関数の基本的な使い方
実際にERFC.PRECISE関数を使ってみましょう。
数値を直接指定する方法
セルに次の数式を入力してみてください。
=ERFC.PRECISE(1)
結果は約 0.1573 になります。これは、下限値1から無限大までの相補誤差関数の積分値ですよ。
いくつかの代表的な値を表にまとめておきますね。
| 数式 | 結果 | 説明 |
|---|---|---|
| =ERFC.PRECISE(0) | 1 | 下限0:全範囲なので1になる |
| =ERFC.PRECISE(0.5) | 約0.4795 | 下限0.5での積分値 |
| =ERFC.PRECISE(1) | 約0.1573 | 下限1での積分値 |
| =ERFC.PRECISE(2) | 約0.00468 | 下限2:ほぼ0に近づく |
| =ERFC.PRECISE(-1) | 約1.8427 | 負の下限:1を超える値になる |
xが大きくなるほど結果は0に近づき、xが負になると1を超える値が返ります。この特徴を押さえておくと、結果の妥当性チェックに役立ちますよ。
セル参照を使う方法
セルに入力された値を参照することもできます。たとえばA1セルに「1.5」と入力されている場合、次のように書きます。
=ERFC.PRECISE(A1)
結果は約 0.0339 です。セル参照を使えば、下限値を変えるたびに数式を書き直す必要がないので便利ですよ。
ERFC.PRECISE関数の実践的な使い方・応用例
ERF関数との組み合わせで検算する
ERFC.PRECISE関数とERF関数には「ERFC.PRECISE(x) + ERF(x) = 1」という関係があります。この性質を使って、計算結果が正しいかどうかを検算できますよ。
=ERFC.PRECISE(A1) + ERF(A1)
この数式の結果が1になれば、どちらの関数も正しく動いていることが確認できます。
複数の下限値で一括計算する
品質管理の現場では、複数の基準値に対して相補誤差関数の値を一度に求めたいケースがよくあります。
たとえば、A1:A5に下限値(0, 0.5, 1, 1.5, 2)を入力しておき、B1セルに次の数式を入力します。
=ERFC.PRECISE(A1)
この数式をB5まで下方向にコピーすれば、5つの下限値に対する積分値を一度に計算できますよ。
正規分布の上側確率を求める
ERFC.PRECISE関数は正規分布の確率計算にも応用できます。標準正規分布の上側確率は、次の数式で求められます。
=ERFC.PRECISE(x/SQRT(2))/2
たとえば x=1.96 を指定すると約0.025が返ります。これは統計学でよく使われる「有意水準5%(両側)」の片側の確率に相当しますよ。統計分析で正規分布に基づく判定を行うときに覚えておくと便利です。
ERFC.PRECISE関数のよくあるエラーと対処法
#VALUE! エラー
原因: 引数xに数値以外の値(文字列など)を指定した場合に発生します。
対処法: 引数が数値になっているか確認してください。セル参照を使っている場合は、参照先のセルに文字列が入っていないかチェックしましょう。
=ERFC.PRECISE("abc") → #VALUE! エラー
=ERFC.PRECISE(1) → 正常(約0.1573)
#NAME? エラー
原因: 関数名のスペルミスか、対応していないバージョンのExcelを使っている可能性があります。
対処法: 関数名が「ERFC.PRECISE」になっているか確認しましょう。「ERFC_PRECISE」のようにピリオドをアンダースコアにしてしまうミスが起きやすいので注意してくださいね。また、Excel 2007以前では使えないため、バージョンも確認しておきましょう。
結果が0に近い値になる
これはエラーではありません。xに大きな値(たとえば5以上)を指定すると、結果が非常に0に近い値になります。相補誤差関数の性質上、下限値が大きくなるほど積分範囲が狭くなるためです。計算自体は正しいので安心してくださいね。
似た関数との違い・使い分け(ERF / ERF.PRECISE / ERFC)
ERFC.PRECISE関数と似た関数がいくつかあります。違いを比較表で整理しておきましょう。
| 関数名 | 積分範囲 | 引数 | 特徴 |
|---|---|---|---|
| ERF | 下限〜上限 | x(下限), 上限(省略可) | 誤差関数の積分値を返す |
| ERF.PRECISE | 0〜x | x(上限) | 0から上限までの誤差関数の積分値 |
| ERFC | x〜+∞ | x(下限) | 相補誤差関数の積分値を返す |
| ERFC.PRECISE | x〜+∞ | x(下限) | ERFCと同じ結果を返す |
ERFC.PRECISE と ERFC の違い
実は、ERFC.PRECISEとERFC関数の計算結果はまったく同じです。ERFC.PRECISEはExcel 2010で導入された関数で、CEILING.PRECISEやFLOOR.PRECISEなど他の「.PRECISE」関数との命名規則の統一が主な目的でした。どちらを使っても同じ結果が得られるので、お好みで選んで大丈夫ですよ。
ERF系とERFC系の関係
ERF系の関数が「0からxまでの積分値」を返すのに対し、ERFC系の関数は「xから無限大までの積分値」を返します。両者の合計は常に1になるので、片方がわかればもう片方も計算できますね。
どの関数を選べばいい?
- 0からxまでの積分値が必要 → ERF関数またはERF.PRECISE関数
- xから無限大までの積分値が必要 → ERFC関数またはERFC.PRECISE関数
- Excel 2010以降を使っている → どちらでもOK
用途に合わせて使い分けてみてくださいね。
まとめ
ExcelのERFC.PRECISE関数について解説しました。ポイントを振り返っておきましょう。
- ERFC.PRECISE関数は、相補誤差関数の積分値(下限xから無限大まで)を返す関数
- 構文は
=ERFC.PRECISE(x)で、引数は下限値の1つだけ - ERF関数との関係は ERFC.PRECISE(x) = 1 – ERF(x)
- ERFC関数と計算結果は同じ(命名規則の統一が目的)
- 品質管理や統計分析の確率計算で活用できる
誤差関数ファミリーの関数を使いこなして、Excelでの統計処理を効率化してみてくださいね。
