Array_B有47个元素,Array_A有10个元素。我想按元素和分段减去较大的数组。
也就是说,将Array_B分成4个段,每段10个,并从Array_A中逐元素减去。我该如何处理Array_B的其余7个元素?
编辑:为清楚起见,改写
答案 0 :(得分:2)
您的描述有点模糊,但是我猜想np.resize
可以解决问题:
In [104]: A = np.arange(1,5)
In [105]: B = np.arange(10,5*4.7)
In [106]: B
Out[106]:
array([10., 11., 12., 13., 14., 15., 16., 17., 18., 19., 20., 21., 22.,
23.])
In [107]: np.resize(A,B.shape)
Out[107]: array([1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2])
In [108]: B-np.resize(A,B.shape)
Out[108]:
array([ 9., 9., 9., 9., 13., 13., 13., 13., 17., 17., 17., 17., 21.,
21.])
这利用np.resize
填充空白的优势。我通常不使用resize
,但是在这种情况下,这可能是对的。