Azzera filtri
Azzera filtri

How to make a matrix mirror another?

4 visualizzazioni (ultimi 30 giorni)
How do I do this?
X=[4 7 1 0;
3 0 6 8]
Y=[32 6 4 21;
77 89 0 2]
X(X==0)=a;
after the alteration:
X=[4 7 1 a;
3 a 6 8]
Y=[ 32 6 4 a;
77 a 0 2];
  4 Commenti
Hugo Matias
Hugo Matias il 1 Dic 2018
My bad, fixed it
Hugo Matias
Hugo Matias il 1 Dic 2018
I can't do it that way.
I can't do manual alterations on Y.
Y has to change exactly how X changes, automatically

Accedi per commentare.

Risposta accettata

Star Strider
Star Strider il 1 Dic 2018
Try this:
a = 42;
X=[4 7 1 0;
3 0 6 8]
Y=[32 6 4 21;
77 89 0 2]
Idx = X==0
X(Idx) = a
Y(Idx) = a % Use The Same Index On Both Matrices,
  4 Commenti
Hugo Matias
Hugo Matias il 1 Dic 2018
By the way, do you know how to do this one?
(sort the matrix)
before:
a=[3 9 5 7;
3 0 1 2;
11 2 0 9];
after:
a=[11 9 9 7;
5 3 3 2;
2 1 0 0;]
Star Strider
Star Strider il 2 Dic 2018
Yes!
a=[ 3 9 5 7;
3 0 1 2;
11 2 0 9];
a_after = reshape(sort(a(:),'descend'), 4, [])'
a_after =
11 9 9 7
5 3 3 2
2 1 0 0
My apologies for the delay. I didn’t see your comment before.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by