How to get daily minimum value of temperature from a three dimensional matrix?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
trailokya
am 18 Jul. 2016
Kommentiert: Matt J
am 18 Jul. 2016
Let us say we have a matrix (say 'a') with 129x135x721 dimension.i.e.lat x lon x time... time is 720 (24*30)for hourly data for one month values. Suppose this data is temperature data. Now i need to know at what time of the day temperature is minimum.So for that, first i need to find mean value of temperature at all 1 o'clock,2,3,4 all 24 hr. i.e.,mean of (1:25:720) Similarly mean of (2:26:720) and so on. Then finally for each lat,lon we get 24 values now, or we will get a final matrix of 129x135x24 and from this i need to find the minimum value time. Please help me how to to do it
1 Kommentar
Akzeptierte Antwort
Matt J
am 18 Jul. 2016
Bearbeitet: Matt J
am 18 Jul. 2016
Make your array 4-dimensional,
a=reshape(a, 129,135,24,30);
hourlymeans=mean(a,4);
[~,minhour]=min(hourlymeans,[],3);
2 Kommentare
Matt J
am 18 Jul. 2016
Works fine for me,
>> a=rand(129,135,24,30);
>> hourlymeans=mean(a,4); whos hourlymeans
Name Size Bytes Class Attributes
hourlymeans 129x135x24 3343680 double
Weitere Antworten (1)
KSSV
am 18 Jul. 2016
T = rand(129,135,721) ;
Min = zeros(721,1) ;
for i = 1:721
Ti = T(:,:,i) ;
Min(i) = min(Ti(:)) ; % Minimum value at evry time step
end
[val,idx] = min(Min) ;
Siehe auch
Kategorien
Mehr zu Characters and Strings finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!