Search tips
Search criteria 


Logo of f1000resSubmitAuthor GuidelinesAboutAdvisory PanelF1000ResearchView this article
Version 2. F1000Res. 2017; 6: 919.
Published online 2017 July 31. doi:  10.12688/f1000research.11830.2
PMCID: PMC5580407
Other versions

CASAS: Cancer Survival Analysis Suite, a web based application

Manali Rupji, Software, Writing – Original Draft Preparation, Writing – Review & Editing,1 Xinyan Zhang, Software, Writing – Original Draft Preparation, Writing – Review & Editing,1 and Jeanne Kowalski, Conceptualization, Resources, Software, Writing – Review & Editinga,1,2


We present CASAS, a shiny R based tool for interactive survival analysis and visualization of results. The tool provides a web-based one stop shop to perform the following types of survival analysis:  quantile, landmark and competing risks, in addition to standard survival analysis.  The interface makes it easy to perform such survival analyses and obtain results using the interactive Kaplan-Meier and cumulative incidence plots.  Univariate analysis can be performed on one or several user specified variable(s) simultaneously, the results of which are displayed in a single table that includes log rank p-values and hazard ratios along with their significance. For several quantile survival analyses from multiple cancer types, a single summary grid is constructed. The CASAS package has been implemented in R and is available via The developmental repository is available at

Keywords: survival, quantile survival, landmark, competing risk


Kaplan-Meier (KM) estimates and the Cox Proportional Hazards model have gained huge popularity among clinicians when depicting survival trends and in identifying prognostic biomarkers in cancer research. There is a range of commercial software (SAS, STATA, SPSS, PRISM) available for researchers to carry out survival analysis. However, these programs have several disadvantages; commercial software is proprietary and involves restricted usage with rigid outputs, which cannot be changed easily. Open source software such as R is gaining popularity, but the user needs to learn programming skills, which may be very time consuming for clinicians and biomedical researchers with limited programming exposure.

Standard survival analysis involves a single cause of failure. However, in other cases, clinicians may encounter many other causes of failure in addition to a specific cause of interest. In such cases, a competing risk analysis needs to be carried out, where an individual is exposed to two or more causes of failure but its eventual failure is due to only one cause. While several packages are available to conduct competing risk survival analysis in R, making the right choice presents another layer of confusion to the user.

As opposed to traditional KM or Cox regression analysis, typically a risk factor measured at baseline is examined for its association with survival thereafter. During follow-up, however, things may have changes, such that either the effect of a fixed baseline risk factor may vary over time, resulting in a weakening or strengthening of associations over time or the risk factor itself may vary over time. In the former case, such as effect is often seen in what appears to be significant differences in survival, not necessarily overall and among all survival times, but early on or at later survival times. We address such time-dependent effects on survival by creating two additional tools, one for landmark 1 and another for quantile survival analysis 2, 3. As an example, the user may want to study the effect of chemotherapy on a specific cancer population and thus divides the data into a responder vs a non-responder group. The issue with this approach is that the responder cannot be deemed one, unless they survive until the time of response. In addition, being in the responder group gives them an unfair survival advantage leading to an immortal time bias. To overcome these issues, the investigator may need to perform a landmark analysis by removing the patients with an event (or censored) before the landmark time from the analysis.

Most tools are available as separate packages. As an alternative, CASAS provides a comprehensive survival analysis suite of tools commonly encountered in cancer research. By providing a GUI interface, the user can readily perform any number of these analyses by simply uploading their data and selecting the variables relevant to the analysis.

In summary, CASAS suite of tools is a one-stop shop for conducting some of the most common survival analyses in cancer research without requiring any prior programming knowledge. It is a web-based application that, as a single tool, can carry out KM plot, univariate hazard ratio, landmark analysis, quantile survival analysis and competing risk analysis. It allows a user to combine results from various studies or cancer types as well.


KM survival analysis

Standard survival analysis uses the TCGA BRCA data for 553 patients that underwent radiotherapy 4 and uses the ‘survminer’ package to display the KM plots. Either categorical or continuous variables can be used for stratification. Continuous variables can be dichomotimized by either the 25 th, 50 th, 75 th percentile or an optimal cut point. A log-rank test is used to estimate the overall differences between the survival curves ( Figure 1). A single overall survival curve without stratification can be plotted using the ‘All patients’ option. The user can also test for validity of the proportional hazards assumption (a non-significant Schoenfeld residual test p-value based on the cox.zph function in the ‘survival’ package) in the univariate survival analysis tab.

Figure 1.

An external file that holds a picture, illustration, etc.
Object name is f1000research-6-13225-g0000.jpg
Kaplan-Meier (KM) survival analysis plot.

The interface shows an example KM plot using TCGA BRCA data with patients who received radiotherapy 4. The left side comprises a user menu and the right includes the result plots/tables. The KM plot is interactive and will change depending on the categorical variable selected. Continuous data can be divided using 25 th percentile, 50 th percentile, and 75 th percentile or the user may opt to use an optimal cut point based on martingale residuals using the ‘survMisc’ package (also available with plot in a separate tab). The user could alternatively choose the “All patients” drop down. If the user selects the ‘All patients’ dropdown, a single KM curve is created using all the data instead of two separate KM curves by the categorical variable of interest. User could also choose to output the number of patients at risk. Univariate survival association analysis based on cox proportional hazards model, can be output by entering one variable in the model each time. Multiple variables can be selected to generate the output table. In addition, the user can also test for the proportional hazard assumption by selecting “Test for Proportional Hazards Assumption” as “Yes”. An additional column with the p-value for Proportional Hazards Assumption will be displayed as the rightmost column.

Competing risk survival analysis

Competing risk survival analysis is based on Fine and Gray’s Model 5, using the ‘cmprsk’ package in R. To illustrate, 35 AML/ALL patient’s data who underwent Hematopoietic stem cell transplantation (HSCT) affected by either AML or ALL 6 are used. Cumulative incidence plot was plotted using CumIncidence.R function available in the package. This tool also displays the Gray’s p-value based on the competing risk code ( Figure 2). Either categorical or continuous group variables/‘All patients’ can be used.

Figure 2.

An external file that holds a picture, illustration, etc.
Object name is f1000research-6-13225-g0001.jpg
Competing risk analysis.

This tab includes competing risk analysis using the BMT data ( The left panel includes options to select variables for univariate survival association analysis based on Fine and Gray’s model, and includes options to select variables for cumulative incidence function analysis. For the Univariate Analysis, the user chooses variable of interest to enter into the analysis as well as the event and the censor code. To generate a Cumulative Incidence Function (CIF) plot and table, the user can choose either a categorical variable to compare or ‘All Patients’ (Like in Figure 1). Users can also select the appropriate time unit based on the data and the time points of interest, where applicable. Censor code can also be specified. The univariate result table or plot is displayed on the right panel.

Landmark analysis

Landmark analysis is based on a user input landmark time. Stanford Heart transplant dataset is used 7. The tool generates an overall KM plot and a landmark KM plot with log rank test p-values ( Figure 3). The user can also opt for a CI curve instead of a KM plot and allows similar categorical/continuous variable inputs.

Figure 3.

An external file that holds a picture, illustration, etc.
Object name is f1000research-6-13225-g0002.jpg
Landmark analysis.

This tab includes landmark analysis using the Stanford heart transplant data 7. The left panel includes options to select variables for landmark analysis and the landmark time. The program generates a new landmark dataset to create either KM/CIF plots on the right panel. Users can also select the appropriate time unit based on the data.

Quantile survival analysis

Quantile survival analysis is based on method developed by 2, 3, implemented in the ‘cequre’ package in R. The example data used is the 553 patient Expression with Clinical data for TCGA – BRCA patients given radiotherapy 4. Survival time difference between the dichotomized continuous or categorical variable will be estimated with 95% CI for each quantile ( Figure 4). A forest plot to represent quantile wise differences between the means and the overall differences is also provided as output.

Figure 4.

An external file that holds a picture, illustration, etc.
Object name is f1000research-6-13225-g0003.jpg
Quantile survival analysis.

The quantile regression tab shows three plots based on the same data used in Figure 1. The first is the overall KM plot with number at risk table for overall survival and log rank test p-value. The second is the survival time difference with 95% CI between two dichotomized groups at the 10 quantiles Q1 to Q10 (defined as 10 percentile to 100 percentile by 10 percentile at mean survival time among all patients). The third plot is the summary using forest plot for the survival time difference at 10 quantiles. The overall in forest plot corresponds to the transformed HR and 95% CI for overall survival (log [1/HR]).


The CASAS software is written in R and tested using version 3.3.0. The Interactive KM, CIF plots and data tables are made visible through a web browser using the shiny R package (


Using a windows 7 Enterprise SP1 PC with a 32.0 GB RAM and an 3.30 GHz Intel ® Xeon ® Processor E5 Family, for 553 TCGA BRCA patients who received radiotherapy 4, it took 2.26 s to create an interactive KM plot and 6.52 s to generate quantile analysis plots. Stanford heart transplant data 7 for landmark survival analysis generated the KM plots in about 1.10s. For data of 35 patients who underwent Hematopoietic stem cell transplantation (HSCT) affected by either AML or ALL 6, it took 2.66s to display the CIF plot. The developmental repository is available at

Archived source code as at the time of publication is available at: 8.


CASAS is a suite of tools that allows a user to conduct various types of survival analysis through an interactive application in R. We show by example, various types of cancer survival analyses that can be performed based on the questions of interest. Our tool will serve as a platform for many physicians and researchers to conduct preliminary analyses before heading to statisticians to conduct advanced analyses.

Data and software availability

The CASAS web tool ( includes preprocessed example data under each tab. The user could use the example data or could upload a dataset of their choice in the same format as the example data. The tool will work best with data input as a .txt or .csv file. Time variable can be input in days, months or years and the appropriate time unit selection can be made. This tool accepts censor variables in various formats, for example, character annotation such as Dead/Alive, or integer variable 0/1, etc. The tool may throw errors if there are missing data within the censor variables but it can handle missing data left blank for the cohort variables. Use of any other characters for missing data may cause the program to throw errors.

For landmark analysis, data from 103 patients on the waitlist for Stanford Heart transplant program as available in the survival package is used 7. The data can be accessed in R using data(jasa). For both Kaplan Meier survival analysis and quantile survival analysis, Level 3 RNASeqV2 Breast Cancer (BRCA) data was downloaded from the TCGA data portal 4. 553 patients that received radiotherapy and had survival information were used. Gene expression data for a specific biomarker gene was log2 transformed. The user has the choice to divide the data based on either the twenty-fifth percentile (set as default) or the fiftieth or the seventy-fifth, or an optimal cut point based on the martingale residuals. Similarly, for competing risk analysis, the user could choose the example data or upload their own. The example data consists of 35 patients with acute leukemia who underwent Hematopoietic stem cell transplantation (HSCT) affected by either AML or ALL 6 (

The developmental repository is available at

Archived source code as at the time of publication: 8

License: CASAS is available under the GNU public license (GPL-3).


[version 2; referees: 2 approved]

Funding Statement

Research reported in this publication was supported in part by the Biostatistics and Bioinformatics Shared Resource of Winship Cancer Institute of Emory University and NIH/NCI under award number P30CA138292.


Revised. Amendments from Version 1

Figures 1, 3 and 4 have been updated to illustrate standard survival analysis, quantile survival analysis, test for proportional hazards, and selection of a cut point for a continuous variable in a single example.


1. Anderson JR, Cain KC, Gelber RD.: Analysis of survival by tumor response. J Clin Oncol. 1983;1(11):710–9. 10.1200/JCO.1983.1.11.710 [PubMed] [Cross Ref]
2. Huang Y.: Restoration of monotonicity respecting in dynamic regression. J Am Stat Assoc. 2017;112(518):613–622, (In press). 10.1080/01621459.2016.1149070 [Cross Ref]
3. Huang Y.: Quantile Calculus and Censored Regression. Ann Stat. 2010;38(3):1607–1637. 10.1214/09-AOS771 [PMC free article] [PubMed] [Cross Ref]
4. NCI and NHGRI: The Cancer Genome Atlas (TCGA) Data Portal. Accessed in December2015. Reference Source
5. Fine JP, Gray RJ.: A Proportional Hazards Model for the Subdistribution of a Competing Risk. J Am Stat Assoc. 1999;94(446):496–509. 10.2307/2670170 [Cross Ref]
6. Scrucca L, Santucci A, Aversa F.: Competing risk analysis using R: an easy guide for clinicians. Bone Marrow Transplant. 2007;40(4):381–7. 10.1038/sj.bmt.1705727 [PubMed] [Cross Ref]
7. Crowley J, Hu M.: Covariance analysis of heart transplant survival data. J Am Stat Assoc. 1977;72(357):27–36. 10.2307/2286902 [Cross Ref]
8. manalirupji: manalirupji/CASAS: CASASv1.1.0. Zenodo. 2017. Data Source

Review Summary Section

Review dateReviewer name(s)Version reviewedReview status
2017 August 23Seon-Young KimVersion 2Approved
2017 August 1Gang HanVersion 2Approved
2017 July 6Gang HanVersion 1Approved with Reservations


Seon-Young Kim, Referee1
1Genome Structure Research Center, Korea Research Institute of Bioscience and Biotechnology, Daejeon, Korea, South
Competing interests: No competing interests were disclosed.
Review date: 2017 August 23. Status: Approved

The manuscript entitled ‘CASAS: Cancer Survival Analysis Suite, a web based application’ by Rupji et al describes a web server, a shiny R based tool for interactive survival analysis and visualization. They provide several kinds of survival analysis with detailed explanations and example data sets. The web application is easy to use and is likely to be useful for many researchers. I tested each of the examples and found that they work as described in the manuscript. If I add one comment, I found that the CASAS doesn’t support analysis of multiple genes at once, which is necessary when one wants to identify prognostic gene(s) from omics data. The authors may discuss this point and refer to an example of web servers that support the analysis of multiple genes (i.e

I have read this submission. I believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.


1. Kim SK, Hwan Kim J, Yun SJ, Kim WJ, Kim SY.: APPEX: analysis platform for the identification of prognostic gene expression signatures in cancer. Bioinformatics.2014;30(22) : 10.1093/bioinformatics/btu521 3284-6 10.1093/bioinformatics/btu521 [PubMed] [Cross Ref]


Gang Han, Referee1
1Department of Epidemiology and Biostatistics, Texas A&M University School of Public Health, College Station, TX, USA
Competing interests: No competing interests were disclosed.
Review date: 2017 August 1. Status: Approved

The authors have answered all my comments. I have no more additional comments.

I have read this submission. I believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.

Approved with Reservations

Gang Han, Referee1
1Department of Epidemiology and Biostatistics, Texas A&M University School of Public Health, College Station, TX, USA
Competing interests: No competing interests were disclosed.
Review date: 2017 July 6. Status: Approved with Reservations

Authors of this article attempted to facilitate the routine survival analysis for clinicians and general health science professionals by building a web based survival analysis software with underlying R programming. Because survival data has increased usage in clinical research, this work is useful to fill out the gap of survival analysis for researchers without training in statistics and programming. But given a number of limitations, its practical value is questionable. Due to the following multiple missing components, this article does not look complete. This reviewer suggests major revision to improve its usability:  

  1. The first missing component is the test of model assumptions. The validity of the proportional hazard assumption was not described.
  2. The second missing piece is the detailed description of required data format. For example, some practitioners may label event/censor as “1/0”, while others will write “not censored/censored.” What is the requirement for the data file header? For missing values, some may leave it blank, others may write “missing” or “unknown.” These things are all trivial for statisticians but useful for clinical users to know
    and bear in mind. The authors may add a separate section to emphasize the correct format.
  3. The third missing piece is a comprehensive example. Although some figures were shown, potential users may look for a detailed example to follow. The authors had made the point that this software can perform certain survival analyses, but they failed to explain/illustrate how to perform these analyses. A major revision is necessary to answer the question of “how” in an example that looks similar to majority of the users’ data and analytical needs.

I have read this submission. I believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard, however I have significant reservations, as outlined above.

Articles from F1000Research are provided here courtesy of F1000 Research Ltd