Clear Filters
Clear Filters

how to do this operation to calculate a new matrix ?

3 views (last 30 days)
IF i have this matrix
A=[ 3 2 0
2 1 1
5 4 0
3 2 0
4 3 1
10 0 0 ]
and i found this matrix
a = [ 5
4
9
5
8
10 ]
and this matrix
b = [2
3
2
2
3
1 ]
i want to find this matrix F_Complete where for k=1:6 if (a(k) + b(k) - 1) == 10 then go back to A(k) and make group of ones depend on the number in the row(k) ( between each group there is zero ) like this
the third row in A = [5 4 0 ] make the condition true then
F_Complete(3,:) = [1 1 1 1 1 0 1 1 1 1]
the five row in A = [ 4 3 1 ] make the condition true then
F_Complete(5,:) = [1 1 1 1 0 1 1 1 0 1]
the last row in A = [ 10 0 0] make the condition true then
F_Complete(6,:) = [1 1 1 1 1 1 1 1 1 1]
then the final answer is
F_Complete = [ 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
1 1 1 1 1 0 1 1 1 1
0 0 0 0 0 0 0 0 0 0
1 1 1 1 0 1 1 1 0 1
1 1 1 1 1 1 1 1 1 1 ]

Accepted Answer

CS Researcher
CS Researcher on 30 Apr 2016
Edited: CS Researcher on 30 Apr 2016
Try this:
N = 10;
m = size(A,1);
% Pre-allocate the F_Complete matrix
F_Complete = zeros(m, N)
for i = 1:m
if a(i)+b(i)-1 == 10
tempVector = [ones(1,A(i,1)) 0 ones(1,A(i,2)) 0 ones(1,A(i,3))];
F_Complete(i,:) = tempVector(1:N);
end
end
Hope this helps!
  2 Comments
Firas Al-Kharabsheh
Firas Al-Kharabsheh on 30 Apr 2016
how to apply this for column where
B=[ 0 0 1 0 1 0 1 4 1 0
10 10 6 5 1 1 1 5 6 10 ]
a1=[ 10 10 7 5 2 1 2 9 7 10 ]
b1 = [1 1 2 1 2 1 2 2 2 1 ]
how to find F_complete_column where the final will be
F_complete_column = [ 1 1 0 0 0 0 0 1 0 1
1 1 0 0 0 0 0 1 0 1
1 1 0 0 0 0 0 1 0 1
1 1 0 0 0 0 0 1 0 1
1 1 0 0 0 0 0 0 0 1
1 1 0 0 0 0 0 1 0 1
1 1 0 0 0 0 0 1 0 1
1 1 0 0 0 0 0 1 0 1
1 1 0 0 0 0 0 1 0 1
1 1 0 0 0 0 0 1 0 1 ]

Sign in to comment.

More Answers (1)

Matt J
Matt J on 30 Apr 2016
Edited: Matt J on 30 Apr 2016
N=10;
idx=(a+b==N+1);
F_Complete = zeros(m,N);
fun=@(x) x(1:N);
Fc=arrayfun( @(n)[ones(1,n) 0], A(idx,:),'uni',0);
Fc=arrayfun(@(i) fun( [Fc{i,:}]),(1:size(Fc,1))','uni',0);
F_Complete(idx,:)=cell2mat(Fc)

Categories

Find more on Creating and Concatenating 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!