What is Jupyter Notebook (RDQ#3)

Nicholas
4 min readDec 20, 2020

Whaddup doe? Welcome back, my name is Nicholas, and this is Random Data Science Questions where I do my best to cut the fluff and only give you non-null valued information, so let’s get straight to the point. What is Jupyter Notebook? Why are we using it? And are there any equivalent alternatives for the rebels and customizers out there? Brevity is the goal so we will answers these questions as quickly and thoroughly as possible.

So, what is Jupyter Notebook? Well, thanks to the internet there are a few definitions we can use. The first is directly from documentation.

The Jupyter Notebook App is a server-client application that allows editing and running notebook documents via a web browser. The Jupyter Notebook App can be executed on a local desktop requiring no internet access (as described in this document) or can be installed on a remote server and accessed through the internet.

Yea, that’s okay, but the explanation from RealPython.com is a bit better. They go a bit deeper on the capabilities:

The Jupyter Notebook is an open source web application that you can use to create and share documents that contain live code, equations, visualizations, and text. Jupyter Notebook is maintained by the people at Project Jupyter.

Much better. They provide an idea on how Jupyter Notebook can add value to our data science workflow. Now, here is my favorite explanation which comes from AIM, or analyticsindiamag.com in this article titled ‘Why Jupyter Notebooks are so popular among Data Scientist?’

An indirect acronym of three languages — Julia, Python and R — Jupyter Notebook is a client-based interactive web application that allows users to create and share codes, equations, visualisations, as well as text.

This quote gives us a better idea of what to expect from Jupyter Notebook. I compare using Jupyter Notebook to using something akin to IDLE in
Python.

So, why should I use Jupyter Notebook?

I found this beautiful snippet from datacamp that helps guide us through some pros.

Advantages of a Jupyter Notebook

Notebook has the ability to re-run individual code snippets, and it provides you the flexibility of modifying them before re-running.

You can deploy a Jupyter Notebook on a remote server and access it from your local web browser.

You can insert notes and documentation to your code in a Jupyter Notebook in various formats like markdown, latex, and HTML.

Headings in a Jupyter Notebook are also supported, which is very useful when you want to provide heading & sub-heading to signify various important parts of your codebase. It helps improve the readers’ experience.

These are only a few. You can go to Datacamp to view the entire list.

Here is a of bit Data Visualization to give you a better idea of what it looks like. Below is a snippet from the Hello Titanic exercise that I wrote and submitted to Kaggle.

It’s amazing how easy it is for us to build a function, label, organize, and later display our congregated data in an easy to read and understandable fashion.
I did not have to rewrite my entire function due to a missing colon or wait for my program to compile and run like an IDE (Integrated Developement Enviroment). I just select the execute option and…..

“Yea yea I hear you Nicholas, but how do I know you aren’t forcing me to choose Jupyter Notebook by only putting Jupyter Notebook in front of me?” Well, that’s a good question. There are other IDEs we can use like PyCharm and Atom, however, they do not give the same option to execute individual sections of code like Jupyter Notebook. You would have to rerun your entire code each time you want to test something.

If I’ve firmly convinced you to drop everything and download Jupyter
Notebook, you should probably know that there are multiple ways of running it. You can install it or you can use the web app. Whatever path you choose, I will drop a gem here from data camp guide you along the way.

We’ve covered 3 questions points. We went over what Jupyter Notebook is, the reasons we are using it for our data, the alternatives and why we won’t be using those. Hopefully this was helpful for you and quick enough.

--

--

Nicholas

Budding Data Scientist and aspiring NeuralEngineer