Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Learning Jupyter
Learning Jupyter

Learning Jupyter: Select, Share, Interact and Integrate with Jupyter Notebook

eBook
$9.99 $43.99
Paperback
$54.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Table of content icon View table of contents Preview book icon Preview Book

Learning Jupyter

Chapter 1. Introduction to Jupyter

Jupyter is a tool that allows data scientists to record their complete analysis process, much in the same way other scientists use a lab notebook to record tests, progress, results, and conclusions.

The Jupyter product was originally developed as part of the IPython project. The IPython project was used to provide interactive online access to Python. Over time it became useful to interact with other data analysis tools, such as R, in the same manner. With this split from Python, the tool grew into its current manifestation of Jupyter. IPython is still an active tool that's available for use. The name Jupyter itself is derived from the combination of Julia, Python, and R.

Jupyter is available as a web application from a number of places. It can also be used locally over a wide variety of installations. In this book, we will be exploring using Jupyter on a Mac and a Windows PC and over the Internet with other providers.

In this chapter, we will cover the following topics:

  • First look at Jupyter
  • Installing Jupyter on Windows
  • Installing Jupyter on Mac
  • Notebook structure
  • Notebook workflow
  • Basic notebook operations
  • Security in Jupyter
  • Configuration options for Jupyter

First look at Jupyter

Here is a sample opening page when using Jupyter (this screenshot is on a Windows machine):

First look at Jupyter

You should get yourself acquainted with the environment. The Jupyter user interface has a number of components:

  • Product title, Jupyter, in the top left (as expected). The logo and the title name are clickable and will return you to the Jupyter Notebook home page.
  • There are three tabs displayed: Files, Running, and Clusters:

    First look at Jupyter

    • The Files tab shows the list of files in the current directory of the page (described later on in this section).
    • The Running tab presents another screen of the currently running processes and notebooks. The drop-down lists for Terminals and Notebooks are populated with their running members:

      First look at Jupyter

    • The Clusters tab presents another screen to display the list of clusters available. This topic is covered in a later chapter:

      First look at Jupyter

  • In the top right corner of the screen are three buttons: Upload, New (menu), and a Refresh button.
  • The Upload button is used to add files to the notebook space. You may also just drag and drop as you would when handling files. Similarly, you can drag and drop notebooks into specific folders as well.
  • The menu with New at the top presents a further menu of Text File, Folder, Terminals Unavailable, Notebooks, and Python 2:

    First look at Jupyter

    • The Text File option is used to add a text file to the current directory. Jupyter will open a new browser window for you running a text editor. The text entered is automatically saved and will be displayed in your notebook's Files display:

      First look at Jupyter

      Note

      The default filename, untitled.txt, is editable.

    • The Folder option creates a new folder with the name Untitled Folder. Remember, all of the file/folder names are editable:

      First look at Jupyter

    • The Terminals Unavailable option is disabled for Windows. On a Mac, the option allows you to start an IPython session.
    • The Notebooks option will be activated when additional notebooks are available in your environment.
    • The Python 2 option is used to begin a Python 2 session interactively in your notebook. The interface looks like the following screenshot. You have full file editing capabilities for your script, including saving as a new file. You also have a complete working IDE for your Python script:

      First look at Jupyter

      Note

      Like the Text File and Folder option, you have created a Python script file in your notebook and it is running!

      First look at Jupyter

  • The refresh button is used to update the display. It's not really necessary as the display is reactive to any changes in the underlying file structure.
  • At the top of the Files tab's item list is a checkbox, a drop-down menu, and a home button:
    • The checkbox is used to toggle all the checkboxes in the Items list
    • The drop-down menu presents a list of the choices available, Folders, All Notebooks, Running, and Files, as shown in the following screenshot:

      First look at Jupyter

    • The Folders selection will select all the folders in the display and present a count of the folders in the small box
    • The All Notebooks selection will change the count to the number of notebooks and provide you with three options:
      • Duplicate the current notebook
      • Shut down the current notebook
      • Trash the current notebook
    • You can see them in the following screenshot:

      First look at Jupyter

    • The Running selection will select any running scripts and update the count to the number selected

      First look at Jupyter

    • The Files selection will select all of the files in the notebook display and update the count accordingly
    • The home button brings you back to the home screen of the notebook.

On the left-hand side of every item is a checkbox, an icon, and the item's name:

First look at Jupyter

  • The checkbox is used to build a set of files to operate upon.
  • The icon is indicative of the type of item. In this case, all of the items are folders.
  • The name of the item corresponds to the name of the object. In this case, the filenames are as used on the disk.

Installing Jupyter on Windows

Jupyter requires Python to be installed (it is based on the Python language). There are a couple of tools that will automate the installation of Jupyter (and optionally Python) from a GUI. In this case, we are showing how to install using Anaconda, which is a Python tool for distributing software. You first have to install Anaconda. It is available on Windows and Mac environments. Download the executable from https://www.continuum.io/ (company that produces Anaconda) and run it to install Anaconda. The software provides a regular installation setup process, as shown in the following screenshot:

Installing Jupyter on Windows

The installation process goes through the regular steps of making you agree to the distribution rights license:

Installing Jupyter on Windows

The standard Windows installation allows you to decide whether all users on the machine can run the new software or not. If you are sharing a machine with different levels of users, then you can decide the appropriate action:

Installing Jupyter on Windows

After clicking on Next, it will ask for a destination for the software to reside (I almost always keep the default paths):

Installing Jupyter on Windows

And, most importantly, make sure that Python installed with Anaconda provides your Python basis going forward (by being placed in the execution path). Remember, Anaconda uses Python tool itself, so this is important.

Note

This process takes some time to download and install.

Once Anaconda is installed, you need to run a command-line instruction to install Jupyter. The command is as follows:

conda install jupyter

This will invoke a process to download all the necessary components for Jupyter onto your PC. Your output should look something like this:

C:\Users\Dan>conda install jupyter
Using Anaconda Cloud api site https://api.anaconda.org
Fetching package metadata: ....
Solving package specifications: .........
# packages in environment at C:\Users\Dan\Anaconda2:
#
jupyter                   1.0.0                    py27_2

Note

Additional lines will be present for an install. I have abbreviated the output. You now have Jupyter installed on your machine. You can start the process using the following command:

C:\Users\Dan>jupyter notebook

This command is starting a Jupyter Notebook server on your machine. Once the server is started, a browser instance will be opened at the starting point of the notebook. You should see logging statements similar to the following on your machine as the server starts:

[I 16:21:59.144 NotebookApp] Writing notebook server cookie secret to C:\Users\Dan\AppData\Roaming\jupyter\runtime\notebook_cookie_secret
[I 16:21:59.846 NotebookApp] Serving notebooks from local directory: C:\Users\Dan
[I 16:21:59.846 NotebookApp] 0 active kernels
[I 16:21:59.846 NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/
[I 16:21:59.862 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).

Once Jupyter is running, you will notice a running icon for Jupyter (two inverted crescents) at the bottom of your screen:

Installing Jupyter on Windows

Note, the last line of the log is the instruction you must use to stop the server (press Ctrl + C in the command-line window where the server is running).

If you press Ctrl + C in that window, the Jupyter server will shut down gracefully:

[W 17:26:36.688 NotebookApp] 404 GET /favicon.ico (::1) 62.00ms referer=None
[W 17:26:36.750 NotebookApp] 404 GET /favicon.ico (::1) 0.00ms referer=None
[I 17:28:24.891 NotebookApp] Interrupted...
[I 17:28:24.891 NotebookApp] Shutting down kernels

You will notice that the Anaconda package has been installed on your application menu for further use:

Installing Jupyter on Windows

Installing Jupyter on Mac

On Mac, you can use the same Anaconda GUI (for Mac) as described in the previous section. You may also use the command-line tools available for Linux on your Mac.

You must first install Anaconda. Download the latest version and execute the embedded shell script to install.

Installing Jupyter on Mac is done through the command line using the conda install command:

bmac:~ dtoomey$ conda install jupyter 
Fetching package metadata: .... 
Solving package specifications: .................................... 
Package plan for installation in environment /Users/dtoomey/anaconda: 

The following packages will be downloaded:

    package                    |            build 
    ---------------------------|----------------- 
    mistune-0.7.2              |           py27_1         178 KB 
    setuptools-20.3            |           py27_0         453 KB 
    conda-4.0.5                |           py27_0         185 KB 
    pexpect-4.0.1              |           py27_0          63 KB 
    traitlets-4.2.1            |           py27_0         108 KB 
    ipython-4.1.2              |           py27_2         931 KB 
    jupyter_core-4.1.0         |           py27_0          51 KB 
    jupyter_client-4.2.2       |           py27_0          96 KB 
    jupyter_console-4.1.1      |           py27_0          24 KB 
    notebook-4.1.0             |           py27_2         4.4 MB 
    qtconsole-4.2.1            |           py27_0         160 KB 
    jupyter-1.0.0              |           py27_2           2 KB 
    ------------------------------------------------------------ 
                                           Total:         6.6 MB 

The following packages will be updated:

    conda:           3.19.3-py27_0 --> 4.0.5-py27_0 
    ipython:         4.1.2-py27_0  --> 4.1.2-py27_2 
    jupyter:         1.0.0-py27_1  --> 1.0.0-py27_2 
    jupyter_client:  4.1.1-py27_0  --> 4.2.2-py27_0 
    jupyter_console: 4.1.0-py27_0  --> 4.1.1-py27_0 
    jupyter_core:    4.0.6-py27_0  --> 4.1.0-py27_0 
    mistune:         0.7.1-py27_0  --> 0.7.2-py27_1 
    notebook:        4.1.0-py27_0  --> 4.1.0-py27_2 
    pexpect:         3.3-py27_0    --> 4.0.1-py27_0 
    qtconsole:       4.1.1-py27_0  --> 4.2.1-py27_0 
    setuptools:      20.1.1-py27_0 --> 20.3-py27_0 
    traitlets:       4.1.0-py27_0  --> 4.2.1-py27_0 
Proceed ([y]/n)? y 
Fetching packages ... 
mistune-0.7.2- 100% |#################| Time: 0:00:00   1.87 MB/s 
setuptools-20. 100% |#################| Time: 0:00:00   3.53 MB/s 
conda-4.0.5-py 100% |#################| Time: 0:00:00   2.47 MB/s 
pexpect-4.0.1- 100% |#################| Time: 0:00:00   1.26 MB/s 
traitlets-4.2. 100% |#################| Time: 0:00:00   1.71 MB/s 
ipython-4.1.2- 100% |#################| Time: 0:00:00   1.77 MB/s 
jupyter_core-4 100% |#################| Time: 0:00:00   2.34 MB/s 
jupyter_client 100% |#################| Time: 0:00:00   1.58 MB/s 
jupyter_consol 100% |#################| Time: 0:00:00   7.82 MB/s 
notebook-4.1.0 100% |#################| Time: 0:00:00   4.75 MB/s 
qtconsole-4.2. 100% |#################| Time: 0:00:00   1.37 MB/s 
jupyter-1.0.0- 100% |#################| Time: 0:00:00   2.71 MB/s 
Extracting packages ... 
[      COMPLETE ]|#############################################| 100% 
Unlinking packages ... 
[      COMPLETE ]|#############################################| 100% 
Linking packages ...
[      COMPLETE ]|#############################################| 100% 

Note

You have installed Jupyter.

Notebook structure

A Jupyter Notebook is fundamentally a JSON file with a number of annotations. The main parts of the Notebook are as follows:

  • Metadata: A data dictionary of definitions used to set up and display the notebook
  • Notebook format: Version numbers of the software used to create the notebook (the version number is used for backward compatibility)
  • List of cells: There are different types of cell for markdown (display), code (to execute), and output (of the code type cells)

Notebook workflow

The typical workflow is as follows:

  • Create a new notebook for a project or data analysis.
  • Add your analysis steps, coding, and output.
  • Surround your analysis with organizational and presentation markdown to communicate an entire story.
  • Interactive notebooks (that include widgets and display modules) would then be used by others by modifying parameters and data to note the effects of their changes. Your markdown would present the cases that a user may want to investigate and probable results.

Basic notebook operations

In this section, we describe the different operations that you can perform on your Jupyter Notebook. Most of the operations are menu functions that will change your display accordingly.

File operations

Let's walk through the basic file operations.

From the Files tab, we see a list of files and folders in the current notebook/disk folder. If we select (check) one of the files, we see the top-left menu change:

File operations

We now have choices of Duplicate, Rename, and delete (the trashcan icon). Note the number of files selected, 1, is displayed in the box as well.

Duplicate

If we hit the Duplicate button, we get a confirmation prompt with the name of the file selected for duplication:

Duplicate

Cancel will close the dialog. Duplicate will create another copy of the file with an appended copy number, as in the following screenshot. The original filename has been used with the addition of -Copyn in the filename, where n is the copy number. Note the original file extension, .properties, has been maintained in the new file:

Duplicate

Rename

Similarly, if we hit the Rename button, another dialog box will appear to prompt the new filename to apply. The main filename has been highlighted as it assumes you want to maintain the file extension as the file type has not changed:

Rename

Delete

We can also delete the file by clicking on the trashcan icon. This brings up a confirmation dialog box:

Delete

At the top right of the screen we have options for Upload and New (Text File, Folder, or Python 2).

Upload

The Upload button is more meaningful when the notebook is stored on a web server. When running it on your desktop, it allows you to move files easily from one part of your notebook to another. If you click the button, you are presented with a file selector dialog box. The following screenshot is specific to a Windows environment, but a similar display is presented on a Mac. Once you select a file, it will be added to your notebook space:

Upload

New text file

If we opt to create a New Text File, we are presented with a new browser panel in the Jupyter text editor (Note that I have shrunk down the size of the screen so the display fits the boundaries of this book):

New text file

There are several points of interest on this screen:

  • We are in a new browser panel (the notebook display is still present in the other tab).
  • The name of the new file is untitled1.txt. Using the same convention as duplication, the new filename starts with untitled.txt and is incremented as needed.
  • Curiously, it mentions when the file was created.
  • In the top-right corner, we see Plain Text. So, we might expect to see some other description here for other file types.
  • We have a new menu, File, Edit, View, and Language.
  • The File menu has the following options:
    • New: Start another new text window
    • Save: Save/update the current text file into the notebook area
    • Rename: Change the name of the file (unlikely you would want to keep the untitledn name provided)
    • Download: Again, an option that makes more sense if your notebook is running on the Web. As explained for Upload, Download on a desktop installation allows you to copy a file to another part of your machine.

  • The Edit menu has the following options:
    • Find: Search for a string.
    • Find & Replace: Search for and replace a string.
    • Separator: The options for adjusting the text editor in use are below this line.
    • Key Map: Set your own function mapping for your keyboard.
    • Default: Checked as it is the default choice. This means to use the default text editor.
    • Sublime text: If you would prefer to use the Sublime editor.
    • Vim: If you would prefer to use Vim.
    • Emacs: If you would prefer to use Emacs.

  • The View menu only has an option to Toggle Line Numbers. I imagine future revisions of the package will have additional features. Similarly, for other file types, the menu may change.
  • The Language menu allows you to specify whether this text file is a specific type of programming file. This allows syntax highlighting, which is a major feature of source editors. The list is extensive:

New text file

New folder

The New Folder option creates a new folder with the naming convention Untitled Folder n.

New Python 2

The New Python 2 option creates a new Python 2 session. You are presented with a new browser panel with a similar naming convention, as seen in the following screenshot.

This is a very different presentation, where Python code is expected to be entered in the cells on the page with results displayed below each cell.

There is an extensive menu with File, Edit, View, Insert, Cell, Kernel, and Help options. We have a fairly complete Integrated  Development  Environment (IDE) for creating Python coding:

New Python 2

The File menu has the following options:

  • New Notebook: Start a new notebook (another browser panel like this one)
  • Open...: Select a file to open from the notebook Files view
  • Make a Copy...: Copy the current notebook completely into another browser panel
  • Rename...: Rename the current notebook
  • Save and Checkpoint: Save the current notebook and record a checkpoint

Note

A checkpoint is a point in time where all information about a notebook is preserved. You can have many checkpoints and return the state of your notebook to the previous checkpoint state at any time. This is an excellent way to give yourself the room to try out a new angle on your analysis without risking losing what you have done so far.

  • Revert to Checkpoint: Revert your notebook to a previous checkpoint
  • Print Preview: Present a preview of the printed form of your notebook
  • Download as: Download the notebook in a variety of formats:
    • IPython notebook (its current form)
    • IPython
    • HTML representation
    • Markdown-a specialized display format
    • reST--reStructuredText-an easy to read, plain text markup
    • PDF
    • Presentation

  • Close and Halt: Close the current notebook and stop any running scripts

The Edit menu has the following options:

  • Cut Cells: Cut the currently selected cells to the clipboard

Note

Each of the rectangular work areas in your notebook is a cell. The innermost text area is where you enter code. Below that (but within the surrounding rectangle), the results of each code stop will be displayed.

  • Copy Cells: Copy cells from the clipboard to the current cursor position
  • Paste Cells Above: Paste cells from the clipboard above the current cell
  • Paste Cells Below: Paste cells from the clipboard below the current cell
  • Paste Cells & Replace: Paste the cells from the clipboard on top of the current cell
  • Delete Cells: Delete the current cells
  • Undo Delete Cells: Revert the last Delete Cells invocation
  • Split Cell: Split up a cell from the current cursor position
  • Merge Cell Above: Merge the current cell with the one above
  • Merge Cell Below: Merge the current cell with the one below
  • Edit Notebook Metadata: Every notebook has underlying metadata that describes the characteristics of the notebook. Advanced users can manipulate this data directly in order to adjust features more readily. For example, the current notebook metadata looks like the following screenshot:

New Python 2

  • Find and Replace: Allow us to find and replace among the selected cells. There is a standardized dialog box for this, as shown in the following screenshot:

New Python 2

As seen in the preceding screenshot, the parameters and their functions are as follows:

  • The Aa icon toggle determines whether a case-insensitive search is made
  • The * icon toggle determines whether a regex search is made
  • The stacked lines icon toggle is whether a replace will be made
  • The Find text block presents the search criteria
  • The Replace text block is used for the replacement text

The View menu has the following options:

  • Toggle Header: Toggles the display of the Jupyter logo and filename
  • Toggle Toolbar: Toggles the display of the toolbar
  • Cell Toolbar: Toggles the display of the cell action icons

The Insert menu has the following options:

  • Insert Cell Above: Add a new cell above the current one
  • Insert Cell Below: Add a new cell below the current one

The Cell menu has the following options:

  • Run Cells: Run the selected (or all) cells.
  • Run Cells and Select Below: Run the current cells down and create a new one below.
  • Run Cells and Insert Below: Run the current cells and create a new one above.
  • Run All: Run all cells.
  • Run All Above: Run all cells prior to the current cell.
  • Run All Below: Run all cells below the current cell.
  • Cell Type: Change the type of cell selected to Code, Markdown, or Raw NBConvert. There is an automatic message that is displayed noting that all cells are by default Code type.
  • Current Outputs and All Output have options to toggle their display.

The Kernel menu has the following options:

  • Interrupt: Send a keyboard interrupt, Ctrl + C, to the kernel. This is useful if your code is in an endless loop.
  • Restart: Restart the kernel.
  • Restart & Clear Output: Restart the kernel and clear all output anew.
  • Restart & Run All: Restart the kernel and run all cells.
  • Reconnect: Connect back to a remote notebook.
  • Change Kernel: Not useful as only Python 2 is available at this point.

The Help menu has the following options:

  • User Interface Tour: Walk the user through a UI tour
  • Keyboard Shortcuts: Presents a list of built-in keyboard shortcuts
  • Notebook Help: Help topics on the notebook
  • Markdown: Description of the markdown available within a notebook
  • Python, IPython, NumPy, SciPy, Matplotlib, SymPy, Pandas: Help topics on the various languages and packages that can be used in notebooks
  • About: A standard about box

There is an icon panel below the menu that has shortcut icons for the following functions:

  • Floppy disk icon: Save and Checkpoint
  • Plus sign: Insert Cell Below
  • Scissors: Cut Cell
  • Duplicate pages: Copy Cell
  • Up arrow: Move Cell Up
  • Down arrow: Move Cell Down
  • An icon that looks like a speaker: Run the current cell
  • Black square: Interrupt Kernel
  • Circular arrow: Restart the Kernel
  • There's a drop-down menu for display characteristics:
    • Code
    • Markdown
    • Raw NBConvert
    • Heading

  • Keyboard: Open the command palette
  • Change the current toolbar in use. Clicking on the Cell Toolbar button auto-displays the Cell Toolbar choice from the View menu:

New Python 2

Security in Jupyter

Jupyter notebooks are created in order to be shared with other users, in many cases over the Internet. However, Jupyter notebooks can execute arbitrary code and generate arbitrary code. This can be a problem if malicious aspects have been placed in a notebook. The default security mechanisms for Jupyter notebooks include the following:

  • Raw HTML is always sanitized (checked for malicious coding). Further information can be found at https://developers.google.com/caja.
  • You cannot run external JavaScript.
  • Cell contents (especially HTML and JavaScript) are not trusted (requires user validation to continue).
  • The output from any cell is not trusted.
  • All other HTML or JavaScript is never trusted. Clearing the output will cause the notebook to become trusted when saved.

Security digest

Notebooks can also use a security digest to ensure the correct user is modifying the contents. A digest takes into account the entire contents of the notebook and a secret (only known by the notebook creator). This combination ensures that malicious coding is not going to be added to a notebook.

You add a security digest to a notebook using the following command:

~/.jupyter/profile_default/security/notebook_secret

Here, you replace the notebook_secret part with your secret.

Trust options

You can specifically apply your trust to a notebook using a command-line option:

jupyter trust /path/to/notebook.ipynb

Or you can do it once the notebook is opened by the File | Trusted  Notebook menu option.

Configuration options for Jupyter

You can configure some of the display parameters used when presenting notebooks. These are configurable due to the use of a product (CodeMirror) to present and modify the notebook. CodeMirror is a JavaScript-based editor for use within web pages (notebooks).

The list of configurable options is still in development. Some of the options are as follows:

  • lineSeparator: The character used to separate text lines
  • theme: The overall theme of presentation used in the notebook
  • indentUnit: How many spaces to indent blocks of coding

To change the configuration of one of the options, you open the JavaScript window of your browser, enter the coding to modify an option, and then load your notebook. Then the modifications you made would be applied to the notebook presentation. There is further documentation available at https://codemirror.net/doc/manual.html#option_indentUnit.

For example, to change the indentation (indent-unit) for your notebook, you would use the following JavaScript:

var mycell = Jupyter.notebook.get_selected_cell();
var cell_config = mycell.config;
var code_patch = {
      CodeCell:{
        cm_config:{indentUnit:2}
      }
    }
cell_config.update(code_patch)

You have now seen all of the standard operations available to you in a Jupyter Notebook.

Summary

In this chapter, we investigated the various user interface elements available in a notebook. We learned how to install the software on a Mac or a PC. We were exposed to the notebook structure. We saw the typical workflow used when developing a notebook. We walked through the user interface operations available in a notebook. And lastly, we saw some of the configuration options available to advanced users for their notebook.

In the next chapter, we will learn all about Python scripting in a Jupyter Notebook.

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Learn to write, execute, and comment your live code and formulae all under one roof using this unique guide
  • This one-stop solution on Project Jupyter will teach you everything you need to know to perform scientific computation with ease
  • This easy-to-follow, highly practical guide lets you forget your worries in scientific application development by leveraging big data tools such as Apache Spark, Python, R etc

Description

Jupyter Notebook is a web-based environment that enables interactive computing in notebook documents. It allows you to create and share documents that contain live code, equations, visualizations, and explanatory text. The Jupyter Notebook system is extensively used in domains such as data cleaning and transformation, numerical simulation, statistical modeling, machine learning, and much more. This book starts with a detailed overview of the Jupyter Notebook system and its installation in different environments. Next we’ll help you will learn to integrate Jupyter system with different programming languages such as R, Python, JavaScript, and Julia and explore the various versions and packages that are compatible with the Notebook system. Moving ahead, you master interactive widgets, namespaces, and working with Jupyter in a multiuser mode. Towards the end, you will use Jupyter with a big data set and will apply all the functionalities learned throughout the book.

Who is this book for?

This book caters to all developers, students, or educators who want to execute code, see output, and comment all in the same document, in the browser. Data science professionals will also find this book very useful to perform technical and scientific computing in a graphical, agile manner.

What you will learn

  • Install and run the Jupyter Notebook system on your machine
  • Implement programming languages such as R, Python, Julia, and JavaScript with Jupyter Notebook
  • Use interactive widgets to manipulate and visualize data in real time
  • Start sharing your Notebook with colleagues
  • Invite your colleagues to work with you in the same Notebook
  • Organize your Notebook using Jupyter namespaces
  • Access big data in Jupyter
Estimated delivery fee Deliver to United States

Economy delivery 10 - 13 business days

Free $6.95

Premium delivery 6 - 9 business days

$21.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Nov 30, 2016
Length: 238 pages
Edition : 1st
Language : English
ISBN-13 : 9781785884870
Category :
Languages :
Concepts :
Tools :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Estimated delivery fee Deliver to United States

Economy delivery 10 - 13 business days

Free $6.95

Premium delivery 6 - 9 business days

$21.95
(Includes tracking information)

Product Details

Publication date : Nov 30, 2016
Length: 238 pages
Edition : 1st
Language : English
ISBN-13 : 9781785884870
Category :
Languages :
Concepts :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 150.97
Modern Python Cookbook
$51.99
Learning Jupyter
$54.99
Jupyter for Data Science
$43.99
Total $ 150.97 Stars icon
Banner background image

Table of Contents

10 Chapters
1. Introduction to Jupyter Chevron down icon Chevron up icon
2. Jupyter Python Scripting Chevron down icon Chevron up icon
3. Jupyter R Scripting Chevron down icon Chevron up icon
4. Jupyter Julia Scripting Chevron down icon Chevron up icon
5. Jupyter JavaScript Coding Chevron down icon Chevron up icon
6. Interactive Widgets Chevron down icon Chevron up icon
7. Sharing and Converting Jupyter Notebooks Chevron down icon Chevron up icon
8. Multiuser Jupyter Notebooks Chevron down icon Chevron up icon
9. Jupyter Scala Chevron down icon Chevron up icon
10. Jupyter and Big Data Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1
(3 Ratings)
5 star 0%
4 star 0%
3 star 0%
2 star 0%
1 star 100%
Axel Willy Jan 28, 2017
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1
Selbst für Einsteiger nicht zu gebrauchen. Ein paar Seiten Text kopiert aus Manpages, dazu sehr viele übergroße Screenshots. Informationsgehalt fast nicht vorhanden. Buch zurück geschickt.
Amazon Verified review Amazon
Drew Dec 04, 2018
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1
There are things that could be useful theoretically. Starting with my first gripe - The book states that it is using Python 2. It is November, 2016 - and Python 2 is dead. I don't have a problem with using Python2, but I do have a problem with not identifying that you use Python 2. It just comes across as false advertising.Don't worry, that isn't my only gripe. There are a few things, like commands on how to use Jupyter that you may find useful, but a quick internet search may prove more useful. The word vomit continually shows little understanding of what is going on. That means this isn't even a language barrier, it is just plain bad. I included to screenshots. It shows commentary that conveys that he doesn't understand what is going on, while using built in datasets. I was using those datasets on day 1 of my exposure to the material. 'I understand that he doesn't understand why numbers don't add up to 100%. But he needs to follow it up with details on whether there is data actually missing (which represents an unaddressed category), whether there is an error in the math (like floating point error), or what is going on. As it is, I assume that this is his first exposure, and he just tells the readers that sometimes there are problems. Not that the writer will take any action to resolve them.The statistics one is a great expression of incompetence. If you are going to use a statistical methodology, at least understand statistics. The Standard Deviation won't drift a lot when rolling two six-sided dice. The theoretical odds of the sum are always between 2 and 12. The small domain limits the statistical data quite nicely. There are specific patterns which we don't need to go into, but needless to say, it makes the writer appear incompetent about his chosen content. I could read more, but why?
Amazon Verified review Amazon
Matt Mar 28, 2017
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1
Only Windows and Mac OS. No Linux. Not helpful.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact customercare@packt.com with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at customercare@packt.com using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on customercare@packt.com with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on customercare@packt.com within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on customercare@packt.com who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on customercare@packt.com within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela