Python 向数组的某些元素添加数字
我有一个numpy数组:Python 向数组的某些元素添加数字,python,numpy,Python,Numpy,我有一个numpy数组: [1 2 3] [4 5 6] [7 8 9] [10 11 12] 我想给所有大于或等于3且小于或等于8的值加上100。如何执行此操作?您可以根据您的条件创建一个掩码,然后为每个值添加100 arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) mask = (arr >
[1 2 3]
[4 5 6]
[7 8 9]
[10 11 12]
我想给所有大于或等于3且小于或等于8的值加上100。如何执行此操作?您可以根据您的条件创建一个掩码,然后为每个值添加100
arr = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
[10, 11, 12]])
mask = (arr >= 3) & (arr <= 8)
arr[mask] += 100
arr=np.array([[1,2,3],
[4, 5, 6],
[7, 8, 9],
[10, 11, 12]])
掩码=(arr>=3)&(arr您可以根据您的条件创建一个掩码,然后将每个值加上100
arr = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
[10, 11, 12]])
mask = (arr >= 3) & (arr <= 8)
arr[mask] += 100
arr=np.array([[1,2,3],
[4, 5, 6],
[7, 8, 9],
[10, 11, 12]])
mask=(arr>=3)和(arr您可以这样做:
>>将numpy作为np导入
>>>x=np.数组([[1,2,3],[4,5,6],[7,8,9],[10,11,12])
>>>(x>=3)*(x=3)*(x你可以这样做:
>>将numpy作为np导入
>>>x=np.数组([[1,2,3],[4,5,6],[7,8,9],[10,11,12])
>>>(x>=3)*(x=3)*(x试试这个:
>>> a[np.where((8>=a) & (a>=3))]+=100
>>> a
array([[ 1, 2, 103],
[104, 105, 106],
[107, 108, 9],
[ 10, 11, 12]])
其中a
是:
array([[ 1, 2, 3],
[ 4, 5, 6],
[ 7, 8, 9],
[10, 11, 12]])
试试这个:
>>> a[np.where((8>=a) & (a>=3))]+=100
>>> a
array([[ 1, 2, 103],
[104, 105, 106],
[107, 108, 9],
[ 10, 11, 12]])
其中a
是:
array([[ 1, 2, 3],
[ 4, 5, 6],
[ 7, 8, 9],
[10, 11, 12]])
欢迎使用stackoverflow!查看以改进您的问题。请共享您的尝试代码,以便我们能够帮助您。欢迎使用stackoverflow!查看以改进您的问题。请共享您的尝试代码,以便我们能够帮助您。