Обработка Недостающих данных и выбросов

Обработка Недостающих данных

Отказы сбора данных иногда приводят к недостающим измерениям и во входе и в выходных сигналах. Когда вы импортируете данные, которые содержат отсутствующие значения с помощью MATLAB® Import Wizard, эти значения автоматически установлены к NaNNaN служит флагом для несуществующих или неопределенных данных. Когда вы отображаете данные на графике по графику временной зависимости, который содержит отсутствующие значения, разрывы появляются на графике, где недостающие данные существуют.

Можно использовать misdata оценить отсутствующие значения. Эта команда линейно интерполирует отсутствующие значения, чтобы оценить первую модель. Затем это использует эту модель, чтобы оценить недостающие данные как параметры путем минимизации выходных ошибок прогноза, полученных из восстановленных данных. Можно задать структуру модели, которую вы хотите использовать в misdata аргумент или оценка модель порядка по умолчанию использование n4sid метод. Для получения дополнительной информации смотрите misdata страница с описанием.

Примечание

Можно только использовать misdata на данных временного интервала, хранимых в iddata объект. Для получения дополнительной информации о создании iddata объекты, смотрите, что Временной и частотный диапазон Представления Использует Объекты iddata.

Например, предположите y и u выводятся и входные сигналы, которые содержат NaNs. Эти данные производятся в 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.

    Совет

    Входные параметры в каждом из сегментов данных должны быть последовательно захватывающими система. Разделение данных в значимые сегменты для установившихся данных приводит к минимальной информационной потере. Постарайтесь не делать сегменты данных слишком маленькими.

  • Вручную замените выбросы на NaNs и затем используют misdata команда, чтобы восстановить отмеченные данные. Этот подход обрабатывает выбросы как недостающие данные и описан в Обработке Недостающих Данных. Используйте этот метод, когда ваши данные содержат несколько вводов и выводов, и когда вы испытываете затруднения при нахождении надежных сегментов данных во всех переменных.

  • Удалите выбросы путем предварительной фильтрации данных для высокочастотного содержимого, потому что выбросы часто следуют из резких изменений. Для получения дополнительной информации о фильтрации, смотрите Данные о Фильтрации.

Примечание

Алгоритм оценки может обработать выбросы путем присвоения меньшего веса данным о выбросе. Устойчивый ошибочный критерий применяет ошибочный штраф, который квадратичен для небольших и умеренных ошибок прогноза и линеен для больших ошибок прогноза. Поскольку выбросы производят большие ошибки прогноза, этот подход дает меньший вес соответствующим точкам данных во время оценки модели. Установите ErrorThreshold опция оценки (см. Advanced.ErrorThreshold в, например, polyestOptions) к ненулевому значению, чтобы активировать коррекцию для выбросов в алгоритме оценки.

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

Чтобы узнать больше о теории обработки недостающих данных и выбросов, см. главу по предварительной обработке данных в System Identification: Теория для Пользователя, Второго Выпуска, Lennart Ljung, PTR Prentice Hall, 1999.