Вы можете сравнить array1
и array2
напрямую с:
In [249]: np.ceil((array1[:,None]-array2)+array2*2)
Out[249]:
array([[ 5., 6., 7., 8., 9.],
[ 6., 7., 8., 9., 10.],
[ 7., 8., 9., 10., 11.],
[ 8., 9., 10., 11., 12.],
[ 9., 10., 11., 12., 13.]])
и получить значения unique
из этого:
In [250]: np.unique(np.ceil((array1[:,None]-array2)+array2*2))
Out[250]: array([ 5., 6., 7., 8., 9., 10., 11., 12., 13.])