exponenta event banner

Упорядочение нерегулярно дискретизированных данных

Этот пример показывает, как упорядочить нерегулярно выбранные данные, чтобы иметь постоянный период времени между измерениями. Вы обновляете временные метки данных, считанных из канала ThingSpeak™, чтобы удалить нерегулярность, затем записываете данные в канал. Изменения временных меток в измеренных данных, введенные из-за задержек в сети или аппаратных сбросов, могут повлиять на предварительную обработку данных и алгоритмы аналитики данных. Многие алгоритмы требуют, чтобы регулярно дискретизированные данные работали правильно.

Чтение данных из канала метеостанции

Канал ThingSpeak 12397 содержит данные метеостанции MathWorks ®, расположенной в Натике, штат Массачусетс. Данные собираются один раз в минуту. Поле 4 канала содержит данные температуры воздуха. Для проверки нерегулярных выборочных данных считайте данные о температуре воздуха из канала 12397 с помощью thingSpeakRead функция.

data = thingSpeakRead(12397,'NumMin',60,'Fields',4,'outputFormat','timetable');

Проверяйте на нерегулярно дискретизированные данные

Данные за последние 60 минут, считанные из канала 12397, хранятся в качестве расписания. Использование isregular функция для проверки, регулярно ли дискретизируются данные канала. Если данные дискретизированы нерегулярно, сгенерируйте регулярно разнесенный временной вектор для интересующего периода времени. Сгенерируйте новый временной вектор с помощью linspace с startTime, stopTime, и количество измерений.

regularFlag = isregular(data,'Time');

if ~regularFlag
    startTime = data.Timestamps(1);
    stopTime  = data.Timestamps(end);
    newTimeVector = linspace(startTime,stopTime,height(data)); 
    data.Timestamps = newTimeVector;
end

Отправка данных в ThingSpeak

Отправьте обработанные данные в канал ThingSpeak с помощью thingSpeakWrite функция.

% Change the channelID and the writeAPIKey to send data to your channel.
channelID=17504;
writeAPIKey='23ZLGOBBU9TWHG2H';
thingSpeakWrite(channelID,data,'WriteKey',writeAPIKey);

См. также

| |