Replace certain elements of vector with the values from another vector

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!

 Risposta accettata

A(C) = B

2 Commenti

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!
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]?

Accedi per commentare.

Più risposte (1)

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))]

Categorie

Tag

Richiesto:

il 21 Nov 2013

Risposto:

il 16 Giu 2023

Community Treasure Hunt

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

Start Hunting!

Translated by