Я прочитал документацию для доступа массив ячеек вCell индексирование в MATLAB
http://www.mathworks.com/help/matlab/matlab_prog/access-data-in-a-cell-array.html
кажется довольно простой; однако, похоже, я потерял доступ к 1X1 struct
ниже.
У меня есть объект (first_elem
) который имеет класс cell
.
Я хочу видеть содержимое структуры, как я только что загрузил в набор данных MATLAB для анализа.
>> first_elem
first_elem =
[1x1 struct]
>> class(first_elem)
ans =
cell
>> first_elem(1)
ans =
[1x1 struct]
>> class(first_elem(1))
ans =
cell
Однако, когда я индексировать для первого элемента с (1)
, вернусь другой объект cell
вместо 1x1 struct
, показанного на [1x1 struct]
.
Я что-то упустил?
Дополнительный контекст:
Исходный файл загружен я содержал несколько наборов данных и выглядел как
>> display(train_small)
train_small =
train: {[1x1 struct] [1x1 struct] [1x1 struct] [1x1 struct] [1x1 struct] [1x1 struct] [1x1 struct]}
после загрузки.
Я попытался посмотреть на содержимое первого набора данных с
first_elem = train_small.train(1)
Это обычно не делают смысл ставить структуры внутри ячеек. Если все структуры имеют одинаковые имена полей, используйте вместо этого массив struct. –