Cell contents reference from a non-cell array object?
Afficher commentaires plus anciens
function [ information ] = printInfo( subjects )
s=height(struct2table(subjects));
for x=1:s
name=subjects(x).name;
weight=subjects(x).weight;
maxweight=max(weight);
feet=subjects(x).height.feet;
inches=subjects(x).height.inches;
str='%d: %d''%d", %d pounds';
information=sprintf(str,name,feet,inches,maxweight);
end
end
4 commentaires
Birdman
le 6 Mar 2018
What is your input to the function?
Garrett Miller
le 6 Mar 2018
Modifié(e) : per isakson
le 6 Mar 2018
Walter Roberson
le 6 Mar 2018
Which line is the error occurring on?
You should probably be replacing the assignment to s with
s = numel(subjects);
Garrett Miller
le 6 Mar 2018
Modifié(e) : per isakson
le 6 Mar 2018
Réponses (2)
per isakson
le 6 Mar 2018
Modifié(e) : per isakson
le 6 Mar 2018
yourInfo is a character array, not a cell array, thus replace
yourInfo{ string }
by
yourInfo( string )
After done that correction your code produces a plot and no errors.
btw: string is a poor name of a loop-variable - IMO
Walter Roberson
le 7 Mar 2018
Modifié(e) : Walter Roberson
le 7 Mar 2018
function [ information ] = printInfo( subjects )
s=numel(subjects);
for x=1:s
name=subjects(x).name;
weight=subjects(x).weight;
maxweight=max(weight);
feet=subjects(x).height.feet;
inches=subjects(x).height.inches;
str='%s: %d''%d", %d pounds';
information{x}=sprintf(str,name,feet,inches,maxweight);
end
end
Catégories
En savoir plus sur Cell Arrays dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!