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