Checking whether a field is present in cell.

I've got some variables stored in a cell but not all of the fields are present in every entry of the cell, so I need to check whether a particular field is present before I use the values contained in it. So I've got...
for m=1:NumYears
for p=1:NumTechnologies
if exist(TriangularVariables{m,p}.ReconstructedVariables)
disp('exists')
end
end
end
but Matlab returns the error 'Reference to non-existent field 'ReconstructedVariables''. I thought perhaps it was because I was referring to the contents of the cell rather than the name so I also tried round brackets but then Matlab complained that I wasn't referencing properly.
Thanks in advance.

1 commentaire

All sorted now I used...
if isfield(TriangularVariables{m,p}, 'ReconstructedVariables')
instead. Still not exactly clear why the other way didn't work so I would be grateful if somebody could explain. Thanks.

Connectez-vous pour commenter.

Réponses (0)

Catégories

Tags

Question posée :

le 3 Oct 2013

Commenté :

le 3 Oct 2013

Community Treasure Hunt

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

Start Hunting!

Translated by