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 数组的创建方法。

相关推荐
想吃火锅10053 小时前
【leetcode】405.数字转换为十六进制数js
开发语言·javascript·ecmascript
专注VB编程开发20年4 小时前
AI 生成C# WinForm 窗体 = 目前就是垃圾
开发语言·人工智能·c#
cfm_29144 小时前
JVM GC垃圾回收初步了解
java·开发语言·jvm
~小先生~4 小时前
Python从入门到放弃(一)
开发语言·python
许彰午5 小时前
17_synchronized关键字深度解析
java·开发语言
z落落5 小时前
C# 泛型接口和泛型类+泛型约束
开发语言·c#
阿正的梦工坊5 小时前
【Rust】02-变量、不可变性与基础类型
开发语言·后端·rust
阿正的梦工坊5 小时前
【Rust】08-集合类型、字符串与迭代器入门
开发语言·rust·c#
FuckPatience5 小时前
C# 使用泛型协变将派生类类型替换为基类类型
开发语言·c#
张忠琳5 小时前
【Go 1.26.4】(Part 1) Go 1.26.4 超深度源码分析 — 总体架构与模块全景
开发语言·golang