Learn R Programming


E2E: An R Package for Easy-to-Build Ensemble Models

E2E is a comprehensive R package designed to streamline the development, evaluation, and interpretation of machine learning models for both diagnostic (classification) and prognostic (survival analysis) tasks. It provides a robust, extensible framework for training individual models and building powerful ensembles—including Bagging, Voting, and Stacking—with minimal code. The package also includes integrated tools for visualization and model explanation via SHAP values.

Author: Shanjie Luan (ORCID: 0009-0002-8569-8526, First and Corresponding Author), Ximing Wang

Citation: If you use E2E in your research, please cite it as: "Luan, S. and Wang, X. (2025), E2E: An R Package for Easy-to-Build Ensemble Models. Med Research. https://doi.org/10.1002/mdr2.70030"

Note: The article is open source on CRAN and Github and is free to use, but you have to cite our article if you use E2E in your research. If you have any questions, please contact Luan20050519@163.com.

Documentation

For complete documentation, tutorials, and function references, please visit our pkgdown website:

https://XIAOJIE0519.github.io/E2E/

back to our github website:

https://github.com/XIAOJIE0519/E2E


Installation

The development version of E2E can be installed directly from GitHub using remotes.

# If you don't have remotes, install it first:
# install.packages("remotes")
remotes::install_github("XIAOJIE0519/E2E")

After installation, load the package into your R session:

library(E2E)

Methodological Framework

Copy Link

Version

Install

install.packages('E2E')

Monthly Downloads

179

Version

0.1.2

License

MIT + file LICENSE

Maintainer

Shanjie Luan

Last Published

December 4th, 2025

Functions in E2E (0.1.2)

get_registered_models_pro

Get Registered Prognostic Models
imbalance_dia

Train an EasyEnsemble Model for Imbalanced Classification
mlp_dia

Train a Multi-Layer Perceptron (Neural Network) Model for Classification
get_registered_models_dia

Get Registered Diagnostic Models
gbm_pro

Train Gradient Boosting Machine (GBM) for Survival
print_model_summary_dia

Print Diagnostic Model Summary
predict_pro

Generic Prediction Interface for Prognostic Models
plot_integrated_results

Visualize Integrated Modeling Results
lda_dia

Train a Linear Discriminant Analysis (LDA) Model for Classification
evaluate_predictions_dia

Evaluate Predictions from a Data Frame
lasso_pro

Train Lasso Cox Proportional Hazards Model
stepcox_pro

Train Stepwise Cox Model (AIC-based)
pls_pro

Train Partial Least Squares Cox (PLS-Cox)
rf_dia

Train a Random Forest Model for Classification
ridge_dia

Train a Ridge (L2 Regularized Logistic Regression) Model for Classification
qda_dia

Train a Quadratic Discriminant Analysis (QDA) Model for Classification
register_model_pro

Register a Prognostic Model
print_model_summary_pro

Print Prognostic Model Summary
initialize_modeling_system_dia

Initialize Diagnostic Modeling System
register_model_dia

Register a Diagnostic Model Function
initialize_modeling_system_pro

Initialize Prognosis Modeling System
models_dia

Run Multiple Diagnostic Models
ridge_pro

Train Ridge Cox Model
rsf_pro

Train Random Survival Forest (RSF)
voting_dia

Train a Voting Ensemble Diagnostic Model
train_dia

Training Data for Diagnostic Models
svm_dia

Train a Support Vector Machine (Linear Kernel) Model for Classification
stacking_dia

Train a Stacking Diagnostic Model
find_optimal_threshold_dia

Find Optimal Probability Threshold
min_max_normalize

Min-Max Normalization
gbm_dia

Train a Gradient Boosting Machine (GBM) Model for Classification
int_pro

Comprehensive Prognostic Modeling Pipeline
lasso_dia

Train a Lasso (L1 Regularized Logistic Regression) Model for Classification
xb_dia

Train an XGBoost Tree Model for Classification
stacking_pro

Train Stacking Ensemble for Prognosis
xgb_pro

Train XGBoost Cox Model
load_and_prepare_data_dia

Load and Prepare Data for Diagnostic Models
train_pro

Training Data for Prognostic (Survival) Models
int_dia

Comprehensive Diagnostic Modeling Pipeline
int_imbalance

Imbalanced Data Diagnostic Modeling Pipeline
nb_dia

Train a Naive Bayes Model for Classification
models_pro

Run Multiple Prognostic Models
test_dia

Test Data for Diagnostic Models
test_pro

Test Data for Prognostic (Survival) Models
bagging_dia

Train a Bagging Diagnostic Model
dt_dia

Train a Decision Tree Model for Classification
en_pro

Train Elastic Net Cox Model
Surv

re-export Surv from survival
calculate_metrics_at_threshold_dia

Calculate Classification Metrics at a Specific Threshold
evaluate_model_dia

Evaluate Diagnostic Model Performance
bagging_pro

Train Bagging Ensemble for Prognosis
en_dia

Train an Elastic Net (L1 and L2 Regularized Logistic Regression) Model for Classification
apply_pro

Apply Prognostic Model to New Data
apply_dia

Apply a Trained Model to New Data
figure_shap

Generate and Plot SHAP Explanation Figures
evaluate_predictions_pro

Evaluate External Predictions
figure_pro

Plot Prognostic Model Evaluation Figures
figure_dia

Plot Diagnostic Model Evaluation Figures
evaluate_model_pro

Evaluate Prognostic Model Performance