Bootcamp 2019     Agenda     Registration     About

Intro to Numpy and Scipy


Instructor bio

Description

This session covers the basics of Numpy, the package that underlies most scientific computing done in Python. It will explain the Numpy array, the principal data type in the Numpy package, and how it differs from similar Python structures like lists. There will be particular emphasis on understanding the two core features of Numpy arrasy – vectorization and broadcasting – and how they can be leveraged to write concise and powerful scientific code in Python. There will be hands-on exercises, including with multidimensional arrays.

Finally, we will discuss Scipy, a library of subpackages based on Numpy that have pre-existing code for everything from statistics to linear algebra to integration of differential equations.

Learning objectives

Participants will learn the basic syntax of Numpy arrays, as well as important dos and don’ts for how to use them in their own applications. Participants will also gain awareness of useful Numpy and Scipy packages and leave with enough know-how to incorporate those packages into their own codes.

Knowledge prerequisites

Participants should have reasonable facility with the Python programming language (the equivalent of PICSciE’s workshops on “Introduction to Python Using Python” and/or “Python Programming Techniques” should suffice, provided you have spent a modicum of time outside those workshops actually writing Python code). No previous experience with Numpy or Scipy is required.

Hardware/software prerequisites

Participants will need a laptop with a Python 3 installation that includes Numpy, Scipy, and Jupyter Notebooks (e.g. the Anaconda distribution). Those without Python 3 installed on their laptops but who have an account on Adroit](https://forms.rc.princeton.edu/registration/) should still be able to complete the exercises by logging onto Adroit (which has the necessary software installed).

Session format

Lecture, demo, and hands-on

Session Materials