Hello, I have three matrix like:
z1=[5 0 1;7 9 0;10 0 0], z2=[0 1 2;5 8 0;3 9 10] and z3=[81 11 90;12 0 15;20 17 16]. you see that some of values in every matrix are zero. the number of cells that is not zero in z1 is 5 and in z2 is 7 and in z3 is 8. Now I want to make matrix on the basis of the structure of z1, z2 and z3 that has only zero and one like:
[1 1 1 0 1 0 1 0 0(on the basis of z1),0 0 0 0 0 0 0 0 0(on the basis of the number of z2),0 0 0 0 0 0 0 0 0(on the basis of the number of z3);0 0 0 0 0 0 0 0 0(on the basis of the number of z1),0 1 1 1 1 1 1 0 1(on the basis of z2),0 0 0 0 0 0 0 0 0(on the basis of the number of z3);0 0 0 0 0 0 0 0 0(on the basis of the number of z1),0 0 0 0 0 0 0 0 0(on the basis of the number of z2),1 1 1 1 0 1 1 1 1(on the basis of z3)]
Is there any idea and general way to create this matrix?

댓글 수: 1

Please format the code/data matrices to be legible...
[1 1 1 0 1 0 1 0 0(on the basis of z1),0 0 0 0 0 0 0 0 0(on the basis of the number of z2),...
I can see that the first vector is
>> [z1(:)~=0].'
ans =
1 1 1 0 1 0 1 0 0
>>
but I see no relationship between the rest and the given relationship. You're saying z2-->zeros(1,numel(z2)).
Need better explanation of the logic.

댓글을 달려면 로그인하십시오.

 채택된 답변

Mischa Kim
Mischa Kim 2014년 6월 24일
편집: Mischa Kim 2014년 6월 24일

0 개 추천

Fatema, use
z_zero = blkdiag(z1(:)~=0,z2(:)~=0,z3(:)~=0)'

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Simulink에 대해 자세히 알아보기

태그

질문:

2014년 6월 24일

댓글:

2014년 6월 24일

Community Treasure Hunt

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

Start Hunting!

Translated by