Отказы сбора данных иногда приводят к недостающим измерениям и во входе и в выходных сигналах. Когда вы импортируете данные, которые содержат отсутствующие значения с помощью MATLAB® Import Wizard, эти значения автоматически установлены к NaN
NaN
служит флагом для несуществующих или неопределенных данных. Когда вы отображаете данные на графике по графику временной зависимости, который содержит отсутствующие значения, разрывы появляются на графике, где недостающие данные существуют.
Можно использовать misdata
оценить отсутствующие значения. Эта команда линейно интерполирует отсутствующие значения, чтобы оценить первую модель. Затем это использует эту модель, чтобы оценить недостающие данные как параметры путем минимизации выходных ошибок прогноза, полученных из восстановленных данных. Можно задать структуру модели, которую вы хотите использовать в misdata
аргумент или оценка модель порядка по умолчанию использование n4sid
метод. Для получения дополнительной информации смотрите misdata
страница с описанием.
Можно только использовать misdata
на данных временного интервала, хранимых в iddata
объект. Для получения дополнительной информации о создании iddata
объекты, смотрите, что Временной и частотный диапазон Представления Использует Объекты iddata.
Например, предположите y
и u
выводятся и входные сигналы, которые содержат NaN
s. Эти данные производятся в 0.2
s. Следующий синтаксис создает новый iddata
объект с этими сигналами ввода и вывода.
dat = iddata(y,u,0.2) % y and u contain NaNs % representing missing data
Примените misdata
команда к новому объекту данных. Например:
dat1 = misdata(dat); plot(dat,dat1) % Check how the missing data % was estimated on a time plot
Неправильное функционирование может произвести ошибки в измеренных значениях, названных выбросами. Такие выбросы могут быть вызваны скачками сигнала или неправильным функционированием измерения. Если вы не удаляете выбросы из своих данных, это может оказать негативное влияние на предполагаемые модели.
Чтобы идентифицировать присутствие выбросов, выполните одну из следующих задач:
Прежде, чем оценить модель, отобразите данные на графике по графику временной зависимости и идентифицируйте значения, которые появляются из области значений.
После оценки модели постройте остаточные значения и идентифицируйте необычно большие значения. Для получения дополнительной информации о графическом выводе остаточных значений, смотрите темы на странице Residual Analysis. Оцените исходные данные, которые ответственны за большие остаточные значения. Например, для модели Model
и данные о валидации Data
, можно использовать следующие команды, чтобы построить остаточные значения:
% Compute the residuals E = resid(Data,Model) % Plot the residuals plot(E)
Затем попробуйте эти методы за удаление или минимизацию эффектов выбросов:
Извлеките информативные фрагменты данных в сегменты и объедините их в один набор данных мультиэксперимента (см. Извлечение и Определенные Сегменты Данных Модели). Для получения дополнительной информации о выборе и извлечении сегментов данных, смотрите, Выбирают Subsets of Data.
Входные параметры в каждом из сегментов данных должны быть последовательно захватывающими система. Разделение данных в значимые сегменты для установившихся данных приводит к минимальной информационной потере. Постарайтесь не делать сегменты данных слишком маленькими.
Вручную замените выбросы на NaN
s и затем используют misdata
команда, чтобы восстановить отмеченные данные. Этот подход обрабатывает выбросы как недостающие данные и описан в Обработке Недостающих Данных. Используйте этот метод, когда ваши данные содержат несколько вводов и выводов, и когда вы испытываете затруднения при нахождении надежных сегментов данных во всех переменных.
Удалите выбросы путем предварительной фильтрации данных для высокочастотного содержимого, потому что выбросы часто следуют из резких изменений. Для получения дополнительной информации о фильтрации, смотрите Данные о Фильтрации.
Алгоритм оценки может обработать выбросы путем присвоения меньшего веса данным о выбросе. Устойчивый ошибочный критерий применяет ошибочный штраф, который квадратичен для небольших и умеренных ошибок прогноза и линеен для больших ошибок прогноза. Поскольку выбросы производят большие ошибки прогноза, этот подход дает меньший вес соответствующим точкам данных во время оценки модели. Установите ErrorThreshold
опция оценки (см. Advanced.ErrorThreshold
в, например, polyestOptions
) к ненулевому значению, чтобы активировать коррекцию для выбросов в алгоритме оценки.
Чтобы узнать больше о теории обработки недостающих данных и выбросов, см. главу по предварительной обработке данных в System Identification: Теория для Пользователя, Второго Выпуска, Lennart Ljung, PTR Prentice Hall, 1999.