Running On matrix by diagonals

1 vue (au cours des 30 derniers jours)
Harel Harel Shattenstein
Harel Harel Shattenstein le 8 Juil 2018
Modifié(e) : Guillaume le 8 Juil 2018
I am looking for an algorithm that can collect the elements of a matrix in the following way
It can be a non square matrix too
So the answer would be [a41,a42,a31,a43,a32,a21,a44,...]

Réponses (1)

Guillaume
Guillaume le 8 Juil 2018
Modifié(e) : Guillaume le 8 Juil 2018
One option:
[rows, cols] = size(A);
indices = (1:cols+rows)*rows - (0:rows-1)'*(rows+1);
indices = indices(indices > 0 & indices <= numel(A));
A(indices)
Require R2016b or later for the implicit expansion of the subtraction

Catégories

En savoir plus sur Operating on Diagonal Matrices dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by