In case you don't have the indices of the elements you want to remove, you can use the function in1d provided by numpy.
The function returns True
if the element of a 1-D array is also present in a second array. To delete the elements, you just have to negate the values returned by this function.
Notice that this method keeps the order from the original array.
In [1]: import numpy as np
a = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
rm = np.array([3, 4, 7])
# np.in1d return true if the element of `a` is in `rm`
idx = np.in1d(a, rm)
idx
Out[1]: array([False, False, True, True, False, False, True, False, False])
In [2]: # Since we want the opposite of what `in1d` gives us,
# you just have to negate the returned value
a[~idx]
Out[2]: array([1, 2, 5, 6, 8, 9])