Get a subarray from a numpy array based on index

numpy, python

Solution

output = input[index.astype(np.bool)]

or

output = input[np.where(index)[0]]

Problem

I have a numpy array vector, and I want to get a subset based on the indexes: ``` import numpy as np input=np.array([1,2,3,4,5,6,7,8,9,10]) index=np.array([0,1,0,0,0,0,1,0,0,1]) ``` what is a pythonic way to get out output=[2,7,10]?

Original source