Check for the existence of a variable inside a structure array

I have a structure array:
data{1} =
date: 19580508
lon: 159.3833
lat: -23.4667
depth: [12x1 single]
temp: [12x1 single]
sal: [12x1 single]
oxy: [12x1 single]
Some of them have the variable 'oxy', others don't. I am trying to figure out how to check for the existence of 'oxy'.
I tried to use A = existence('data{1}.oxy'), but its results are always 0, even when the variable exists.
Should I use some other function to achieve this? Thanks!

1 个评论

Your data is a cell array containing a structure array, not a pure structure array.

请先登录,再进行评论。

 采纳的回答

any(ismember(fields(data{1}),'oxy'))

3 个评论

Thank you so much for answering my question. It works great!
and how to chek the existance of data{i}.oxy or data.oxy or data(i).oxy?
Do you have a nonscalar cell array each containing a scalar structure, or a non-scalar struct array?

请先登录,再进行评论。

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Structures 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by