我可以把无任务数据包括在R中吗



我目前正在对发布在的数据集的前312行进行生存分析

删除丢失的数据值

我检查丢失的数据,这就是R返回的数据:

> apply(surv.df, 2, function(x) length(which(is.na(x))))
V2  V3  V4  V5  V6  V7  V8  V9 V10 V11 V12 V13 V14 V15 V16 V17 V18 V19 V20 
0   0   0   0   0   0   0   0   0   0  28   0   2   0   0  30   4   0   0

当我进行Cox回归分析时,我得到以下结果:

Call:
coxph(formula = Surv(Time, Status == 1) ~ log(V5) + V10 + log(V11) + 
log(V13) + V14 + V16 + log(V19) + V20, data = surv.df)
n= 310, number of events= 124 
(2 observations deleted due to missingness)
coef  exp(coef)   se(coef)      z Pr(>|z|)    
log(V5)   1.6977282  5.4615258  0.4920161  3.451 0.000559 ***
V10       0.8223583  2.2758606  0.3032572  2.712 0.006693 ** 
log(V11)  0.7103807  2.0347658  0.1204626  5.897  3.7e-09 ***
log(V13) -2.3728128  0.0932182  0.7746120 -3.063 0.002190 ** 
V14       0.0018932  1.0018950  0.0009783  1.935 0.052967 .  
V16       0.0030053  1.0030098  0.0017212  1.746 0.080804 .  
log(V19)  2.8071931 16.5633615  1.1514466  2.438 0.014770 *  
V20       0.2898083  1.3361713  0.1392896  2.081 0.037469 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
exp(coef) exp(-coef) lower .95 upper .95
log(V5)    5.46153    0.18310   2.08214   14.3258
V10        2.27586    0.43939   1.25607    4.1236
log(V11)   2.03477    0.49146   1.60685    2.5766
log(V13)   0.09322   10.72752   0.02042    0.4255
V14        1.00189    0.99811   0.99998    1.0038
V16        1.00301    0.99700   0.99963    1.0064
log(V19)  16.56336    0.06037   1.73395  158.2201
V20        1.33617    0.74841   1.01695    1.7556
Concordance= 0.859  (se = 0.017 )
Likelihood ratio test= 211.3  on 8 df,   p=<2e-16
Wald test            = 205.9  on 8 df,   p=<2e-16
Score (logrank) test = 281.9  on 8 df,   p=<2e-16

有没有办法保留数据集中缺失的2行?

这导致了另一个问题:我试图绘制Martingale残差,但我无法绘制,因为有310个残差,V11变量胆红素有312个观测值,因此无法绘制。

建议?

你可能在谈论你得到的这个按摩:

(2个观测因缺失而删除(

如表所示:

apply(surv.df, 2, function(x) length(which(is.na(x))))
V2  V3  V4  V5  V6  V7  V8  V9 V10 V11 V12 V13 V14 V15 V16 V17 V18 V19 V20 
0   0   0   0   0   0   0   0   0   0  28   0   2   0   0  30   4   0   0

V17中缺少30个值,V12中缺少28个值,但由于V17或V12都不是您的模型/部分公式中的回归器,因此这些都没有问题。

呼叫:coxph(公式=Surv(时间,状态==1(~ log(V5(+V10+log(V11(+log(V13(+V14+V16+log(V19(+V20,数据=surv.df(

V14是您的调用/公式的一部分,它缺少2个值-这就是出现警告的原因。

这并不一定太糟糕,这两个观察结果被删除了。如果你不想这样,你可以从你的配方中删除V14。或者你可以进行一些插补,用合理的值替换这些缺失的值。(也许鼠标包可以帮上忙(。

最新更新