Jupyter notebook
What is Python? • Python is an interpreted language. •
Python is an object-oriented, high-level programming
language for general-purpose programming • Created
by Guido van Rossum and first released in 1991
Advantages of Python • Extensive Support Libraries •
Integration Feature • Improved Programmer’s
Productivity
What is R ? • R is a language and environment for
statistical computing and graphics. • It is a GNU project
which is similar to the S language and environment
which was developed at Bell Laboratories (formerly
AT&T, now Lucent Technologies) by John Chambers and
colleagues. • R can be considered as a different
implementation of S
What is Julia? • Julia is a high-level, high-performance
dynamic programming language for numerical
computing. • Julia provides a sophisticated compiler,
distributed parallel execution, numerical accuracy, and
an extensive mathematical function library. • Julia’s
Base library, largely written in Julia itself. • It integrates
mature, best-of-breed open source C and Fortran
libraries for linear algebra, random number
generation, signal processing, and string processing
Advantages of Julia • Multiple dispatch: providing the
ability to define function behaviour across many
combinations of argument types. • Good performance,
approaching that of statically-compiled languages like C
• Built-in package manager • Call Python functions: use
the PyCall package • Call C functions directly: no
wrappers or special APIs
Limitations of Julia • Not fully stabilized • Lesser
scientific tools • Slower
What is Jupyter? • Ju(lia) + Py(thon) + (e)R • The
Jupyter Notebook is an open-source web application
that allows you to create and share documents. • This
document contain live code, equations, visualizations
and narrative text.
Advantages of Jupyter? • Useful for data cleaning and
transformation, numerical simulation, statistical
modelling, data visualization, machine learning, and
much more. • Language of choice 40+ Languages •
Notebooks can be shared with others using email,
Dropbox, GitHub and the Jupyter Notebook Viewer. •
Your code can produce rich, interactive output: HTML,
images, videos, and custom MIME types. • Big data
integration - Leverage big data tools, such as Apache
Spark, from Python, R and Scala. Explore that same
data with pandas, scikit-learn, ggplot2, TensorFlow.
Limitations of Jupyter • It messes with your version
control. • The Jupyter Notebook format is just a big
JSON, which contains your code and the outputs of the
code • Code can only be run in chunks.