Azzera filtri
Azzera filtri

Concatenate along singleton dimension?

2 visualizzazioni (ultimi 30 giorni)
Hi,
Is there a single-step way to concatenate two vectors along the singleton dimension? For example, a 10x1 vector and a 1x25 vector. In some of my scripts the dimensions seem to be unpredictable for reasons I don't feel like digging into, and I have to use reshape every time I want to concatenate.
Thanks.
  2 Commenti
David McVea
David McVea il 14 Lug 2016
As clarified below:
Thanks - I wasn't clear in my question.
I don't know whether the dimension would be 10x1 and 25x1, or 1x10 and 25x1, or any other combination.
All I know is they will both have a singleton dimension.
Stephen23
Stephen23 il 14 Lug 2016
In your mind you might know what you want, but our crsytal balls are a little foggy today. Please give us some examples with both input and output vectors so that we can test our code with.

Accedi per commentare.

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 14 Lug 2016
A=rand(5,1)
B=rand(1,4)
out=[A(:);B(:)]
  4 Commenti
Guillaume
Guillaume il 14 Lug 2016
As far as I understand, Azzi's answer fills the brief. It reshapes both vectors into column vectors and concatenate them vertically. It therefore does not matter which dimension is the singleton one.
Of course, having code that generates vectors of unpredictable shape is not a good design, so I would fix that first. It could simply be forcing the output to be a column vector with:
out = out(:);
David McVea
David McVea il 14 Lug 2016
Yes, I am sorry. Azzi's answer is essentially what I am looking for. And it does bother me that the shape is unpredictable, but I have spend some time trying to track down the source but haven't figured it out yet. Thanks.

Accedi per commentare.

Più risposte (0)

Categorie

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

Community Treasure Hunt

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

Start Hunting!

Translated by