How to construct a structure with cell data and doubles?

4 views (last 30 days)
I'm trying to create a structure using either the struct command or the cell2struct command. The fields that I want for the structure are in a 1x32 cell and ultimately ends up as a char. The values I want are 30001x32 doubles.
I first use num2cell and that seems to output as a cell array but the values are double and when I use cell2struct, I get errors.
Specifically, this is what I put in the command prompt: s = cell2struct(fields{:}, values{:},2); It gives me an error that a string is not a char or you can't use doubles.
I also tried: s = cell2struct(fields{1,1},values(:,1),2); i have values(:,1) because i want the entire column for that one field. This also gave me an error.
What should I do?

Answers (1)

Walter Roberson
Walter Roberson on 25 Jan 2012
s = cell2struct(values, fields, 2);
  1 Comment
Pika
Pika on 26 Jan 2012
Thanks. I tried it but it gives me separate struct for each value in the value array.
For example, I want it to be something like this:
s.time -> gives a 30001x1 array of time (0.0,0.1,0.2,etc)
But it gives me separate struct for each value:
s(1,1).time -> gives 0.0
s(2,1).time -> gives 0.1
s(3,1).time -> gives 0.2 etc

Sign in to comment.

Categories

Find more on Structures in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!