secmalasct/utils.R
Jens Sauer c3fecc1bf0 survival: Create functions for plots
Each plot has now its own function. This makes it easier to adjust the
creation and tweaking of a single plot. sma_plot_file() will now call
the individual plot function before saveing the plot.
2020-11-16 22:38:07 +01:00

69 lines
2.3 KiB
R

# secMalASCT utilities
#
# License: GPL version 3
# Jens Mathis Sauer (c) 2020
library(tidyverse)
#
# Write plot to filename
#
# This will plot "fun" with arguments "..." as filetype "ftype" and
# the output to "filename". Title and legends can be passed as list,
# or NULL if not needed.
# Default filesize is 3000x3000 px and 300 dpi resolution.
#
sma_plot_file <- function(fname, ftype, fun) {
# Open file for writing
ftype(filename = fname, width = 3000, height = 3000, res = 300)
fun()
# hide "null device 1" in garbage
garbage <- dev.off()
}
#
# Load secMalASCT data
#
# This loads the secMalASCT data from a CSV file and adjusts some
# columns to the correct type.
#
sma_load_data <- function(file) {
sma <- as_tibble(read.csv(file, header = TRUE))
# Type adjustments
sma$follow_up_multi <- as.logical(sma$follow_up_multi)
sma$nicotin_history <- as.logical(sma$nicotin_history)
sma$relapse_treatment_asct <- as.logical(sma$relapse_treatment_asct)
sma$relapse_treatment_chemotherapy <- as.logical(sma$relapse_treatment_chemotherapy)
sma$relapse_treatment_radiotherapy <- as.logical(sma$relapse_treatment_radiotherapy)
sma$relapse_treatment_surgery <- as.logical(sma$relapse_treatment_surgery)
sma$pre_rt <- as.logical(sma$pre_rt)
sma$pre_rt_type <- as.factor(sma$pre_rt_type)
sma$post_rt <- as.logical(sma$post_rt)
sma$post_rt_type <- as.factor(sma$post_rt_type)
sma$pre_alkylating_agents <- as.logical(sma$pre_alkylating_agents)
sma$pre_topoisomerase <- as.logical(sma$pre_topoisomerase)
sma$pre_anthracyclines <- as.logical(sma$pre_anthracyclines)
sma$peri_alkylating_agents <- as.logical(sma$peri_alkylating_agents)
sma$peri_topoisomerase <- as.logical(sma$peri_topoisomerase)
sma$peri_anthracyclines <- as.logical(sma$peri_anthracyclines)
sma$post_alkylating_agents <- as.logical(sma$post_alkylating_agents)
sma$post_topoisomerase <- as.logical(sma$post_topoisomerase)
sma$post_anthracyclines <- as.logical(sma$post_anthracyclines)
sma$maintenance_treatment <- as.logical(sma$maintenance_treatment)
sma$maintenance_treatment_time <- as.integer(sma$maintenance_treatment_time)
sma$maintenance_treatment_type <- as.factor(sma$maintenance_treatment_type)
sma$thalidomid <- as.logical(sma$thalidomid)
sma$bortezomib <- as.logical(sma$bortezomib)
return(sma)
}