对一个二维数组进行索引
新建一个矩阵
import numpy as np
a = np.arange(16).reshape((4,4))
print(a)

单个元素索引
print(a[1,2])
多个元素索引
(0,0)、(1,1)、(2,0)
print(a[[0, 1, 2], [0, 1, 0]])
print(a[ [[0, 0], [3, 3]], [[0, 2], [0, 2]] ])

索引一整行
print(a[1,:])
索引一整列
print(a[:,1])
索引一个范围内的行/列
print(a[1:2,:])
print(a[:,1:2])
奇数/偶数行/列
print(a[1::2,:])
print(a[:,::2])

指定的行或者列
print(a[[0,2,3]])
print(a[:,[0,2,3]])

交点矩阵
注意两种区别 一种是索引4个元素,通过坐标的形式 另一种是给出行和列,索引出交点形成的矩阵
print(a[[0, 2, 3, 1], [0, 3, 1, 2]])
print(a[np.ix_([0, 2, 3, 1], [0, 3, 1, 2])])

布尔索引
pyprint(a[a > 10])
a = np.array([np.nan, 1,2,np.nan,3,4,5])
print (a[~np.isnan(a)])
这篇博客详细介绍了在Python中使用NumPy库对二维数组进行各种索引和操作的方法,包括单个元素、多个元素、整行、整列、行/列范围、奇数/偶数行/列的选择,以及交点矩阵和布尔索引的操作。同时,展示了如何通过索引获取特定行和列,以及如何使用布尔条件筛选数组元素。
2159

被折叠的 条评论
为什么被折叠?



