如何切片 np 数组的每个元素并将其存储在新的 ndarray 中?
How to slice every element of nparray and store it in new nparray?
如果这是我的nparray
arr_str = np.array(['10', '100', '301', '23423'])
我想使用切片转换成这样
获取 str a[-1] 中的最后一个字符,其中 a 是 nparray
中的元素
arr_slice = np.array(['0', '0', '1', '3'])
就像我们如何将数字添加到 nparray 的每个元素一样
arr_str.asType(int) + 5
为什么不使用列表理解?
>>> np.array([x[-1] for x in arr_str])
array(['0', '0', '1', '3'], dtype='<U1')
或者,您可以使用 %
模运算符:
>>> arr_str.astype(int) % 10
array([0, 0, 1, 3])
这个简短的答案,试试这个:
np.array(list(map(lambda x : int(x[-1]) , list(arr_str)))) + 5
# array([5, 5, 6, 8])
如果这是我的nparray
arr_str = np.array(['10', '100', '301', '23423'])
我想使用切片转换成这样 获取 str a[-1] 中的最后一个字符,其中 a 是 nparray
中的元素arr_slice = np.array(['0', '0', '1', '3'])
就像我们如何将数字添加到 nparray 的每个元素一样
arr_str.asType(int) + 5
为什么不使用列表理解?
>>> np.array([x[-1] for x in arr_str])
array(['0', '0', '1', '3'], dtype='<U1')
或者,您可以使用 %
模运算符:
>>> arr_str.astype(int) % 10
array([0, 0, 1, 3])
这个简短的答案,试试这个:
np.array(list(map(lambda x : int(x[-1]) , list(arr_str)))) + 5
# array([5, 5, 6, 8])