NumPy 创建数组

NumPy 创建数组

引言

NumPy 是 Python 中一个强大的数学库,它提供了广泛的多维数组对象和数学函数。在数据分析、科学计算和机器学习等领域,NumPy 都有着广泛的应用。本文将详细介绍 NumPy 数组的创建方法,帮助读者快速掌握这一基础技能。

数组创建方法

1. 使用 numpy.array() 函数

numpy.array() 是 NumPy 中最常用的创建数组的方法。它可以将一个列表、元组或任何可迭代对象转换为 NumPy 数组。

python 复制代码
import numpy as np

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

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

2. 使用 numpy.arange() 函数

numpy.arange() 可以创建一个指定起始值、结束值和步长的数组。

python 复制代码
# 创建一个等差数列数组
array3 = np.arange(1, 10, 2)

3. 使用 numpy.linspace() 函数

numpy.linspace() 可以创建一个指定起始值、结束值、样本数和样本间隔的数组。

python 复制代码
# 创建一个线性空间数组
array4 = np.linspace(0, 1, 5)

4. 使用 numpy.zeros() 和 numpy.ones() 函数

numpy.zeros() 和 numpy.ones() 分别用于创建全零数组和全一数组。

python 复制代码
# 创建一个全零数组
array5 = np.zeros((3, 3))

# 创建一个全一数组
array6 = np.ones((3, 3))

5. 使用 numpy.full() 函数

numpy.full() 可以创建一个指定形状、数据类型和填充值的数组。

python 复制代码
# 创建一个填充值为 5 的数组
array7 = np.full((3, 3), 5)

6. 使用 numpy.eye() 函数

numpy.eye() 可以创建一个单位矩阵。

python 复制代码
# 创建一个 3x3 的单位矩阵
array8 = np.eye(3)

数组形状和类型

在创建数组时,可以指定数组的形状和类型。形状表示数组的维度,类型表示数组中元素的数据类型。

python 复制代码
# 创建一个形状为 (2, 3) 的浮点型数组
array9 = np.array([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]], dtype=float)

总结

本文介绍了 NumPy 数组的创建方法,包括使用 numpy.array()、numpy.arange()、numpy.linspace()、numpy.zeros()、numpy.ones()、numpy.full() 和 numpy.eye() 等函数。通过掌握这些方法,读者可以轻松地创建各种类型的 NumPy 数组,为后续的数据处理和分析奠定基础。

代码示例

以下是本文中提到的数组创建方法的代码示例:

python 复制代码
import numpy as np

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

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

# 创建一个等差数列数组
array3 = np.arange(1, 10, 2)

# 创建一个线性空间数组
array4 = np.linspace(0, 1, 5)

# 创建一个全零数组
array5 = np.zeros((3, 3))

# 创建一个全一数组
array6 = np.ones((3, 3))

# 创建一个填充值为 5 的数组
array7 = np.full((3, 3), 5)

# 创建一个 3x3 的单位矩阵
array8 = np.eye(3)

# 创建一个形状为 (2, 3) 的浮点型数组
array9 = np.array([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]], dtype=float)

通过以上代码示例,读者可以更好地理解 NumPy 数组的创建方法。

相关推荐
NetX行者7 小时前
四语言 Hello World 背后:编译模型与运行时对比
开发语言
Pin_Qing8 小时前
账单没超,请求先被拒了
大数据·开发语言·人工智能
2601_962885728 小时前
如何用 Python 计算 VaR 和 CVaR(在险价值)?
开发语言·python
郝亚军8 小时前
manifest 中 `sha256` 与 `signValue` 的作用
java·开发语言·数据结构
譕痕9 小时前
stripe 实例
java·开发语言·stripe·checksession
墨子夕9 小时前
设计模式——Java × Python 双语言精讲 · 23 个经典模式 + 现代演进(前言篇)
java·开发语言·设计模式
_菜鸟果果9 小时前
高德地图 JS API 2.0 在国产 Linux/ARM 电脑上渲染失败 的排查与解决
linux·开发语言·javascript
昂好的day9 小时前
VisionMaster(VM) 标定工具详解(上):为什么必须标定 + 九点标定手眼标定
开发语言·数码相机·c#
严谨的麻辣烫9 小时前
静态代理 IP 的出口一致性如何验证?Python 请求检测与异常排查
开发语言·python·http·网络安全
原子延迟10 小时前
视频太大怎么压缩发微信?先查限制再压的3种方法(2026)
开发语言·图像处理·人工智能·计算机视觉·音视频