Similar to other predict methods, this function returns predictions from a
fitted "ncvsurv"
object.
Fitted "ncvsurv"
model object.
Matrix of values at which predictions are to be made. Not used for
type="coefficients"
or for some of the type
settings in
predict
.
Type of prediction: "link"
returns the linear predictors;
"response"
gives the risk (i.e., exp(link)); "survival"
returns the estimated survival function; "median"
estimates median
survival times. The other options are all identical to their ncvreg
counterparts: "coefficients"
returns the coefficients; "vars"
returns a list containing the indices and names of the nonzero variables at
each value of lambda
; "nvars"
returns the number of nonzero
coefficients at each value of lambda
.
Values of the regularization parameter lambda
at which
predictions are requested. For values of lambda
not in the sequence
of fitted models, linear interpolation is used.
Indices of the penalty parameter lambda
at which
predictions are required. By default, all indices are returned. If
lambda
is specified, this will override which
.
Not used.
The object returned depends on type.
Estimation of baseline survival function conditional on the estimated values
of beta
is carried out according to the method described in Chapter
4.3 of Kalbfleish and Prentice. In particular, it agrees exactly the
results returned by survfit.coxph(..., type='kalbfleisch-prentice')
in the survival
package.
Breheny P and Huang J. (2011) Coordinate descentalgorithms for nonconvex penalized regression, with applications to biological feature selection. Annals of Applied Statistics, 5: 232-253. c("\Sexpr[results=rd]tools:::Rd_expr_doi(\"#1\")", "10.1214/10-AOAS388")doi:10.1214/10-AOAS388
Kalbfleish JD and Prentice RL (2002). The Statistical Analysis of Failure Time Data, 2nd edition. Wiley.
data(Lung)
X <- Lung$X
y <- Lung$y
fit <- ncvsurv(X,y)
coef(fit, lambda=0.05)
#> trt karno diagtime age prior squamous
#> 0.271657331 -0.031750420 0.000000000 -0.004227748 0.000000000 -0.852920353
#> small adeno large
#> 0.000000000 0.261188132 -0.466335148
head(predict(fit, X, type="link", lambda=0.05))
#> 1 2 3 4 5 6
#> -2.778003 -3.074368 -2.646943 -2.752636 -3.078596 -1.423431
head(predict(fit, X, type="response", lambda=0.05))
#> 1 2 3 4 5 6
#> 0.06216253 0.04621881 0.07086755 0.06375954 0.04602382 0.24088609
# Survival function
S <- predict(fit, X[1,], type="survival", lambda=0.05)
S(100)
#> [1] 0.9421869
S <- predict(fit, X, type="survival", lambda=0.05)
plot(S, xlim=c(0,200))
# Medians
predict(fit, X[1,], type="median", lambda=0.05)
#> [1] 999
M <- predict(fit, X, type="median")
M[1:10, 1:10]
#> [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
#> [1,] 80 103 122 151 177 231 278 340 384 411
#> [2,] 80 110 133 162 231 283 357 392 467 587
#> [3,] 80 103 122 151 177 231 278 340 384 411
#> [4,] 80 103 122 151 177 231 278 340 384 411
#> [5,] 80 110 133 162 231 283 357 392 467 587
#> [6,] 80 87 92 95 100 105 111 111 117 126
#> [7,] 80 95 105 117 132 144 156 177 201 242
#> [8,] 80 111 144 201 278 378 392 553 587 991
#> [9,] 80 99 112 133 153 177 216 250 283 357
#> [10,] 80 110 133 162 231 283 357 392 467 587
# Nonzero coefficients
predict(fit, type="vars", lambda=c(0.1, 0.01))
#> $`0.1000`
#> trt karno squamous adeno large
#> 1 2 6 8 9
#>
#> $`0.0100`
#> trt karno age prior squamous adeno large
#> 1 2 4 5 6 8 9
#>
predict(fit, type="nvars", lambda=c(0.1, 0.01))
#> 0.1000 0.0100
#> 5 7