set.seed(0)
b <- c(2,2,2,-3*sqrt(2))
n=150
p=200
truerho=0.5
corrmat=diag(rep(1-truerho, p))+matrix(truerho, p, p)
corrmat[,4]=sqrt(truerho)
corrmat[4, ]=sqrt(truerho)
corrmat[4,4]=1
cholmat=chol(corrmat)
x=matrix(rnorm(n*p, mean=0, sd=1), n, p)
x=x%*%cholmat
feta=x[, 1:4]%*%b
fprob=exp(feta)/(1+exp(feta))
y=rbinom(n, 1, fprob)
xtune=matrix(rnorm(n*p, mean=0, sd=1), n, p)
xtune=xtune%*%cholmat
feta=xtune[, 1:4]%*%b
fprob=exp(feta)/(1+exp(feta))
ytune=rbinom(n, 1, fprob)
binom.result1=SIS(data=list(x=x, y=y), family=binomial(), xtune=xtune, ytune=ytune)
binom.result2=SIS(data=list(x=x, y=y), family=binomial(), xtune=xtune, ytune=ytune,
vartype=1)
binom.result3=SIS(data=list(x=x, y=y), family=binomial(), xtune=xtune, ytune=ytune,
vartype=2)
myrates <- exp(x[,1:4]%*%b)
ytrue <- rexp(n, rate = myrates)
cen <- rexp(n, rate = 0.1 )
time <- pmin(ytrue, cen)
status <- as.numeric(ytrue <= cen)
cox.result1=SIS(data=list(x=x,time=time,status=status), model='cox', vartype=0)
cox.result2=SIS(data=list(x=x,time=time,status=status), model='cox', vartype=1)
cox.result3=SIS(data=list(x=x,time=time,status=status), model='cox', vartype=2)
Run the code above in your browser using DataLab