For assistance, please submit a request.
You can also reach us via the chat below, email data.services@nyu.edu, or join Discord server.
If you've met with us before, tell us how we're doing.
Stay in touch by signing up for our Data Services newsletter.
Bobst Library, 5th floor
Mondays: 12pm - 5pm
Tuesdays: 12pm - 5pm
Wednesdays: 12pm - 5pm
Thursdays: 12pm - 5pm
Fridays: 12pm - 5pm
The Jupyter Notebook is an interactive computing environment that enables users to author notebook documents that include code, interactive widgets, plots, narrative text, equations, images and even video! The Jupyter name comes from 3 programming languages: Julia, Python, and R. It is a popular tool for literate programming. Donald Knuth first defined literate programming as a script, notebook, or computational document that contains an explanation of the program logic in a natural language (e.g. English or Mandarin), interspersed with snippets of macros and source code, which can be compiled and rerun. You can think of it as an executable paper!
The Jupyter Notebook combines three components (from the docs):
The notebook web application: An interactive web application for writing and running code interactively and authoring notebook documents.
Kernels: Separate processes started by the notebook web application that runs users’ code in a given language (e.g. python, R, Julia, Go, and more -- get the full list of kernels from the wiki) and returns output back to the notebook web application. The kernel also handles things like computations for interactive widgets, tab completion and introspection.
Notebook documents: Self-contained documents that contain a representation of all content visible in the notebook web application, including inputs and outputs of the computations, narrative text, equations, images, and rich media representations of objects. Each notebook document has its own kernel. You can export your notebook as many other formats, even LaTex and PDF!
The main components of the interface, from top to bottom:
.ipynb
file.Jupyter notebooks can be comprised mainly of two types of cells (though more can be added with plugins).
Some key jupyter notebook shortcuts to keep in mind while you work:
Use shift + enter
to run an active cell
Use esc in highlighted cell to toggle command options:
esc + L shows line numbers
esc + M formats cell as Markdown cell
esc + a inserts a cell above current cell
esc + b inserts a cell below current cell
Check all current variables: run %whos
from a code cell
You can install Jupyter notebooks and some key kernels on your computer in a few ways:
Our recommended method is to download using Anaconda (make sure you select version 3.*), which gives you Jupyter, python 3, and a lot of key python libraries for research: https://www.anaconda.com/download/. After you've finished downloading + installing with Anaconda, you should see an application "Jupyter notebooks" in your list of applications.
If you're comfortable with the terminal you can also install Jupyter Notebooks with pip:
python3 -m pip install --upgrade pip
python3 -m pip install jupyter
jupyter notebooks # launches the notebook interface