Extending a vectors length with zeros

114 vues (au cours des 30 derniers jours)
Chameleon17
Chameleon17 le 13 Oct 2015
Modifié(e) : Tongyao Pu le 17 Oct 2019
Good Afternoon,
I'm trying to extend the length of a vector, say it is 1x3 double. and I want it to be the same length as another vector which is say 1x8 double. I would like to pad it out with zeros but I do not have the image processor application. Is there a simple way to do this?
Thanks you for any help and time you have to spare!

Réponses (2)

Jan
Jan le 13 Oct 2015
x = rand(1, 3);
y = rand(1, 8);
x(length(y)) = 0;
This fills all elements from length(x)+1 to length(y) with zeros.
  1 commentaire
Tongyao Pu
Tongyao Pu le 17 Oct 2019
Modifié(e) : Tongyao Pu le 17 Oct 2019
Ed: I tried again and it works. I think the concept of your code is a bit different.
x(length(y)) = 0;
This only assigns the last number to 0. But because it extended the length of x, matlab assign all the other positions to 0.
For example, if I try;
X(length(y)) = NaN;
It only assigns the last number to NaN. If I want to extend the length of x with NaNs, I need to write:
x(length(x)+1:length(y)) = NaN;
Anyway, thank you for your answer, it inspires me a lot!
Hi, that’s a brilliant solution, but is there a way to store it in a new variable? I copied the variable again
x2 = x;
but was wondering if there is a more direct way?
Also, instead of assign it to 0, can I assign it to NaN (I tried the same code but it still turns out to be 0s)?
Thanks

Connectez-vous pour commenter.


Manolis Michailidis
Manolis Michailidis le 13 Oct 2015
Modifié(e) : Manolis Michailidis le 13 Oct 2015
Lets assume x(1x3) and y(1x8)
Padd=[x,zeros(1,length(y)-length(x))];
  2 commentaires
Chameleon17
Chameleon17 le 13 Oct 2015
Modifié(e) : Chameleon17 le 13 Oct 2015
OH!!!! Thank you thank you thank you!!!
That's just great! Thank you so much!!!
Manolis Michailidis
Manolis Michailidis le 13 Oct 2015
If it helped please accept the answer

Connectez-vous pour commenter.

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by