Convert daily average temperature to hourly temperature
6 views (last 30 days)
Show older comments
Hi all...
I have daily min max temperature data for a period. I need to convert this daily data to hourly data. Please anyone suggest me a method or code for this.
Thanks in advance
1 Comment
Bjorn Gustavsson
on 18 Mar 2021
NO.
You cannot.
Do you even have the time-of-day for when the max and min temperatures occured?
Let's take an example from "real life":
1 In the morning the sun was basking at temperatures rose very rapidly.
2a, in the afternoon the temperatures reached X degrees hot.
2b, around lunch a cold-front swept in with heavy rain and Y was the highest temperature around 1130-1200.
1c-2c, not such a hot a day but with steady sunlight we got Y degrees in the afternoon at the same tod as in 2a
This gives you three completely different temperature-curves for the day, and you dont have enough information to conjure up information.
Even if you have the time-of-day for the max and min you dont have more than that. You then could use interp1 to interpolate temperatures between these times but that is guess-work dressed up in fancy dress:
T_madeiuppy = interp1(t_all,Temp_all,t_all(1):(1/24):t_all(end),'pchip');
The pchip method at least respects the max and min-values of the data.
HTH
Answers (1)
Walter Roberson
on 18 Mar 2021
Convert the data to a timetable() object, and use retime()
You may have to assume something along the lines that the high occurred at 3pm and the low occurred at 7am. https://ownyourweather.com/hottest-and-coldest-time-of-the-day/
2 Comments
See Also
Categories
Find more on Logical in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!