[R] Predicted Cox survival curves - factor coding problems... I am trying to use the survfit() function with the newdata argument to  produce predicted survivor curves for a particular covariate profile. The main purpose of the plot will be to visualise the effect of snp1,  coded 0 and 1. In my Cox model I have stratified by one variable, edu, and  so I know I will automatically get a separate curve for each strata. My  problem is how to deal with the variable sitenew, which is a 3 level  factor (coded 0,1,2). coxsnps$edu <- as.factor(coxsnps$edu) coxsnps$sitenew <- as.factor(coxsnps$sitenew) test1 <- coxph(Surv(time,censor) ~ snp1 + sex + sitenew + geno + eth_self  + strata(edu), data=coxsnps)                         coef exp(coef) se(coef)      z       p         snp1             -0.4324     0.649   0.1073 -4.031 5.5e-05         sex           0.0604     1.062   0.0915  0.660 5.1e-01         sitenew1      0.5128     1.670   0.1381  3.712 2.1e-04         sitenew2      0.2688     1.308   0.1313  2.047 4.1e-02         geno          0.9702     2.639   0.0663 14.630 0.0e+00         eth_self      0.0871     1.091   0.1088  0.801 4.2e-01 profile1 <- data.frame(snp1=factor(c(0,1), levels=c("0", "1")), sex=0,  sitenew=0, geno=0, eth_self=0) plot(survfit(test1, newdata=profile1)) Putting sitenew=0 in the dataframe produces the error          Error in x2 %*% coef : non-conformable arguments implying the rows and columns of the matrices don't match up. This makes  sense as R creates dummy variables for sitenew. I naively tried using  sitenew1=0, sitenew2=0 in the dataframe instead, which produced the same  error message. Is there a way to produce curves by edu and snp1 but just one level of  sitenew? If not, what would be the procedure for producing curves for all of them  (for reference)? Many thanks, Sally ----------------------------------------------------------- This e-mail was sent by GlaxoSmithKline Services Unlimited  (registered in England and Wales No. 1047315), which is a  member of the GlaxoSmithKline group of companies. The  registered address of GlaxoSmithKline Services Unlimited  is 980 Great West Road, Brentford, Middlesex TW8 9GS. ----------------------------------------------------------- 	[[alternative HTML version deleted]] ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.