Extracting lower triangle excluding the main diagonal elements to a string

1 view (last 30 days)
Hi all,
How to extract the lower triangle part of a matrix "excluding" the main diagonal elements, and put it as a string that has "\n" at the end of ech row?
For example:
A=[1 2 3 4; 0 6 7 8; 9 10 11 12; 13 14 15 16];
The output should be this:
B="0 \n 9 10 \n 13 14 15";

Accepted Answer

Guillaume
Guillaume on 17 Nov 2019
B = strjoin(arrayfun(@(row) strjoin(compose('%d', A(row, 1:row-1)), ' '), 2:size(A, 1), 'UniformOutput', false), '\n')
is one way. Or use an explicit loop.

More Answers (0)

Categories

Find more on Multidimensional Arrays in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!