NumPy 教程 之 NumPy 切片和索引 6

简介: `ndarray`可通过索引或切片访问和修改。索引基于0-n,切片使用`slice`函数或`start:stop:step`语法。单参数如`[2]`获取单一元素,`[2:]`获取从索引2开始至末尾的元素,`[2:7]`获取索引2到6的元素。多维数组也支持这些操作。

NumPy 教程 之 NumPy 切片和索引 6

NumPy 切片和索引

ndarray对象的内容可以通过索引或切片来访问和修改,与 Python 中 list 的切片操作一样。

ndarray 数组可以基于 0 - n 的下标进行索引,切片对象可以通过内置的 slice 函数,并设置 start, stop 及 step 参数进行,从原数组中切割出一个新数组。

我们也可以通过冒号分隔切片参数 start:stop:step 来进行切片操作:

冒号 : 的解释:如果只放置一个参数,如 [2],将返回与该索引相对应的单个元素。如果为 [2:],表示从该索引开始以后的所有项都将被提取。如果使用了两个参数,如 [2:7],那么则提取两个索引(不包括停止索引)之间的项。

多维数组同样适用上述索引提取方法:

实例

import numpy as np

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

从某个索引处开始切割

print('从数组索引 a[1:] 处开始切割')
print(a[1:])

输出结果为:

[[1 2 3]
[3 4 5]
[4 5 6]]
从数组索引 a[1:] 处开始切割
[[3 4 5]
[4 5 6]]

目录
相关文章
|
6月前
|
索引 Python
NumPy 教程 之 NumPy 切片和索引 3
`ndarray`可通过索引或切片访问和修改。索引基于0-n, 类似Python列表。使用`s(slice(start, stop, step))`或`start:stop:step`语法进行切片。单参数如`[2]`获取单个元素; `2:`获取从2开始所有元素; `2:7`获取2到6的元素。
40 6
|
6月前
|
索引 Python
NumPy 教程 之 NumPy 切片和索引 7
NumPy 切片和索引用于访问和修改 `ndarray` 对象。类似于 Python 的列表切片, 使用索引 `[0-n]` 和切片 `slice(start, stop, step)` 或简写为 `[start:stop:step]` 来提取元素。单个索引 `[n]` 获取单个元素, `[n:]` 获取从 `n` 开始的所有元素, `[n:m]` 获取 `n` 至 `m-1` 的元素。省略号 `...` 保持选择维度与数组一致, 如 `a[...,1]` 获取所有第二列, `a[1,...]` 获取第二行, `a[...,1:]` 获取所有第二列及之后的元素。
36 4
|
6月前
|
索引 Python
NumPy 教程 之 NumPy 切片和索引 5
`ndarray`可通过索引或切片访问和修改。使用 `slice` 函数或冒号语法 `[start:stop:step]` 从原数组切割新数组。单参数 `[n]` 获取单个元素, `[n:]` 获取从 n 开始的所有元素, `[n:m]` 获取 n 到 m-1 的元素。 **示例:** ```python import numpy as np a = np.arange(10) # 创建数组 [0 1 2 3 4 5 6 7 8 9] print(a[2:5]) # 输出 [2 3 4] ```
36 3
|
6月前
|
索引 Python
NumPy 教程 之 NumPy 切片和索引 4
NumPy 切片和索引允许访问和修改 `ndarray` 对象的内容。类似于 Python 的列表切片, 可以使用 `start:stop:step` 形式的索引, 其中省略号代表默认值。
27 3
|
6月前
|
索引 Python
NumPy 教程 之 NumPy 切片和索引 2
`ndarray` 支持类似 Python `list` 的切片操作。可通过 `slice` 函数设置 `start`, `stop`, `step` 参数或用冒号语法 `start:stop:step` 从原数组中获取新数组。示例: `a = np.arange(10); b = a[2:7:2]` 输出 `[2 4 6]`.
33 2
|
6月前
|
索引 Python
NumPy 教程 之 NumPy 高级索引 1
NumPy高级索引使用整数数组、布尔数组等来访问数组元素,支持复杂操作与修改。例如,整数数组索引可选取特定位置的元素: ```python import numpy as np x = np.array([[1, 2], [3, 4], [5, 6]]) y = x[[0,1,2], [0,1,0]] print(y) ``` 输出: `[1 4 5]`.
35 5
|
6月前
|
索引 Python
NumPy 教程 之 NumPy 高级索引 3
NumPy高级索引包括整数数组索引、布尔索引及花式索引,能访问并操作数组中的任意元素。例如,使用整数数组索引可以从多维数组中选取特定位置的元素。对于一个4x3数组`x`,通过定义行索引`rows`和列索引`cols`为`[[0,0],[3,3]]`和`[[0,2],[0,2]]`,可以获取四个角的元素:`x[rows,cols]`,结果为`[[0 2] [9 11]]`。此外,结合切片与索引数组可进一步定制数据选择,如`a[1:3, 1:3]`或`a[...,1:]`等。
35 3
|
5月前
|
索引 Python
NumPy 教程 之 NumPy 高级索引 6
NumPy高级索引包括 using 整数数组、布尔数组等来 access 数组元素, enabling 复杂的操作和 modifications. **布尔索引** uses 布尔数组 to index 目标数组, filtering 元素 based on 条件.
29 2
|
5月前
|
索引 Python
NumPy 教程 之 NumPy 高级索引 9
NumPy高级索引包括整数数组索引、布尔索引及花式索引,能实现对数组元素的灵活访问与复杂操作。其中,花式索引通过整数数组指定目标轴的下标来选取元素,不同于切片,它总是返回新数组。例如,对二维数组使用倒序索引数组时,会得到指定行的新数组:[[16 17 18 19], [24 25 26 27], [28 29 30 31], [4 5 6 7]]。
44 1
|
5月前
|
索引 Python
NumPy 教程 之 NumPy 高级索引 8
NumPy高级索引包括整数数组索引、布尔索引及花式索引,允许访问数组中的任意元素并执行复杂操作。花式索引通过整数数组定位元素,不同于切片,它始终复制数据到新数组。
34 1

热门文章

最新文章

下一篇
开通oss服务