Python NumPy数组(numpy.array)详解与操作指南

numpy.array(通常简称为 np.array)是Python中的一个多维数组对象,由NumPy库提供,主要用于数值计算和数据分析。np.array 提供了比Python内置的列表更高效的存储方式和更丰富的数学运算功能,尤其在处理大型数据集和多维数据时表现突出。

创建 np.array

创建数组的常见方法:

import numpy as np

# 1. 从列表或元组创建
a = np.array([1, 2, 3, 4])
print(a)  # 输出:[1 2 3 4]

# 2. 创建多维数组
b = np.array([[1, 2, 3], [4, 5, 6]])
print(b)
# 输出:
# [[1 2 3]
#  [4 5 6]]

# 3. 使用特定的函数创建数组,如全0、全1或随机数组
zeros_array = np.zeros((3, 3))  # 3x3全0矩阵
ones_array = np.ones((2, 2))    # 2x2全1矩阵
rand_array = np.random.rand(2, 3)  # 2x3的随机数矩阵

常用属性

ndim:返回数组的维数
shape:返回数组的形状(每一维的大小
size:返回数组的总元素数
dtype :返回数组的元素数据类型

a = np.array([[1, 2, 3], [4, 5, 6]])

print(a.ndim)  # 输出:2,表示二维数组
print(a.shape)  # 输出:(2, 3),表示2行3列
print(a.size)   # 输出:6,表示总共6个元素
print(a.dtype)  # 输出:int64(根据平台不同,可能会显示不同的整型类型)

数组运算

np.array 支持大量的数学运算和向量化操作,可以对数组进行加、减、乘、除等操作:

x = np.array([1, 2, 3])
y = np.array([4, 5, 6])

# 数组相加
print(x + y)  # 输出:[5 7 9]

# 数组相乘(逐元素)
print(x * y)  # 输出:[4 10 18]

# 数组标量运算
print(x * 2)  # 输出:[2 4 6]

切片与索引

类似于Python列表,可以对 np.array 进行切片和索引,支持多维操作。

a = np.array([[1, 2, 3], [4, 5, 6]])

# 获取单个元素
print(a[0, 1])  # 输出:2

# 切片操作
print(a[:, 1])  # 输出:数组的第2列:[2 5]
print(a[1, :])  # 输出:数组的第2行:[4 5 6]

主要优点

效率高:np.array 在存储和计算上更高效,尤其适用于大规模数据。
多维支持:支持多维数组,可以方便地表示矩阵和张量等数据结构。
丰富的数学运算:NumPy 提供了丰富的数学和统计函数,方便快速处理和分析数据。

np.array 是科学计算和数据分析的基础工具,是Python中处理数值数据的核心。

作者:航哥的女人

物联沃分享整理
物联沃-IOTWORD物联网 » Python NumPy数组(numpy.array)详解与操作指南

发表回复