Извлечение данных из структуры в таблице Matlab
У меня есть таблица Matlab. Одна из колонн состоит из 1 на 1 структуры. Структура содержит два поля с именем type, которое представляет собой строку, и координаты, представляющие собой ячейку 1x3. Я хотел бы создать матрицу 1x3, которая содержит значения из ячейки 1x3. Таблица имеет 3585 строк.
С уважением, Матиас
1 ответ
Предположим, у вас есть следующее в качестве вашей структуры и таблицы
structureName.coordinates={1,2,3}
structureName.type='type'
tableName=table(structureName)
Вы можете получить доступ к структуре, используя следующий код. Обратите внимание, что "1" является ссылкой на индекс табличной переменной, к которой вы пытаетесь обратиться. В этом случае интересующая структура является первой (и единственной) переменной таблицы. В противном случае вы бы заменили "1" на "n", где "n" - это индекс структуры в вашей таблице.
tableName{:,1}
Чтобы получить доступ к полям структуры, вы можете использовать:
tableName{:,1}.type
tableName{:,1}.coordinates
Предполагая, что вы хотите создать свою матрицу 1x3 отдельно от таблицы, вы можете использовать
cell2mat(tableName{:,1}.coordinates)
Для всех случаев, использованных выше, вы можете заменить
tableName{:,1}
с
tableName.structureName
и получить эквивалентные результаты.