MATLAB Answers

ThingSpeak Data Analysis answer is always NaN

8 views (last 30 days)
When I use following code the answer I receive is always
Average Humidity = NaN
What is the reason? Is there a way to set data type in Channel fields?
readChannelID = 1094383;
% Humidity Field ID
humidityFieldID = 1;
% Channel Read API Key
% If your channel is private, then enter the read API Key between the '' below:
readAPIKey = 'xxxxxxxxxxxxxx'; %removed the API key
% Get humidity data for the last 60 minutes from the MathWorks weather
% station channel. Learn more about the THINGSPEAKREAD function by going to
% the Documentation tab on the right side pane of this page.
humidity = thingSpeakRead(readChannelID,'Fields',humidityFieldID,'NumMinutes',120,'ReadKey',readAPIKey);
% Calculate the average humidity
avgHumidity = mean(humidity);
display(avgHumidity,'Average Humidity');


Sign in to comment.

Answers (1)

Christopher Stapels
Christopher Stapels on 6 Jul 2020
If there is no data in the last 120 minutes, this will return empty, and make the average NaN.
humidity = thingSpeakRead(readChannelID,'Fields',humidityFieldID,'NumMinutes',120,'ReadKey',readAPIKey);
You could add a line to check humitidy to be sure there was data read before calculating the average, or increase the time range.




Translated by