We may earn an affiliate commission when you visit our partners.
Take this course
TM Quest

Do you want to learn NumPy and get started with data analysis in Python? This course is both a comprehensive and hands-on introduction to NumPy.

What this course is all about:

In this course, we will teach you the ins and outs of the Python library NumPy. This library is incredibly powerful and is used for scientific computing, linear algebra, image processing, machine learning, and more. If you are interested in one of these topics or simply want to get started with data science in Python, then this is the course for you.

Read more

Do you want to learn NumPy and get started with data analysis in Python? This course is both a comprehensive and hands-on introduction to NumPy.

What this course is all about:

In this course, we will teach you the ins and outs of the Python library NumPy. This library is incredibly powerful and is used for scientific computing, linear algebra, image processing, machine learning, and more. If you are interested in one of these topics or simply want to get started with data science in Python, then this is the course for you.

The course will teach you everything you need to know to professionally use NumPy. We will start with the basics, and then gradually move on to more complicated topics. As NumPy is the fundamental building block for other popular Python libraries like Pandas, Scikit-Learn, and PyTorch, it's a great library to get you started with data science in Python.

Why choose us?

This course is a comprehensive introduction to NumPy. We don't shy away from the technical stuff and want you to stand out with your newly learned NumPy skills.

The course is filled with carefully made exercises that will reinforce the topics we teach. In between videos, we give small exercises that help you reinforce the material. Additionally, we have larger exercises where you will be given a Jupiter Notebook sheet and asked to solve a series of questions that revolve around a single topic. We give exercises on awesome topics like audio processing, linear regression, and image manipulation.

We're a couple (Eirik and Stine) who love to create high-quality courses. In the past, Eirik has taught both Python and NumPy at the university level, while Stine has written learning material for a university course that has used NumPy. We both love NumPy and can't wait to teach you all about it.

Topics we will cover:

We will cover a lot of different topics in this course. In order of appearance, they are:

  • Introduction to NumPy

  • Working with Vectors

  • Universal Functions and Plotting

  • Randomness and Statistics

  • Making and Modifying Matrices

  • Broadcasting and Advanced Indexing

  • Basic Linear Algebra

  • Understanding n-dimensional Arrays

  • Fourier Transforms

  • Advanced Linear Algebra

  • Saving and Loading Data

By completing our course, you will be comfortable with NumPy and have a solid foundation for topics like data science and machine learning in Python.

Still not decided?

The course has a 30-day refund policy, so if you are unhappy with the course, then you can get your money back painlessly. If are still uncertain after reading this, then take a look at some of the free previews and see if you enjoy them. Hope to see you soon.

Enroll now

What's inside

Learning objectives

  • Learn to confidently work with vectors and matrices in numpy.
  • Learn basic functionality like sorting, calculating means, and finding max/min values.
  • Learn to draw line plots, bar plots, and scatterplots.
  • Learn to generate different types of random vectors.
  • Learn to modify and reshape matrices to your advantage.
  • Learn boolean indexing and advanced slicing to extract useful information.
  • Learn to do basic linear algebra in numpy like solving linear systems, calculating inverses, and more!
  • Get an understanding of how ndarrays work and utilize this to create fast code.
  • Learn fourier transforms with numpy and use this to manipulate images and audio.
  • Learn advanced linear algebra like the qr decomposition and partial least squares.
  • Learn how to preserve your numpy objects in different formats.
  • Learn about neighboring libraries and that numpy is used everywhere in python's data science stack.
  • Show more
  • Show less

Syllabus

Introduction

In this lecture, we are introducing NumPy and its advantages.

Here you can download all the material for the course in a Zip file.

Read more

In this lecture, we are installing Anaconda which we are going to use throughout the course.

In this lecture, we are learning about markdown cells in Jupyter notebooks.

In this lecture, we are learning about code cells in Jupyter notebooks.

In this lecture, we are going to learn how to import the NumPy package.

In this video, we give you an outline of what we will cover in this module.

In this video, we will learn how to create and index vectors.

In this video, we will show you the basic operations between vectors in NumPy.

In this video, we discuss the various data types that NumPy have.

In this video, we will show you how slicing works with NumPy vectors.

In this video, we will show you how sorting works in NumPy.

In this video, we will explain the difference between copies and views in NumPy.

In this quiz, we are going to test your knowledge about vectors so far. Are you ready?

In this video, we will show you how to use aggerate functions (like sum and mean) to calculate interesting summaries of NumPy vectors.

In this exercise set, we will be working with temperature data from New York!

Introduction to universal functions and plotting.

In this lecture, we are going to learn to use universal functions in NumPy.

In this lecture, we are going to learn to use NumPy together with MatPlotLib to plot functions.

In this quiz, we are going to test you on universal functions and plotting. Are you ready?

In this lecture, we are going to learn to use NumPy together with MatPlotLib to plot bar and scatter plot.

In this exercise set, we will continue working with temperature data from New York.

In this video, we will introduce the topics that we will go through in the module.

In this video, we show you how to generate random integers in NumPy.

In this video, we show you how to use the functions random, shuffle, and choice.

This quiz is about random numbers. Are you ready?

In this video, we will show you how to work with the normal distribution in NumPy.

In this video, we will explain how to calculate basic statistics in NumPy.

In this video, we will explain how to find the unique elements in an array.

In this exercise set, we will be going through linear regression and practising the concepts in this module.

This is the introduction video to this module.

In this lecture, we are going to introduce matrices/2d-arrays.

In this lecture, we are going to learn about the attributes of a matrix.

In this lecture, we are going to learn how to change the shape of a matrix.

In this lecture, we are going to learn how to calculate the mean and sum with respect to columns or rows.

In this lecture, we are going to learn how to work with Boolean matrices.

This video goes through the exercise set of this module.

In this introduction, we give an outline of what we will cover in this module.

In this video, we will give some basic examples of broadcasting.

In this video, we discuss in detail the broadcasting rules of NumPy.

This quiz is about broadcasting. Are you ready?

In this video, we show you how slicing works for 2D arrays (matrices).

In this video, we will explain some advanced indexing features that NumPy has.

In this exercise set, we will be working with monochromatic images (images with a single color channel).

This video is the introduction video to the linear algebra module.

In this lecture, we are going to explore some basic linear algebra operations.

In this lecture, we are going to explore the cross-product and norm in NumPy.

In this lecture, we are going to explore the matrix product and transpose in NumPy.

This lecture is about solving linear systems in NumPy.

In this quiz, we will test you on linear systems. Are you ready?

This lecture is a continuation of solving linear systems in NumPy.

This video is an introduction to the exercise set in this section.

In this video, we will give an outline of what we will cover in the module.

In this video, we will show you how to make general ndarrrays.

In this quiz, we will test you on higher-dimensional arrays. Are you ready?

In this video, we will show you how to do slicing and aggregate functions on higher-dimensional arrays.

In this video, we will work with images as an example of 3D arrays.

In this video, we will explain how strides work and why this is useful to know.

In this exercise set, we will be working with RGB images.

This is the introduction video to the Fourier transform.

In this lecture, we are going to explore complex vectors.

In this lecture, we are going to explore the 1-dimensional Fourier transform.

In this lecture, we are going to continue exploring the 1-dimensional Fourier transform.

In this lecture, we are going to smooth a signal using the Fourier transform in NumPy.

This lecture is all about the 2D Fourier transform.

In this exercise, we are going to explore an audio signal using NumPy.

In this video, we will give an outline of the topics covered in this module.

In this video, we will explain how to find eigenvectors and eigenvalues in NumPy.

In this video, we will explain three types of matrices; diagonal matrices, orthogonal matrices, and upper-triangular matrices.

In this video, we will explain the QR decomposition.

In this quiz, we will test your knowledge of the QR decomposition and eigenvalues. Are you ready?

In this video, we will explain the method of partial least squares.

In this exercise set, we will be practising our advanced linear algebra skills.

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Provides a solid foundation in NumPy, which is a fundamental building block for other popular Python libraries like Pandas, Scikit-Learn, and PyTorch, making it ideal for those starting with data science
Starts with the basics of NumPy and gradually progresses to more complicated topics, ensuring that learners with little to no prior experience can follow along and build a strong understanding
Includes carefully crafted exercises, including smaller exercises between videos and larger exercises with Jupyter Notebooks, to reinforce learning and provide practical experience with NumPy
Features exercises on topics like audio processing and image manipulation, offering practical applications of NumPy in these domains and making the course relevant to learners with specific interests
Covers basic and advanced linear algebra concepts in NumPy, including solving linear systems, calculating inverses, QR decomposition, and partial least squares, making it suitable for learners interested in mathematical computing
Explores Fourier transforms with NumPy and demonstrates their use in manipulating images and audio, providing a unique perspective on signal processing and its applications in various fields

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Comprehensive numpy for scientific computing

According to learners, this course provides a comprehensive introduction to NumPy, covering both fundamental concepts like vectors and matrices and more advanced topics such as linear algebra and Fourier transforms. Many students found the practical exercises to be particularly valuable for solidifying understanding and applying concepts to real-world scenarios like image and audio processing. While generally well-received, some found the pace challenging when moving into the more advanced sections. The lectures are often described as clear, building a strong foundation for further study in fields like data science and machine learning. The instructors' expertise is frequently highlighted as a positive aspect.
Covers advanced areas like Fourier.
"It was great to see topics like Fourier Transforms and advanced linear algebra included."
"The section on Fourier Transforms was interesting but quite challenging; I had to look up external resources."
"Advanced linear algebra was covered, giving a good overview, but perhaps not enough depth for specialists."
"I appreciated the inclusion of higher-dimensional arrays and their applications."
Good for some, challenging for others.
"The pacing was just right for me, building up gradually from the basics."
"Some of the later topics moved quite quickly; I needed to pause and rewatch lectures."
"While it starts beginner-friendly, you might need some prior Python experience for the more advanced modules."
"Felt like the difficulty ramped up significantly towards the end, especially with advanced linear algebra."
Instructors explain concepts well.
"The instructors clearly know their stuff and explain complex topics in a way that is easy to follow."
"I appreciated the clear explanations and enthusiasm from Eirik and Stine."
"Their teaching style made learning NumPy engaging and less intimidating."
"Excellent instruction throughout the course."
Hands-on practice with real-world data.
"The exercises were incredibly helpful for applying the concepts learned in the lectures. Working with images and audio was cool."
"I found the hands-on assignments, especially the Jupyter Notebooks, crucial for reinforcing my understanding."
"The practical examples using real-world data were a great way to see how NumPy is used in practice."
"Solving problems in the notebooks made the abstract concepts much clearer and more tangible."
Builds a solid base for data science.
"This course was a fantastic and comprehensive dive into NumPy. Covered everything I needed to get started."
"I got a strong foundation for working with NumPy arrays and operations, essential for data science."
"It really covered the breadth of NumPy features, from basics to more complex operations."
"This gave me the tools I needed to understand and work with data structures common in scientific computing."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Master Scientific Computing in Python with NumPy with these activities:
Review Linear Algebra Fundamentals
Strengthen your understanding of linear algebra concepts before diving into NumPy's linear algebra functionalities. This will make it easier to grasp the underlying principles and apply them effectively.
Browse courses on Linear Algebra
Show steps
  • Review matrix operations such as addition, subtraction, and multiplication.
  • Practice solving systems of linear equations.
  • Study eigenvalues and eigenvectors.
Review 'Python Data Science Handbook'
Supplement your learning with a comprehensive guide to data science in Python. This book provides a broader context for NumPy and its applications.
Show steps
  • Read the chapters related to NumPy arrays and operations.
  • Work through the examples provided in the book.
  • Compare the book's explanations with the course material.
NumPy Array Manipulation Exercises
Reinforce your understanding of NumPy array manipulation by completing targeted exercises. This will improve your proficiency in reshaping, indexing, and slicing arrays.
Show steps
  • Find online resources with NumPy practice problems.
  • Complete exercises on array reshaping and transposing.
  • Practice advanced indexing and slicing techniques.
  • Work through exercises involving broadcasting.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Create a NumPy Cheat Sheet
Consolidate your knowledge by creating a cheat sheet of commonly used NumPy functions and techniques. This will serve as a valuable reference for future projects.
Show steps
  • Identify the most important NumPy functions and concepts.
  • Organize the information into a clear and concise format.
  • Include examples of how to use each function.
  • Share your cheat sheet with other learners.
Image Processing with NumPy
Apply your NumPy skills to a real-world image processing project. This will solidify your understanding of array manipulation, Fourier transforms, and linear algebra in a practical context.
Show steps
  • Choose an image processing task, such as noise reduction or edge detection.
  • Load an image into a NumPy array.
  • Implement the chosen image processing algorithm using NumPy functions.
  • Visualize the processed image.
Review 'Numerical Python'
Deepen your understanding of the numerical methods underlying NumPy. This book provides a more theoretical perspective on the library's functionalities.
View Numerical Python on Amazon
Show steps
  • Read the chapters related to linear algebra and Fourier analysis.
  • Study the mathematical derivations of the algorithms.
  • Compare the book's explanations with the course material.
Contribute to NumPy Documentation
Enhance your understanding of NumPy by contributing to its open-source documentation. This will require you to thoroughly understand the library's functionalities and explain them clearly to others.
Show steps
  • Identify areas in the NumPy documentation that need improvement.
  • Write clear and concise explanations of NumPy functions or concepts.
  • Submit your contributions to the NumPy project.

Career center

Learners who complete Master Scientific Computing in Python with NumPy will develop knowledge and skills that may be useful to these careers:
Data Scientist
A data scientist analyzes large datasets to extract meaningful insights and develop data driven solutions. This course helps build a foundation in NumPy, which is critical for data manipulation, analysis, and scientific computing in Python. The course covers essential topics like statistical analysis, linear algebra, and array manipulation, all of which data scientists use regularly. A data scientist should find the comprehensive coverage of NumPy valuable. The course helps provide a solid foundation for other Python data science libraries.
Scientific Programmer
A scientific programmer develops software for scientific research and development. This course helps build a foundation in NumPy, a fundamental library for scientific computing in Python. The course covers a wide range of topics, including linear algebra, Fourier transforms, and n-dimensional arrays, all of which are essential for scientific programming tasks. A scientific programmer may find the course to be a comprehensive introduction to NumPy. The course directly addresses the needs of scientific programmers by delving into the technical aspects of NumPy.
Data Analyst
A data analyst interprets data, analyzes results, and provides ongoing reports. This course helps build a foundation in using NumPy, a fundamental building block for other popular Python libraries like Pandas, which is essential for data analysis and manipulation. The course covers topics like universal functions, plotting, randomness, and statistics, all of which are used extensively in data analysis. NumPy is a core skill for a data analyst. A prospective data analyst may find the exercises on audio processing, linear regression, and image manipulation particularly helpful for practical application.
Machine Learning Engineer
A machine learning engineer designs, develops, and deploys machine learning models. This course helps build a foundation in NumPy, which is used for scientific computing, linear algebra, and more, which are all vital in machine learning. The course covers topics like matrix operations, linear algebra, and Fourier transforms, that are used in machine learning algorithms. A machine learning engineer needs a solid grasp of NumPy, and this course provides that. One who wishes to become a machine learning engineer may appreciate that the course includes exercises covering linear regression and image manipulation.
Research Scientist
A research scientist conducts experiments and analyzes data to advance knowledge in a specific field. This course helps build a foundation in NumPy, which is used extensively in scientific research for data analysis and numerical modeling. The course covers topics like statistical analysis, linear algebra, Fourier transforms, and n-dimensional arrays, all of which are relevant for research activities. A research scientist should find the course valuable in mastering NumPy. The course's exercises may allow students to practice applying NumPy to solve research problems.
Financial Engineer
A financial engineer uses mathematical and computational tools to solve complex financial problems. This course helps build a foundation in NumPy, which is essential for numerical computations and data analysis in quantitative finance. The course covers linear algebra, matrix operations, and statistical analysis, which are used in financial modeling and simulation. Becoming a successful financial engineer often requires an advanced degree. A financial engineer may find the course's coverage of linear algebra and statistical functions particularly useful.
Quantitative Analyst
A quantitative analyst uses mathematical and statistical methods to solve financial and risk management problems. This course helps build a foundation in NumPy, which is frequently used in quantitative analysis for numerical computations and simulations. The course covers linear algebra, matrix operations, randomness, and statistics, all critical for quantitative modeling. A quantitative analyst may find the course's coverage of linear algebra, including solving linear systems and calculating inverses, extremely useful. The exercises on linear regression may also be attractive.
Signal Processing Engineer
A signal processing engineer designs and develops algorithms and systems for processing signals. This course helps build a foundation in NumPy, which can be used for signal processing due to its array manipulation and mathematical capabilities. Topics like Fourier transforms, matrix operations, and n-dimensional arrays covered in the course are directly applicable to signal processing techniques. A signal processing engineer may find the course's Fourier transform coverage and exercises particularly beneficial. The course provides a solid grounding in NumPy's capabilities.
Statistician
A statistician collects, analyzes, and interprets numerical data to draw conclusions and make predictions. This course helps build a foundation in NumPy, which is used for statistical computations and data analysis in Python. The course covers randomness and statistics, universal functions, and matrix operations, which are all important for statistical analysis. A statistician should find the course valuable in learning how to use NumPy for statistical tasks. The course includes the use of NumPy for calculating statistics.
Image Processing Engineer
An image processing engineer develops algorithms and systems for processing and analyzing images. This course helps build a foundation in NumPy, which can be used for image processing due to its powerful array manipulation capabilities. Topics like Fourier transforms, matrix operations, and n-dimensional arrays covered in the course are directly applicable to image processing techniques. An image processing engineer may find the image manipulation exercises particularly beneficial, and that the course introduces Fourier transforms, which are crucial for image analysis.
Biostatistician
A biostatistician applies statistical methods to analyze data related to biology and health. This course helps build a foundation in NumPy, which is used for statistical computations and data analysis in Python. The course covers randomness and statistics, universal functions, and matrix operations, which are all important for biostatistical analysis. A biostatistician should find the course valuable in learning how to use NumPy for biological and health-related data analysis. The course's scope includes topics useful across several fields.
Econometrician
An econometrician applies statistical methods to analyze economic data and test economic theories. This course helps build a foundation in NumPy, which is used for statistical computations and data analysis in Python. The course covers randomness and statistics, universal functions, and matrix operations, which are used in econometric modeling. An econometrician may find the course valuable as they learn how to use NumPy for econometric tasks. The course introduces linear algebra, which is also extremely relevant for econometric modelling.
Geophysicist
A geophysicist studies the physical properties and processes of the Earth. This course helps build a foundation in NumPy, which is often leveraged in geophysics for data analysis, simulations, and modeling. The course covers linear algebra, Fourier transforms, and matrix operations, all applicable to geophysical data processing and analysis. A geophysicist should find the course valuable in mastering skills. The course may provide a starting point for data analysis tasks.
Software Developer
A software developer designs, codes, and tests software applications. This course may be useful for a software developer who uses Python for scientific computing or data analysis, as the course will help build a foundation in NumPy, which is a fundamental library for these tasks. The course covers topics such as array manipulation and linear algebra. A software developer with a need for numerical computing in Python should find familiarity with the NumPy library to be an asset. The course offers a comprehensive introduction to NumPy.
Financial Analyst
A financial analyst analyzes financial data, prepares reports, and provides investment recommendations. This course may be useful for a financial analyst using Python for quantitative analysis, as the course helps build a foundation in NumPy, which is used for numerical computations and data manipulation. The course covers topics like statistical analysis and linear algebra, which are used in financial modeling. A financial analyst may find the course helpful for learning to apply NumPy to financial data analysis. The course contains the fundamentals needed to conduct rigorous analyses.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Master Scientific Computing in Python with NumPy.
Provides a comprehensive overview of essential data science tools in Python, including NumPy. It covers topics like array manipulation, computation on NumPy arrays, and data indexing and selection. It serves as a valuable reference for understanding how NumPy integrates with other libraries in the Python data science ecosystem. This book is commonly used as a reference by both academic researchers and industry professionals.
Delves deeper into the numerical aspects of NumPy, covering topics like linear algebra, Fourier analysis, and optimization. It provides a more theoretical understanding of the algorithms used in NumPy. This book is particularly useful for students who want to understand the mathematical foundations of NumPy's functionalities. It is often used as a textbook in advanced scientific computing courses.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser