如何调用矩阵左上角的右上角?

时间:2014-09-25 03:39:33

标签: matlab

我知道使用diag(mat),您可以从矩阵的左上角到右下角调出列表。但是如何调出矩阵左上角的右上角?

2 个答案:

答案 0 :(得分:2)

您可以使用

执行此操作
diag(fliplr(mat));

fliplr完全按照它在锡上所说的那样,从左到右翻转矩阵,使左上角成为右上角,反之亦然。

答案 1 :(得分:0)

假设矩阵是方形的,您也可以通过linear indexing直接执行此操作:

n = size(mat,1);
d2 = mat((n:-1:1)*(n-1)+1).'

在某些情况下,这可能会更快(diag本身通常比线性索引更快)。该方法也可以适用于非方形矩阵。我自己仍然坚持使用@MrAzzaman的解决方案,因为它几乎在所有情况下都更具可读性,几乎肯定足够快。