버전 (2.27 KB) 작성자: Sanjay Manohar
Like CAT, but padding with NaNs. Doesn't complain if input sizes heterogeneous. Faster than CATPAD.
다운로드 수: 447
업데이트 날짜: 2013/2/20

라이선스 보기

I wrote this some years back before I knew CATPAD existed. I'm putting it out here because it's between 2 to 4.5 times faster.


X = NANCAT( DIM, X1, X2, ... )

concatenates along dimension DIM, but doesn't complain if the items are all of different sizes. Pads the smaller matrices with NAN.

Generalises fully to N dimensional arrays.

X = NANCAT( DIM, X..., 'padvalue', P )

Pads with the value P rather than NAN. P must be a scalar.

Also handles cell arrays and char arrays; default padding cell is { [] }, and default char is ' '.

X = NANCAT( DIM, X..., 'alignend')

Aligns the new items at the end of the dimensions being padded - i.e. the padding goes "in front". For example,

NANCAT(1,[1 2 3; 4 5 6], [7 8])
ans =
[ 1 2 3
4 5 6
7 8 nan ]

NANCAT(1, [1 2 3; 4 5 6], [7 8], 'alignend')
ans =
[ 1 2 3
4 5 6
nan 7 8 ]

Notes for unusual cases:
* If any concatenands are cells, the output is a cell.
* If any of the concatenands are numeric, they are turned into cell arrays with num2cell.
* If the first operand isn't a cell, but later ones are, we default to padding with { [nan] }, rather than { [] }.
* Unlike CATPAD it does not return a flag matrix. Maybe that's why it's faster.

인용 양식

Sanjay Manohar (2024). NANCAT (, MATLAB Central File Exchange. 검색됨 .

MATLAB 릴리스 호환 정보
개발 환경: R2007a
모든 릴리스와 호환
플랫폼 호환성
Windows macOS Linux
Help CenterMATLAB Answers에서 NaNs에 대해 자세히 알아보기
태그 태그 추가

Community Treasure Hunt

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

Start Hunting!
버전 게시됨 릴리스 정보