numpy.delete
-
numpy.delete(arr, obj, axis=None)
[source] -
Return a new array with sub-arrays along an axis deleted. For a one dimensional array, this returns those entries not returned by
arr[obj]
.- Parameters
-
-
arrarray_like
-
Input array.
-
objslice, int or array of ints
-
Indicate indices of sub-arrays to remove along the specified axis.
Changed in version 1.19.0: Boolean indices are now treated as a mask of elements to remove, rather than being cast to the integers 0 and 1.
-
axisint, optional
-
The axis along which to delete the subarray defined by
obj
. Ifaxis
is None,obj
is applied to the flattened array.
-
- Returns
-
-
outndarray
-
A copy of
arr
with the elements specified byobj
removed. Note thatdelete
does not occur in-place. Ifaxis
is None,out
is a flattened array.
-
Notes
Often it is preferable to use a boolean mask. For example:
>>> arr = np.arange(12) + 1 >>> mask = np.ones(len(arr), dtype=bool) >>> mask[[0,2,4]] = False >>> result = arr[mask,...]
Is equivalent to
np.delete(arr, [0,2,4], axis=0)
, but allows further use ofmask
.Examples
>>> arr = np.array([[1,2,3,4], [5,6,7,8], [9,10,11,12]]) >>> arr array([[ 1, 2, 3, 4], [ 5, 6, 7, 8], [ 9, 10, 11, 12]]) >>> np.delete(arr, 1, 0) array([[ 1, 2, 3, 4], [ 9, 10, 11, 12]])
>>> np.delete(arr, np.s_[::2], 1) array([[ 2, 4], [ 6, 8], [10, 12]]) >>> np.delete(arr, [1,3,5], None) array([ 1, 3, 5, 7, 8, 9, 10, 11, 12])
© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/generated/numpy.delete.html