Squish

Squish removes ALL singleton dimensions.
1,4K Downloads
Aktualisiert 27. Feb 2010

Lizenz anzeigen

Squish(x) will remove all singleton dimensions in x, including conversion of row vectors to column vectors.

Since singleton dimensions can confuse many operations, this function removes absolutely ALL singleton dimensions. SQUEEZE though similar, does not operate on 2D arrays which include row vectors. Thus the expected result may not always occur with SQUEEZE.

Note: This same operation can be performed with shiftdim(squeeze(x)), but squish has been timed to be faster.

For example compare the results of the following for any positive or negative n:
size(squeeze(shiftdim([1:3]',n)))
size(squish(shiftdim([1:3]',n)))

Zitieren als

Mirko Hrovat (2024). Squish (https://www.mathworks.com/matlabcentral/fileexchange/11945-squish), MATLAB Central File Exchange. Abgerufen .

Kompatibilität der MATLAB-Version
Erstellt mit R2009b
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux
Kategorien
Mehr zu Matrix Indexing finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

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

Start Hunting!
Version Veröffentlicht Versionshinweise
1.1.0.0

Modified as per Jan Simon's suggestion. It did result in a very very slight speed improvement.

1.0.0.0

Function has been modified to use logical indexing instead of "find".