ExcelのSTDEVPA関数の使い方|文字列・TRUE/FALSEを含む母標準偏差

スポンサーリンク

全社員へのアンケートで、未回答が「欠席」「なし」といった文字で入力されていて困ったことはありませんか。

ExcelのSTDEV.P関数を使うと、こうした文字列が自動的に無視されてしまいます。そのため「未回答=0点扱い」で全社員のばらつきを見たいときに、うまく計算できないんですよね。

そこで活躍するのがSTDEVPA関数です。文字列やTRUE/FALSEをゼロや1に変換しながら、母標準偏差(母集団全体のばらつきを表す値)を計算できます。

この記事ではExcelのSTDEVPA関数について、基本構文からSTDEV.Pとの結果比較まで解説します。STDEVAとの使い分けや実務シナリオも紹介しますので、全社員アンケートや全品検査データの分析に役立ててくださいね。

STDEVPA関数とは?文字列を含むデータの母標準偏差を求める関数

STDEVPA関数は、文字列やTRUE/FALSEを含むデータから、Excelで母標準偏差を求められる統計関数です。STDEV.P関数が文字列を無視するのに対し、STDEVPA関数はすべての値を数値に変換して計算に含めます。

全社員アンケートの「未回答」を0点扱いにしたり、全品検査の合否フラグのばらつきを見たりしたいときに便利ですよ。

STDEVPA関数の読み方と語源

STDEVPAは「エスティーディーイーブイピーエー」と読みます。関数名は「STandard DEViation」(標準偏差)に、母集団の「P(Population)」と文字列・論理値を含める意味の「A(Alphanumeric)」を足したものです。

同じ「A」が付く関数には、AVERAGEA・MAXA・MINA・VARA・VARPA・STDEVAなどがあります。これらはまとめて「A系関数」と呼ばれていて、すべて共通の変換ルール(文字列→0、TRUE→1、FALSE→0)で動作しますよ。

STDEVPAが使える場面と使えない場面

STDEVPAが向いているのは、「母集団全体のデータ」に文字列やTRUE/FALSEが混ざったケースです。全社員アンケートの未回答を0点扱いにしたいときや、全品検査の合否フラグでばらつきを見たいときに使えますよ。

逆に、文字列や未回答を「無視してデータから除外」したい場合は、STDEV.P関数が適切です。また、サンプル調査のように一部データから母集団を推定したい場合は、STDEVAを選びましょう。

STDEVPA関数の書き方(構文と引数)

ここからは、ExcelのSTDEVPA関数の構文を具体的に見ていきましょう。引数は最大255個まで指定できます。

基本構文

=STDEVPA(値1, [値2], ...)

英語版での構文は以下のとおりです。

=STDEVPA(value1, [value2], ...)

引数の説明

引数必須説明
値1必須母標準偏差を求めたい最初のデータ。セル範囲または単一の値を指定します
値2以降任意2つ目以降のデータ。カンマ区切りで最大254個まで追加可能です

引数に渡せるデータは、数値・セル参照・範囲・配列定数など幅広く対応しています。合計で最大255個の引数を受け取れます。

値の変換ルールは以下のとおりです。このルールがSTDEVPAの最大の特徴ですよ。

値の種類STDEVPAでの扱い
数値そのまま使用
TRUE1に変換
FALSE0に変換
文字列(セル参照経由)0に変換
空白セル無視(計算に含めない)
数値型テキスト0に変換(文字列として扱う)

対応バージョン

STDEVPA関数はExcel 97以降の古い関数で、現行のバージョンすべてで使えます。

  • Excel for Microsoft 365
  • Excel 2024
  • Excel 2021
  • Excel 2019
  • Excel 2016
  • Excel for the web

Excel 2010でSTDEV.Pが導入された後も、STDEVPAは新命名ルールに置き換わることなく残っています。「STDEV.PA」のようなドット付きの新名称は存在しません。

STDEVPA関数の基本的な使い方

ここでは、STDEVPA関数の動きを3パターンのサンプルデータで確認していきます。STDEV.Pとの結果比較も載せますので、違いをイメージしやすいはずですよ。

数値のみのデータで使う場合

まずは文字列を含まない、シンプルな数値データで試してみましょう。

A1: 80
A2: 70
A3: 90
A4: 60
A5: 100

このデータでSTDEVPAとSTDEV.Pをそれぞれ計算します。

=STDEVPA(A1:A5)  → 14.14
=STDEV.P(A1:A5)  → 14.14

数値のみのデータでは、両者の結果は完全に一致します。STDEVPAもSTDEV.Pも「偏差二乗和をnで割る」という同じn法を使っているためです。

補足すると、計算過程はこうなります。平均 = (80+70+90+60+100)÷5 = 80、偏差二乗和 = 0+100+100+400+400 = 1000、分散 = 1000÷5 = 200、標準偏差 = √200 ≈ 14.14 です。

文字列が混ざるデータで使う場合(STDEV.Pとの結果比較)

次に、全社員アンケートの未回答を「欠席」という文字列で記録したデータを見てみましょう。

A1: 80
A2: 70
A3: 欠席
A4: 60
A5: 100

同じデータでSTDEVPAとSTDEV.Pを計算すると、結果が大きく異なります。

=STDEVPA(A1:A5)  → 33.71
=STDEV.P(A1:A5)  → 14.79

STDEVPAでは「欠席」が0に変換され、{80, 70, 0, 60, 100}の5個のデータとして計算されます。平均が62まで下がるため、偏差が大きくなり、標準偏差が大きくなるんですね。

一方STDEV.Pでは「欠席」が無視され、{80, 70, 60, 100}の4個のみで計算されます。平均は77.5で、ばらつきは小さくなります。

この違いは業務方針によって使い分けが必要です。未回答を「0点扱いで含める」ならSTDEVPA、「集計から除外する」ならSTDEV.Pを選びましょう。

TRUE/FALSEが含まれるデータで使う場合

最後に、出欠や合否などTRUE/FALSEのフラグで記録されたデータを見てみます。

A1: TRUE
A2: FALSE
A3: TRUE
A4: TRUE
A5: FALSE

このデータでSTDEVPAを使うと、次の結果になります。

=STDEVPA(A1:A5)  → 0.49

STDEVPAはTRUE→1、FALSE→0に変換するため、内部的には{1, 0, 1, 1, 0}として扱われます。平均は0.6、母標準偏差は約0.49になりますよ。

なお、STDEV.PにTRUE/FALSEのみのデータを渡すと、すべて無視されて有効データが0件になります。結果として#DIV/0!エラーが返るので、論理値を扱うなら必ずSTDEVPAを選んでくださいね。

STDEV系5関数の比較表と使い分け

Excelには標準偏差を求める関数が5つあります。どれを選べばいいか迷いやすいので、ここで一度整理しておきましょう。

STDEV / STDEV.S / STDEV.P / STDEVA / STDEVPAの違い

5つの関数を、対象データ・分母・値の扱い・追加バージョンで比較します。

関数対象データ分母文字列・論理値登場バージョン
STDEV.S標本(サンプル)n-1無視Excel 2010以降
STDEV標本(サンプル)n-1無視旧互換(現在も使用可)
STDEV.P母集団全体n無視Excel 2010以降
STDEVA標本(サンプル)n-10または1として含めるExcel 97以降
STDEVPA母集団全体n0または1として含めるExcel 97以降

「標本」とは、調査対象となる全体から一部を取り出したデータのことです。「母集団」とは、調査対象となる全体のデータを指します。

分母がnのSTDEV.PやSTDEVPAは、母集団全体の「真のばらつき」そのものを計算します。一方、分母n-1のSTDEV.SやSTDEVAは、標本から母集団のばらつきを推定する考え方(不偏分散)を使います。

STDEVPAとSTDEVAの選び分け(母集団 vs 標本)

STDEVPAとSTDEVAは、どちらもA系関数で文字列・論理値を0・1扱いする点は同じです。違いは「対象データが母集団か標本か」と「分母がnかn-1か」の2点です。

  • STDEVPA: 母集団全体(全員分・全品分)のデータが揃っている場合に使う。分母はn
  • STDEVA: 全体から取り出したサンプルから、母集団のばらつきを推定したい場合に使う。分母はn-1

たとえば社員30人全員の勤怠データは「母集団」なのでSTDEVPAを選びます。一方、社員300人のうち抽出した30人分のデータなら「標本」としてSTDEVAが適切です。

同じデータならSTDEVPAの方がSTDEVAより小さめの値になります。分母が大きいためですね。

STDEVPA関数の実務シナリオ

ここからは、STDEVPAが活躍する具体的な業務シナリオを2つ紹介します。どちらも「全体データに未回答や論理値が混ざる」ケースです。

全社員アンケートの未回答テキストを含めた集計

社員10人全員に「総合満足度(100点満点)」を聞いた結果を想定します。全員分が対象なので母集団ですね。

A2: 80   (社員1)
A3: 70   (社員2)
A4: 欠席 (社員3 未回答)
A5: 60   (社員4)
A6: 100  (社員5)
A7: 未記入 (社員6 未回答)
A8: 90   (社員7)
A9: 75   (社員8)
A10: 85  (社員9)
A11: 95  (社員10)

2人の未回答を「0点扱い」でばらつきを評価するなら、以下のように書きます。

=STDEVPA(A2:A11)

この方式は「未回答者も組織の満足度に影響しているはず」と考える場合に使います。逆に、未回答者を除外して「回答者のみの満足度のばらつき」を見たければSTDEV.Pが適切です。

全品検査のTRUE/FALSE合否フラグのばらつき分析

ある日の製造ロット全品に対する検査結果を想定します。5個全品の検査データです。

A2: TRUE   (1個目 合格)
A3: TRUE   (2個目 合格)
A4: FALSE  (3個目 不合格)
A5: TRUE   (4個目 合格)
A6: TRUE   (5個目 合格)

合格率のばらつきを見たいときは、以下の数式を使います。

=STDEVPA(A2:A6)  → 0.40

STDEVPAはTRUE→1、FALSE→0に変換してくれるので、フラグ列のばらつきを素直に計算できます。これは「ロット安定度」の指標として、複数ロットの比較やライン間の比較にも応用できますよ。

STDEVPAを使う際の注意点とよくある間違い

STDEVPAを使うときによくハマる落とし穴を整理しておきます。エラーが出る前に目を通しておいてくださいね。

空白セルは無視される(0ではない)

変換ルールで見落としがちなのが、空白セルは「0」ではなく「無視」される点です。

A1: 80
A2: 70
A3:           (空白)
A4: 60
A5: 100

このとき、STDEVPAは空白のA3を無視して、{80, 70, 60, 100}の4個のデータとして計算します。「文字列は0扱い」でも「空白は除外」なんですね。

未回答を0点扱いにしたいなら、空白のままにせず「0」か「欠席」などの文字列を必ず入力しておきましょう。

数値型テキストは0として扱われる

Excelでは、セルの書式が「テキスト」になっていると、見た目が数値でも内部的には文字列として扱われます。これをSTDEVPAに渡すと0に変換されてしまいます。

A1: 80   (標準書式)
A2: 70   (テキスト書式で "70" と入力)
A3: 90

この場合、STDEVPAはA2を0として計算するため、意図した結果になりません。セルの左上に緑の三角マークが表示されていたら、書式がテキスト型になっている可能性が高いですよ。

対処法は以下の2つです。

  • セルを選択し、Ctrl + 1で書式設定を開き「標準」に変更する
  • VALUE関数で数値に変換する(例: =VALUE(A2)

データを外部CSVやWebからコピーしたとき、この状態になりやすいので注意してくださいね。

#VALUE!エラーが出るとき

STDEVPA関数に文字列を引数として直接指定した場合は#VALUE!エラーが出ます。

=STDEVPA(80, 70, "欠席", 60, 100)   → #VALUE!エラー

これは「引数直接指定」と「セル参照経由」で挙動が異なるためです。セル参照経由の文字列は0に変換されますが、数式内に文字列リテラルを直接書くと型不一致でエラーになります。

セル範囲を使えば回避できるので、以下のように書き直しましょう。

=STDEVPA(A1:A5)   → セル範囲指定ならOK

全データが同じ値のときは標準偏差が0

全データが同じ値の場合、標準偏差は0になります。これはエラーではなく正しい結果です。

=STDEVPA(A1:A5)の結果は0です。「ばらつきがない」状態を意味していますので、データの異常ではありませんよ。

まとめ

ExcelのSTDEVPA関数は、文字列やTRUE/FALSEを含むデータから、母標準偏差を求められる関数です。この記事のポイントを振り返っておきましょう。

  • 構文: =STDEVPA(値1, [値2], ...)、最大255個の引数
  • 変換ルール: 文字列→0、TRUE→1、FALSE→0、空白→無視
  • STDEV.Pとの違い: STDEV.Pは文字列を無視、STDEVPAは0扱いで含める
  • STDEVAとの違い: 分母が n(母集団)か n-1(標本)か。STDEVPAは母集団全体のデータに使う
  • A系関数: AVERAGEA・MAXA・MINA・VARA・VARPA・STDEVAと共通の変換ルール
  • 使う場面: 全社員アンケートの未回答を0点扱いにしたいとき、TRUE/FALSE合否フラグのばらつきを見たいとき
  • よくある間違い: 数値型テキストが0扱いされる、直接指定の文字列は#VALUE!

業務方針に合わせて、STDEVPAとSTDEV.P、そしてSTDEVAを使い分けてみてくださいね。「母集団全体で未回答=0点扱い」がしっくりくる場面ではSTDEVPAが強い味方になってくれますよ。

STDEV系の他の関数やA系関数もあわせて学んでおくと、統計集計の幅が広がります。以下の関連記事も参考にしてくださいね。

タイトルとURLをコピーしました