Detailed explanation of the use of Python np.array
Detailed Explanation of Python np.array Usage
1. Introduction
In Python, NumPy (Numerical Python is a powerful library for scientific computing. It provides a high-performance multidimensional array object (ndarray) and various functions for manipulating these arrays. This article will detail the usage and features of one of NumPy’s core objects, the np.array.
2. Creating an np.array
Before using NumPy’s np.array, we must first import the NumPy library. Typically, the NumPy library is imported and renamed to np
:
import numpy as np
2.1 Creating an np.array
from a List or Tuple
Using NumPy’s array
function, you can create an np.array
object from a list or tuple. For example, we can create a one-dimensional np.array
from a one-dimensional Python list:
list_data = [1, 2, 3, 4, 5]
array_data = np.array(list_data)
print(array_data)
This code will output:
[1 2 3 4 5]
Similarly, we can create a multidimensional np.array
from a multidimensional Python list:
matrix = [[1, 2], [3, 4], [5, 6]]
array_matrix = np.array(matrix)
print(array_matrix)
This code will output:
[[1 2]
[3 4]
[5 6]]
Arrays created using the np.array
function can be of any dimension. Simply provide the corresponding data in the array
function.
2.2 Creating special np.array
functions provided by NumPy
In addition to creating np.array
using lists or tuples, NumPy also provides some functions for creating special arrays.
2.2.1 Creating an all-zero array using np.zeros
np.zeros
function can create an all-zero array of a specified shape. We can specify the shape (dimensions) of an array as a parameter. For example, to create an array of all zeros with a shape of (2, 3):
zeros_array = np.zeros((2, 3))
print(zeros_array)
This code will output:
[[0. 0. 0.]
[0. 0. 0.]]
2.2.2 Creating an Array of All Ones Using np.ones
The np.ones
function is similar to the np.zeros
function and can create an array of all ones with a specified shape.
ones_array = np.ones((2, 3))
print(ones_array)
This code will output:
[[1. 1. 1.]
[1. 1. 1.]]
2.2.3 Creating a Continuous Integer Array Using np.arange
np.arange
creates a continuous array of integers. We can specify the starting and ending values of the array, as well as the step size. For example, let’s create an array of consecutive integers from 0 to 9:
integer_array = np.arange(10)
print(integer_array)
This code will output:
[0 1 2 3 4 5 6 7 8 9]
2.2.4 Creating an Arithmetic Progression Array Using np.linspace
np.linspace
creates an arithmetic progression between the specified starting and ending values. We can specify the starting and ending values, as well as the number of elements in the progression.
linspace_array = np.linspace(0, 1, 5)
print(linspace_array)
This code will output:
[0. 0.25 0.5 0.75 1. ]
2.3 Creating an np.array with Random Numbers
In addition to the methods described above, NumPy provides several methods for creating an np.array filled with random numbers.
2.3.1 Creating an Array of Random Numbers Between 0 and 1 Using np.random.rand
The np.random.rand function creates an array of random numbers between 0 and 1 of a specified dimension. We can specify the shape (dimensions) of the array.
random_array = np.random.rand(2, 3)
print(random_array)
This code will output:
[[0.4205492 0.35339967 0.15871663]
[0.2809823 0.29531438 0.68120656]]
2.3.2 Creating an Array of Random Numbers from a Standard Normal Distribution Using np.random.randn
np.random.randn
creates an array of random numbers of a specified dimension that follows a standard normal distribution (mean 0, variance 1).
randn_array = np.random.randn(2, 3)
print(randn_array)
This code will output:
[[ 1.01111932 -0.23198528 0.09575871]
[ 0.72938318 0.60414215 -0.29782545]]
3. Attributes and Methods of np.array
3.1 shape
Attribute
The shape
attribute can be used to obtain the shape (dimensions) of an np.array
.
array = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
print(array.shape)
This code will output:
(2, 4)
3.2 ndim
Attribute
The ndim
attribute can be used to obtain the dimensions of an np.array
.
array = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
print(array.ndim)
This code will output:
2
3.3 size
Attribute
The size
attribute can be used to obtain the total number of elements in an np.array
.
array = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
print(array.size)
This code will output:
8
3.4 dtype
Attribute
The dtype
attribute can be used to obtain the data type of elements in an np.array
array.
array = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
print(array.dtype)
This code will output:
int64
3.5 reshape
Method
The reshape
method can be used to change the shape (dimensions) of an np.array
.
array = np.arange(10)
reshaped_array = array.reshape((2, 5))
print(reshaped_array)
This code will output:
[[0 1 2 3 4]
[5 6 7 8 9]]
3.6 flatten
Method
The flatten
method can be used to flatten an np.array into a one-dimensional array.
array = np.array([[1, 2, 3], [4, 5, 6]])
flattened_array = array.flatten()
print(flattened_array)
This code will output:
[1 2 3 4 5 6]