我针对向量[1,2,3]运行以下命令。我可以解释其中的前2个。每个附加的填充坐标都围绕最后一个元素(3)进行镜像。但是在那之后我不能。
这里肯定有4个周期,这意味着mod of 2*(len(a) -1)
。
如果有人将其分解,我将不胜感激。此示例用于末端反射。如果开始反射有什么不同,我也想听听:
>>> a
array([1., 2., 3.])
>>> np.pad(a, ((0,1)), 'reflect')
array([1., 2., 3., 2.])
>>> np.pad(a, ((0,2)), 'reflect')
array([1., 2., 3., 2., 1.])
>>> np.pad(a, ((0,3)), 'reflect')
array([1., 2., 3., 2., 1., 2.])
>>> np.pad(a, ((0,4)), 'reflect')
array([1., 2., 3., 2., 1., 2., 3.])
>>> np.pad(a, ((0,5)), 'reflect')
array([1., 2., 3., 2., 1., 2., 3., 2.])
>>> np.pad(a, ((0,6)), 'reflect')
array([1., 2., 3., 2., 1., 2., 3., 2., 1.])
>>> np.pad(a, ((0,7)), 'reflect')
array([1., 2., 3., 2., 1., 2., 3., 2., 1., 2.])
>>> np.pad(a, ((0,8)), 'reflect')
array([1., 2., 3., 2., 1., 2., 3., 2., 1., 2., 3.])
>>> np.pad(a, ((0,9)), 'reflect')
array([1., 2., 3., 2., 1., 2., 3., 2., 1., 2., 3., 2.])
答案 0 :(得分:1)
想象一下逐步遍历原始数组,每当您到达边界时,您都会向另一个方向移动。
当您向右前进并到达末尾时,您将进行反思并开始从头开始迭代。当您向左移动并到达起点时,您将进行反思并开始迭代回到终点。
以这种方式将序列可视化可能会有所帮助:
[1, 2, 3]
1
2
3
2
1
2
3
2
1
2
3
2
1