记个笔记:
如果有一组索引,想一次取出或者对索引对应的元素赋值,如果这样写:
a = np.random.randn(4, 5)
b = np.array([[0, 1], [2, 3], [0, 3]]) # 索引
print(b)
print(a[b])
会得到如下结果:
可见只是分别取出了数组a的第0,1行,2,3行和0,3行,没有达到想要的效果
(单独取出a[0,1],a[2,3], a[0,3])
所以需要改成如下方式:
a = np.random.randn(4, 5)
b = np.array([[0, 1], [2, 3], [0, 3]])
print(b)
print(a[b[:, 0], b[:, 1]])
print(a)
才能得到想要的效果,如下所示:
才是分别取出了a[0,1],a[2,3]和a[0,3]