The Best NumPy Tutorial for Beginners

Although it may sound like the name a child would give to a beloved toy stuffed animal, NumPy refers to Numerical Python. It is an open-source library in Python that aids in mathematical and numerical calculations and computations; and, scientific, engineering, and data science programming. NumPy is an essential library used to perform mathematical and statistical operations. It is especially suited for multi-dimensional arrays and matrix multiplications. This NumPy tutorial focuses on the essential things you need to know to master NumPy.

Getting Started With NumPy

In this Numpy tutorial, we will be using Jupyter Notebook, which is an open-source web application that comes with built-in packages and enables you to run code in real-time.

Let’s get started by importing our NumPy module and writing basic code.

NumPy is usually imported under the np alias.

basic-numpy

Fig: Basic NumPy example

You can also make more than a one-dimensional array.



Fig: 2-D NumPy array

Learn the Ins & Outs of Software Development

Caltech Coding BootcampExplore Program
Learn the Ins & Outs of Software Development

NumPy Arrays

The array object in NumPy is called ndarray, which means an N-dimensional array. 

To create ndarray in NumPy, we use the array() function.

numpy-array

Fig: NumPy array

NumPy Array functions

  • ndim

The ndim() attribute can be used to find the dimensions of the array.

ndim

Fig: ndim function

  • itemsize()

The itemsize() is used to calculate the byte size of each element.

itemsize

Fig: itemsize()

Each item occupies four bytes in the above array.

  • dtype

The dtype attribute is used to understand the data type of the given element.   

/dtype

Fig: dtype

  • shape

This array attribute returns a tuple consisting of array dimensions.

shape.

Fig: shape

This means the array has two dimensions, and each dimension contains two elements.

  • reshape()

The reshape() function is used to reshape the array. 

reshape

Fig: reshape()

Now the array has three dimensions, with two elements in each dimension.

Learn 15+ In-Demand Tools and Skills!

Automation Testing Masters ProgramExplore Program
Learn 15+ In-Demand Tools and Skills!

  • Slicing

Slicing is used to extract a range of elements from the array.

slicing

Fig: Slicing

Zero represents the index of the array, and one indicates the element of the mentioned array.

  • random.rand()

The random module’s rand() method returns a random float between zero and one.

Example:

random

Fig: random()

We have generated a three-dimensional array with two elements in each dimension. 

  • random.randint()

The randint() method takes a size parameter where you can specify the shape of the array.

Example:

random2

Fig: random.randint()

The code above will generate a 2D array with three rows, and each row will contain four random integers between zero and 10.

Learn the Ins & Outs of Software Development

Caltech Coding BootcampExplore Program
Learn the Ins & Outs of Software Development

  • mean()

The mean() function is used to compute the arithmetic mean of the given data along the specified axis.

Example:

mean

Fig: mean()

  • median()

The median() function is used to compute the arithmetic median of the given data along the specified axis.

Example:

median

Fig: median()

  • std()

The std() function is used to compute the standard deviation along the specified axis.

Example:

Fig: std()

  • append()

The append() function is used to add new values to an existing array.

Example:

append

Fig: append()

  • insert()

The insert() function inserts the value in the input array along the mentioned axis.

Syntax: numpy.insert(arr, obj, values, axis)

Example:

insert

Fig: insert()

Learn the Ins & Outs of Software Development

Caltech Coding BootcampExplore Program
Learn the Ins & Outs of Software Development

  • concatenate()

The concatenate() function is used for joining two or more arrays of the same shape along the specified axis.

Example:

concat

Fig: concatenate()

NumPy Mathematical Operation

In NumPy, basic mathematical functions operate elementwise on an array. Let’s look at some examples to understand this more clearly.

math_n

Fig: Mathematical operations

output_n

Fig: Output

NumPy Broadcasting

Broadcasting is NumPy’s ability to perform mathematical operations on arrays with different shapes. 

The following example demonstrates how to multiply two arrays:

Example:

ex1

In the preceding example, the array was the same shape, and therefore multiplication was simple. However, if we consider arrays of different sizes, we will receive an error message.

Example:

ex2.

NumPy can perform such operations using the concept of broadcasting.

In order to broadcast two arrays together, they must meet the following criteria:

  • If the arrays do not have the same rank, prepend the shape of the array that is ranked lower with ones until both shapes have the same length.
  • The size of each output dimension is the maximum of the input sizes in the dimension.
  • In any dimension where one array had size one, and the other array had a size greater than one, the first array behaves as if it were copied along that dimension.

Example:

ex3

Fig: NumPy broadcasting

Conclusion

In this NumPy tutorial article, we discussed the basic concepts of NumPy. We looked at how to create a NumPy array, and its different functions. We went through several mathematical operations on NumPy using broadcasting.

If you have any questions, please share them in the comments section, and we'll have our experts answer them for you.

Want to Learn More Web Development?

Web developers with the latest skills in modern tools such as NumPy are in high demand. If you are looking to upskill and take your career to the next level, check out our Full Stack Web Developer program today. You can learn from anywhere and at your own pace with our award-winning, online applied learning model. What are you waiting for?

About the Author

Aryan GuptaAryan Gupta

Aryan is a tech enthusiast who likes to stay updated about trending technologies of today. He is passionate about all things technology, a keen researcher, and writes to inspire. Aside from technology, he is an active football player and a keen enthusiast of the game.

View More
  • Disclaimer
  • PMP, PMI, PMBOK, CAPM, PgMP, PfMP, ACP, PBA, RMP, SP, and OPM3 are registered marks of the Project Management Institute, Inc.