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

スポンサーリンク

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

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

そこで活躍するのがSTDEVA関数です。文字列やTRUE/FALSEをゼロや1に変換しながら、標本標準偏差(サンプルから母集団のばらつきを推定する値)を計算できます。

この記事ではExcelのSTDEVA関数について、基本構文からSTDEV.Sとの結果比較、STDEV系5関数の使い分けまで解説します。「A系関数」という切り口で実務シナリオも紹介しますので、アンケート集計やフラグ付きデータの分析に役立ててくださいね。

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

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

アンケートの「未回答」を0点扱いにしたり、TRUE/FALSEのフラグ列のばらつきを見たりしたいときに便利ですよ。

STDEVA関数の読み方と語源

STDEVAは「エスティーディーイーブイエー」と読みます。「STandard DEViation」(標準偏差)に、文字列や論理値を含める意味の「A(Alphanumeric)」を足した名前です。

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

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

STDEVAが向いているのは、文字列やTRUE/FALSEが混ざったデータのケースです。これらを0や1として計算に含めたいときに活躍します。アンケートの未回答を0点扱いにしたいときや、出欠のフラグ列でばらつきを見たいときに使えますよ。

逆に、文字列や未回答を「無視してデータから除外」したい場合は、STDEV.S関数が適切です。「未回答者は集計から外す」方針のときはSTDEV.Sを選んでくださいね。

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

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

基本構文

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

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

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

引数の説明

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

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

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

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

対応バージョン

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

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

Excel 2010でSTDEV.Sが導入された後も、STDEVAは新命名ルール(ドット付き)に置き換わることなく残っています。後述の5関数比較表でその理由がわかりますよ。

STDEVA関数の基本的な使い方

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

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

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

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

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

=STDEVA(A1:A5)   → 15.81
=STDEV.S(A1:A5)  → 15.81

数値のみのデータでは、両者の結果は完全に一致します。なぜなら、STDEVAもSTDEV.Sも「サンプルの偏差二乗和をn-1で割る」という同じn-1法を使っているからです。

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

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

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

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

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

=STDEVA(A1:A5)   → 37.68
=STDEV.S(A1:A5)  → 17.08

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

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

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

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

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

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

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

=STDEVA(A1:A5)   → 0.55

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

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

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-1のSTDEV.SやSTDEVAは、標本から母集団のばらつきを推定するための計算です。「不偏分散」(母集団の分散を過小評価しないように補正した推定値)の考え方を使います。

A系関数(STDEVA・STDEVPA)を選ぶべき場面

STDEVAとSTDEVPAは、A系関数の一員です。A系関数は次のような場面で使います。

  • アンケートの未回答(「なし」「未記入」などの文字列)を0点扱いにしてばらつきを見たい
  • 出欠や合否のTRUE/FALSEフラグで変動を測りたい
  • 商品の在庫で「欠品」と記録されたセルを0扱いで集計したい

逆に、文字列や未回答を除外して純粋な数値のみで計算したいなら、STDEV.SやSTDEV.Pが適切です。データの扱い方針で使い分けてくださいね。

STDEVA関数の実務シナリオ

ここからは、STDEVAが活躍する具体的な業務シナリオを2つ紹介します。どちらも「未回答や論理値を0・1で扱う」ケースです。

アンケートデータに未回答テキストが混ざるケース

社内満足度アンケートで、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点扱い」でばらつきを評価するなら、以下のように書きます。

=STDEVA(A2:A11)

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

どちらが正しいという話ではなく、集計方針に合わせて選べるのがポイントですよ。

TRUE/FALSEフラグ付きデータのばらつき分析

出勤状況を日別に記録した表を想定します。社員1人分の1週間のデータです。

A2: TRUE   (月曜日 出勤)
A3: TRUE   (火曜日 出勤)
A4: FALSE  (水曜日 欠勤)
A5: TRUE   (木曜日 出勤)
A6: TRUE   (金曜日 出勤)

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

=STDEVA(A2:A6)   → 0.45

STDEVAはTRUE→1、FALSE→0に変換してくれるので、フラグ列のばらつきを素直に計算できます。これは「出勤安定度」の指標として、複数社員の比較やチーム間の比較にも応用できますよ。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

数値データが1個以下だと#DIV/0!エラー

変換後の数値が1個以下のとき、分母のn-1が0になるため、STDEVAは#DIV/0!エラーを返します。

A1: 欠席
A2: 未記入
A3: 80

この例では、文字列2個は0に変換されて3個のデータ{0, 0, 80}として計算されるので、エラーにはなりません。ただし、実データが1件しかない場合(例: =STDEVA(A3))はn-1=0になって#DIV/0!が返ります。

少ないデータで標準偏差を測ろうとしていないか、範囲指定を見直してみてください。

#VALUE!エラーが出るとき

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

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

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

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

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

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

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

A1: 50
A2: 50
A3: 50
A4: 50
A5: 50

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

まとめ

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

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

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

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

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