Azzera filtri
Azzera filtri

How to add data of 2 vectors with different size

12 visualizzazioni (ultimi 30 giorni)
Hi
I have 2 vectors and I want to merge them directly. A=[1;2;3;4;5] and B=zeros(17,1) where, elements of A are going to these indices [4 5 7 11 13];
A_new=[0;0;0;1;2;0;3;0;0;0;4;0;5;0;0;0;0]

Risposta accettata

Star Strider
Star Strider il 18 Apr 2015
One way:
B = zeros(17,1);
A = [1;2;3;4;5];
I = [4 5 7 11 13];
A_new = B;
A_new(I) = A;
  2 Commenti
Jamais avenir
Jamais avenir il 18 Apr 2015
Modificato: Jamais avenir il 18 Apr 2015
Thanks, But I want to add them directly, for example like solving this case: If I had :
aa = [1 2 3 4]; bb = [100 100]; and wanted to get this result:
cc = [101 102 3 4]
The answer could be :
cc = aa + [bb zeros(1,2)];
Is there any similar answer ?
Star Strider
Star Strider il 18 Apr 2015
That isn’t the same as in your original Question.
You have to address them by the appropriate subscripts, and it works:
aa = [1 2 3 4];
bb = [100 100];
cc = aa;
cc(1:2) = cc(1:2) + bb;
There may be other ways, but that’s the most efficient.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Mathematics in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by