我有一行A = [0 1 2 3 4]和一个索引I = [0 0 1 0 1],我想提取A中由I索引的元素,即[2, 4]。
A = [0 1 2 3 4]
I = [0 0 1 0 1]
A
I
[2, 4]
我的尝试:
import numpy as np A = np.array([0, 1, 2, 3, 4]) index = np.array([0, 0, 1, 0, 1]) print(A[index])
结果并不如我所料:
[0 0 1 0 1]
你能详细说明一下如何实现我的目标吗?
pbgvytdp1#
我认为你需要布尔索引:
A[index.astype(bool)] # array([2, 4])
v9tzhpje2#
如果有用的话,一个非numpy的方法来实现这个-它使用zip来合并每对元素,如果第二个为真,则返回第一个:第一个月
2条答案
按热度按时间pbgvytdp1#
我认为你需要布尔索引:
v9tzhpje2#
如果有用的话,一个非numpy的方法来实现这个-它使用zip来合并每对元素,如果第二个为真,则返回第一个:
第一个月