我正在开展一个项目,我正在努力寻找温度超过90%的多日活动。
我正在使用61年的数据并尝试根据6月至8月之间的每个月计算百分位数。换句话说,使用prctile
函数,我想计算6月,7月和8月的第90个百分点,并根据当月的第90个百分位值比较每个月的每日温度值。
最终,我希望程序能够找到温度超过第90个百分位值的天数(2天,3天,4天,5天等),基于该月的值。
以下是我目前的代码:
fprintf('Loading the data...\n')
load file_name.txt
year=file_name(:,1);
month=file_name(:,2);
day=file_name(:,3);
temax=file_name(:,6);
temin=file_name(:,9);
molen=[30 31 31];
for y=1:61
for m=6:8
for k=1:molen
g1=find(year==y+1950&month==m&day==k&temax>-99);
g2=find(year==y+1950&month==m&day==k&temin>-99);
end
temaxpct=prctile(temax(g1),90);
teminpct=prctile(temin(g2),90);
end
clear g*
end
exceedence=find(year&month&day&temax>=temaxpct&temin>=teminpct);
我不知道如何让该计划计算每个月的第90个百分点(而不是6月至8月的整个3个月范围)。
此外,我不知道如何让程序找到温度超过90%的天数,特别是因为4天的活动还包括3天的活动和2天的活动。
我知道需要有一些if / else语句,但我不确定如何设置它。
答案 0 :(得分:0)
只是阅读你的问题(没有深入研究代码),这里有两个指点:
希望这可以让你走上正轨。