Abstract
The ClinicoPathJamoviModule: A Comprehensive Open-Source Toolkit for Streamlining Clinicopathological Research
Background: Clinicopathological research is fundamental to advancing evidence-based medicine, but it requires the application of complex and specialized statistical methods. The technical barrier of programming-based statistical software can limit the ability of clinicians and researchers to perform these analyses efficiently and reproducibly. To address this gap, we have developed the ClinicoPathJamoviModule, an open-source extension for the user-friendly jamovi statistical platform.
Methods: The ClinicoPathJamoviModule integrates a robust and comprehensive suite of analytical tools designed to address the typical workflow of clinicopathological data analysis. The module is built upon the R statistical language and provides a graphical user interface within jamovi for a wide range of functions. Key features include:
-
Descriptive Statistics: Generation of publication-ready summary tables (
Table 1
). - Survival Analysis: Tools for Kaplan-Meier estimation, log-rank tests, and Cox proportional hazards models for single, comparison, and multiple variable analyses.
- Diagnostic Accuracy: Evaluation of diagnostic tests using Receiver Operating Characteristic (ROC) curve analysis, decision curve analysis (DCA), and screening test calculators.
- Agreement and Reliability: Assessment of inter-rater reliability using statistics such as Cohenβs Kappa and the Intraclass Correlation Coefficient (ICC).
- Data Visualization: A collection of advanced plotting tools, including waterfall plots, swimmer plots, raincloud plots, and advanced bar plots for intuitive data exploration and presentation.
- Data Preprocessing: Utilities for data quality checking, management of missing data, and date corrections.
Conclusion: The ClinicoPathJamoviModule provides a powerful, accessible, and free-to-use toolkit that empowers medical researchers to conduct sophisticated statistical analyses without requiring extensive programming knowledge. By integrating these essential functions into the intuitive jamovi framework, the module aims to lower the barrier to high-quality data analysis, enhance research reproducibility, and accelerate the translation of clinical data into meaningful insights.
ClinicoPath jamovi Module π¬
A jamovi Module that contains main analysis used in ClinicoPathological research. ClinicoPath help researchers to generate natural language summaries of their dataset, generate cross tables with statistical tests, and survival analysis with survival tables, survival curves, and natural language summaries.
π¬πππππ¨πππβππΆππππ π¬π¬ππ΄ππ¨π» πΈπΊπππ¬πππ«πΈ
https://zenodo.org/account/settings/github/repository/sbalci/ClinicoPathJamoviModule
DOI 10.17605/OSF.IO/9SZUD
Installation in jamovi
You can install this module after installing jamovi version >= 2.7.2 from here: https://www.jamovi.org/download.html
Then you can install the submodules directly inside the jamovi, using library.
Submodules are:
- ClinicoPathDescriptives
- jsurvival
- meddecide
- jjstatsplot
Installation via sideload jamovi
Step 1:
Download and install jamovi.
Step 2:
Download the relevant jmo
file for your operating system from
b: For modules
ClinicoPathDescriptives
ClinicoPathDescriptives functions are separately added to jamovi library under Exploration menu
ClinicoPathDescriptives module can be downloaded inside jamovi (click Modules and jamovi library)
https://github.com/sbalci/ClinicoPathDescriptives/
https://github.com/sbalci/ClinicoPathDescriptives/releases/
remotes::install_github("sbalci/ClinicoPathDescriptives")
JJStatsPlot
GGStatsPlot functions are separately added to jamovi library under jjstatsplot menu
JJStastPlot module can be downloaded inside jamovi (click Modules and jamovi library)
https://github.com/sbalci/jjstatsplot
https://github.com/sbalci/jjstatsplot/releases/
remotes::install_github("sbalci/jjstatsplot")
jsurvival
https://github.com/sbalci/jsurvival
https://github.com/sbalci/jsurvival/releases/
remotes::install_github("sbalci/jsurvival")
meddecide
https://github.com/sbalci/meddecide/
https://github.com/sbalci/meddecide/releases/
remotes::install_github("sbalci/meddecide")
Step 3: And install using side-load as shown below:
Screenshots of Module
Exploration
ClinicoPath Descriptives
Age Pyramid 2
(Similar to Age Pyramid with more styling options)
Alluvial Diagrams 2
(Similar to Alluvial Diagrams with more styling options)
Missing Data Analysis and Imputation
(Comprehensive missing data analysis and multiple imputation)
Outlier Detection
(Advanced outlier detection with multiple statistical methods)
Summary of Categorical Variables 2
(Enhanced categorical summary)
Raincloud Plot
(Comprehensive distribution analysis)
Summary of Continuous Variables 2
(Enhanced summary statistics for continuous and date variables)
Swimmer Plot
(Comprehensive swimmer plots for visualizing patient timelines)
Table One 2
(Enhanced Table One with pivottabler)
Tidy Density
(Statistical distribution generator and analyzer)
Tools Summary
(Tools for data summary with summarytools integration)
Toxicity Profile
(Treatment toxicity profile analysis)
Venn Diagram
(Venn and Upset diagrams)
JJStatsPlot
Graphs and Plots
Advanced Barplot
(Advanced bar charts - 5 ways)
Advanced Raincloud Plot
(Advanced raincloud plot with longitudinal support)
Predictive Power Score Analysis
(Predictive Power Score Analysis)
High-Performance Scatter Plots
(Fast scatter plots for large datasets)
Social Science Statistical Visualization
(sjPlot Integration for Social Science Research)
Professional Violin Plot
(Advanced Violin Plots for Data Distribution)
Waffle Charts
(Create Waffle Charts to visualize distributions)
Line Chart
(Line Chart for Time Series and Trend Analysis)
Lasso-Cox Regression
(Lasso-Cox Regression for Variable Selection in Survival Analysis)
Parallel Coordinates Plot
(Multivariate Exploration)
Automatic Plot Selection
(Automatic Plot Selection Based on Variable Types)
Statistical Distribution Generator
(TidyDensity - Distribution Analysis & Simulation)
Within-Group Comparison
(Violin Plots to Compare Within Groups)
Treemap
(Creates treemap visualizations for categorical data)
StreamGraphs
(Create interactive StreamGraphs using R streamgraph package.)
Survival
jsurvival
Alluvial Survival Plot
(Treatment Pathway Alluvial Plot)
Kaplan-Meier Survival Analysis for Single Group
(Kaplan-Meier Survival Analysis for Single Group)
Single Arm Survival
(Survival for whole group, no explanatory factor)
Survival Analysis for Continuous Explanatory Variable
(Cut-off & Univariate Survival Analysis)
Survival Analysis Power & Sample Size
(Power Analysis for Survival Studies)
Time-Dependent ROC Analysis
(Predictive Performance Over Time)
Comprehensive Time Interval Calculator
(Advanced time interval analysis with quality assessment)
Jvisr
(Fit-for-Purpose Clinical Visualizations)
meddecide
Decision
Installation in R
You can install the development version from GitHub with:
# install.packages("devtools")
devtools::install_github("sbalci/ClinicoPathJamoviModule")
Acknowledgement
Made possible via the codes, help, and guidence of
- jamovi developer Jonathon Love,
- finalfit developer Ewen Harrison,
- ggstatsplot developer Indrajeet Patil,
- tangram developer Shawn Garbett,
- easystats developers ,
- report ,
- tableone,
- survival,
- survminer,
- vtree developer Nick Barrowman,
- easyalluvial, developer BjΓΆrn Oettinghaus, and
- rstats community.
See https://github.com/ClinicoPath for forked packages.
Follow @serdarbalci
Accessing Raw and External Data Files
Beyond the datasets readily available with data(dataset_name)
, this package also includes various raw and external data files in other formats like CSV (Comma Separated Values), XLSX (Excel), and OMV (Jamovi files). These can be useful for users who want to access the original data, use it with other software, or understand how the R data objects (.rda
files) were generated.
These files are typically located in the inst/extdata
directory of the package. You can get the full path to a file in inst/extdata
using the system.file()
function. For example:
# Get the path to 'BreastCancer.csv' in inst/extdata
# (Assuming BreastCancer.csv will be moved to inst/extdata in a later step)
csv_path <- system.file("extdata", "BreastCancer.csv", package = "ClinicoPath")
if (nzchar(csv_path)) {
# Read the CSV file
breast_cancer_df <- read.csv(csv_path)
head(breast_cancer_df)
} else {
message("BreastCancer.csv not found in inst/extdata. This example assumes it's present there.")
}
Common File Types
CSV Files
Many datasets are available in CSV format. These can be easily read into R using read.csv()
or other functions from packages like readr
or data.table
.
-
Example: The
BreastCancer
dataset, also available viadata(BreastCancer)
, has its source data potentially available asBreastCancer.csv
. - Other CSV files like
oncology_response_data.csv
(related to thetreatmentResponse
dataset) andcolon.csv
are also available.
XLSX Files (Excel)
Some datasets might be provided in Excel format. You can read these using packages like readxl
.
-
Example:
heartdisease.xlsx
# Ensure readxl is installed: install.packages("readxl") # xlsx_path <- system.file("extdata", "heartdisease.xlsx", package = "ClinicoPath") # if (nzchar(xlsx_path)) { # heartdisease_df <- readxl::read_excel(xlsx_path) # head(heartdisease_df) # }
(Note: The availability and specific location of
heartdisease.xlsx
ininst/extdata
will be finalized in a later step).
OMV Files (Jamovi)
Files with the .omv
extension are project files for Jamovi, a free and open statistical spreadsheet. These files often contain datasets and analyses demonstrating the use of this R packageβs functionalities within the Jamovi environment. They are not typically read directly into R but opened with Jamovi.
-
Examples:
BreastCancer.omv
,colon.omv
,histopathology.omv
, and many others found indata/
orinst/extdata/
.
Relationship to .rda
Data Files
Many of the .rda
files (loaded using data(dataset_name)
) provided by this package are derived from these raw data files (like CSVs). The .rda
files are offered for convenience, as they load directly into your R session with proper data types already set. Accessing the raw files can be useful for reproducibility, using the data in other tools, or for specific data manipulation needs not covered by the pre-processed .rda
versions.
Please explore the inst/extdata
directory (once files are organized in Step 5 of the data documentation improvement plan) to see the full list of available raw and external files.