# Introduction to NumPy in Python with an example

This article will give you everything you need to know about NumPy with examples, and installation. It’s one of the most universal topics for working with data in python, core scientific python, and one of the ecosystems in PyData. Also used extensively in pandas, scikit-image, Matplotlib, and other scientific python packages.

## Introduction

### What is NumPy In Python?

NumPy means Numerical Python, a python library used for array methods. It’s an open-source project, initialized by Travis Oliphant in 2005. It’s written mostly in C/C++ language, along with Python. It’s widely used in data science, scientific research, and machine learning. It is used for data analysis to solve complex mathematical operations.

### Why Use NumPy?

NumPy handles data for processing better also it’s very easy to learn. Very faster than python lists. So in NumPy, it creates an array called ndarray which works faster than lists. Which we will discuss later in this article. Makes an advantage in the Data Science field because deals with large arrays with complex operations.

Uses less memory to store data and allows code to be optimized even more. Making effective calculations with arrays, where high-level functions operate extremely in arrays and matrices with high performance.

## NumPy is faster than lists

In python, Lists are in-built types that consist of four different things. Which are object value, its type, reference count, and size so for integers within lists, use the built-in int type it requires a lot more space than NumPy. Which uses fewer bytes of memory so that the computer can read fewer bytes of memory quicker in the performance and in lists. We have different types such as integer, float, boolean, string check for each element that we are working for, which type it is, but NumPy has no type checking property while iterating through objects.

So it provides efficient storage. Also, NumPy uses continuous memory but in lists memory, it’s scattered around which makes pointers point to the actual information in computer memory. So it’s not superfast to go through. And can’t potentially perform functions on all items at a time but it NumPy all the blocks will be next to each other which is much easier than using in lists as a kind of pointer structure.

## NumPy is written in which language?

NumPy is a Python library and is written in python and C/C++.

## NumPy’s codebase is where?

The Codebase for NumPy is in the GitHub repository. It’s an open-source repository you can also contribute to it.

## How to Install NumPy on Your Computer?

In order to install NumPy previously we should have installed python and pip which is a package manager. If you haven’t installed them do it right now. here you can check for python installation: python.

You can install the pip here pip.

Go to the command prompt and change the location where you want to save. Now use the following command to install the NumPy library we can simply use the command as

`pip install numpy`

Code language: Bash (bash)

## Python Numpy import

To import the NumPy library into your Python code, you can use the following import statement:

` import numpy`

Code language: Python (python)

## How to use NumPy in Python

When we use NumPy so we can do it as short as:

`import numpy as np`

Code language: Python (python)

Let’s create an array using the NumPy library and get a deep knowledge of these.

```
import numpy as np
array_1=np.array([2,23,16,2,98])
print(type(array_1))
print(array_1)
print(array_1.dtype)
```

Code language: Python (python)

output:

```
<class 'numpy.ndarray'>
[2 23 16 2 98]
int64
```

Code language: Python (python)

So it gives as a NumPy array. We can also give its type such as int,32,64 bytes which gives us memory convenient management. Like in lists, we can also access elements by index as arr[0], which is a 0 based index In NumPy to create we have 5 methods to do it. Conversion from the list and tuples to other structures the above example is from the list. Also, through the creation of arrays by raw bytes by use of strings or buffers. Besides, using some special library functions.

We can also initialize by sets here we go i.e,

```
import numpy as np
arr_2=np.array({1,6,8,9})
print((arr_2.dtype))
```

Code language: Python (python)

output:

`object`

Code language: Python (python)

We can also implement 2D arrays also called 2d order tensors. Here we go:

```
import numpy as np
arr_3 = np.array([[9,44,76], [22,5,3]])
print(arr_3)
```

Code language: Python (python)

Result is:

```
[[ 9 44 76]
[ 22 5 3]]
```

Code language: Python (python)

Similarly, 3D arrays too implemented also known as 3d order tensors

```
import numpy as np
arr_3 = np.array([[[4,12,4], [2,6,3]], [[21,22,15], [5,15,36]]])
print(arr_3)
```

Code language: Python (python)

output:

```
[[[4 12 4]
[2 6 3]]
[[21 22 15]
[5 15 36]]]
```

Code language: Python (python)

Also, we can solve the questions and use arrays methods let’s have an example down below.

```
import numpy as np
arr_4 = np.array([15,8,23,4,25,16,7])
copy_array=arr_4.copy()
sum=0
for i in arr_4:
sum=i+sum
print(sum)
print(arr_4[2:6])
print(copy_array)
```

Code language: Python (python)

output:

```
98
[23 4 25 16]
[15 8 23 4 25 16 7]
```

Code language: Python (python)

Also, to get which dimension, we can check by using ndim (number of dimensions of an array) like (arr. ndim). We can pretty much do, such as slicing, iterating, joining, splitting, sorting, filter methods, etc. Here we go, a few of them that we use frequently.

```
import numpy as np
arr_5 = np.array([96,12,48,24,35,72,17,19])
i= np.where(arr_5 %2 == 0)
sort_arr=np.sort(arr_5)
filter_array = arr_5 <45
new_array = arr_5[filter_array]
print(i)
print(sort_arr)
print(filter_array)
print(new_array)
```

Code language: Python (python)

output:

```
(array([0, 1, 2, 3, 5]),)
[12 17 19 24 35 48 72 96]
[False True False True True False True True]
[12 24 35 17 19]
```

Code language: Python (python)

We can also write functions and have predefined functions such as add, subtract, lcm, gcd, log, set operations, etc.

```
import numpy as np
def adding(x, y):
return x+y
adding= np.frompyfunc(adding,2,1)
arr_6 = np.around(99.9666,3)#round off up to 3 decimals
num_1 = 12
num_2 = 3
x = np.gcd(num_1, num_2)
y= np.sin(np.pi/2)
print(x)
print(y)
print(arr_6)
print(adding([1,3,5,7],[2,4,6,8]))
```

Code language: Python (python)

output:

```
3
1.0
99.967
[3 7 11 15]
```

Code language: Python (python)

## Advantage of NumPy in python

NumPy works as a replacement for Matlab and does all sorts of mathematics functions linear algebra, matrices, and Fourier transforms. Especially we use data distributions to calculate the probability distribution through Poisson ratio, binomial, uniform, chi-square distribution, etc.

NumPy handles data for processing better also it’s very easy to learn. It also has been used for the backend for many applications for example NumPy is a core component of the panda’s library, also used for storing images through NumPy which is digital photography. Also plays important for machine learning applications such as tensors library which is similar we can easily understand.

## Why You Should Learn NumPy and Start Using It Today

NumPy is a powerful and popular library in Python that is used for scientific and numerical computing. Here are a few reasons why you should learn NumPy and start using it today:

- Efficiency: NumPy is written in C/C++ and is designed to be efficient when working with large arrays and matrices of data. It can significantly improve the performance of your code compared to using built-in Python data structures.
- Convenience: NumPy provides many functions and operations that are useful for scientific and numerical computing, such as linear algebra, statistical functions, and random number generation. This can save your time and effort when working on data analysis tasks.
- Compatibility: NumPy is widely used in the scientific and data science communities, so learning NumPy will make it easier for you to use other libraries and frameworks that depend on it.
- Career opportunities: NumPy is a fundamental library for many data science and machine learning tasks, so having experience with it can make you a more attractive job candidate in these fields.

Overall, learning NumPy can help you write more efficient and convenient code for scientific and numerical computing, and can open up new career opportunities for you.

## Conclusion

So NumPy is used for data analysis used to solve complex mathematical operations. It provides a range of functions and operations that can make data analysis tasks more efficient and convenient.

For example, using NumPy, it is possible to perform complex linear algebra calculations and statistical analyses with just a few lines of code. Overall, learning NumPy is an important step for anyone interested in pursuing a career in data science or machine learning, and is a valuable skill to have in any Python developer’s toolkit.

## Frequently Asked Questions (FAQs)

### What is a NumPy in Python?

Numpy is a library in python used for data analysis and for computing data. It makes us work with large complex multidimensional arrays and also with matrices. It’s widely used in data science, scientific research, and machine learning.

### What is import NumPy in Python?

`import numpy as np`

Code language: Python (python)

So we will import, shortly we represent as np rather than using it every time NumPy while we code. It is the first step to import in order to work with numerical data. As it gives us to perform mathematical operations on matrices and arrays

### Why is it called NumPy?

NumPy is used for data analysis used to solve complex mathematical operations, functions linear algebra, matrices, and Fourier transforms so that’s why it’s named Numerical python shortly as NumPy which is a python library.

### Why do we install NumPy?

Go to the command prompt and change the location where you want to save. Now use the following command to install the NumPy library we can simply use the command as

`pip install numpy`

Code language: Python (python)

For more details, you can look into our download section.

### What are the features of NumPy?

NumPy works as a replacement for Matlab and does all sorts of mathematics functions. Also handles data for processing better also it’s very easy to learn. It is a core component in the panda’s library. Also, important for machine learning applications.

Sharing is caring

Did you like what Thrishank wrote? Thank them for their work by sharing it on social media.

## No comments so far

Curious about this topic? Continue your journey with these coding courses: