Biostatistics

僅知道最小值/最大值的數據的統計方法

  • March 18, 2016

是否有一個統計分支可以處理精確值未知的數據,但對於每個個體,我們知道該值的最大值或最小值

我懷疑我的問題主要源於我在努力用統計術語表達它,但希望一個例子有助於澄清:

假設有兩個相連的種群和這樣,在某些時候,成員可能“過渡”成,但反過來是不可能的。轉換的時間是可變的,但不是隨機的。例如,可能是“沒有後代的個體”和“至少有一個後代的個人”。我對這種進展發生的年齡感興趣,但我只有橫截面數據。對於任何給定的個人,我可以找出他們是否屬於或者. 我也知道這些人的年齡。對於人口中的每個人,我知道過渡的年齡將大於他們當前的年齡。同樣,對於成員,我知道過渡的年齡小於他們現在的年齡。但我不知道確切的值。

假設我有一些其他因素想與過渡年齡進行比較。例如,我想知道一個人的亞種或體型是否會影響第一個後代的年齡。我肯定有一些有用的信息可以為這些問題提供信息:平均而言,, 年長者會有較晚的過渡期。但信息不完善,尤其是對於年輕人而言。人口反之亦然.

是否有既定的方法來處理此類數據?我不一定需要如何進行這種分析的完整方法,只需要一些搜索詞或有用的資源就可以讓我在正確的地方開始!

警告:我正在做一個簡化的假設,即從到是瞬時的。我還準備假設大多數人會在某個時候進步到,假設他們活得足夠長。而且我意識到縱向數據會非常有用,但假設在這種情況下它不可用。

抱歉,如果這是重複的,正如我所說,我的部分問題是我不知道我應該搜索什麼。出於同樣的原因,請酌情添加其他標籤。

樣本數據集:Ssp 表示兩個亞種之一,或者. 後代表示沒有後代() 或至少一個後代 ()

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

編輯:示例數據集已更改,因為它不是很有代表性

這稱為當前狀態數據。您獲得了數據的一個橫截面視圖,並且關於響應,您所知道的是,在每個受試者的觀察年齡,事件(在您的情況下:從 A 過渡到 B)已經發生或未發生。這是區間刪失的一個特例。

為了正式定義它,讓是對象的(未觀察到的)真實事件時間. 讓主題檢查時間(在您的情況下:檢查年齡)。如果, 數據是右刪失的。否則,數據將被刪失。我們對建模的分佈很感興趣. 對於回歸模型,我們感興趣的是建模該分佈如何隨一組協變量變化.

要使用區間刪失方法對此進行分析,您需要將數據放入一般區間刪失格式。也就是說,對於每個主題,我們都有區間,它表示我們知道的區間被包含。所以如果主題在檢查時正確審查,我們會寫. 如果它被審查在,我們將其表示為.

無恥插件:如果你想使用回歸模型來分析你的數據,這可以在 R 中使用icenReg (我是作者)來完成。事實上,在關於當前狀態數據的類似問題中,OP 提供了一個很好的使用 icenReg 的演示。他首先表明忽略審查部分並使用邏輯回歸會導致偏差(重要說明:他指的是使用邏輯回歸而不調整年齡。稍後會詳細介紹。)

另一個很棒的包是interval,其中包含對數秩統計測試以及其他工具。

編輯:

@EdM 建議使用邏輯回歸來回答問題。我不公平地對此不屑一顧,說您將不得不擔心時間的功能形式。雖然我支持你應該擔心時間的函數形式的說法,但我意識到有一個非常合理的轉換可以導致一個合理的參數估計量。

特別是,如果我們在邏輯回歸模型中使用 log(time) 作為協變量,我們最終會得到一個具有 log-logistic 基線的比例優勢模型。

要看到這一點,首先考慮比例優勢回歸模型定義為

在哪裡是當時的基線生存機率. 請注意,回歸效果與邏輯回歸相同。所以我們現在需要做的就是證明基線分佈是對數邏輯的。

現在考慮以 log(Time) 作為協變量的邏輯回歸。然後我們有

通過一些工作,您可以將其視為對數邏輯模型的 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,區間刪失模型的 alpha 和 beta)是不同的參數化,因此它們不相等。

所以你有它:使用邏輯回歸相當於用對數邏輯基線分佈擬合比例賠率。如果您可以擬合此參數模型,則邏輯回歸是非常合理的。我確實警告說,對於區間刪失數據,由於難以評估模型擬合,半參數模型通常受到青睞,如果我真的認為沒有完全參數模型的位置,我不會將它們包含在icenReg.

引用自:https://stats.stackexchange.com/questions/202348

comments powered by Disqus