井出草平の研究ノート

Mplusで行う潜在クラス分析(順序づけられていないカテゴリカル変数)

Mplusの説明書に掲載されている例7.7から。
https://www.statmodel.com/usersguide/chapter7.shtml

潜在クラス分析に使用する変数が順序づけられていないカテゴリカル変数である例。
パスダイアグラムは以下のように書く。潜在クラス数が複数あってもCは一つだけである。

TITLE: This is an example of a LCA with unordered categorical latent class indicators using automatic starting values with random starts
DATA: FILE IS ex7.7.dat;
VARIABLE: NAMES ARE u1-u4;
CLASSES = c (2);
NOMINAL = u1-u4;
ANALYSIS: TYPE = MIXTURE;
OUTPUT: TECH11 TECH14;
CLASSES

クラス数の指定のオプション。ここでは2クラスでの計算を指定している。

NOMINAL

名目変数として扱う変数を指定する。
カテゴリカル変数の場合にはCATEGORICALと指定する。この分析(順序づけられていないカテゴリカル変数)なのでNOMINALが指定されているが、CATEGORICALと書いても分析結果は基本的には変わらない。実際に走らせてみると、クラス1とクラス2が入れ替わったが、それ以外の出力は同じ。
ただし、CATEGORICALと書かないと反応確率が出力されない。

ANALYSIS

デフォルトの標準誤差はロバスト推定が使われている。いわゆるロバスト最尤推定法(MLR)である。他の推定法を使用する際には、ESTIMATORオプションを追加する。例えば、ベイズ推定の場合には"ESTIMATOR = BAYES;"を追加する。といっても、MLR以外の推定法として指定できるのは最尤法(ML)とベイズ推定法(BAYES)のみである。ロバスト重み付き最小二乗法(WLSMV)などの最小二乗法系の推定法は使用できない。潜在クラス分析は最尤推定法で行うので当たり前といえば当たり前である。
各オプションは下記の4つ。
ランダム初期値: STARTS = 200 10(デフォルトは10 2)
初期最適化の反復回数: STITERATION = 50(デフォルトは10)
ブートストラップの反復回数: LRBBOOTSTRAP = 50;
ブートストラップの尤度比検定の初期値: LRTSTARTS = 0 0 100 20;

OUTPUT

デフォルトに含まれていない出力を指定するコマンド。
Mplusの例ではTECH1とTECH8が指定されているが、ここではTECH11とTECH14を指定している。
TECH11はVuong-Lo-Mendell-Rubin LIikelihood Ratio Test (VLMR) の出力、TECH14はBootstrapped Likelihood Ratio Test (BLRT)の出力ができる。これらの統計量はクラス数が妥当か否かを判断する際には必要となる。どちらか一つ選ぶのであればBLRTなので、TECH14をだけいれることが多いかもしれない。


TECH14によって指定したクラス数より一つ少ないカイ二乗値の差と検定が出力される。P値が低い場合(例えば5%水準以下)であれば、クラス数の増加によってモデルが最適化されていると判断する。下記の出力結果をみると、クラス数を2に指定して、P値は0.000であるので、一つクラスを増やして、CLASSES = c (3);として再分析してみた方がよいかもしれない。TECH14を指定するとブートストラップを施行するので計算時間が割と長くなる。
ちなみに、TECH8オプションはモデルの最適化の履歴が出力されるほか、分析中に所要時間がわかる。ただ、出力が長くなり、使わない部分が増えるので不要かもしれない。

出力
Information Criteria


Akaike (AIC)                   42850.964
Bayesian (BIC)                 42961.756
Sample-Size Adjusted BIC       42907.736
 (n* = (n + 2) / 24)


FINAL CLASS COUNTS AND PROPORTIONS FOR THE LATENT CLASS PATTERNS
BASED ON ESTIMATED POSTERIOR PROBABILITIES

    Latent
   Classes

       1       3713.04544          0.74261
       2       1286.95456          0.25739

CLASSIFICATION QUALITY
     Entropy                         0.343

TECHNICAL 11 OUTPUT
VUONG-LO-MENDELL-RUBIN LIKELIHOOD RATIO TEST FOR 1 (H0) VERSUS 2 CLASSES

          H0 Loglikelihood Value                       -21445.523
          2 Times the Loglikelihood Difference             74.083
          Difference in the Number of Parameters                9
          Mean                                             14.753
          Standard Deviation                                9.570
          P-Value                                          0.0008

     LO-MENDELL-RUBIN ADJUSTED LRT TEST

          Value                                            73.129
          P-Value                                          0.0008


TECHNICAL 14 OUTPUT
PARAMETRIC BOOTSTRAPPED LIKELIHOOD RATIO TEST FOR 1 (H0) VERSUS 2 CLASSES

          H0 Loglikelihood Value                       -21445.523
          2 Times the Loglikelihood Difference             74.083
          Difference in the Number of Parameters                9
          Approximate P-Value                              0.0000
          Successful Bootstrap Draws                           10

コーエンのκ係数

最も有名な一致係数である。扱うことができるのは名義尺度・順序尺度である。評価者が2名のものが基本だが、κ係数は3名以上に拡張されたバージョンも存在する。Cohenのκ係数というと評価者が2名の場合を指す。


κ係数の目安としてよく使われるのはLandis and Koch (1977)によって示されたものだろうか。

0.0〜0.2: わずかに一致(slight agreement)
0.21〜0.40 まずまずの一致(fair agreement)
0.41〜0.60 中等度の一致(moderate agreement)
0.61〜0.80 かなりの一致(substantial agreement)
0.81〜1.0 ほぼ完全、完全一致(almost perfect or perfect agreement)

Krippendorff (1980)にも基準が掲載されている。

0.67未満 評価しない(discounted)
0.67〜0.80 不確かな結果(conclusions tentatively)
0.80以上 明確な結果(definite conclusions)

Landis and Koch (1977) に比べて厳しい内容である。ともあれ、一致度は0.8以上が目安になるという内容である。
もちろん、この基準には根拠が明確にあるわけではないが、0.8という基準はよく使われている。また、論文などに記載するときには、一般的に認められている水準というような「これが私たちの常識だよ」的な記載がよく見られるが、これらの文献を引用した方が恰好がつくように思う。


CohenのκはSPSSで計算可能である。
評価者を列、ケースを行のデータセットを作る。


[分析]→[クロス集計表]で、図のように行列を設定し、統計量の中の「カッパ」をチェックすると出力される。


なお、SPSSで計算できるのはノーマルなCohenのκで、重みづけκは出せない。
CohenのκはRのirrパッケージで計算ができる。irrパーッケージは重みづけκも計算ができるので必要がある場合は、Rを使うことになるだろう。


irrパッケージ
https://cran.r-project.org/web/packages/irr/index.html
https://cran.r-project.org/web/packages/irr/irr.pdf (pdf)

library(irr) # irrの読み込み
rater01<-c(1,2,1,2,1,1,2,2,1,2,1,1,1,2,1,2)
rater02<-c(2,2,2,1,1,1,2,1,1,1,2,1,2,2,2,2)
d1<-cbind(rater01, rater02)
kappa2(d1)

重みづけのオプションは"equal", "squared"の2つ。"unweighted"がデフォルト値で重みづけなしを意味している。

kappa2(d1, "squared")

equalはすべてのレベルで評価者間の不一致が均等に重み付けされ、squaredは不一致は完全一致からの自乗距離に応じて重み付けされる。

重みづけκの使用を検討するのは、評価が多段階である場合だ。
日本語で以下に解説がある。
http://www.med.osaka-u.ac.jp/pub/kid/clinicaljournalclub12.html


以下、数式を記載する。

κは次のように定義される。
\kappa \equiv \frac{p_o - p_e}{1 - p_e} = 1- \frac{1 - p_o}{1 - p_e}, \!

ここでのp_oは観察者の間で相対的に観察された一致度であり(正確度と同一)、p_eは観察されたデータを用いて各カテゴリーをランダムに観察者の確率を計算する仮説の確率一致である。

P_eは、カテゴリーをk, 項目の数をNn_{ki}、評価者の数をi、予想されるカテゴリーをkとすると下記の数式となる。

 p_e = \frac{1}{N^2} \sum_k n_{k1}n_{k2}

文献

クリッペンドルフのα係数

一致率を計測する際に使ったクリッペンドルフのα係数(Krippendorff's alpha coefficient)のメモ。
一致率というとCohenのκ係数が有名だが、κ係数は評価者が2名という限定がある。
クリッペンドルフのα係数は1)評価者が3名以上に対応し、2)比例・間隔・順序・名義尺度それぞれのオプションが用意されているという点で優れている。

Krippendorff's alpha
https://en.wikipedia.org/wiki/Krippendorff's_alpha

日本語の解説はないが英語は割と充実している。
他の一致率の統計量と同じで、-1〜1の間の値をとり、1が完全一致で、-1が完全不一致である。


Krippendorffのαを出すにはいくつかの方法が用意されている。


SPSS, SAS, Mplus
http://afhayes.com/spss-sas-and-mplus-macros-and-code.html
Andrew F. Hayesによってマクロが作成され無料で公開されている。
Download KALPHA: kalpha.zip をダウンロードする。zipファイルの中に3つの統計パッケージのマクロが入っている。


・R
パッケージirrで計算ができる。
https://cran.r-project.org/web/packages/irr/index.html
https://cran.r-project.org/web/packages/irr/irr.pdf (pdf)

基本形は以下のようなコマンドラインだ。

kripp.alpha(x, method=c("nominal","ordinal","interval","ratio"))

分析例

# irrの読み込み
library(irr)

# データの作成
d1<-c(1,1,1,1,2,1,1)
d2<-c(5,4,5,5,4,4,5)
d3<-c(4,5,4,4,4,4,5)
d4<-c(1,2,1,1,1,1,1)
d5<-c(1,1,1,1,1,1,1)
d6<-c(4,3,3,4,2,4,1)
d7<-c(4,4,4,4,4,4,4)
d8<-c(1,1,2,1,1,1,1)
d9<-c(1,1,1,1,1,1,1)
d10<-c(3,2,3,3,3,3,3)
d11<-c(4,3,4,2,4,4,1)
d12<-c(1,1,1,1,1,1,1)
d<-cbind(d1,d2,d3,d4,d5,d6,d7,d8,d8,d9,d10,d11,d12)

# Krippendorffのα係数の算出(順序尺度として計算)
kripp.alpha(d,"ordinal")

Krippendorff's alpha
Subjects = 13
Raters = 7
alpha = 0.838

評価者は行にして、ケース列としてデータを入力する。分析例だと7人の評価者でケースは12例ということになる。
α係数は0.838とそこそこ高い値が出ている。
そこそこ高いと書いたものの、どの数字以上が高い数字なのかは、特に基準があるわけではない。研究分野によってだいたいの相場感があるので、それを目安にすることになるだろう。

分析例は順序尺度として計算をしたがオプションを"nominal"にすると名義尺度の計算ができる。比例尺度、間隔尺度の場合も同様にオプションを変えれば計算が可能である。

日本人の精神力が弱まった

野村総一郎
メディア用語としての"新型うつ病"のその後 (特集 臨床現場から見た精神疾患の変貌)
臨床精神医学 45(1), 37-42, 2016-01 

 中島は日本人に備わっていた「徳」(善や正義をつらぬく人格的能力)と「仁」(おもいやり, いつくしみ)が失われたことを指摘する。幼少児期には誰でも自己愛的なものだが,大人に成長してそれを克服し,徳や仁,忍耐を身に付ける。しかし,そのプロセスが現代人に欠如し自己愛が肥大したこと,自分の外からストレスがやってくる,という外在化の考え方が強くなり,自助能力が低くなったこと,などを指摘し,総体として日本人の精神力が弱まったことを原因の1つ(後の2つは精神病理学の衰退と,SSRIを中心とした薬物療法中心主義)としている。これは非常にストレートな言い方であるが,「よく言ってくれた!」と膝を打つ人も多いのではなかろうか?

中島の「日本人の精神力が弱まった」に野村総一郎は「よく言ってくれた!」と膝を打ったようだが、これでは、100時間働いて身体の調子が悪くなった人を「心が弱い」と言っているのと同じである。あまりにもひどい言いようである。

そもそも日本人の精神力が弱まったエビデンスでもあるのだろうか。

昔の日本人には徳や仁があったというのは、近年の右翼的な言動である。徳が「善や正義をつらぬく人格的能力」であり、その能力が日本人にあったならば、昔の日本人は東アジアの国々を相手に戦争をして、人殺しなどしなかったと思うのだが。それとも東アジア人はおもいやり、いつくしむ対象ではなかったのであろか。


「新型うつ病」のデタラメ (新潮新書)

「新型うつ病」のデタラメ (新潮新書)

パス図を描くソフト−Pencil

パス図を描くソフトを探していると、いろいろな手段があることがわかった。
その一つ、Pencilを紹介。Nightly buildだが、Windows以外にも対応しているようだ。

PENCIL PROJECT
http://pencil.evolus.vn/


試しにパス図を書いてみた。





わりと簡単に作成できる。パーツを移動すると、矢印も一緒についてくるなど操作性もいい。

出力形式はpngsvgの2種類だ。通常はpngで十分だと思う。svgベクター画像なので、曲線がカクカクになりにくいなど有利な場合もあるが、Wordなどで使うには少し厄介だ。svgを使う場合には、Inkscapeで一度svgファイルを開いて、オブジェクトとしてコピーしてWordに貼り付けるという手順を踏むできるらしい(参照)。

LaTexの場合もInkscapeが必要だそうだ。もちろんpngで保存していればLatexでそのまま使えるので特に悩む必要はない。
svgの場合は、Inkscapeで開いてから、epsかpdfに形式を変換して使用するそうだ(参照)。であれば、最初からpngでやった方が効率的だろう。

シーハン障害尺度

シーハン障害尺度は仕事/学校、社会、家族という3つの相互に関連のある領域における機能障害の評価をするツールである。自記式(Self-Report)である。

harmresearch.org


追記
下記ドメイン(cqaimh.org)に掲載されたSDSは著者の許可なしに掲載されたものだとシーハン氏から指摘がありました。
利用する場合には公式ページを利用しましょう。

      • -

この概要の2ページ目にあるのがシーハン障害尺度の本体。
日本語は下記の論文で信頼性・妥当性が確認されている模様。

Sheehan Disability Scale(SDISS)日本語版の作成と信頼性および妥当性の検討
著者:吉田卓史・大坪天平・土田英人
資料名:臨床精神薬理 巻:7 号:10 ページ:1645-1653
発行年:2004年10月10日
http://jglobal.jst.go.jp/public/20090422/200902218806750007

非常に簡便である。自記式である点はWHODASなどのQOL尺度と同様であり、一部質問項目も似たものも含まれる。

シーハン自身が1966から2007年までのシーハン障害尺度のレビューをしている。

Sheehan KH, Sheehan DV. Assessing treatment effects in clinical trials with the discan metric of the Sheehan Disability Scale. Int Clin Psychopharmacol. 2008;23:70–83.
http://www.ncbi.nlm.nih.gov/pubmed/18301121

ひきこもり現象はいつから始まったか

「ひきこもり」は70年代に現れ80年代から90年代にかけて激増したと言われている.斎藤環は次のように述べている.

私自身も,医師になりたてだった1980年代中期の時点で,この種の事例をごくありふれたものとして診療にかかわっていた経験があります.(斎藤 2002: 34)

また,最初期からひきこもり問題に関わり続けているNPO法人・青年自立援助センターの代表である工藤定次によると,「ひきこもり」と呼ばれるようなケースに初めて関わったのは1978年であるという(斎藤 2003b: 52)

この傍証となるのは不登校者の推移 )である.ただ不登校統計を使う際には注意が必要である.なぜならば,不登校統計には様々な問題点があるからである.例えば,長期欠席の中で不登校が占める割合が都道府県によって非常に大きな相違があることである.小学校の不登校率は最高値[青森県52.7%],最低値[長崎県22.0%]であり,中学校の不登校率は最高値[青森県89.9%],最低値[愛媛県48.6%]である(門ほか 1998: 27).

県によって30〜40%あまりの差異があるのである.教育レベルに地域差があるかもしれないが,そのことを差し引いてもこの数字をそのまま受け取るわけにはいかない.実態として,各都道府県で30〜40%ほどの開きがあるというよりも,各地の教育委員会の方針や不登校児童のカウントの方法に違いがあると解釈した方が妥当であろう.例えば,「不登校」であっても「病欠」と記録した方が親にとっても学校にとっても差し障りがないことから,実態としては「不登校」であるにも関わらず「病欠」となっている生徒は多数存在している.

保坂(2000)によると,多くの不登校児童が病欠としてカウントされているのである.長期欠席者に占める不登校率の低い都道府県では,実態しては「不登校」であるにもかかわらず,「病欠」などでカウントして,見かけ上は不登校の児童が非常に少なく見えているのだ.

このような事情を考慮すると,不登校統計を使っても実態をうまく掴むことができないことがわかる.恣意的に統計が取られる「不登校」よりも,実数に限りなく近い長期欠席者の統計推移を見る方が賢明であると考えられる.また,不登校の統計は1966年から開始されているので,66年以前の動きも把握できず,長期のトレンドを見ることも出来ない.このような理由から,ここでは不登校ではなく,長期欠席者のデータをここで示す.


図 3 年間50日以上の長期欠席児童生徒数の全児童生徒数に占める割合の推移
(文部科学省『学校基本調査』(1953-1999)・保坂(2000)から作成)

このグラフは中央が谷になっているという全体的な特徴を持つ.中央の谷は70年代半ばあたりである.70年代以前には,長期欠席の生徒は珍しくなかった.戦後しばらくは生活困難という理由が考えられるし,そもそも学校とは必ずしも「行かなければならないもの」ではなかったのだろう.その後,70年代には日本国民がこぞって学校に登校する時期になる.しかし,その70年代半ばから「不登校」が徐々にあらわれ,80年代から90年代にかけて激増をすることがこのグラフから読み取れる.

「ひきこもり」の7〜8割は「不登校」の延長で起きている.つまり,70年代半ばあたりから不登校者の一部が「ひきこもり」に移行して,「ひきこもり」という現象を生み出してきたと考えられるのである.

このことの証左となるのは,40代の「ひきこもり」がここ数年の間に一般化してきたという事実である.ひきこもり問題を長年に渡って取材しているフリーライター永冨奈津恵は「最近では,40代の方の話も,珍しくはなくなりましたよね」 )と述べている.筆者も親の会などで40代の「ひきこもり」の存在をたびたび聞くことがあり,数年前までは珍しかった40代の「ひきこもり」が,現在ではかなり一般化してきていると思われる.図3のグラフの谷にあたる1975年に中学1年生であった人を考えてみた場合,その人は1962年に生まれたことになる.2007年時点での年齢は45歳である.彼らがいわば「ひきこもり第一世代」である.彼らは70年代に「不登校」になり,「ひきこもり」へと移行して,そのままひきこもり続けて,現在になって,40代の「ひきこもり」として発見されていると考えられる.

「ひきこもり第一世代」は70年代に「不登校」から「ひきこもり」に移行した人たちであり,図3に見られるように,後年に比較してそれほど多くはない.しかし,80年代から「不登校」は激増していく.この図3が示しているのは40代の「ひきこもり」の下には,激増期の80年代に「ひきこもり」になった30代の「ひきこもり」が40代の数倍の規模で存在していることを示している.

臨床医や支援者の証言,長期欠席者の年次グラフ,40代の「ひきこもり」の一般化などから,「ひきこもり」は70年代から増加してきたということが言える.「ひきこもり」はここ数十年の間に大規模に発生した極めて現代的な現象なのである.

参考文献
文部科学省『学校基本調査』(1953-1999)
門眞一郎・滝川一廣高岡健, 1998,『不登校を解く―三人の精神科医からの提案』ミネルヴァ書房
保坂亨, 2000,『学校を欠席する子どもたち―長期欠席・不登校から学校教育を考える』東京大学出版会
斎藤環, 2002,『ひきこもり救出マニュアル』 PHP研究所