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

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

Отказы сбора данных иногда приводят к недостающим измерениям и во входе и в выходных сигналах. Когда вы импортируете данные, которые содержат отсутствующие значения с помощью 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.