MATLAB: Operations in structure with N fields named sequencially.

operations with structures

Hi,
I created this structure (S) with 26 fields named sequencially. Each field has only one column and N number of rows (e.g. S.myfield1 (65×1), S.myfield2 (70×1), and so on). I just want to get the mean of S (all the fields).
mean_S=mean(S)
Error using sum
Invalid data type. First argument must be numeric or logical.
Error in mean (line 127)
y = sum(x, dim, flag) ./ mysize(x,dim);
So I transformed the structure into cell (struc2cell). I can get the mean of each cell (e.g. each field in the structure) but I cannot get the mean of two cells:
B=struct2cell(S);
mean_B1=mean(B{1,1});
mean_B1_26=mean(B{:,1});
Error using mean
Too many input arguments.
Also, I am interested in getting the min , max and std of S.
I could not find any page with this info regarding structure operations. Any solution?
Update*
I am looking that my structure is different as normal structure.
I load a -mat file containing 26 variables as
S=load('myfile.mat')
So, my structure is 1×1 with 26 fields. The Field is the name of each variable and the value of each field is the number of rows X number of columns (1)

Best Answer

Try this
y = mean(structfun(@mean, s));