NumPy Ndarray 对象

NumPy Ndarray 对象

引言

NumPy 是 Python 中最基础且最重要的科学计算库之一。其中,ndarray 对象是 NumPy 的核心,它提供了多维数组的数据结构,极大地简化了科学计算中的数组操作。本文将详细介绍 NumPy 的 ndarray 对象,包括其创建、属性、操作以及在实际应用中的使用方法。

NumPy ndarray 的创建

在 NumPy 中,可以使用多种方式创建 ndarray 对象。以下是一些常见的方法:

1. 使用数组函数创建

python 复制代码
import numpy as np

# 创建一个一维数组
array_1d = np.array([1, 2, 3, 4, 5])

# 创建一个二维数组
array_2d = np.array([[1, 2, 3], [4, 5, 6]])

# 创建一个三维数组
array_3d = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])

2. 使用 Python 原生列表创建

python 复制代码
import numpy as np

# 使用 Python 原生列表创建一维数组
array_1d = np.array([1, 2, 3, 4, 5])

# 使用 Python 原生列表创建二维数组
array_2d = np.array([[1, 2, 3], [4, 5, 6]])

# 使用 Python 原生列表创建三维数组
array_3d = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])

3. 使用函数直接创建

python 复制代码
import numpy as np

# 使用 zeros 函数创建一个全为零的二维数组
array_zeros = np.zeros((2, 3))

# 使用 ones 函数创建一个全为一的二维数组
array_ones = np.ones((2, 3))

# 使用 full 函数创建一个给定值填充的二维数组
array_full = np.full((2, 3), 7)

# 使用 empty 函数创建一个未初始化的二维数组
array_empty = np.empty((2, 3))

# 使用 random 函数创建一个随机值的二维数组
array_random = np.random.random((2, 3))

# 使用 randint 函数创建一个给定范围随机整数的二维数组
array_randint = np.random.randint(1, 10, (2, 3))

NumPy ndarray 的属性

ndarray 对象具有多种属性,以下是一些常用的属性:

1. shape

shape 属性表示数组的维度和大小。例如:

python 复制代码
import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
print(array_2d.shape)  # 输出:(2, 3)

2. dtype

dtype 属性表示数组中元素的数据类型。例如:

python 复制代码
import numpy as np

array_int = np.array([1, 2, 3])
print(array_int.dtype)  # 输出:int64

3. size

size 属性表示数组中元素的总数。例如:

python 复制代码
import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
print(array_2d.size)  # 输出:6

NumPy ndarray 的操作

NumPy ndarray 对象支持多种操作,包括数学运算、索引、切片、形状变换等。

1. 数学运算

python 复制代码
import numpy as np

array_1d = np.array([1, 2, 3, 4, 5])
print(array_1d * 2)  # 输出:[ 2  4  6  8 10]

2. 索引与切片

python 复制代码
import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(array_2d[0, 1])  # 输出:2
print(array_2d[0:2, 1:3])  # 输出:[[2 3] [5 6]]

3. 形状变换

python 复制代码
import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(array_2d.reshape(3, 1))  # 输出:[[1] [4] [7]]

总结

NumPy ndarray 对象是 NumPy 库中的核心,提供了多维数组的数据结构,极大地简化了科学计算中的数组操作。本文详细介绍了 NumPy ndarray 的创建、属性、操作以及在实际应用中的使用方法。掌握 NumPy ndarray 对象,将有助于提高你的科学计算效率。

相关推荐
优橙教育2 小时前
5G网优培训 vs Java开发:转行选哪个?
java·开发语言·5g
SeaTunnel4 小时前
从 Python Script 地狱到标准化数据集成框架
大数据·开发语言·python·程序员·代码·seatunnel
碎光拾影4 小时前
ARM交叉工具链各工具作用及IMX6ULL平台LED+蜂鸣器裸机程序实现
java·开发语言·数据库
Marst Code5 小时前
(python)2026Plotly 库评估:交互式可视化到底值不值得引入?
开发语言·python
Miao121315 小时前
微服务 API 测试实践:海外某民宿平台如何构建模式驱动测试基础设施
java·开发语言
CRMEB系统商城6 小时前
开源自建还是SaaS订阅?算一笔3年经济账
java·大数据·开发语言·开源
keyipatience7 小时前
线程栈与TLS和线程互斥
java·linux·服务器·开发语言·ubuntu
我的xiaodoujiao7 小时前
快速学习Python基础知识详细图文教程9--函数进阶
开发语言·python·学习·测试工具
爱喝水的鱼丶8 小时前
SAP-ABAP:ALV通用封装实践——搭建可复用的ALV开发工具类,减少80%重复代码
开发语言·性能优化·sap·abap·erp·alv
脱胎换骨-军哥8 小时前
C++/Rust无缝互操作:混合系统新常态
开发语言·c++·rust