Replace an element in a vector with another element.

3 vues (au cours des 30 derniers jours)
kumar vivek
kumar vivek le 11 Nov 2015
I want to replace the elements of a vector with an element from other vector. But the real glitch here is that i just want 4 values from that vector to be activated and replaced.
So the code goes like this:
g=[1 2 3 4 5 6 7 8 9];
u=[1 1 3 5 4 3 7 8 9];
gout =g;
active_g = [2 3 5 6];
active_u = [2 3 5 6];
U = (g(active_g)>u(active_u))
gout(U) = u(U);
gout(~U) = g(~U);
Now the output should be gout = [1 1 3 4 4 3 7 8 9] But due to U becoming a 1*4 vector.. its not updating elements after that. Kindly suggest a way around. I just need to update the active elements and send it to other function as input but at the same time i need the complete g to evaluate another function.
So its like input g -> function(g,l) -> function (g_updated).
  1 commentaire
James Tursa
James Tursa le 11 Nov 2015
For your example, what is the desired gout?

Connectez-vous pour commenter.

Réponse acceptée

Mohammad Abouali
Mohammad Abouali le 11 Nov 2015
Modifié(e) : Mohammad Abouali le 11 Nov 2015
g=[1 2 3 4 5 6 7 8 9];
u=[1 1 3 5 4 3 7 8 9];
gout=min([g;u])
gout =
       1     1     3     4     4     3     7     8     9
  3 commentaires
kumar vivek
kumar vivek le 16 Nov 2015
Thanks Mohammad Abouali for the answer. It really solved my problem :)
Mohammad Abouali
Mohammad Abouali le 16 Nov 2015
you are welcome

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur App Building dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by