SPSSで多重代入法を実施する方法!欠測値(欠損値)の適切な処理法は?

SPSSで多重代入をする方法の記事

医療現場で取得するデータには、欠測値(もしくは欠損値)の発生がつきものです。

欠測をそのままにして解析すると、バイアスが生じてしまう可能性があります。

そのため、欠測に対しては適切に対処しなければならないです。

欠測を補完する代表的な方法が多重代入法です。

この記事では、多重代入法を SPSS で行う方法について解説してきます。

>>もう統計で悩むのは終わりにしませんか? 

↑期間・数量限定で無料プレゼント中!

目次

多重代入法とは

多重代入法とは、本当はデータがあるはずなのに、何かの事情でデータが得られなかった、欠測値(けっそくち)(欠損値 けっそんち とも言う)を、適切な数値で埋める(代入する・補完する)ことを言います。

多重代入の多重とは、いくつかの値を代入した、いくつかのデータセットを作るという意味です。

いくつかと言っても決して少なくない数で、100 ~ 1000 のデータセットを作るのが良いと言われています。

欠測しているデータの真実はわからないため、いくつかの値で代入したデータセットを作成し、最終的に結果を統合して、バイアスが少ないと考えられる結果としてまとめる方法と言えます。

では、どのように代入するかというと、欠測した変数の値を、測定できている値から推測して、代入するのです。

連続データと二値カテゴリカルデータでは、方法が異なります。

連続データの場合は、重回帰分析を用いて予測モデルを作成して、その予測値と近い値を代入する PMM(予測平均マッチング)という方法を用います。

二値カテゴリカルデータの場合は、ロジスティック回帰分析を用いて予測値を求めて、代入します。

詳しくは、以下の論文をご覧ください。

連鎖方程式による多重代入法

多重代入法のステップ

多重代入法は、3 つのステップからなります。

  1. 代入する値の生成と複数の代入データセットの作成
  2. 多重代入データセットを用いた解析
  3. 複数のデータセットから得られた結果の統合

詳しくは、以下の記事もご覧ください。

多重代入法(多重補完法)をわかりやすく解説!EZRでは実施できる?

以下では、SPSS で、これらのステップを行う方法を解説します。

多重代入法を SPSS で行うための準備

SPSS で多重代入法を行うには、Complex SamplingおよびTesting と呼ばれるアドオンが必要です。

まだ、購入していない場合は、追加購入する必要があります。

詳しくはこちらをご覧ください。

IBM SPSS Statisticsの料金体系

アドオンが導入されると、「分析」メニューに「多重代入」が追加されます。

分析→多重代入メニュー

分析 → 多重代入 → 欠損データ値を代入 から多重代入を実施していきます。

>>もう統計で悩むのは終わりにしませんか? 

↑1万人以上の医療従事者が購読中

多重代入法を SPSS で行う方法

「欠損データ値を代入」メニューの設定方法

分析 → 多重代入 → 欠損データ値を代入 メニューを選択すると、以下のウインドが開きます。

多重代入メニューの初期状態

変数タブの設定

「変数」枠から多重代入に用いるデータを「モデル内の変数」に投入します。

変数同士を足し合わせて計算する合計値などは投入せず、多重代入後のデータセット上で、変換メニューから計算して補完します。

また、このとき目的変数も投入します。

代入数は、100 ~ 1000 の最低数として 100 としておきましょう。

任意の新しいデータセット名を書き入れます。

設定すると、以下のようになります。

変数タブの設定

方法タブの設定

方法タブは、多重代入の方法を指定するタブです。

方法タブを開き、代入法の枠内の「ユーザー指定」を選択します。

また、スケール変数のモデルの種類枠の「予測平均照合(PMM)」を選択します。

これで、方法タブの設定は OK です。

方法タブの設定

制約条件タブ

制約条件とは、補完する値の上限や下限を決めるという意味です。

例えば、5 件法のアンケート回答の欠測を補完したい場合、1 から 5 の値が代入されてほしいところ、0 や 6 が代入されてしまうことがあり、そのような想定外の代入を避けるために条件を設定できるわけです。

特に制約が必要なければ、設定不要です。

「データをスキャン」とクリックすると、「変数の要約」と「制約条件を定義」に情報が反映されます。

制約条件初期画面

変数の要約欄では、欠測値の割合、最小・最大の観測値が示されます。

制約条件を定義欄で、予測に使って代入もするか、予測だけに使うか、代入だけするか、を決めたり、最小値・最大値を決めたりできます。

「データを再スキャン」をクリックすると、再度スキャンを実行してくれます。

制約条件タブの例

出力タブ

出力タブは、多重代入を行った後に、どんな出力をするかを設定できるタブです。

デフォルトでは、どんな変数を用いた代入モデル(PMM や ロジスティック回帰)が使われたかの詳細が出力されます。

追加で「代入値を持つ変数の記述統計量」を出力しておけば、欠測が代入されたデータセットの記述統計を確認することができます。

出力タブ例

設定が済んだら、OK をクリックすると、多重代入が行われて、変数タブで指定した代入数だけ、データセットが作成されます。

多重代入後のデータセット

それでは、多重代入後のデータセットをデータビューで見てみましょう。

まず、左端に Imputation_ という変数が作成されています。

0 が元のデータで、1 以上が、代入したデータを意味しています。

右上には、どのデータを選択するかのドロップダウンリストが見えます。

多重代入後元データ

元のデータは、セル内に「.」が入っている欠測があるのが見て取れます。

右上のドロップダウンリストから代入データセットを選ぶことができます。

代入データセットの選択

代入された、元欠測データ箇所は、うすい黄色でハイライトされています。

代入されたデータ例

ここでは示しませんが、ほかのデータセットと見比べてみると、異なる値が代入されていることがわかります。

一つ気を付けたいのは、この多重代入は再現性を保つ方法がありません。

下の図の左右は、同じ欠測データを用いて、2 回多重代入を行った結果の比較です。

多重代入データセットは再現性がない

同じ代入データセット番号(Imputation_ 番号)ですが、異なった代入値になっているのがわかると思います。

なので、一度作成した多重代入データセットは、必ず保存するようにしましょう。

解析結果だけ保存して、データセットを保存しなかった場合、同じ解析結果が得られる、同じ多重代入データセットを、再度作成することはできません。

また、保存した多重代入データセットを一度閉じた後、再度開くと以下のメッセージが出力されます。

再度開いたときに出力されるメッセージ

これは、Imputation_ でデータの分割を実行することで、再び多重代入データセットであることを認識させて下さい、という意味です。

認識させる方法は、データ → ファイルの分割 メニューを選んで、Imputation_ をグループ化変数として、グループの比較を行うように設定します。

代入番号でグループの比較

さらに、右上に「元データ」と見えるドロップダウンリストが表示されていなければ、”キラキラボタン”(と勝手に呼んでいる)ボタンをクリックします。

多重代入データセット準備ボタン

このように設定すると、多重代入後の解析・統合の作業が再開できます。

このセクションの締めくくりとして、多重代入データセットができるのと同時に、出力される結果を説明します。

代入モデルに関しては、以下のように出力され、どの方法で、どの変数を使ったモデルで代入したかの記録が残ります。

代入モデル出力例一部

また、代入した変数の記述統計は以下のように出力されます。代入データセットが 100 の場合は、100 行、出力されます。

代入データの記述統計

代入されている値が、元のデータ(欠測以外)と比較して、少しずれているのがわかります。

代入方法の計算上、少しずれている値のほうがよいと判断されて代入されていると考えればよいです。

多重代入後の解析例

それでは、多重代入データセットができたところで、そのデータセットを使った解析・統合の方法を、2 群・多群の平均値・割合及び回帰モデル別に解説します。

T 検定(2 群の平均値の差の検定)

T 検定は、分析 → 平均値と比率の比較 → 独立したサンプルの t 検定 メニューで分析できます。

独立したサンプルの t 検定のアイコンにうずまきがついていれば、解析・統合できる状態を表しています。

分析→平均値と比率の比較→独立したサンプルのt検定

もし、うずまきマークが出ていないようであれば、データセット右上の “キラキラボタン” をクリックして、「元データ」とあるドロップダウンリストを表示させてから、再度、独立したサンプルの t 検定 メニューまで行ってください。

そうすると、うずまきマークが出ていると思います。

T 検定の設定は、通常のデータセットのときと同じです。

例えば、以下のように、連続データを検定変数に、カテゴリカルデータをグループ化変数に、それぞれ投入し、グループの定義も設定します。

t検定設定

OK をクリックすれば、結果が計算されます。

まずは、グループ統計量を見ます。

t検定グループ統計量

「プールされた」のところを見ると、度数に小数点があるのがわかります。

これは、グループ変数 US1 も多重代入しているからです。

グループ変数は代入しないことにすれば、小数点は生じません。

そして、レポートする数値としては、平均値と平均値の標準誤差が良いと思います。

検定結果は、「独立サンプルの検定」表を参照します。

t検定独立サンプルの検定

「プールされた」の欄の等分散を仮定しない結果の両側 P 値を報告するとよいでしょう。

一元配置分散分析・多重比較(3 群)

一元配置分散分析、もしくは、連続データの多重比較の場合は、分析 → 平均値と比率の比較 → 一元配置分散分析と進みます。

分析 → 平均値と比率の比較 → 一元配置分散分析

一元配置分散分析のアイコンにうずまきがついていれば、分析・統合可能の印です。

一元配置分散分析では、例えば以下のように変数を設定します。

一元配置分散分析の設定

従属変数リストに、連続データを投入し、因子に、カテゴリカルデータを投入します。

オプションボタンをクリックして、記述統計量を出力させるようにチェックを入れます。

一元配置分散分析のオプション

多重比較は、その後の検定ボタンをクリックして、LSD(多重比較調整なし)を設定します。必要に応じて、多重比較調整手法(例:Bonferroni)を選びます。

一元配置分散分析のその後の検定

続行をクリックして戻り、OK をクリックすると分析結果が出力されます。

記述統計の表の最下段に、「プールされた」結果が出力されています。

一元配置分散分析結果_記述統計

ですが、検定結果は、「プールされた」が表示されず、統合された結果は得られません。

一元配置分散分析結果_分散分析

多重比較の結果も、「プールされた」が計算されません。

一元配置分散分析結果_多重比較

よって、3 群以上の平均値を比較した検定結果が欲しい場合は、下記に示す共分散分析の方法に従って、従属変数の連続データと固定因子を投入し、共変量を入れない形で、実施するのが良いと思います。

カイ二乗検定(2 x 2 分割表)

2 群のカテゴリカルデータを比較するときのカイ二乗検定は、分析 → 記述統計 → クロス集計表 と進んで実行します。

分析 → 記述統計 → クロス集計表

クロス集計表の先頭のアイコンにうずまきがついていれば、分析・統合可能の合図です。

クロス集計表の設定は、例えば、以下のようにします。

クロス集計表2値_設定

行にも、列にも、2 値のカテゴリカルデータを投入します。

正規確率ボタンをクリックして、「正確」のボタンをクリックします。

クロス集計表_正確確率

統計量ボタンをクリックして、カイ2乗にチェックを入れます。

クロス集計表_統計量

セルボタンをクリックして、列パーセンテージにチェックを入れます。

クロス集計表2値_セル

続行で戻り、OK をクリックすると、解析結果が出力されます。

クロス表の最下段を見ると、統合された度数が表示されていますが、パーセンテージは統合されないことがわかります。

クロス集計2値_クロス表

カイ2乗検定の表の最下段を見ると、検定結果も統合されないことがわかります。

クロス集計表2値_カイ二乗検定

ですので、検定結果が欲しい場合は、下記に示す、二項ロジスティックのメニューで、共変量にカテゴリカルデータを 1 つだけ投入した、単変量解析をするのが良いと思います。

カイ二乗検定・多重比較(2 x 3 分割表)

2 値のカテゴリカルデータを 3 群やそれ以上で比較したい場合も、同じく 分析 → 記述統計 → クロス集計表メニューを使います。

行と列の設定は、上記 2×2 と同様です。

クロス集計表3値_設定

正確確率と統計量の設定は、上記 2×2 の場合と同じです。

セルの設定は、以下のように、列パーセンテージのほかに、z 検定にチェックを入れます。

z 検定は、この場合、多重比較の検定です。

必要に応じて、p 値の調整(Bonferroni 法)にもチェックを入れます。

クロス集計表3値_セル

続行をクリックして戻り、OK をクリックすると解析結果が出力されます。

クロス表の「プールされた」のところは、多重比較の検定結果は表示されておらず、統合した多重比較検定結果は得られません。

クロス集計表3値_クロス表

カイ2乗検定の表では、「プールされた」がなく、検定結果は統合されません。

クロス集計表3値_カイ二乗検定

したがって、こちらも、検定結果が欲しい場合は、二項ロジスティックのメニューで、共変量に 3 群のカテゴリカルデータを投入し、カテゴリ変数と認識させたうえで、単変量解析を行うのが良いと思います。

重回帰分析(すべての説明変数が連続データの重回帰分析)

すべての説明変数が連続データの場合の重回帰分析の方法です。

分析 → 回帰 → 線型 メニューで解析できます。

ここで、「線型」とあるところの先頭のアイコンにうずまきマークが出ていれば、多重代入データセットを使って解析・統合できる状態であることを意味しています。

渦巻付き線型メニュー

重回帰分析の設定は通常のデータセットの時と同様です。

例えば、以下のように目的変数(従属変数)と説明変数(独立変数)を投入します。

回帰→線型_設定

統計量ボタンをクリックして、信頼区間にチェックを入れます。

回帰→線型_統計量

続行で戻り、OK をクリックすると、解析結果が得られます。

係数というタイトルの表がメインの結果となります。

一番下の「プールされた」とあるセクションの値が、多重代入データセットの解析結果を統合した報告すべき結果となります。

具体的には、赤枠内を報告するのが良いと思います(標準誤差と t 値は割愛可能)

重回帰統合結果

標準化係数ベータ(標準化偏回帰係数)は、統合できず、結果は表示されません。

共分散分析(群間比較を共変量で調整する重回帰分析)

群の背景情報を共変量として調整した平均値比較を行うための重回帰分析のことを、共分散分析とも言います。

SPSS で、共分散分析を行うには、分析 → 一般線型モデル → 1 変量 メニューを使います。

SPSS で共分散分析を行う方法は、以下の記事も参考にしてください。

共分散分析をSPSSで実施!多変量解析(重回帰分析)はどう判断する?

1 変量メニューのアイコンにうずまきが付いていれば、多重代入データセットの解析・統合の準備ができています。

渦巻付き1変量

解析のための設定は、例えば以下のように変数を投入します。

群間比較のためのカテゴリカルデータは、固定因子枠に投入します。

この時、固定因子のみ投入し、共変量を投入しなければ、従属変数の固定因子カテゴリ間比較になります。

1変量変数設定(オプション、EM平均)

オプションボタンをクリックして、パラメータ推定値が出力されるようにします。

記述統計にもチェックを付けて、確認しておくとよいでしょう。

1変量オプション

固定因子の群間比較は、EM(Estimated Marginal 推定周辺)平均ボタンをクリックして、例えば、以下のように設定します。

EM平均設定

結果は、パラメータ推定値の表と、推定周辺平均の推定値とペアごとの比較を見ます。

パラメータ推定値の表では、各説明変数のB=パラメータ推定値=偏回帰係数及び群間の検定結果が確認できます。

代入番号「プールされた」の赤枠部分を報告するのが良いと思います。

1変量統合パラメータ推定値

推定周辺平均の推定値は、共分散分析を行った重回帰モデル(一般線型モデルとも呼ばれます)から推定された、交絡因子調整をした後の群ごとの平均値(調整平均)です。

推定値の表のうち、代入番号が「プールされた」の赤枠の部分が、統合された結果で、この数値を報告するのが良いと思います。

1変量統合推定値

ペアごとの比較表も、代入番号「プールされた」の場所を見ます。

ですが、パラメータ推定値表とは違って、比較検定結果は統合できず、統合結果は表示されません。

検定結果は、上記のパラメータ推定値表の結果を使うのが良いと思います。

1変量統合比較結果

ロジスティック回帰分析

ロジスティック回帰分析の場合、分析 → 回帰 → 二項ロジスティック メニューで解析します。

SPSS でロジスティック回帰を行う方法は、以下も参考にしてください。

SPSSで多重ロジスティック回帰分析をわかりやすく!結果の見方や解釈まで

二項ロジスティックの先頭アイコンにうずまきがついていれば、多重代入データセットを解析して統合する準備が完了しています。

渦巻付き二項ロジスティック

解析自体は、通常のデータセットでロジスティック回帰分析を行うときと同じです。

例えば、以下のように変数をセットします。

この時、共変量にカテゴリカルデータ一つだけを入れれば、従属変数のカテゴリ間比較になります。

ロジスティック設定

カテゴリボタンで、共変量のうち、カテゴリカルデータである変数を指定します。

ロジスティックのカテゴリ設定

オプションボタンで、95 % 信頼区間を表示させる指定をします。

ロジスティックのオプション設定

続行で戻り、OK をクリックすると、解析結果が出力されます。

ブロック 1:強制投入法の「方程式中の変数」表を確認します。

ロジスティック統合結果

代入番号「プールされた」の赤枠部分が報告する結果です(B=パラメータ推定値=偏回帰係数=対数オッズ比、標準誤差は割愛可能)

Cox 比例ハザードモデル

Cox 比例ハザードモデルの場合、分析 → 生存分析 → Cox 回帰 メニューで解析します。

SPSS で Cox 回帰を実施する方法は、以下も参考にしてください。

SPSSで3群のCox回帰を実施!3群間の比較は結果の解釈に注意

Cox 回帰の先頭アイコンにうずまきがついていれば、多重代入データセットを解析して統合できる準備ができています。

Cox 回帰渦巻付き

解析自体は、通常のデータセットで、Cox 回帰するときと同じです。

例えば、以下のように設定します。

Cox設定(カテゴリ、オプション)

カテゴリカルデータは、カテゴリボタンをクリックして、カテゴリカル変数であることを認識させます。

Cox回帰カテゴリ設定

オプションボタンをクリックして、95 % 信頼区間を出力するように指定します。

Coxオプション

続行をクリックして戻り、OK をクリックすると、解析が実行されます。

解析結果は、「方程式中の変数」表を見ます。

Cox回帰統合結果

一番下の「プールされた」という部分の数値の赤枠部分が報告する結果になります。

まとめ

以上、SPSS で多重代入法を行う方法を解説しました。

多重代入法は、3 つのステップからなります

  1. 代入する値の生成と複数の代入データセットの作成
  2. 多重代入データセットを用いた解析
  3. 複数のデータセットから得られた結果の統合

の 3 ステップです。

多重代入データセット作成について、連続データは PMM(予測平均マッチング)で行い、少なくとも 100 個は作りましょう。

連続データの 2 群比較は、T 検定で行えます。

一方、連続データの 3 群以上の比較、カテゴリカルデータの 2 群比較、3 群以上比較は、いずれも、検定結果が統合できないため、それぞれ、一般線型モデル → 1 変量メニュー、二項ロジスティックメニューを使いましょう。

重回帰分析、共分散分析、ロジスティック回帰、Cox 回帰のそれぞれの方法を解説しました。

参考になれば幸いです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

リサーチクエスチョン探し?データ分析?論文投稿?、、、で、もう悩まない!

第1章臨床研究ではなぜ統計が必要なのか?計画することの重要性
  • 推定ってどんなことをしているの?
  • 臨床研究を計画するってどういうこと?
  • どうにかして標本平均を母平均に近づけられないか?
第2章:研究目的をどれだけ明確にできるのかが重要
  • データさえあれば解析でどうにかなる、という考え方は間違い
  • 何を明らかにしたいのか? という研究目的が重要
  • 研究目的は4種類に分けられる
  • 統計専門家に相談する上でも研究目的とPICOを明確化しておく
第3章:p値で結果が左右される時代は終わりました
  • アメリカ統計協会(ASA)のp値に関する声明で指摘されていること
  • そうは言っても、本当に有意差がなくてもいいの…?
  • なぜ統計専門家はp値を重要視していないのか
  • 有意差がない時に「有意な傾向があった」といってもいい?
  • 統計を放置してしまうと非常にまずい
第4章:多くの人が統計を苦手にする理由
  • 残念ながら、セミナー受講だけで統計は使えません。
  • インプットだけで統計が使えない理由
  • どうやったら統計の判断力が鍛えられるか?
  • 統計は手段なので正解がないため、最適解を判断する力が必要
第5章:統計を使えるようになるために今日から何をすれば良いか?
  • 論文を読んで統計が使えるようになるための5ステップ
第6章:統計を学ぶために重要な環境
  • 統計の3つの力をバランスよく構築する環境

以下のボタンをクリックして、画面に出てくる指示に従って、必要事項を記入してください。

コメント

コメントする

目次