Clear Filters
Clear Filters

Calculation of diurnal cycle

8 views (last 30 days)
Hi everyone!
I have some .csv files (attached you can see one of them) containing hourly values of temperature and humidity from 1/7/2019 to 30/9/2019. Frome these values I want to extract the diurnal cycle of temperature and humidity, which means 1 mean value for all dates at 00:00, one for 01:00, till 23:00.
What is the most efficient way to do so?
Thank you in advance!
darova on 28 Jan 2020
What about mean function? Did you try it?
Daphne PARLIARI on 29 Jan 2020
Sure but I want to take the mean considering the hours, that's what I am not sure how to achieve...

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 29 Jan 2020
Try this:
D = readtable('Airport.csv');
Hrs = hour(D.Date); % Hours
[UHr,~,ic] = unique(Hrs); % Hours Reference Index Vector
TRH = accumarray(ic, (1:numel(Hrs)).', [], @(x){mean([D.Temp(x),D.RelHum(x)])}); % Means By Hour
TRHmtx = cell2mat(TRH); % Matrix From Cell Array: [Temp RelHum]
yyaxis left
plot(UHr, TRHmtx(:,1))
ylabel('Temperature (°C)')
yyaxis right
plot(UHr, TRHmtx(:,2))
ylabel('Relative Humidity (%)')
xlabel('Time (Hours)')
set(gca, 'Xtick',(0:23))
xlim([0 23])
1Calculation of diurnal cycle - 2020 01 28.png

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!