Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将数组中的所有负元素归零_Python_Arrays_Numpy - Fatal编程技术网

Python 将数组中的所有负元素归零

Python 将数组中的所有负元素归零,python,arrays,numpy,Python,Arrays,Numpy,如果我有一个负数和正数的数组,我如何使所有负数变为零,并以一种简单的方式保持所有正数(由于数组是多维的,因此不需要使用多个for循环对其进行迭代)?我的想法是: a = np.array(...) # any random array a = 0 if a < 0 else a a=np.array(…)#任意随机数组 如果aa=np.array([1,2,3,-3,-2,5,-1]) >>>a[a>>a >>> [1, 2, 3, 0, 0, 5, 0]

如果我有一个负数和正数的数组,我如何使所有负数变为零,并以一种简单的方式保持所有正数(由于数组是多维的,因此不需要使用多个for循环对其进行迭代)?我的想法是:

a = np.array(...) # any random array
a = 0 if a < 0 else a
a=np.array(…)#任意随机数组
如果a<0,则a=0,否则a
但它不起作用:(


谢谢

尝试使用
np.where

a=np.array([1,2,3,-1,2,-4])
a=np.where(a>0, a, 0)
输出:

a
[1 2 3 0 2 0]
你可以试试这个:

>>> a = np.array([1, 2, 3, -3, -2, 5, -1])
>>> a[a<0] = 0
>>> a
>>> [1, 2, 3, 0, 0, 5, 0]
>a=np.array([1,2,3,-3,-2,5,-1])
>>>a[a>>a
>>> [1, 2, 3, 0, 0, 5, 0]