1D array to 2D array positions

2 views (last 30 days)
Eduardo Santos
Eduardo Santos on 30 Apr 2019
Edited: James Tursa on 30 Apr 2019
I would like to 'convert' a 1D array to a 2D matrix considering the value inside the array as:
A =
1 3 4 4 3
B =
0 0 0 0 0
0 0 1 1 0
0 1 0 0 1
0 0 0 0 0
1 0 0 0 0
Can you suggest a very fast way to do that?
The row number is fixed at 5 here (a known value).

Accepted Answer

James Tursa
James Tursa on 30 Apr 2019
Edited: James Tursa on 30 Apr 2019
n = 5;
B = zeros(n,size(A,2));
B(sub2ind(size(B),n+1-A,1:size(A,2))) = 1;

More Answers (0)

Categories

Find more on Data Types 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!