从NumPy数组中选择特定的行和列

从NumPy数组中选择特定的行和列,第1张

从NumPy数组中选择特定的行和列

花式索引要求您提供每个维度的所有索引。您为第一个提供3个索引,为第二个仅提供2个索引,因此会出现错误。您想做这样的事情:

>>> a[[[0, 0], [1, 1], [3, 3]], [[0,2], [0,2], [0, 2]]]array([[ 0,  2],       [ 4,  6],       [12, 14]])

当然写这很痛苦,所以您可以让广播帮助您:

>>> a[[[0], [1], [3]], [0, 2]]array([[ 0,  2],       [ 4,  6],       [12, 14]])

如果您使用数组而不是列表建立索引,则此 *** 作要简单得多:

>>> row_idx = np.array([0, 1, 3])>>> col_idx = np.array([0, 2])>>> a[row_idx[:, None], col_idx]array([[ 0,  2],       [ 4,  6],       [12, 14]])


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5643480.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存