NumPy 数组切片2025 年 8 月 20 日 | 阅读 10 分钟 NumPy 数组切片是 Python 中一种提取方法,它允许我们选择和提取数组的一部分,从而有效地处理大型数据集。它允许我们访问数组中的元素。 ![]() NumPy 数组切片的语法NumPy 数组切片的语法如下: NumPy 数组切片的基本语法包含三个部分,它们是:
关于 Start、Stop 和 Step,请记住以下几点: 注意 Start:如果我们不包含 start 值,则默认的 start 值将是数组的第一个元素。 Stop:如果我们不包含 stop 值,则它将一直到最后一个值并包含它。 Step:如果我们不包含 stop 值,则默认的步长为 1。 一维 NumPy 数组切片一维数组是最简单的数组,我们可以指定 start、stop 和 step。对一维 NumPy 数组进行切片也非常简单。让我们看几个例子。 示例输出 From index 3 to index 7 (exclusive): [6 7 3 5] From 0th index to the 8th index(exclusive) with a step size of 2: [1 2 7 5] From 1st index up to the last element: [6 7 3 5 8 4] From start to end: [1 9 2 6 7 3 5 8 4] 说明 在上面的一维数组示例中,这是最简单的数组形式,我们已将数组从索引 3 切片到索引 7,其中不包含索引 7 的元素。我们已从索引 0 到索引 8(不包含)切片,步长为 2,这意味着将处理交替的元素。然后,我们从索引 1 切片到最后一个元素。 二维 NumPy 数组切片在二维 NumPy 数组切片中,它包含行和列。每一行和每一列都有一个 start、stop 和 set 值。 让我们看看二维 NumPy 数组切片的语法: 语法 在这里,我们可以看到行和列都包含 start、stop 和 step 值。 现在,我们来看一些例子,以便更好地理解二维数组切片。 示例输出 Printing the first row: [[1 2 3 4]] Printing the fourth column: [ 4 17] Printing the 2 rows and 2 columns: [[ 1 2] [11 13]] Printing the first row and first 3 columns: [[1 2 3]] Printing the first row and first 4 columns: [[ 1 2 3 4] [11 13 15 17]] 说明 在上面的二维 NumPy 数组切片示例中,我们有两个数组作为输入。我们打印了第一行,然后打印了第四列。之后,我们打印了第 2 行和第 2 列,第 1 行和第 3 列,最后打印了第 1 行和第 4 列。 三维 NumPy 数组切片正如我们所研究的,一维数组是最简单的数组,二维数组包含行和列,三维 NumPy 数组则更进一步。 三维 NumPy 数组切片包含三个部分:
让我们看一个三维 NumPy 数组的例子,以了解行、列以及最重要的是深度。 示例输出 Prinitng the 3D array: [[[ 1 2 3 4] [ 5 6 7 8] [ 9 10 11 12]] [[13 14 15 16] [17 18 19 20] [21 22 23 24]]] First depth of the block: [[ 1 2 3 4] [ 5 6 7 8] [ 9 10 11 12]] Prinitng the element at depth=1, row=2 and column=3: 24 Elements in depth 1 and column2: [15 19 23] 说明 在上面的三维 NumPy 数组切片示例中,我们看到三维 NumPy 数组包含行、列和深度。我们还学习了如何对三维数组进行切片。我们首先按原样打印了三维数组,然后打印了块的第 1 层深度。然后,我们继续打印深度=1、行=2 和列=3 处的元素,该元素是 24。最后,我们打印了深度为 1 且列为 2 的元素,即 [15 19 23]。 使用切片修改数组元素我们可以使用一些参数修改数组中的元素,例如:
让我们通过一个例子来深入理解参数的用法: 示例 1:Start 参数示例输出 [1 6 7 7 7 7] 说明 在上面的代码中,我们使用了 Start 参数来确定我们希望开始更改数字的位置。在这里,我们指定从索引 2 开始,数字必须更改为 7。 示例 2:Stop 参数示例输出 [14 14 14 2 8 4] 说明 在上面的代码中,我们使用了 Stop 参数来确定要修改数字的停止位置,并且在达到指定数字时,过程将停止。在这里,我们指定直到第 3 个索引为止,项必须修改为数字 14。 示例 3:Start 和 Stop 参数示例输出 [ 1 12 12 12 8 4] 说明 在上面的代码中,我们使用了 Start 和 Stop 参数来确定我们希望修改数字的范围。在这里,我们指定项必须从第 1 个索引修改到第 4 个索引。这意味着在修改中将包含第 1 个索引,但排除第 4 个索引。 示例 4:Start、Stop 和 Step 参数示例输出 [ 1 12 3 12 8 4] 说明 在上面的代码中,我们使用了 Start、Stop 和 Step 参数来确定我们希望修改数字的范围,但带有步长值。在这里,我们指定项必须从第 1 个索引修改到第 4 个索引,步长值为 2。这意味着列表中的交替数字将被修改;因此,我们可以看到只有两个数字被修改了。 负索引切片在负索引切片中,数组以反向顺序计数或处理。 让我们看一些例子来理解负索引切片: 示例输出 Slicing the last 4 elements of the array: [ 9 11 13 15] slicing elements between 2nd last and 4th last element: [ 9 11] using the start, stop, and step parameters using slicing the array in reverse order: [15 11 7 3] 说明 在上面的示例中,我们使用负索引切片来反向处理数组。我们使用负索引,数字从最后一个项目(-1)开始,然后继续。我们切片了最后 4 个元素,第 2 个和第 4 个最后元素之间的元素,并使用了 start、stop 和 step 参数。 使用负切片反转 NumPy 数组我们可以使用负索引切片来反转 NumPy 数组。让我们通过一个例子来看看如何反转数组。 示例输出 The Reversed Numbers are: [15 13 11 9 7 5 3 1] 说明 在上面的示例中,我们使用负索引切片反转了数组。我们使用切片符号 [: : -1] 反转了数字。 结论我们已经学习了关于 NumPy 数组切片的几乎所有内容。从基本语法开始,我们转向了 1D、2D 和 3D 数组。我们通过以下方式学习了如何使用切片修改数组:Start 参数、Stop 参数、Start 和 Stop 参数,以及 Start、Stop 和 Step 参数。我们还涵盖了负索引切片,在其中研究了反转 NumPy 数组。 NumPy 数组切片常见问题解答1. 什么是 NumPy 中的数组切片? NumPy 数组切片是 Python 中一种提取方法,它允许我们选择和提取数组的一部分,从而有效地处理大型数据集。它允许我们访问数组中的元素。 2. NumPy 数组切片的基本语法是什么? 基本语法包括三个部分:start、stop 和 step。 语法 3. 如果我将 start、end 或 step 留空会怎样?
4. 可以使用负索引对数组进行切片吗? 是的,我们可以使用负索引对数组进行切片。数组以反向顺序计数或处理。 示例输出 Slicing the last 4 elements of the array: [ 9 11 13 15] 5. 如何使用切片反转数组? 我们可以使用负步长值来反转数组。 示例输出 The Reversed Numbers are: [15 13 11 9 7 5 3 1] 下一个主题Tableau 预测示例 |
我们请求您订阅我们的新闻通讯以获取最新更新。