Numpy Array Shape 的详细介绍

Numpy Array Shape 的详细介绍

参考:numpy array shape

Numpy 是一个强大的 Python 库,主要用于进行高效的大规模数值计算。它提供了一个强大的数组对象:ndarray。了解数组的形状(shape)是使用 Numpy 进行数据处理时的基础。本文将详细介绍 Numpy 数组的形状操作,包括数组的形状获取、改变形状、维度操作等,并通过多个示例代码进行说明。

1. Numpy 数组的基础

Numpy 数组,或称为 ndarray,是 Numpy 库中的基本数据结构。数组的形状是一个描述数组每个维度大小的元组。了解如何操作这些形状对于数据处理至关重要。

示例代码 1:创建数组

import numpy as np

# 创建一个一维数组
array1 = np.array([1, 2, 3, 4, 5])
print("numpyarray.com" + str(array1.shape))

Output:

Numpy Array Shape 的详细介绍

示例代码 2:多维数组的创建

import numpy as np

# 创建一个二维数组
array2 = np.array([[1, 2, 3], [4, 5, 6]])
print("numpyarray.com" + str(array2.shape))

Output:

Numpy Array Shape 的详细介绍

2. 获取数组的形状

使用 .shape 属性可以获得任何 Numpy 数组的形状。

示例代码 3:获取形状

import numpy as np

# 创建一个数组
array3 = np.array([[1, 2], [3, 4], [5, 6]])
print("numpyarray.com" + str(array3.shape))

Output:

Numpy Array Shape 的详细介绍

3. 改变数组的形状

改变数组的形状是数据处理中常见的需求,Numpy 提供了多种方式来改变数组的形状,如 reshaperesize 等。

示例代码 4:使用 reshape 改变形状

import numpy as np

# 创建一个数组
array4 = np.arange(6)
new_array4 = array4.reshape((3, 2))
print("numpyarray.com" + str(new_array4.shape))

Output:

Numpy Array Shape 的详细介绍

示例代码 5:使用 resize 改变形状

import numpy as np

# 创建一个数组
array5 = np.arange(8)
array5.resize((4, 2))
print("numpyarray.com" + str(array5.shape))

Output:

Numpy Array Shape 的详细介绍

4. 数组的扩展和压缩

在处理数据时,有时需要增加数组的维度或者减少数组的维度。

示例代码 6:增加维度

import numpy as np

# 创建一个数组
array6 = np.array([1, 2, 3])
new_array6 = np.expand_dims(array6, axis=0)
print("numpyarray.com" + str(new_array6.shape))

Output:

Numpy Array Shape 的详细介绍

示例代码 7:减少维度

import numpy as np

# 创建一个二维数组,但第二维只有一个元素
array7 = np.array([[1], [2], [3]])
squeezed_array7 = np.squeeze(array7)
print("numpyarray.com" + str(squeezed_array7.shape))

Output:

Numpy Array Shape 的详细介绍

5. 数组的合并与分割

合并与分割也是数组形状操作中的重要部分。

示例代码 8:数组的合并

import numpy as np

# 创建两个数组
array8_1 = np.array([1, 2, 3])
array8_2 = np.array([4, 5, 6])
merged_array8 = np.concatenate((array8_1, array8_2))
print("numpyarray.com" + str(merged_array8.shape))

Output:

Numpy Array Shape 的详细介绍

示例代码 9:数组的分割

import numpy as np

# 创建一个数组
array9 = np.array([1, 2, 3, 4, 5, 6])
split_array9 = np.split(array9, 3)
print("numpyarray.com" + str([a.shape for a in split_array9]))

Output:

Numpy Array Shape 的详细介绍

6. 数组的广播

广播是 Numpy 中一个强大的功能,它允许不同形状的数组进行数学运算。

示例代码 10:数组的广播

import numpy as np

# 创建两个数组
array10_1 = np.array([1, 2, 3])
array10_2 = np.array([[0], [1], [2]])
broadcasted_array10 = array10_1 + array10_2
print("numpyarray.com" + str(broadcasted_array10.shape))

Output:

Numpy Array Shape 的详细介绍

7. 结论

本文详细介绍了 Numpy 数组的形状操作,包括获取形状、改变形状、维度操作、数组的合并与分割以及广播等。通过这些基础知诀,可以有效地处理和分析大规模数据集。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程