R/pl_formula.R

Defines functions pl_formula

pl_formula <-
function(bwreg){
  
  rh <- rhs.vars(bwreg$formula)
  bwnames <- unlist(lapply(bwreg$smooth, function(x)x$term))
  txt <- ""
  for(i in seq_along(rh)){
    if(any(strsplit(rh[i], "")[[1]] == "(")){
      var <- call_args(str2lang(rh[i]))[[1]]
      txt <- paste0(txt,"rb(", var,", B_size = bwreg$smooth[[",which(bwnames==var),"]]$bs.dim-2)")
    }else{
      txt <- paste0(txt,rh[i])
    }
    if( i != length(rh)){
      txt <- paste(txt,"+")
    }
  }
  nrows <- nrow(bwreg$model)
  return(as.formula(paste("Surv(",lhs(bwreg$formula),", rep(1,",nrows,")) ~", txt)))
}

Try the dirttee package in your browser

Any scripts or data that you put into this service are public.

dirttee documentation built on Sept. 14, 2022, 5:06 p.m.