Класс: набор данных
(Не рекомендуется) Подстрочная ссылка для массива наборов данных
dataset тип данных не рекомендуется. Для работы с разнородными данными используйте MATLAB
®table вместо этого тип данных. См. MATLAB table для получения дополнительной информации.
B = subsref(A,S)
B = subsref(A,S) вызывается для синтаксиса A(i,j), A{i,j}, или A.var когда A является массивом наборов данных. S - структурный массив с полями:
type | Символьный вектор, содержащий '()', '{}', или '.' указание типа подстрочного индекса. |
subs | Массив ячеек или вектор символов, содержащий фактические подстрочные индексы. |
B = A(i,j) возвращает массив наборов данных, содержащий подмножество наблюдений и переменных в массиве наборов данных, A. i и j являются одним из следующих типов:
положительные целые числа
векторы положительных целых чисел
имена наблюдений/переменных
массивы ячеек, содержащие одно или несколько имен наблюдения/переменных
логические векторы
B содержит те же значения свойств, что и A, поднабор для наблюдений или переменных, где это уместно.
B = A{i,j} возвращает элемент переменной набора данных. i и j положительные целые числа или логические векторы. Индексирование ячеек не может возвращать несколько элементов набора данных, то есть подстрочных индексов i и j каждый должен ссылаться только на одно наблюдение или переменную. A{i,j} также может сопровождаться дальнейшим индексированием, поддерживаемым переменной.
Для переменных набора данных, которые являются массивами ячеек, выражения, такие как A{1,'CellVar'} вернуть содержимое ссылочного элемента набора данных таким же образом, как {}-индексация в обычном массиве ячеек. Если переменная набора данных является одним столбцом ячеек, возвращается содержимое одной ячейки. Если переменная набора данных имеет несколько столбцов или n-D, возвращается несколько выходов, содержащих содержимое нескольких ячеек.
Для переменных набора данных, которые являются n-D массивов, т.е. каждое наблюдение является матрицей или массивом, выражениями, такими как A{1,'ArrayVar'} вернуть A.ArrayVar(1,:,...) с отжатым передним одиночным размером.
B = A.var или A.(varname) возвращает переменную набора данных. var - литерал имени переменной, или varname - символьная переменная, содержащая имя переменной. A.var или A.(varname) также может сопровождаться дальнейшим индексированием, поддерживаемым переменной. В частности, A.var(obsnames,...) и A.var{obsnames,...} (при поддержке var) предоставляют подстрочный индекс в переменную набора данных с использованием имен наблюдений.
P = A.Properties.propertyname возвращает свойство набора данных. propertyname является одним из следующих:
'ObsNames'
'VarNames'
'Description'
'Units'
'DimNames'
'UserData'
'VarDescription'
A.properties.propertyname также может сопровождаться дальнейшим индексированием, поддерживаемым свойством.
Подстрочные выражения, такие как A.CellVar{1:2}, A.StructVar(1:2).field, или A.Properties.ObsNames{1:2} являются действительными, но приводят к subsref возвращает несколько выходов в виде списка, разделенного запятыми. Например, при явном назначении выводимым аргументам в левой части присвоения: [cellval1,cellval2] = A.CellVar{1:2}, эти переменные получат соответствующие значения. Однако при отсутствии аргументов вывода возвращается только первый вывод в списке, разделенном запятыми.
Аналогично, если переменная набора данных является массивом ячеек с несколькими столбцами или является n-D массив ячеек, затем подстрочные выражения, такие как A{1,'CellVar'} результат в subsref возвращает содержимое нескольких ячеек. Необходимо явно присвоить выводимым аргументам в левой части присвоения, например: [cellval1,cellval2] = A{1,'CellVar'}.