Book Image

Learning Jupyter

By : Dan Toomey
Book Image

Learning Jupyter

By: Dan Toomey

Overview of this book

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.
Table of Contents (16 chapters)
Learning Jupyter
About the Author
About the Reviewer

Julia parallel processing

An advanced built-in feature of Julia is to use parallel processing in your script. Normally, you can specify the number of processes that you want to use, directly in Julia. However, in Jupyter, you would use the addproc() function to add an additional process available for use in your script. For example, this small script:

r = remotecall(rand, 2, 3, 4)
s = @spawnat 2 1 .+ fetch(r)

This example makes a call to rand, the random number generator with that code executing on the 2nd parameter to the function call (process 2), and then passes the remaining arguments to the rand function there (making rand generate a 3 x 4 matrix of random numbers). spawnat is a macro that evaluates the processes mentioned. Then, fetch accesses the result of the spawned processes.

We can see the results in the example in Jupyter as shown in the following screenshot: