假设我有一个终生数据集,比如肾脏数据。有一些协变量年龄,性别,疾病。性别有 2 个类别(F、M),疾病有 4 个类别(其他、GN、AN、PKD)。我想估计 Cox 比例风险模型的参数。年龄、性别、GN、AN、PKD有5个参数。我正在尝试这样。我怎样才能最大化这个功能?
library(survival)
dat <- kidney
head(kidney)
# id time status age sex disease frail
# 1 1 8 1 28 1 Other 2.3
# 2 1 16 1 28 1 Other 2.3
# 3 2 23 1 48 2 GN 1.9
# 4 2 13 0 48 2 GN 1.9
# 5 3 22 1 32 1 Other 1.2
# 6 3 28 1 32 1 Other 1.2
......................................
偏似然函数
logPL <- function( par, time, status, cov ){
data <- data.frame( time, status, cov)
data <- data[order(data$time, decreasing=T),]
risk.score <- data.matrix(data[,-c(1:2)]) %*% par
PL1 <- risk.set
PL2 <- log(cumsum(exp(risk.set)))
PL <- sum(data$status*(PL1-PL2))
return(-PL)}