我在matlab中排序行的具体问题。 这是我的示例条目矩阵:
A =
[0 1 1;
0 1 2;
1 0 3;
1 0 4;
1 1 5;
0 1 6;]
这是“排序矢量”
V=
1
4
6
2
3
5
如何获得这样的输出矩阵:
B=
[0 1 1;
1 0 4;
0 1 6;
0 1 2;
1 0 3;
1 1 5]
首先我将向量V添加到矩阵A(最后一列),但下一步我不知道它应该如何。我被卡住了。
提前,感谢您的时间和帮助:)
答案 0 :(得分:3)
这可能就是答案:
B = A(V(:),:);
答案 1 :(得分:2)
要重新排列或选择任何所需的行:
B = A(V,:);
相同的概念可用于列以及重新排列,选择或重复任何所需的行或列:
V2 = [3 1 3];
B2 = A(:,V2);
B2 =
1 0 1
2 0 2
3 1 3
4 1 4
5 1 5
6 0 6
在这里了解冒号操作符(:):