• ベストアンサー

統計R:個体差を考慮した生存分析

大学生です。 対象個体を箱にいれて観察し、地点 A を出発して地点 B に到達するまでの時間を記録しました。 観察時間内に到達できなかった個体は、「到達できず」として打ち切りました。 この実験を同一個体を用いて2回おこない、 統計ソフト:R モデル:コックスの比例ハザード 応答変数:到達時間(打ち切り含む) 説明変数:試行(1回目 or 2回目) において、1回目と2回目の試行間で到達までの時間に差があるかを調べようとしています。 ですが、各データは同一個体から得られたものですので、個体差を考慮する必要があります。 例えば、glmmML() では、cluster = 個体ID とすることで個体差を考慮した解析が可能ですが、 coxph() で ID を考慮するためには、どのようなモデルを作成すればよいのでしょうか? 指導教員より strata を提案されましたが、いまいち理解しきれず、自信がありません。 もし、お詳しい方がいらっしゃいましたら、どうぞお知恵をお貸しください。

質問者が選んだベストアンサー

  • ベストアンサー
  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.4

ANo.3へのコメントについてです。 > ということでしょうか・・・?  いや、そこまでキツいこと言ってる訳じゃないんですが、えーと、つまり…そういうことです。  いろんな検定法があるけど、それぞれ独自の「ある程度一般的・抽象的なある仮定(モデル)を含む帰無仮説と、そこから演繹される確率論的予言」、いわばテンプレートですが、これが前提になっています。そのテンプレートを理解しないままにただ検定法を使う、ということを指して「道具に振り回される」とANo.2で申し上げたのです。  たとえば、多数の個体について1回目のタイムと2回目のタイムの差を測ったら、概ね正規分布になったとしましょう。で、あるひとつの個体を取り上げて、「そいつは、他の個体に比べて、タイムの差が特別に大きいかったかどうか」ということを問うなら、得られた分布の平均と分散を基準にして検定すればいいだろう。この話がどういう検定法のテンプレートにマッチするかはもちろんお分かりでしょうし、帰無仮説を構成することも容易でしょう。  ご質問の場合は「2回目の方が1回目より速いかどうか」を問うようです。その際に、基準は一体何なのか。もう少し精密に言えば、どのようにして測った値(つまり、どんな確率変数)ならば、目的の検定に利用できるような(その確率変数の分布についての)何らかの予言が成立するだろうか。  それを検討する際には大抵の場合、「これはまあ、確かでしょ」と思われる仮定を前提に考察する。(なので、できあがった帰無仮説には、「これはまあ、確かでしょ」の部分も明示的に含んでおかなくちゃいけません。)そして、帰無仮説から検定に利用できる予言(命題:「もし帰無仮説が正しいなら、尺度○で測った確率変数は#%の確率で△以下である」というような)を演繹する。  で、いざ検定をやろうという段階になってたまたま、おお、丁度この検討結果とマッチするテンプレートがあるぞ、ということなら、その検定法のプログラムが流用できる。そんなものがなければ自分で作る。(というのが本来のスジですが、実際には、あらかじめいろんなテンプレートに関する知識を利用して適切な検定法を決めた上で、実験をデザインするんです。ですがそれはさておき。)  これがもし、肝心の検討の段階をすっとばして「トニカク手持ちの検定法プログラムセットの中からテキトーに選ぼう」というのだったら、ナニやってんだか分からん、ってことです。  指導者もいらっしゃるようですから、このあたり、じっくり議論なさってみると良いかと。 http://okwave.jp/qa/q4058851.html も多少はご参考になるやも

aokumo238
質問者

お礼

お礼が遅くなり、大変失礼致しました。 解析方法その他について指導教員と検討しておりました。 これまで統計についてまじめに取り組んできたつもりでしたが、 まだまだ不十分な点があることを痛感しております。 稚拙な問いにお付き合いいただき、ありがとうございました。

その他の回答 (4)

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.5

 ANo.4のコメントについて。ご参考までにヒントを。  N個の個体から成る集団Sの各個体xについて、まずA地点からB地点にいく時間を測定し、次に同じ試行をもう一度行って、1回目に比べて2回目の方が成績が良かったかどうかを調べる、という実験を考えます。  2回目には成績が上がった、と言いたいのならまずは H(1/2):「集団Sのどの個体にとっても、1回目の試行と2回目の試行とは同等である。だから、成績のばらつきは偶然だけに依る」 というようなことを帰無仮説とすれば良さそうですが、これを検定しようとすると「成績のばらつき」を定量的に予測できないんで困りますよね。何がまずいんでしょうか。  実験についてもう一度考えてみますと、「ある個体xについて、タスク達成に掛かる時間がどれだけ短縮したか」という数値は、タスクの性質におおいに依存しているんじゃないでしょうか。タスクを達成する上で重要なのが、環境に怯えないことなのか、速く走ることなのか、複雑な分岐を迷わず選択することなのか、見えない場所にあるものの匂いを嗅ぎ取ることなのか、…それはタスクによるでしょう。つまり、単一のタスクだけを使った実験では、この数値にさしたる意味はないんです。(定量的に「時間がどれだけ短縮したか」ということをキチンと考察するためには、多様なタスク同士を比較し、タスクにどんな要因が含まれているかを探る実験が必要でしょう。)  また、仮に、ある1個体cについては1回目が100秒で2回目が10秒、他の10個体はどれも1回目が10秒で2回目が11秒だったとしたら、「平均時間を見れば、成績が上がったと言える」という結論で良いでしょうか?そりゃやっぱり無理ですよね。  では「成績が上がった」という結論はどのように裏付けられるのか。それは専ら「大抵の個体において、1回目より2回目の方が速かった」という定性的な情報に依ってでしょう。  という訳で、時間の数値のことは忘れて「1回目より2回目の方が速かったかどうか」だけに着目しましょう。すなわち、帰無仮説を精密化して、 H(1/2):「集団Sのどの個体についても、1回目の試行より2回目の試行の方が成績が良くなることも、逆になることも、同等の確率で生じる」 ということを考える。  個体xのk回目の試行の成績v(k,x)は、A地点からB地点に速く到達できるほど高得点であるとし、また、所定の時間内にB地点に到達できなかった場合は最低点であるように定義してあるものとします。すると帰無仮説H(1/2)から 「集団Sのどの個体xについても、命題   X(1/2): P(v(1,x) < v(2,x)) = P(v(2,x) < v(1,x)) = 1/2 が成立つ」という<確率的な予言>が帰結できるので、   L = {x | x∈S ∧ v(1,x) < v(2,x)} とすると、z=|L| (集合Lの要素数)は2項分布   B(z,N,1/2)= (NCz)((1/2)^N) (0≦z≦N) に従うことになる。もし、データが(適当な有意水準において)これを棄却するのであれば、H(1/2)の否定が結論できます。 (実際にはv(1,x)=v(2,x)=最低点という個体も生じるでしょうから、その扱いも考慮しておかねばなりません(でも、データを捨てちゃ駄目です)。ですが、ここでは話を簡単にするために、v(1,x)≠v(2,x)だとしています。)  この帰無仮説をもう少し一般化して H*(p) : 「集団Sのどの個体についても、1回目の試行に比べて2回目の試行の成績が上がる確率はp以下である」 とするとどうでしょうか。  もちろん、個体xごとに、1回目の試行に比べて2回目の試行の成績が上がる確率p(x)が異なるかもしれません。でも、H*(p)を満たす「最良」の場合を考えることができます。すなわち、どの個体についてもp(x)が仮説が許す最大値pであったとする。その場合でもz=|L|は2項分布   B(z,N,p)= (NCz)(p^z)((1-p)^(N-z)) (0≦z≦N) に従うのだから、もしこの分布から予測される頻度に比べて有意に大きい頻度(たとえば有意水準1%)で「1回目の試行に比べて2回目の試行の成績が上がった」個体が生じたのなら、この帰無仮説は棄却できて、「有意水準1%以下」でH*(p)の否定が結論できることになります。(ここで「有意水準1%以下」というのは、H*(p)が1%の有意水準でギリギリ棄却できたとしても、それは、H*(p)を満たす「最良」の場合を棄却したのですから、最良でない場合についてはもっと低い有意水準で棄却できていることになるからです。)H*(p)の否定は「集団S中に、1回目の試行に比べて2回目の試行の成績が上がる確率がp以上である個体がいる」ということであり、結論としてはちょっとパンチ不足です。もっと旨い帰無仮説を工夫できないでしょうかね。

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.3

ANo.2へのコメントについてです。 > (データ間に差がないことを示す、という発想が問題なのは知っていました) たはは~そこはポイントじゃないんです。要点は、帰無仮説そのものの(クドいほどの)厳密性。 「個体差」なる概念を入れるのは結構ですが、お考えの「個体差」をどのようにモデル化するか。もしそのモデルが帰無仮説の中に現れて来ないのなら、それは、帰無仮説に明示されていない追加の仮説をこっそり紛れ込ませている、ということです。

aokumo238
質問者

お礼

コメントありがとうございます。 回答者様の仰りたいことは、 「質問者が提示した帰無仮説は全然厳密ではなく、解析できませんよ」 (帰無仮説が厳密ではないので、解析手法を選ぶ段階ですらない) かつ 「個体差について考慮したいなら、それを組み込んだ帰無仮説が作れるはずですよね」 (それがない、イコール個体差を解析に組み込むことができない) ということでしょうか・・・? どうも毎回のコメントに対してピントのずれた返答になってしまっているようで申し訳ないです。 自分が持っている(と思っている)統計の知識がおかしいのでしょうか・・・ 今回のデータは擬似反復データだと思うんですが・・・ (おそらく、自分の知識はそれ以前の問題なのでしょう) なかなかすっきりしないものです。

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.2

ANo.1へのコメントについてです。  道具(解析手法)に振り回されないように注意なさると宜しいかと。一度、チョーキホンに戻ってみませんか。  帰無仮説を厳密に言語化することが、何よりも重要です。  話を(無理矢理にでも)検定手法の都合に合わせようとする人が多いけれども、そうすると必然的に厳密な帰無仮説も違ってきます。違ってこなくてはおかしいのです。なぜなら、その帰無仮説から、<< 恣意的な仮説を一切追加せずに>>正確な論理的演繹で導ける確率論的予測(もちろん複数ありえて、それぞれ感度も重視するポイントも違う訳ですが)が成立つか否か、ということだけが、客観的な統計として意味を持つからです。

参考URL:
http://okwave.jp/qa/q7623770.html
aokumo238
質問者

お礼

お礼が遅くなり、大変申し訳ありません。 参考URLも含めて回答者様のコメントを読み直しているのですが、 お恥ずかしいことに、自分の理解が及ばず、未だうまく整理できていません。 (データ間に差がないことを示す、という発想が問題なのは知っていました) 自分の中で、今回の実験の帰無仮説は、 (1)到達の成功率について 「試行の1回目と2回目で、同一個体が観察時間内に地点Bに到達する頻度は変わらない(学習の効果はない)」 (2)到達までの時間について 「試行の1回目と2回目で、同一個体が地点Bに到達するまでの時間は変わらない(学習の効果はない)」 だと考えています。 これを解析する際に、「個体差」をパラメータとして考慮するのはおかしいのでしょうか? 自分では、同一個体を繰り返して用いた実験であるため、 GLMMなどのランダム効果を考慮した解析が妥当である、と判断したのですが・・・ もし、まだこの質問をご覧になることがありましたら、 コメント頂ければ幸いです。

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.1

 「遊園地を貸し切ってハンターロボに捕まったらアウト」という話であればコックスの比例ハザードモデルでソレナリに説明できそうですけど、ご質問のA地点からB地点てのは、迷路を抜けろ、というようなタスクじゃないかと憶測。もし、B地点にほんの一瞬で到達できる確率が全くの0なら、モデルの選択に無理があるんじゃないでしょうか。  コックスの比例ハザードモデルの一つの特長は「打ち切り」を扱えること。しかし、たとえば、習熟の効果を測るために同じ個体に2度タスクをやらせて変化を見る、という実験を考えますと、単純に得点のアンサンブル平均が有意に上がったかどうかを調べれば良さそうで、その場合、得点を「所要時間の逆数」と定義すると、「打ち切り」は得点=0としてごく自然に扱えます(この定義に限る訳じゃありませんが)。  いや、ご質問の状況が分からないまま言ってるだけですけど。

aokumo238
質問者

お礼

回答ありがとうございます。 >B地点にほんの一瞬で到達できる確率が全くの0なら、モデルの選択に無理があるんじゃないでしょうか。 お恥ずかしいことに、この考えを全く見落としておりました。 ご指摘ありがとうございます! 以下、コックスを使うか否かは置いておくとして、 >習熟の効果を測るために同じ個体に2度タスクをやらせて変化を見る、という実験を考えますと、 仰るとおりです。 今回の質問の本質は、同じ個体に2度タスクをやらせる場合の解析、です。 分かりにくくて、大変申し訳ありません。 データが独立ではありませんので、対処に困っておりました。 >単純に得点のアンサンブル平均が有意に上がったかどうかを調べれば良さそうで、 これは個体IDといった変数を統計的には考慮することなく、 「移動時間~試行」モデルを作成し、試行が有意な変数であるか否かを検定せよ、 というご意見でよろしいでしょうか? 実は、同じデータを用いて「Bへ到達できたか否か~試行」についても、 誤差分布=二項分布、ランダム変数=個体ID、でGLMMをおこなったのですが、 この場合も、個体IDの変数は不要(単にGLM)で解析すべきでしょうか? 最後になりますが、分かりにくい文章から的確に内容をくみとっていただき、 加えて、それに対する解決方法もご提示いただき、ありがとうございました。 お礼欄でさらに質問を重ねるのは失礼かと思いますが、 お時間ありましたら何かご意見いただければ幸いです。 どうぞよろしくお願い申し上げます。

関連するQ&A