subsasgn

Класс: набор данных

(Не Рекомендуемый) Подписанное назначение массиву набора данных

The 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 вместо этого.

См. также

| |