چگونه داده های روزانه بارش چندین سال را به راحتی در محیط MATLAB به داده های ماهانه و سالانه تبدیل کنیم؟
کدهای ذیل برای تبدیل داده های بارش روزانه به ماهانه و سالانه در ایستگاه هواشناسی شیراز توسعه یافته اند. خروجی آن به صورت فایل Excel است و همچنین نمودار خروجی نیز در محیط MATLAB ایجاد می شود.
clc
clear
[num,txt] = xlsread('Shiraz Synoptic Station');% It Reads data and strings
%from the excel file
Rain = num(:,14);% Locate the rainfall data to the Rain variable
Date = num(:,4:6);% Locates the Julian date data to the Date variable
Years = minmax(Date(:,1)');% Detremine the first and final years
Years = Years(1):Years(2) % Creates the vectors which contains all years
Monthly_rain = nan(length(Years),12);% produces a vector which filled in the below for loop
u=1;
for i = Years
for j = 1:12
a = Rain(Date(:,1) == i & Date(:,2) == j );
a(isnan(a)) = []; % It removes the NANs from the a
if length(a)>25
Monthly_rain(u,j)= sum(a);
end
end
u=u+1;
end
display(Monthly_rain)
Annual_rain = sum(Monthly_rain,2)
%%% plot monthly values during the survyed years
for ii = 1:12
subplot(3,4,ii)
plot(Years(:),Monthly_rain(:,ii),'-*k')
title(['Months ',num2str(ii)])
ylabel ('Rainfall(mm)','Fontsize',8)
end
%%% writing the results to Excel
xlswrite('Shiraz Monthly and Annaul Rainfall from daily data',...
[Years(:),Monthly_rain],'Monthly values')
xlswrite('Shiraz Monthly and Annaul Rainfall from daily data',...
[Years(:),Annual_rain],'Annual')
Total_average = nanmean(Annual_rain)
تبدیل داده های بارش روزانه به ماهانه و سالانه در ایستگاه هواشناسی شیراز
ما را در تلگرام دنبال نمایید
کانال برنامه نویسی و فناوری های نوین در علوم محیطی: https://t.me/ZSMATLAB
ارتباط با ادمين كانال: @zimascience