Replace certain elements of vector with the values from another vector

38 views (last 30 days)
Hi.
I could use some help here.
There is a zeros array, where I would like to replace some elements that have certain positions with the values from another vector. So, if I have:
A=[0 0 0 0 0] %Zeros vector
B=[5 6] %values
C=[2 5] %positions of elements in A that should receive a new value from B
How should I get a vector D=[0 5 0 0 6] ?
I appreciate your helping!

Accepted Answer

Iain
Iain on 21 Nov 2013
  2 Comments
Katja
Katja on 22 Nov 2013
I'm amazed! It's a very elegant solution! In my real case things a bit more complicated, but I think it will work. Thanks a lot, lain!
TAPAN PATEL
TAPAN PATEL on 8 Jun 2020
ok, Now I have one question:
If A=[0 0 0 0 0] and B=[5 6 4] and C=[2 5 2] then how can I get average of two values belong to position 2nd in final answer that menas final answer should like A=[0 4.5 0 0 6]?

Sign in to comment.

More Answers (1)

Olawale Oyewole
Olawale Oyewole on 16 Jun 2023
for i=1:3
x=[1 2 5];
y=zeros(1,3);
y(1:1:3)=1+log(x(i));
end
Please help replace each entry of y by 1+log(x(i)). That is I want y=[0 0 0] changed to y=[1+log(x(1)) 1+log(x(2)) 1+log(x(3))]

Tags

Community Treasure Hunt

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

Start Hunting!