Clear Filters
Clear Filters

How do you extract diagonal elements of a cell array?

6 views (last 30 days)
[9;9;9;9;1;1;2;2] [9;2;1;1;2;1;9;9] [9;2;1;1;2;1;9;9]
[9;9;9;9;1;1;2;2] [9;2;1;1;2;1;9;9] [9;2;1;1;2;1;9;9]
0 [2;1;9;2;9;9;9;9] [2;1;9;2;9;9;9;9]
Hi, need help:
i have a cell array like this one, and i need to extract only the elements on the diagonal how can i do?
Please advise Thanks!

Accepted Answer

Max Heimann
Max Heimann on 14 Jan 2022
Edited: Max Heimann on 14 Jan 2022
Assuming your matrix "data" is equal in x and y dimension:
[y,x] = size(data)
selected_values = data([1:y+1:x*y])
Alternatively you could try creating an index matrix with the "eye" command and then use that to select your values from the matrix.

More Answers (0)

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!