2024-04-26 18:26:40 发布
网友
我有2个numpy数组:
import numpy as np arr_a = np.random.rand(10) arr_b = np.random.rand(10)
如果arr_a和arr_b之间的大小差大于指定的百分比(比如30%),我想创建一个在特定位置包含1的数组。现在,我可以创建包含1的数组,如果arr_a大于arr_b,否则0。你知道吗
arr_a
arr_b
1
0
arr_c = numpy.where(arr_a > arr_b, 1.0, 0.0)
复制arr_a并按适当的因子缩放,然后使用where。你知道吗
假设您的意思是相对于arr_a的差值大小,请使用:
import numpy as np arr_a = np.random.rand(10) arr_b = np.random.rand(10) arr_c = np.where((abs(arr_a - arr_b)/arr_a) > 0.3, 1, 0)
如果需要相对于arr_b的差值大小,请使用:
arr_c = np.where((abs(arr_a - arr_b)/arr_b) > 0.3, 1, 0)
复制
arr_a
并按适当的因子缩放,然后使用where。你知道吗假设您的意思是相对于
arr_a
的差值大小,请使用:如果需要相对于
arr_b
的差值大小,请使用:相关问题 更多 >
编程相关推荐