Change cell object to char

How can I convert the name object to be a char instead of a cell?
Thank you very much.
Emily

回答 (1 件)

Fangjun Jiang
Fangjun Jiang 2022 年 11 月 3 日

0 投票

a={'abc'}
a = 1×1 cell array
{'abc'}
whos a
Name Size Bytes Class Attributes a 1x1 110 cell
b=char(a)
b = 'abc'
whos b
Name Size Bytes Class Attributes b 1x3 6 char

4 件のコメント

Emily Doherty
Emily Doherty 2022 年 11 月 3 日
But then how do I replace the name 1x1 cell with the new 'b' value ?
Joseph Mah
Joseph Mah 2022 年 11 月 3 日
You could just set a=char(a) if your goal is to make a char instead of a cell array, though will not work if you have multiple cells in your cell array. In that case maybe look into string arrays.
Emily Doherty
Emily Doherty 2022 年 11 月 3 日
My cell array is only one cell. I get this error when I try to follow that logic
>> SubjStats(1, 1).basis.stim.values{1, 1}.name = char(SubjStats(1, 1).basis.stim.values{1, 1}.name)
Error using strcmp
Too many input arguments.Error in Dictionary/subsasgn (line 233)
if strcmp(s.type,'()')
Fangjun Jiang
Fangjun Jiang 2022 年 11 月 3 日
Might it be that this field 'name' in that nested structure requires a cell of string?
try
SubjStats(1, 1).basis.stim.values{1, 1}.name='abc'

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

カテゴリ

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

製品

リリース

R2021a

質問済み:

2022 年 11 月 3 日

コメント済み:

2022 年 11 月 3 日

Community Treasure Hunt

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

Start Hunting!

Translated by