最小/最大値のみがわかっているデータの統計的方法


29

正確な値が不明なデータを扱う統計のブランチはありますが、各個人について、値の上限または下限を知っていますか?

私の問題の主な原因は、統計用語で表現するのに苦労しているという事実にあると思われますが、例を挙げて説明するとわかりやすくなります。

ある時点でAのメンバーがBに「遷移」できるように、2つの連結された集団ABがあるとしますABが、その逆は不可能です。遷移のタイミングは可変ですが、ランダムではありません。たとえば、Aは「子孫のない個人」であり、B「少なくとも1人の子孫を持つ個人」です。この進行が起こる年齢に興味がありますが、断面データしかありません。任意の個人について、それらがAまたはに属しているかどうかを確認できますB。これらの個人の年齢も知っています。母集団Aの各個人についてA、移行時の年齢が現在の年齢よりも大きくなることを知っています。同様に、メンバーのB場合、移行時の年齢が現在の年齢よりも低いことを知っています。しかし、私は正確な値を知りません。

移行の時代と比較したい他の要因があるとしましょう。たとえば、私は個人の亜種や体の大きさが最初の子孫の年齢に影響するかどうかを知りたいです。私は間違いなくそれらの質問に役立ついくつかの有用な情報を持っています。平均して、の個人のうちA、高齢の個人は後の移行を持っています。しかし、特に若い個人にとっては、情報は不完全です。また、母集団についても同様ですB

この種のデータを処理する確立された方法はありますか?適切な場所から始めるために、このような分析を実行するための完全な方法、必ずしもいくつかの検索用語または有用なリソースが必要なわけではありません!

警告:Aからへの移行Bは瞬間的であるという単純な仮定を立てています。また、ほとんどの人は、十分な長さの生活をしていると仮定して、ある時点でBに進むと想定しています。そして、縦断的なデータは非常に役立つことを理解していますが、この場合は利用できないと想定しています。

私が言ったように、これが重複している場合はおologiesび申し上げますが、私の問題の一部は、何を検索すべきかわからないことです。同じ理由で、必要に応じて他のタグを追加してください。

サンプルデータセット:Sspは、2つの亜種またはYのいずれかを示します。子孫は、子孫なし(A)または少なくとも1人の子孫(B)を示しますXYAB

 age ssp offsp
  21   Y     A
  20   Y     B
  26   X     B
  33   X     B
  33   X     A
  24   X     B
  34   Y     B
  22   Y     B
  10   Y     B
  20   Y     A
  44   X     B
  18   Y     A
  11   Y     B
  27   X     A
  31   X     B
  14   Y     B
  41   X     B
  15   Y     A
  33   X     B
  24   X     B
  11   Y     A
  28   X     A
  22   X     B
  16   Y     A
  16   Y     B
  24   Y     B
  20   Y     B
  18   X     B
  21   Y     B
  16   Y     B
  24   Y     A
  39   X     B
  13   Y     A
  10   Y     B
  18   Y     A
  16   Y     A
  21   X     A
  26   X     B
  11   Y     A
  40   X     B
   8   Y     A
  41   X     B
  29   X     B
  53   X     B
  34   X     B
  34   X     B
  15   Y     A
  40   X     B
  30   X     A
  40   X     B

編集:サンプルデータセットはあまり代表的ではないため変更されました


2
これは興味深い状況です。データを提供できますか?
GUNG -復活モニカ

1
完全なデータセットを投稿することはできませんが、サンプルセットを提供できます。
-user2390246

回答:


26

これは、現在のステータスデータと呼ばれます。データの断面図を1つ取得します。応答については、各被験者の観察された年齢で、イベント(あなたの場合はAからBへの移行)が発生したかどうかがわかります。これは、区間打ち切りの特殊なケースです。

正式に定義するには、を被験者iの(観測されていない)真のイベント時間とします。レッツC 私は主題のための検査時間I(自分の場合:検査時の年齢)。場合はC I < T I、データがされている右の検閲します。それ以外の場合、データは打ち切られままになります。Tの分布のモデリングに興味があります。回帰モデルの場合、共変量Xのセットでその分布がどのように変化するかをモデリングすることに興味があります。TCC<TTバツ

区間打ち切り法を使用してこれを分析するには、データを一般的な区間打ち切り形式に入れます。つまり、被験者ごとに間隔があります。これは、T iが含まれていることがわかっている間隔を表します。したがって、検査時間c iで被験者iが正しく打ち切られた場合、c iと書きます。c iで打ち切られたままの場合、0 c iとして表します。lrTccc0c

恥知らずのプラグ:回帰モデルを使用してデータを分析する場合は、Rを使用してこれを実行できますicenReg (作成者です)。実際、現在のステータスデータに関する同様の質問で、OPはicenRegの使用の素晴らしいデモを提示しました。彼は、検閲部分を無視し、ロジスティック回帰を使用するとバイアスが生じることを示すことから始めます(重要な注意:彼は年齢を調整せずにロジスティック回帰を使用することについて言及しています。これについては後で詳しく説明します)。

もう1つの優れたパッケージにはinterval、ログランク統計テストなどのツールが含まれています。

編集:

@EdMは、ロジスティック回帰を使用して問題に答えることを提案しました。私はこれを不当に却下し、時間の機能的な形式を心配しなければならないと言った。時間の関数形式について心配する必要があるという声明を支持しますが、合理的なパラメトリック推定量につながる非常に合理的な変換が存在することに気付きました。

特に、ロジスティック回帰を使用したモデルでlog(time)を共変量として使用すると、対数ロジスティックベースラインを持つ比例オッズモデルになります。

これを確認するには、最初に比例オッズ回帰モデルが次のように定義されていることを考慮してください。

オッズt|バツβ=eバツTβオッズot

オッズott

次に、log(Time)を共変量とするロジスティック回帰を考えます。それから

PY=1|T=t=expβ0+β1ログt1+expβ0+β1ログt

少し手間をかけると、これを対数ロジスティックモデルのCDFとして見ることができます(パラメーターの非線形変換を使用)。

近似が同等であることを示すRデモンストレーション:

> library(icenReg)
> data(miceData)
> 
> ## miceData contains current status data about presence 
> ## of tumors at sacrifice in two groups
> ## in interval censored format: 
> ## l = lower end of interval, u = upper end
> ## first three mice all left censored
> 
> head(miceData, 3)
  l   u grp
1 0 381  ce
2 0 477  ce
3 0 485  ce
> 
> ## To fit this with logistic regression, 
> ## we need to extract age at sacrifice
> ## if the observation is left censored, 
> ## this is the upper end of the interval
> ## if right censored, is the lower end of interval
> 
> age <- numeric()
> isLeftCensored <- miceData$l == 0
> age[isLeftCensored] <- miceData$u[isLeftCensored]
> age[!isLeftCensored] <- miceData$l[!isLeftCensored]
> 
> log_age <- log(age)
> resp <- !isLeftCensored
> 
> 
> ## Fitting logistic regression model
> logReg_fit <- glm(resp ~ log_age + grp, 
+                     data = miceData, family = binomial)
> 
> ## Fitting proportional odds regression model with log-logistic baseline
> ## interval censored model
> ic_fit <- ic_par(cbind(l,u) ~ grp, 
+            model = 'po', dist = 'loglogistic', data = miceData)
> 
> summary(logReg_fit)

Call:
glm(formula = resp ~ log_age + grp, family = binomial, data = miceData)

Deviance Residuals: 
    Min       1Q   Median       3Q      Max  
-2.1413  -0.8052   0.5712   0.8778   1.8767  

Coefficients:
             Estimate Std. Error z value Pr(>|z|)   
(Intercept)  18.3526     6.7149   2.733  0.00627 **
log_age      -2.7203     1.0414  -2.612  0.00900 **
grpge        -1.1721     0.4713  -2.487  0.01288 * 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 196.84  on 143  degrees of freedom
Residual deviance: 160.61  on 141  degrees of freedom
AIC: 166.61

Number of Fisher Scoring iterations: 5

> summary(ic_fit)

Model:  Proportional Odds
Baseline:  loglogistic 
Call: ic_par(formula = cbind(l, u) ~ grp, data = miceData, model = "po", 
    dist = "loglogistic")

          Estimate Exp(Est) Std.Error z-value        p
log_alpha    6.603 737.2000   0.07747  85.240 0.000000
log_beta     1.001   2.7200   0.38280   2.614 0.008943
grpge       -1.172   0.3097   0.47130  -2.487 0.012880

final llk =  -80.30575 
Iterations =  10 
> 
> ## Comparing loglikelihoods
> logReg_fit$deviance/(-2) - ic_fit$llk
[1] 2.643219e-12

の効果はgrp各モデルで同じであり、最終的な対数尤度は数値誤差によってのみ異なることに注意してください。ベースラインパラメーター(つまり、ロジスティック回帰の切片とlog_age、区間打ち切りモデルのアルファとベータ)は異なるパラメーター化であるため、等しくありません。

ロジスティック回帰を使用することは、プロポーショナルオッズを対数ロジスティックベースライン分布に適合させることと同等です。このパラメトリックモデルを近似しても問題ない場合、ロジスティック回帰は非常に合理的です。私は、インターバル打ち切りデータと、セミパラメトリックモデルは、一般的に起因する評価モデルの適合の難しさに好まれていることを注意してください、しかし、私は本当に考えた場合、私は、それらを含めていないだろうフルパラメトリックモデルのための場所はありませんでしたicenReg


これは非常に役立ちそうです。あなたが指しているリソースを見て、icenRegパッケージを試してみます。ロジスティック回帰があまり適していない理由を回避しようとしています-@EdMの提案は、表面上は動作するはずのように見えます。「イベント」(ここでは子孫を持つ)が生存に影響を与える可能性があるため、バイアスは生じますか?それで、もしそれが生存を減少させるなら、我々は与えられた年齢の個人の間で、繁殖しなかった人々が過剰に表現されることを見つけるでしょうか?
user2390246

1
@ user2390246:現在のステータスデータにロジスティック回帰を使用できます。しかし、その後、年齢の機能的な形態を得るために多くの作業を行う必要があり、それは他の変数との相互作用です、正しい。これは非常に重要です。生存ベースのモデルでは、セミパラメトリックベースライン(ic_spin icenReg)を使用でき、それについてまったく心配する必要はありません。さらに、2つのグループの生存曲線を見ると、質問に正しく答えられます。ロジスティックフィットからこれを再現しようとすることできますが、ここでも、サバイバルモデルを使用するよりもはるかに多くの作業が必要です。
クリフAB

これについては@CliffABに同意します。私は、年齢への依存について適切な機能形態を得ることが難しいため、ロジスティック回帰を推奨することをためらいました。現在のステータスデータ分析の経験はありません。年齢への依存の形式がそのテクニックの大きな利点であることを理解する必要はありません。それにもかかわらず、このスレッドを後で調べる人がこれがどのように展開したかを理解できるように、私の答えを続けます。
-EdM

ここでのあなたのコメントは問題の核心であるように思えます。あなたの答えでそれを開発できれば助かります。たとえば、OPのサンプルデータを使用してLRモデルと区間打ち切り生存モデルを構築し、後者がOPの研究の質問により簡単に答える方法を示すことができれば。
GUNG -復活モニカ

1
@gung:実際、私はロジスティック回帰についてより柔軟な姿勢を取っています。これを反映するように回答を編集しました。
クリフAB

4

fバツFバツバツfバツy1FyzFzyz]FzFy


1
fバツFyFy+

4

この問題は、ロジスティック回帰によって適切に処理される可能性があるようです。

AとBの2つの状態があり、特定の個人が状態Aから状態Bに不可逆的に切り替わったかどうかの確率を調べます。1つの基本的な予測変数は、観測時の年齢です。関心のある他の因子は、追加の予測変数です。

ロジスティックモデルは、A / Bの状態、年齢、およびその他の要因の実際の観測値を使用して、これらの予測子の関数として状態Bにある確率を推定します。その確率が0.5を超える年齢を遷移時間の推定値として使用できます。その後、予測された遷移時間に対する他の要因の影響を調べます。

ディスカッションへの応答として追加されました:

他の線形モデルと同様に、予測変数は結果変数と線形関係になるように変換する必要があります。この場合、状態Bに移動した確率の対数オッズです。些細な問題。@CliffABによる答えは、年齢変数のログ変換がどのように使用されるかを示しています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.