Last data update: 2014.03.03

R: Get model data
getModelData4ForestplotR Documentation

Get model data

Description

A helper function for forestplotCombineRegrObj. Extracts the data from the regression model fits and returns a list with model data gathered by the function prGetFpDataFromFit

Usage

getModelData4Forestplot(regr.obj, exp = TRUE, variablesOfInterest.regexp,
  ref_labels, add_first_as_ref)

Arguments

regr.obj

A list with all the fits that have variables that are to be identified through the regular expression

exp

Report in exponential form. Default true since the function was built for use with survival models.

variablesOfInterest.regexp

A regular expression identifying the variables that are of interest of comparing. For instance it can be "(score|index|measure)" that finds scores in different models that should be compared.

ref_labels

If add_first_as_ref is TRUE then this vector is used for the model fits.

add_first_as_ref

If you want that the first variable should be reference for that group of variables. The ref is a variable with the estimate 1 or 0 depending if exp() and the confidence interval 0.

Examples

org.par <- par("ask" = TRUE)

# simulated data to test 
set.seed(10)
ftime <- rexp(200)
fstatus <- sample(0:1,200,replace=TRUE)
cov <- data.frame(
  x1 = runif(200),
  x2 = runif(200),
  x3 = runif(200))

library(rms)
ddist <- datadist(cov)
options(datadist = "ddist")

fit1 <- cph(Surv(ftime, fstatus) ~ x1 + x2, data=cov)
fit2 <- cph(Surv(ftime, fstatus) ~ x1 + x3, data=cov)

forestplotCombineRegrObj (
  regr.obj = list(fit1, fit2),
  variablesOfInterest.regexp = "(x2|x3)",
  reference.names = c("First model", "Second model"),
  new_page = TRUE)

modifyNameFunction <- function(x){
  if (x == "x1")
    return ("Covariate A")
  
  if (x == "x2")
    return (expression(paste("My ", beta[2])))
  
  return (x)
}

forestplotCombineRegrObj (
  regr.obj = list(fit1, fit2),
  variablesOfInterest.regexp = "(x2|x3)",
  reference.names = c("First model", "Second model"),
  rowname.fn = modifyNameFunction,
  new_page = TRUE)

par(org.par)

Results


R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(Greg)
Loading required package: forestplot
Loading required package: grid
Loading required package: magrittr
Loading required package: Gmisc
Loading required package: Rcpp
Loading required package: htmlTable
> png(filename="/home/ddbj/snapshot/RGM3/R_CC/result/Greg/getModelData4Forestplot.Rd_%03d_medium.png", width=480, height=480)
> ### Name: getModelData4Forestplot
> ### Title: Get model data
> ### Aliases: getModelData4Forestplot
> ### Keywords: internal
> 
> ### ** Examples
> 
> org.par <- par("ask" = TRUE)
> 
> # simulated data to test 
> set.seed(10)
> ftime <- rexp(200)
> fstatus <- sample(0:1,200,replace=TRUE)
> cov <- data.frame(
+   x1 = runif(200),
+   x2 = runif(200),
+   x3 = runif(200))
> 
> library(rms)
Loading required package: Hmisc
Loading required package: lattice
Loading required package: survival
Loading required package: Formula
Loading required package: ggplot2

Attaching package: 'Hmisc'

The following objects are masked from 'package:base':

    format.pval, round.POSIXt, trunc.POSIXt, units

Loading required package: SparseM

Attaching package: 'SparseM'

The following object is masked from 'package:base':

    backsolve

> ddist <- datadist(cov)
> options(datadist = "ddist")
> 
> fit1 <- cph(Surv(ftime, fstatus) ~ x1 + x2, data=cov)
> fit2 <- cph(Surv(ftime, fstatus) ~ x1 + x3, data=cov)
> 
> forestplotCombineRegrObj (
+   regr.obj = list(fit1, fit2),
+   variablesOfInterest.regexp = "(x2|x3)",
+   reference.names = c("First model", "Second model"),
+   new_page = TRUE)
> 
> modifyNameFunction <- function(x){
+   if (x == "x1")
+     return ("Covariate A")
+   
+   if (x == "x2")
+     return (expression(paste("My ", beta[2])))
+   
+   return (x)
+ }
> 
> forestplotCombineRegrObj (
+   regr.obj = list(fit1, fit2),
+   variablesOfInterest.regexp = "(x2|x3)",
+   reference.names = c("First model", "Second model"),
+   rowname.fn = modifyNameFunction,
+   new_page = TRUE)
> 
> par(org.par)
> 
> 
> 
> 
> 
> dev.off()
null device 
          1 
>