Concatenate/ Merge two HEX Cell Array

Hello,
I have a two cell array which are 3x1 and 2x1. I want to merge them and want to see as 5x1. How can I do it? When I use horzcat, It says dimensions are not consistent. Thank you.
{'01'} {'04'} {'01'}
{'02'} {'05'} ----> {'02'}
{'03'} {'03'}
{'04'}
{'05'}

 採用された回答

Rik
Rik 2022 年 6 月 3 日

0 投票

You need to use vertcat instead, or use the semicolon.
a={'01';'02';'03'}
a = 3×1 cell array
{'01'} {'02'} {'03'}
b={'04';'05'}
b = 2×1 cell array
{'04'} {'05'}
c=[a;b]
c = 5×1 cell array
{'01'} {'02'} {'03'} {'04'} {'05'}
vertcat(a,b)
ans = 5×1 cell array
{'01'} {'02'} {'03'} {'04'} {'05'}

その他の回答 (1 件)

VINAYAK LUHA
VINAYAK LUHA 2022 年 6 月 3 日
編集済み: VINAYAK LUHA 2022 年 6 月 3 日

0 投票

Hi,
The reason horzcat doesn't work here is because the number of rows in both arrays are different , so you can't place them side by side , like
1 4
2 5
3
additionally , you won't get 5 x1 cell array you are looking for ,hence concat vertically using vertcat(X,Y) or like [X;Y] . Hope this solves your problem
X={'01';'02';'03'}
X = 3×1 cell array
{'01'} {'02'} {'03'}
Y={'04';'05'}
Y = 2×1 cell array
{'04'} {'05'}
Z=[X;Y]
Z = 5×1 cell array
{'01'} {'02'} {'03'} {'04'} {'05'}

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

製品

リリース

R2021b

質問済み:

2022 年 6 月 3 日

編集済み:

2022 年 6 月 3 日

Community Treasure Hunt

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

Start Hunting!

Translated by