Converting cell to struct with field names

Hi all,
I have a 12x5 cell that I am trying to convert to a structure. I am trying to use the cell2struct function but to no avail.
Right now I have:
structArray = cell2struct(temp, {'a' 'b' 'c' 'd' 'e'}, 5)
Thank you for your help!
Edit1: The first cell in temp{} is a 1x29 cell and the next 4 columns (2:5) are string values
Edit2: The error I get is "Number of field names must match number of fields in new structure."

 採用された回答

James Tursa
James Tursa 2015 年 7 月 8 日
編集済み: James Tursa 2015 年 7 月 8 日

1 投票

The 3rd argument is the dimension of the cell array to use for the fields, not the number of fields. You've got 5 field names, so I assume you mean to use the 2nd dimension of your 12x5 cell array for the fields. E.g.,
structArray = cell2struct(temp, {'a' 'b' 'c' 'd' 'e'}, 2)

2 件のコメント

Stephen23
Stephen23 2015 年 7 月 8 日
Indeed, this also described in the documentation:
R J
R J 2015 年 7 月 8 日
編集済み: R J 2015 年 7 月 8 日
Thank you again James. Much appreciated.
I also just came across this solution as well searching the answers:
names = {'a', 'b', 'c', 'd', 'e'}
tempStruc = cell2struct(temp,names,2);

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeCell Arrays についてさらに検索

タグ

質問済み:

R J
2015 年 7 月 8 日

編集済み:

R J
2015 年 7 月 8 日

Community Treasure Hunt

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

Start Hunting!

Translated by