<commit_before>JPMML-R
=======

Java library and command-line application for converting [R](http://www.r-project.org/) models to PMML.

# Features #

* Fast and memory-efficient:
  * Can produce a 5 GB Random Forest PMML file in less than 1 minute on a desktop PC
* Supported model and transformation types:
  * [`caret` package](http://cran.r-project.org/web/packages/caret/):
    * `preProcess` - Transformation methods "range", "center", "scale" and "medianImpute"
    * `train` - Selected JPMML-R model types
  * [`earth` package](https://cran.r-project.org/web/packages/earth/):
    * `earth` - Multivariate Adaptive Regression Spline (MARS) regression
  * [`elmNN` package](https://cran.r-project.org/web/packages/elmNN/):
    * `elmNN` - Extreme Learning Machine (ELM) regression
  * [`e1071` package](https://cran.r-project.org/web/packages/e1071/):
    * `svm` - Support Vector Machine (SVM) regression, classification and anomaly detection
  * [`gbm` package](http://cran.r-project.org/web/packages/gbm/):
    * `gbm` - Gradient Boosting Machine (GBM) regression and classification
  * [`IsolationForest` package](https://r-forge.r-project.org/R/?group_id=479):
    * `iForest` - Isolation Forest (IF) anomaly detection
  * [`party` package](http://cran.r-project.org/web/packages/party/):
    * `ctree` - Conditional Inference Tree (CIT) classification
  * [`pls` package](https://cran.r-project.org/web/packages/pls/)
    * `mvr` - Multivariate Regression (MVR) regression
  * [`randomForest` package](http://cran.r-project.org/web/packages/randomForest/):
    * `randomForest` - Random Forest (RF) regression and classification
  * [`ranger` package](https://cran.r-project.org/web/packages/ranger/):
    * `ranger` - Random Forest regression and classification
  * [`rms` package](https://cran.r-project.org/web/packages/rms/):
    * `lrm` - Binary Logistic Regression (LR) classification
    * `ols` - Ordinary Least Squares (OLS) regression
  * [`r2pmml` package](https://github.com/jpmml/r2pmml):
    * `scorecard` - Scorecard regression
  * `stats` package:
    * `glm` - Generalized linear (GLM) regression and classification
    * `kmeans` - K-Means clustering
    * `lm` - Linear (LM) regression
  * [`xgboost` package](https://cran.r-project.org/web/packages/xgboost/):
    * `xgb.Booster` - XGBoost (XGB) regression and classification
* Production quality:
  * Complete test coverage.
  * Fully compliant with the [JPMML-Evaluator](https://github.com/jpmml/jpmml-evaluator) library.

# Prerequisites #

* Java 1.8 or newer.

# Installation #

Enter the project root directory and build using [Apache Maven](http://maven.apache.org/):
```
mvn clean install
```

The build produces an executable uber-JAR file `target/converter-executable-1.3-SNAPSHOT.jar`.

# Usage #

A typical workflow can be summarized as follows:
<commit_msg>Updated documentation<commit_after>JPMML-R
=======

Java library and command-line application for converting [R](https://www.r-project.org/) models to PMML.

# Features #

* Fast and memory-efficient:
  * Can produce a 5 GB Random Forest PMML file in less than 1 minute on a desktop PC
* Supported model and transformation types:
  * [`caret` package](https://cran.r-project.org/package=caret):
    * `preProcess` - Transformation methods "range", "center", "scale" and "medianImpute"
    * `train` - Selected JPMML-R model types
  * [`earth` package](https://cran.r-project.org/package=earth):
    * `earth` - Multivariate Adaptive Regression Spline (MARS) regression
  * [`elmNN` package](https://cran.r-project.org/package=elmNN):
    * `elmNN` - Extreme Learning Machine (ELM) regression
  * [`e1071` package](https://cran.r-project.org/package=e1071):
    * `svm` - Support Vector Machine (SVM) regression, classification and anomaly detection
  * [`gbm` package](https://cran.r-project.org/package=gbm):
    * `gbm` - Gradient Boosting Machine (GBM) regression and classification
  * [`IsolationForest` package](https://r-forge.r-project.org/R/?group_id=479):
    * `iForest` - Isolation Forest (IF) anomaly detection
  * [`party` package](https://cran.r-project.org/package=party):
    * `ctree` - Conditional Inference Tree (CIT) classification
  * [`pls` package](https://cran.r-project.org/package=pls)
    * `mvr` - Multivariate Regression (MVR) regression
  * [`randomForest` package](https://cran.r-project.org/package=randomForest):
    * `randomForest` - Random Forest (RF) regression and classification
  * [`ranger` package](https://cran.r-project.org/package=ranger):
    * `ranger` - Random Forest regression and classification
  * [`rms` package](https://cran.r-project.org/package=rms):
    * `lrm` - Binary Logistic Regression (LR) classification
    * `ols` - Ordinary Least Squares (OLS) regression
  * [`r2pmml` package](https://github.com/jpmml/r2pmml):
    * `scorecard` - Scorecard regression
  * `stats` package:
    * `glm` - Generalized linear (GLM) regression and classification
    * `kmeans` - K-Means clustering
    * `lm` - Linear (LM) regression
  * [`xgboost` package](https://cran.r-project.org/package=xgboost):
    * `xgb.Booster` - XGBoost (XGB) regression and classification
* Production quality:
  * Complete test coverage.
  * Fully compliant with the [JPMML-Evaluator](https://github.com/jpmml/jpmml-evaluator) library.

# Prerequisites #

* Java 1.8 or newer.

# Installation #

Enter the project root directory and build using [Apache Maven](http://maven.apache.org/):
```
mvn clean install
```

The build produces an executable uber-JAR file `target/converter-executable-1.3-SNAPSHOT.jar`.

# Usage #

A typical workflow can be summarized as follows:

{'fraction_non_alphanumeric': 0.14930125597028127, 'fraction_numerical': 0.006722094463116929, 'mean_word_length': 4.06177260519248, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 25, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1805459', 'n_tokens_mistral': 1942, 'n_tokens_neox': 1831, 'n_words': 447}