Hi all,

I'm very confused!  I've been using the same code for many weeks without any
bother for various covariates.  I'm now looking at another covaraite and
whenever I run the code you can see below I get an error message: "Error in
rep(0, nrow(data)) : invalid 'times' argument"

This code works:
# remove 'missing' cases from data #
snearma <- function(data)
    {
    for(i in 1:nrow(data)){
    if(is.na(data$all.sp)[i])
    data$all.sp[i]<-0
    if(is.na(data$all.cp)[i])
    data$all.cp[i]<-0
    if(is.na(data$all.scgtc)[i])
    data$all.scgtc[i]<-0
    if(is.na(data$all.tc)[i])
    data$all.tc[i] <- 0
    if(is.na(data$all.ta)[i])
    data$all.ta[i] <- 0
    if(is.na(data$all.aa)[i])
    data$all.aa[i] <- 0
    if(is.na(data$all.m)[i])
    data$all.m[i] <- 0
    if(is.na(data$all.otc)[i])
    data$all.otc[i] <- 0
    if(is.na(data$all.o)[i])
    data$all.o[i] <- 0
    }
    dummy <- rep(0,nrow(data))
    for(i in 1:nrow(data)){
    if(data$all.sp[i]==0 && data$all.cp[i]==0 && data$all.scgtc[i]==0 &&
data$all.tc[i]==0 && data$all.ta[i]==0 && data$all.aa[i]==0 &&
data$all.m[i]==0 & data$all.otc[i]==0 && data$all.o[i]==0)
    dummy[i] <- i
    }
    return(data[-dummy,])
    }
# create smaller dataset with missing cases removed #
nmarma <- snearma(nearma)
# create short stratification variable #
nmrpa <- randp(nmarma)
# create censoring variable for the covariate #
stypea <- function(data)
    {
    for(i in 1:nrow(data)){
    if(is.na(data$all.sp)[i])
    data$all.sp[i]<-0
    if(is.na(data$all.cp)[i])
    data$all.cp[i]<-0
    if(is.na(data$all.scgtc)[i])
    data$all.scgtc[i]<-0
    if(is.na(data$all.tc)[i])
    data$all.tc[i] <- 0
    if(is.na(data$all.ta)[i])
    data$all.ta[i] <- 0
    if(is.na(data$all.aa)[i])
    data$all.aa[i] <- 0
    if(is.na(data$all.m)[i])
    data$all.m[i] <- 0
    if(is.na(data$all.otc)[i])
    data$all.otc[i] <- 0
    if(is.na(data$all.o)[i])
    data$all.o[i] <- 0
    }
    stype <- rep(0,nrow(data))
    for(i in 1:nrow(data)){
    if(data$all.type[i]=="P" && data$all.sp[i]>=1 && data$all.scgtc[i] == 0)
    stype[i] <- 1
    if(data$all.type[i]=="P" && data$all.cp[i]>=1 && data$all.scgtc[i] == 0)
    stype[i] <- 1
    if(data$all.type[i]=="P" && data$all.scgtc[i]>=1)
    stype[i] <- 2
    if(data$all.type[i]=="P" && data$all.sp[i]==0 && data$all.cp[i]==0 &&
data$all.scgtc[i]==0 && data$all.otc[i]==0 && data$all.o[i]==0)
    stype[i] <- 2
    if(data$all.type[i]=="G" && data$all.tc[i]>=1 && data$all.m[i]==0 &&
data$all.ta[i]==0 & data$all.aa[i]==0)
    stype[i] <- 3
    if(data$all.type[i]=="G" && data$all.m[i]>=1 && data$all.tc[i]==0)
    stype[i] <- 3
    if(data$all.type[i]=="G" && data$all.ta[i]>=1 && data$all.tc[i]==0)
    stype[i] <- 3
    if(data$all.type[i]=="G" && data$all.aa[i]>=1 && data$all.tc[i]==0)
    stype[i] <- 3
    if(data$all.type[i]=="G" && data$all.m[i]>=1 && data$all.tc[i]>=1)
    stype[i] <- 3
    if(data$all.type[i]=="G" && data$all.ta[i]>=1 && data$all.tc[i]>=1)
    stype[i] <- 3
    if(data$all.type[i]=="G" && data$all.aa[i]>=1 && data$all.tc[i]>=1)
    stype[i] <- 3
    if(data$all.otc[i]>=1)
    stype[i] <- 4
    if(data$all.o[i]>=1)
    stype[i] <- 4
    }
    return(stype)
    }
fita <-
survdiff(Surv(rem.Remtime,rem.Rcens)~stypea(nmarma)+strata(nmrpa),data=nmarma)
fita
lrpvalue=1-pchisq(fita$chisq,3)
xx <-
cuminc(nmarma$rem.Remtime/365,nmarma$rem.Rcens,stypea(nmarma),strata=nmrpa)
plot(xx,curvlab=c("Simple/Complex","SC+2gentc or 2gentc","TC or My/Ab or
My/Ab+gentc","Other"),lty=1,color=c(2:5),xlab="Time from randomisation
(years)",ylab="Probability of 12-month remission",main="Time to 12-month
remission",wh=c(2.0,0.4))
text(4,0.5,cex=0.85,paste("Log-rank
test=",round(fita$chisq,3),"p-value=",round(lrpvalue,3)))

whereas this doesn't:
par <- function(data)
    {
    dummy <- rep(0,nrow(data))
    for(i in 1:nrow(data)){
    if(is.na(data$all.frontlob)[i] && is.na(data$all.templob)[i] &&
is.na(data$all.parlob)[i]
&& is.na(data$all.occlob)[i] && is.na(data$all.notspec)[i])
    dummy[i]<- i
    }
    for(i in 1:nrow(data)){
    if(is.na(data$all.frontlob)[i])
    data$all.frontlob[i] <- "N"
    if(is.na(data$all.templob)[i])
    data$all.templob[i] <- "N"
    if(is.na(data$all.parlob)[i])
    data$all.parlob[i] <- "N"
    if(is.na(data$all.occlob)[i])
    data$all.occlob[i] <- "N"
    if(is.na(data$all.notspec)[i])
    data$all.notspec[i] <- "N"
    }
    for(i in 1:nrow(data)){
    if(data$all.frontlob[i]=="N" && data$all.templob[i]=="N" &&
data$all.parlob[i]=="N" && data$all.occlob[i]=="N" &&
data$all.notspec[i]=="N")
    dummy[i] <- i
    if(data$all.frontlob[i]=="Y" && data$all.parlob[i]=="Y")
    dummy[i] <- i
    }
    return(data[-dummy,])
    }
shortpar <- par(nearma)
shortrpa <- randp(shortpar)
lobe <- function(data)
    {
    for(i in 1:nrow(data)){
    if(is.na(data$all.frontlob)[i])
    data$all.frontlob[i] <- "N"
    if(is.na(data$all.templob)[i])
    data$all.templob[i] <- "N"
    if(is.na(data$all.occlob)[i])
    data$all.occlob[i] <- "N"
    if(is.na(data$all.parlob)[i])
    data$all.parlob[i] <- "N"
    if(is.na(data$all.notspec)[i])
    data$all.notspec[i] <- "N"
    }
    lobe <- rep(0,nrow(data))
    for(i in 1:nrow(data)){
    if(data$all.frontlob[i]=="Y")
    lobe[i] <- 2
    if(data$all.templob[i]=="Y")
    lobe[i] <- 1
    if(data$all.occlob[i]=="Y")
    lobe[i] <- 3
    if(data$all.parlob[i]=="Y")
    lobe[i] <- 3
    if(data$all.notspec[i]=="Y")
    lobe[i] <- 3
    }
    return(lobe)
    }
fit1 <-
survdiff(Surv(rem.Remtime,rem.Rcens)~lobe(shortpar)+strata(shortrpa),data=shortpar)
fit1
lrpvalue=1-pchisq(fit1$chisq,2)
xx <-
cuminc(shortpar$rem.Remtime/365,shortpar$rem.Rcens,lobe(shortpar),strata=shortrpa)
plot(xx,curvlab=c("Temporal", "Frontal", "Par./Occ./Other"), lty=1,
color=c(2:4), xlab="Time from randomisation (years)", ylab="Probability of
12-month remission")
text(4,0.1,cex=0.85,paste("Log-rank test=", round(fit1$chisq,3),"p-value=",
round(lrpvalue,3)))

which makes me think it is a problem with the data but I can't work out what
that problem is so I'd appreciate any suggestions anyone has to offer!

Thank you,

Laura

	[[alternative HTML version deleted]]


