Hi! How can I merge these two cells?
Final results:

3 件のコメント

Dyuman Joshi
Dyuman Joshi 2023 年 9 月 8 日
編集済み: Dyuman Joshi 2023 年 9 月 8 日
@Alberto Acri, just a note - Posting screenshots of code or data is not helpful.
You should attach the code or data with the question.
Also, mentioning the final output is helpful as well. Make it easy for us to help you solve your problem.
With the given info, the obvious "merging" to me is to convert value1 to a 1x1 cell and vertically concate with value2.
Alberto Acri
Alberto Acri 2023 年 9 月 8 日
Hi @Dyuman Joshi! I've updated my question with file and final result!
Stephen23
Stephen23 2023 年 9 月 8 日
@Alberto Acri: note that storing scalar strings in cell arrays is very inefficient, and it avoids all of the benefits of using string arrays. You should be using string arrays, just as the documentation recommends:

サインインしてコメントする。

 採用された回答

Dyuman Joshi
Dyuman Joshi 2023 年 9 月 8 日

0 投票

As you want the final result to be a 4x1 cell array -
mat1 = load('value1.mat');
value1 = mat1.value1;
mat2 = load('value2.mat');
value2 = mat2.value2;
out1 = vertcat({value1},value2)
out1 = 4×1 cell array
{1×6 cell} {1×6 cell} {1×6 cell} {1×6 cell}
In case you want to store them as 4x6 as well -
out2 = vertcat(value1,vertcat(value2{:}))
out2 = 4×6 cell array
{["54"]} {["55"]} {["56"]} {["57"]} {["58"]} {["59"]} {["60"]} {["61"]} {["62"]} {["63"]} {["64"]} {["65"]} {["66"]} {["67"]} {["68"]} {["69"]} {["70"]} {["71"]} {["72"]} {["73"]} {["74"]} {["75"]} {["76"]} {["77"]}

3 件のコメント

Alberto Acri
Alberto Acri 2023 年 9 月 9 日
Thanks for the help @Dyuman Joshi. I will use 'out1'. May I ask you how to automatically extract and rename the cell contained in 'out1' with the name 'variable_1', 'variable_2',....?
For example, doing it manually, I would like to obtain this:
mat1 = load('value1.mat');
value1 = mat1.value1;
mat2 = load('value2.mat');
value2 = mat2.value2;
out1 = vertcat({value1},value2)
variable_1 = out1{1,1};
variable_2 = out1{2,1};
variable_3 = out1{3,1};
variable_4 = out1{4,1};
Dyuman Joshi
Dyuman Joshi 2023 年 9 月 9 日
Dynamically naming variables is not recommended - Why Variables Should Not Be Named Dynamically.
Store the data in an array and use indexing to access the data -
mat1 = load('value1.mat');
value1 = mat1.value1;
mat2 = load('value2.mat');
value2 = mat2.value2;
out1 = vertcat({value1},value2)
out1 = 4×1 cell array
{1×6 cell} {1×6 cell} {1×6 cell} {1×6 cell}
variable = vertcat(out1{:})
variable = 4×6 cell array
{["54"]} {["55"]} {["56"]} {["57"]} {["58"]} {["59"]} {["60"]} {["61"]} {["62"]} {["63"]} {["64"]} {["65"]} {["66"]} {["67"]} {["68"]} {["69"]} {["70"]} {["71"]} {["72"]} {["73"]} {["74"]} {["75"]} {["76"]} {["77"]}
Here, variable_k will correspond to the kth row of variable.
Alberto Acri
Alberto Acri 2023 年 9 月 9 日
ok!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

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

製品

リリース

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by