exponenta event banner

слияние (iddata)

Объединение наборов данных в объект iddata

Синтаксис

dat = merge(dat1,dat2,....,datN)

Описание

dat собирает наборы данных в dat1, ...,datN в один iddata объект, с несколькими экспериментами. Количество экспериментов в dat будет суммой числа экспериментов в datk. Для того чтобы объединение было разрешено, необходимо выполнить ряд условий:

  • Все из datk должны иметь одинаковое количество входных каналов, и InputNames должно быть то же самое.

  • Все из datk должны иметь одинаковое количество выходных каналов, и OutputNames должно быть то же самое. Если в одном эксперименте отсутствует какой-либо входной или выходной канал, он может быть заменен вектором NaNs, чтобы соответствовать этим правилам.

  • Если ExperimentNames из datk были указаны как нечто, отличное от значения по умолчанию 'Exp1', 'Exp2'и т.д., все они должны быть уникальными. Если имена по умолчанию перекрываются, они изменяются таким образом, что dat будет иметь список уникальных ExperimentNames.

Интервалы выборки, количество наблюдений и входные свойства (Period, InterSample) может отличаться в различных экспериментах.

Отдельные эксперименты можно извлечь с помощью команды getexp. Их также можно извлечь с помощью вложенной ссылки с четвертым индексом.

dat1 = dat(:,:,:,ExperimentNumber)

или

dat1 = dat(:,:,:,ExperimentName)

Хранение нескольких экспериментов как одного iddata объект может быть очень полезен для обработки экспериментальных данных, которые были собраны в различных случаях, или когда набор данных был разделен для удаления «плохих» частей данных. Все подпрограммы панели инструментов принимают данные нескольких экспериментов.

Примеры

свернуть все

Удаление плохих частей данных для оценки моделей без разрушения оценки плохими данными.

load iddemo8;
plot(dat);

Figure contains 2 axes. Axes 1 with title y1 contains an object of type line. This object represents dat. Axes 2 with title u1 contains an object of type line. This object represents dat.

Плохие части данных обнаруживаются вокруг выборки 250-280 и между выборками 600-650. Вырезать эти плохие части, чтобы сформировать набор данных из нескольких экспериментов и объединить данные.

dat = merge(dat(1:250),dat(281:600),dat(651:1000));

Первые два эксперимента можно использовать для оценки модели, а третий - для проверки модели.

dat_est = getexp(dat,[1,2]);
m = ssest(dat_est,2);
dat_val = getexp(dat,3);
Представлен до R2006a