exponenta event banner

selectbyname (SimData)

Выберите данные по наименованию из объектного массива SimData

Синтаксис

[t,x,n] = selectbyname(simDataObj, 'NameValue')
Out = selectbyname(simDataObj, NameValue, 'Format', Format)

Аргументы

Выходные аргументы

tВектор n-by-1 моментов времени.
xМассив данных n-by-m. метка t и names строки и столбцы x соответственно.
nМассив ячеек m-by-1 имен.
OutДанные возвращены в формате, как задано в 'FormatValue', показанном во Входных параметрах. В зависимости от заданного 'FormatValue' Out содержит одно из следующего:
  • Массив структур

  • Объект SimData

  • Объект временных рядов

  • Объединенные временные ряды возражают от массива объектов SimData

Входные параметры

simDataObjОбъектный массив SimData. Введите имя переменной для объекта SimData.
NameValueИмена состояний, для которых вы хотите выбрать данные из simDataObj. Это должен быть вектор символов, строка, вектор строки или массив ячеек из символьных векторов.
QueryМассив ячеек аргументов, состоящих из некоторой комбинации имени свойства / пары значения свойства и/или пункты 'Where'. Для большего количества полного описания синтаксиса запроса, включая пункты 'Where' и их поддерживаемые типы условия, смотрите sbioselect. Можно использовать любое из полей метаданных, доступных в ячейках свойства DataInfo объекта SimData. Они включают 'Type', 'Name', 'Units', 'Compartment' (только разновидности), или 'Reaction' (только параметр).
FormatValue

Выберите формат из следующей таблицы.

FormatValueОписание
'num'Задает формат, который позволяет вам возвратить данные в числовых массивах. Это - значение по умолчанию, когда selectbyname вызван несколькими выходными аргументами.
'nummetadata'Задает формат, который позволяет вам возвратить массив ячеек структур метаданных в metadata вместо имен. Элементы метки metadata столбцы x.
'numqualnames'Задает формат, который позволяет вам возвратить полностью определенные имена в names, чтобы разрешить неоднозначности.
'struct'Задает формат, который позволяет вам возвратить массив структур, содержащий и данные и метаданные. Это - значение по умолчанию, когда вы используете один выходной аргумент.
'simdata'Задает формат, который позволяет вам возвратить данные в новом объекте SimData. Это - формат по умолчанию, когда selectbyname вызван нулем или одним выходным аргументом.
'ts'Задает формат, который позволяет вам возвратить данные в объектах временных рядов, создавая отдельные временные ряды для каждого состояния или столбца и объекта SimData в simDataObj.
'tslumped'Задает формат, который позволяет вам возвратить данные в объектах временных рядов, комбинируя данные из каждого объекта SimData в одни временные ряды.

Описание

Метод selectbyname позволяет вам выбирать данные из объектного массива SimData по наименованию. [t,x,n] = selectbyname(simDataObj, 'NameValue') возвращает время и данные состояния из объекта SimData simDataObj для состояний с именами 'NameValue'.

В объекте SimData simDataObj, имена, маркирующие столбцы матрицы данных simDataObj.Data, даны simDataObj.DataNames. Имя, заданное в 'NameValue', может совпадать больше чем с одним столбцом данных, например, когда simDataObj содержит данные для разновидности и параметра, оба назвали 'k'. Чтобы разрешить неоднозначности, используйте полностью определенные имена в 'NameValue', такие как 'CompartmentName.SpeciesName' или 'ReactionName.ParameterName'. selectbyname возвращает полностью определенные имена в выходном аргументе names, когда существуют неоднозначности.

Out = selectbyname(simDataObj, NameValue, 'Format', Format) возвращает данные в заданном формате. Допустимые форматы перечислены во Входных параметрах.

Примеры

свернуть все

Этот пример использует Лотку - Вольтерру (добыча хищника) модель, описанная Гиллеспи [1].

Загрузите демонстрационный проект, содержащий m1 модели Лотки-Вольтерры.

sbioloadproject lotka;

Моделируйте модель m1.

sd = sbiosimulate(m1);

Постройте результаты симуляции, которые показывают состояния всех разновидностей в модели.

sbioplot(sd);

Выберите данные моделирования разновидностей y1 и y2 только.

sd2 = selectbyname(sd,{'y1','y2'});

Отобразите выбранные данные на графике.

sbioplot(sd2);

Смотрите также

[1] Гиллеспи Д.Т. "Точная симуляция Stochatic двойных химических реакций", (1977) журнал физической химии, 81 (25), 2340-2361.

getdata, sbioselect, sbiosimulate

Представленный в R2007b