我能否根据向量 v
中的值,移动矩阵 A
中的行?
例如,给定以下的矩阵 A
和向量 v
:
A =
1 0 0
1 0 0
1 0 0
v =
0 1 2
在这种情况下,我希望从A中获取此矩阵:
A =
1 0 0
0 1 0
0 0 1
A
中的每一行都被v
中相应位置的值向右移动了i
个单位。
我能否使用原生函数来执行此操作?还是我需要自己编写?
我尝试过circshift
函数,但我无法分别移动每一行。
mod
而不仅仅添加偏移量,因为可以合理地假设 v 可能包含负数 "shifts"。 - Tasos Papastylianoumod
的说法是正确的,它支持负值并且看起来更好。这样它就和你的答案一样了。 - carandraug