Replace an element in a vector with another element.

2 次查看(过去 30 天)
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).

采纳的回答

Mohammad Abouali
Mohammad Abouali 2015-11-11
编辑:Mohammad Abouali 2015-11-11
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 个评论
kumar vivek
kumar vivek 2015-11-16
Thanks Mohammad Abouali for the answer. It really solved my problem :)

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 App Building 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by