Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/antononcube/mathematicavsr

Example projects, code, and documents for comparing Mathematica with R.
https://github.com/antononcube/mathematicavsr

comparison data-analysis data-science machine-learning mathematica r time-series

Last synced: 8 days ago
JSON representation

Example projects, code, and documents for comparing Mathematica with R.

Awesome Lists containing this project

README

        

# Mathematica vs. R

## In brief

This repository has example projects, code, and documents for comparing
[*Mathematica*](http://www.wolfram.com/mathematica/) with
[R](https://www.r-project.org).

### Mission statement

The development in this code repository aims to provide a collection
of relatively simple but non-trivial example projects that illustrate
the use of Mathematica and R in different statistical, machine
learning, scientific, and software engineering programming activities.

Each of the projects has implementations and documents made with both
Mathematica and R -- hopefully that would allow comparison and
knowledge transfer.

## License matters

All code files and executable documents are with the license GPL 3.0.
For details see [http://www.gnu.org/licenses/](http://www.gnu.org/licenses/) .

All documents are with the license Creative Commons Attribution 4.0
International (CC BY 4.0). For details see
[https://creativecommons.org/licenses/by/4.0/](https://creativecommons.org/licenses/by/4.0/) .

## Projects organization

Each project has an introductory page (README.md) that lists the
project goals, concrete steps, and links to documents and scripts with
full explanations and code.

Generally, an introductory page would also have sections with comparison
observations and development history.

Each project (generally) has two directories named "Mathematica" and
"R" that have corresponding documents and code.

Since Mathematica ships with R some projects would have only a
Mathematica-centric exposition of combining Mathematica and R
outputs into one Mathematica notebook.

Some projects have only Mathematica parts or only R parts. This is because
there are no equivalent counter-parts.

There is an attempt the corresponding Mathematica and R codes to be
very close in structure and steps flow. Often enough the structure and
flow would be different because each programming language would make certain
particular techniques easier to apply or because of certain language idioms.

## Where to begin

This presentation,
["Mathematica vs. R"](https://github.com/antononcube/MathematicaVsR/blob/master/RDocumentation/Presentations/WTC-2015/WTC-2015-Antonov-Mathematica-vs-R.pdf)
given at the
[Wolfram Technology Conference 2015](https://www.wolfram.com/events/technology-conference/2015/)
is probably a good start.

This presentation, ["Mathematica vs. R–Advanced Use Cases"](https://github.com/antononcube/MathematicaVsR/tree/master/RDocumentation/Presentations/WTC-2016)
was given at
[Wolfram Technology Conference 2016](https://www.wolfram.com/events/technology-conference/2016/). Here are recorded videos:

- YouTube : https://www.youtube.com/watch?v=NKpeOKxCUl4 .

- Wolfram Research : http://www.wolfram.com/broadcast/video.php?v=1745 .

As a warm-up of how to do the comparison see this mind-map (which is
made for Mathematica users):

[!["Mathematica-vs-R-mind-map-for-Mathematica-users"](http://i.imgur.com/oZobBxfm.png)](https://github.com/antononcube/MathematicaVsR/blob/master/Mathematica-vs-R-mind-map.pdf)

## Projects overview

### Abbreviations table

Abbreviation
Definition
 
Abbreviation
Definition

ARL
Association rules learning
 
NA
numerical analysis

BofW
bag of words (model)
 
NLP
natural language processing

Cl
(machine learning) classification
 
Opt
optimization

DA
data analysis
 
Outl
outliers

DIng
data ingestion
 
Par
parallel computing

Distr
distributions of variables
 
QR
quantile regression

DWrang
data wrangling
 
Rgr
regression

GoF
goodness of fit
 
RLink
Mathematica's RLink

Gr
graphs
 
ROC
receiver operating characteristic

HPC
High Performance Computing
 
Sim
simulation(s)

Img
image processing
 
Str
strings patterns and manipulation

IUI
interactive user interface(s)
 
TS
time series

LSA
latent semantic analysis
 
Vis
visualization

MF
matrix factorization(s)
 
 
 

### Projects overview table

In the following table the projects in italics are partially completed --
they have only a Mathematica or an R part.

| Project | ARL | BofW | Cl | DA | DIng | Distr | DWrang | GoF | Gr | Img | IUI | Rgr | LSA | MF | NA | NLP | Opt | Outl | Par | QR | RLink | ROC | Sim | Str | TS | Vis |
|------------------------------------------------------|-----|------|----|----|------|-------|--------|-----|----|-----|-----|-----|-----|----|----|-----|-----|------|-----|----|-------|-----|-----|-----|----|-----|
| [BrowsingDataWithChernoffFaces](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/BrowsingDataWithChernoffFaces) | | | | X | X | X | X | | | | | | | | | | | X | | | | | | | | X |
| [DataWrangling](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/DataWrangling) | | | | X | X | | X | | | | | | | | | | | | | | | | | | | X |
| [DeepLearningExamples](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/DeepLearningExamples) | | | | X | X | | X | | | | | | | | | | | | | | | | | | | X |
| [DistributionExtractionAFromGaussianNoisedMixture](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/DistributionExtractionAFromGaussianNoisedMixture) | | | | | | X | | X | | | | | | | | | X | | | | | | | | | |
| [HandwrittenDigitsClassificationByMatrixFactorization](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/HandwrittenDigitsClassificationByMatrixFactorization) | | | X | | X | | | | | X | | | X | X | | | | | X | | | | | | | X |
| [ODEsWithSeasonalities](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/ODEsWithSeasonalities) | | | | | | | | | | | X | | | | X | | | | | | | | X | | | X |
| [ProgressiveJackpotModeling](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/ProgressiveJackpotModeling) | | | | | | X | | | | | | | | | | | | | | | | | X | | | |
| [ProgressiveMachineLearning](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/ProgressiveMachineLearning) | | | X | | X | | | | | | | | | | | | | | | | | X | | | | |
| [RegressionWithROC](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/RegressionWithROC) | | | X | | | | | | | | | X | | | | | | | | | | X | | | | X |
| [StatementsSaliencyInPodcasts](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/StatementsSaliencyInPodcasts) | | X | | | X | | | | | | X | | | | | X | | | | | | | | X | | |
| [TextAnalysisOfTrumpTweets](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/TextAnalysisOfTrumpTweets) | X | X | X | X | X | | X | | | | | | | | | | | | | | X | | | X | | X |
| [TimeSeriesAnalysisWithQuantileRegression](https://github.com/antononcube/MathematicaVsR/tree/master/Projects/TimeSeriesAnalysisWithQuantileRegression) | | | | X | X | | | | | | | | | | | | | X | | X | | | | | X | X |

## Future projects

The future projects are listed in order of their completion time
proximity -- the highest in the list would be committed the soonest.

- Personal banking data obfuscation

- [Independent Component Analysis (ICA) programming and basic applications](https://mathematicaforprediction.wordpress.com/?s=ICA)

- [Prefix trees (tries) programming and basic applications](https://mathematicaforprediction.wordpress.com/2013/12/06/tries-with-frequencies-for-data-mining/)

- High Performance Computing (HPC) projects -- Spark, H2O, etc.

- [Comparison of PCA, NNMF, and ICA over image de-noising](https://mathematicaforprediction.wordpress.com/2016/05/26/comparison-of-pca-nnmf-and-ica-over-image-de-noising/)

- Informal verification of time series co-dependency

- [Functional parsers programming and basic applications](https://mathematicaforprediction.wordpress.com/?s=functional+parsers)

- [Recommendation engines](https://github.com/antononcube/Scalable-Recommender-Framework-project)

- [Lebesgue numerical integration](https://mathematicaforprediction.wordpress.com/2016/07/01/adaptive-numerical-lebesgue-integration-by-set-measure-estimates/)

- [Conversational engines](https://github.com/antononcube/ConversationalAgents)

## Mathematica's [`RLink`](https://reference.wolfram.com/language/RLink/tutorial/Introduction.html)

For more information about *Mathematica*'s [`RLink`](https://reference.wolfram.com/language/RLink/tutorial/Introduction.html)
see

- the YouTube video ["RLink: Linking Mathematica and R"](https://www.youtube.com/watch?v=5ppY7cTy71o),

- the set-up web page guide [Setting up RLink for Mathematica](http://szhorvat.net/pelican/setting-up-rlink-for-mathematica.html).

------

## Support & appreciation

[!["Buy Me A Coffee"](https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png)](https://www.buymeacoffee.com/antonov70)

😅 ☕️ 😀

------

Anton Antonov
22.10.2015, Florida, USA
29.10.2022, Florida, USA (update)