Average of 3d matrix
    2 views (last 30 days)
  
       Show older comments
    
    Lilya
      
 on 9 Jun 2020
  
    
    
    
    
    Commented: mohamad shirgholami
 on 14 Dec 2020
            Hi All, 
I have 3D matrix with dimension (61,57,273) the 273 is daily time. 39 weeks has 273 days.
I want to do a weekly average overtime to get (61,57,39).
  result = reshape(data,61,57,39,7);
  Data_mean = nanmean(result,4);
I am not sure about the reshaping. Any help would be appreciated to correct or suggest another way to do the average. 
1 Comment
  mohamad shirgholami
 on 14 Dec 2020
				I have 3D matrix with dimension (61,57,365) the 365 is daily time. I want to do a monthly average overtime to get (61,57,12). But the number of days each month is different. I would be grateful for your help
Accepted Answer
  Walter Roberson
      
      
 on 9 Jun 2020
          result = reshape(data,61,57,7,39);
  Data_mean = permute(nanmean(result,3), [1 2 4 3])  %permute gets rid of the singleton dimension that results
More Answers (0)
See Also
Categories
				Find more on Creating and Concatenating Matrices 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!

