Learn R Programming

DAL Toolbox

DAL Toolbox is an R framework for data analytics workflows. It organizes preprocessing, modeling, evaluation, tuning, visualization, and extensibility resources around a consistent Experiment Line style API, helping users build reproducible end-to-end analytical pipelines.

The package supports data preprocessing, classification, regression, clustering, pattern mining, graphics, and time series prediction. It is designed for teaching, experimentation, and applied data science projects where the same workflow needs to be reused, compared, and extended across methods.

Current package version in this repository: 1.3.767.


Installation

The stable version is available on CRAN:

https://CRAN.R-project.org/package=daltoolbox

install.packages("daltoolbox")

The development version is available on GitHub:

https://github.com/cefet-rj-dal/daltoolbox

library(devtools)
devtools::install_github("cefet-rj-dal/daltoolbox", force = TRUE, dependencies = FALSE, upgrade = "never")

Documentation

Documentation and examples are available in the package site and in the repository:

The documentation is organized around two complementary entry points:

  • a guided tutorial track for readers who want to learn the workflow step by step
  • thematic example collections for readers who want to inspect a specific family of methods

If you are new to daltoolbox, start with the tutorials. If you already know the package structure, the thematic collections provide focused examples by method family.


Guided Tutorial Track

The tutorials are part of the examples collection. They form a 13-part learning sequence covering first experiment, sampling, data quality, preprocessing, baselines, metrics, model comparison, tuning, end-to-end pipelines, regression, clustering, visual analysis, and custom extensions.

The sequence is cumulative. Each tutorial introduces one main decision in a data mining study, explains why that step matters, and keeps the code close to that learning objective.


Thematic Example Collections

The examples collection includes thematic subcollections:

  • Transformations - sampling, balancing, cleaning, scaling, encoding, smoothing, feature selection, dimensionality reduction, and curvature-based heuristics.
  • Classification - baseline models, decision trees, instance-based methods, probabilistic models, linear models, ensembles, neural models, support vector machines, boosting, and tuning.
  • Regression - interpretable models, instance-based learners, random forests, support vector machines, neural models, and tuning for numeric prediction.
  • Clustering - partitional, medoid-based, density-based, fuzzy, model-based, hierarchical, graph-based methods, and clustering model selection.
  • Pattern Mining - association rules, frequent itemsets, and sequence mining.
  • Graphics - comparison, distribution, relationship, time-oriented, and export-focused visualizations.
  • Custom Extensions - examples showing how to integrate new transformations, classifiers, regressors, clusterers, autoencoders, and pattern miners into the Experiment Line workflow.

Main Capabilities

  • Unified abstractions for learners, transformations, predictors, and tuners.
  • Reusable preprocessing workflows for sampling, balancing, cleaning, normalization, encoding, smoothing, feature selection, and dimensionality reduction.
  • Classification, regression, clustering, and pattern mining examples with consistent fit, predict, evaluate, and tune stages.
  • Time series support for preprocessing, augmentation, normalization, filtering, and prediction.
  • Visualization helpers for comparisons, distributions, relationships, time series, and report-oriented graphics.
  • Extensible interfaces for custom analytical components.

Related DAL Projects


Playlist

DAL Toolbox videos


Bugs and Feature Requests

Please report bugs, questions, and feature requests at:

https://github.com/cefet-rj-dal/daltoolbox/issues

Copy Link

Version

Install

install.packages('daltoolbox')

Monthly Downloads

512

Version

1.3.787

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Eduardo Ogasawara

Last Published

September 2nd, 2026

Functions in daltoolbox (1.3.787)

cla_multinom

Multinomial logistic regression
cla_nb

Naive Bayes Classifier
cla_svm

SVM for classification
cla_xgboost

XGBoost
cla_rf

Random Forest for classification
cla_tune

Classification tuning (k-fold CV)
cla_mlp

MLP for classification
clu_tune

Clustering tuning (intrinsic metric)
cla_rpart

CART (rpart)
classification

Classification base class
cluster_dbscan

DBSCAN
cluster_louvain_graph

Louvain community detection
cluutils

Clustering utilities
cluster_pam

PAM (Partitioning Around Medoids)
cluster_gmm

Gaussian mixture model clustering (GMM)
cluster

Cluster
clusterer

Clusterer
cluster_cmeans

Fuzzy c-means
cluster_hclust

Hierarchical clustering
cluster_kmeans

k-means
dal_base

Class dal_base
evaluate

Evaluate
dal_tune

DAL Tune (base for hyperparameter search)
dt_pca

PCA
dal_graphics

Graphics Utilities
data_sample

Data sampling abstractions
feature_generation

Feature generation
dal_transform

DAL Transform
dal_learner

DAL Learner (base class)
fit

Fit
fit.cluster_dbscan

fit dbscan model
fit_curvature_max

Maximum curvature analysis (elbow detection)
feature_selection_relief

Feature selection by RELIEF
fit.cla_tune

tune hyperparameters of ml model
feature_selection_stepwise

Feature selection by stepwise model selection
discover

Discover
feature_selection_info_gain

Feature selection by information gain
feature_selection_lasso

Feature selection by lasso
feature_selection_fss

Feature selection by forward stepwise search
feature_selection_corr

Feature selection by correlation
k_fold

K-fold sampling
outliers_boxplot

Outlier removal by boxplot (IQR rule)
hierarchy_cut

Hierarchy mapping by cut
na_removal

Missing value removal
inverse_transform

Inverse Transform
minmax

Min-max normalization
imputation_tree

Tree-based predictive imputation
fit_curvature_min

Minimum curvature analysis (elbow detection)
imputation_simple

Simple imputation
imputation_predictive

Predictive imputation base
pat_confidence_threshold

Pattern confidence threshold strategy
pat_eclat

ECLAT itemsets
pat_cspade

cSPADE sequences
pat_filter_rules

Apply a rule filter
pat_apriori

Apriori rules
pat_dara_rules

Generate target association rules for DARA
pat_dara

Divergent Association Ranking Analysis
outliers_gaussian

Outlier removal by Gaussian 3-sigma rule
pat_rule_filter_interest

Interesting rule filter
pat_rule_filter_dara

DARA rule filter
pattern_miner

Pattern Miner
plot_correlation

Plot correlation
pat_rule_filter_none

No rule filtering
plot_bar

Plot Bar Graph
pat_rules_tidy

Tidy association rules
plot_dendrogram

Plot dendrogram
patutils

Pattern mining utilities
plot_boxplot

Plot boxplot
plot_boxplot_class

Boxplot per class
pat_support_threshold

Pattern support threshold strategy
plot_hist

Plot histogram
plot_parallel

Plot parallel coordinates
plot_pixel

Plot pixel visualization
plot_pieplot

Plot pie
plot_pair

Plot scatter matrix
plot_density

Plot density
plot_density_class

Plot density per class
plot_lollipop

Plot lollipop
plot_groupedbar

Plot grouped bar
plot_pair_adv

Plot advanced scatter matrix
plot_series

Plot series
plot_ts_pred

Plot time series with predictions
plot_radar

Plot radar
plot_ts

Plot time series chart
predictor_prepare_fit

Prepare predictor fit data
plot_points

Plot points
predictor

Predictor (base for classification/regression)
plot_stackedbar

Plot stacked bar
reg_dtree

Decision Tree for regression
plot_scatter

Scatter graph
reg_knn

K-Nearest Neighbors (KNN) Regression
sample_random

Random Sampling
reg_tune

Regression tuning (k-fold CV)
sample_groups

Group sampling
reg_rf

Random Forest for regression
regression

Regression base class
sample_balance

Class balancing (up/down sampling)
reg_lm

Linear regression (lm)
reg_svm

SVM for regression
reg_mlp

MLP for regression
smoothing_cluster

Smoothing by class-aware clustering
smoothing_freq

Smoothing by equal frequency
select_hyper

Selection of hyperparameters
select_hyper.cla_tune

selection of hyperparameters
sample_simple

Simple sampling
smoothing

Smoothing (binning/quantization)
set_params.default

Default Assign parameters
smoothing_inter

Smoothing by equal interval
set_params

Assign parameters
zscore

Z-score normalization
transform

Transform
train_test_from_folds

k-Fold Training and Test Partition Object
smoothing_quantization

Smoothing by quantization (k-means)
sample_stratified

Stratified Sampling
train_test

Train-Test Partition
Boston

Boston Housing Data (Regression)
adjust_data.frame

Adjust to data frame
action

Action
action.dal_transform

Action implementation for transform
aggregation

Aggregation by groups
autoenc_base_ed

Autoencoder base (encoder + decoder)
adjust_factor

Adjust factors
adjust_matrix

Adjust to matrix
autoenc_base_e

Autoencoder base (encoder)
adjust_class_label

Adjust categorical mapping
cla_majority

Majority Baseline Classifier
categ_mapping

Categorical mapping (one‑hot encoding)
cla_knn

K-Nearest Neighbors (KNN) Classification
bal_subsampling

Random class undersampling
cla_bagging

Bagging (ipred)
cla_boosting

Boosting (adabag)
bal_oversampling

Random or SMOTE-based class oversampling
cla_dtree

Decision Tree for classification
cla_glmnet

LASSO logistic regression (glmnet)
cla_glm

Logistic regression (GLM)