turning the loop answer into a vector
    2 views (last 30 days)
  
       Show older comments
    
    Michelangelo Cannistraro
 on 29 Nov 2022
  
    
    
    
    
    Commented: Michelangelo Cannistraro
 on 30 Nov 2022
            load data_matrix.mat
data=SECTION_L;
data(:,1:3)=[];
row=9;
cleanup=data([1 2 3 row],:);
for i = 1975:2016
    for j=1:12
        averageM={mean(cleanup(4,cleanup(1,:)==i & cleanup(2,:)==j))}
    end 
end
This script gives me constant 1x1 arrays. This script takes temperatures from each day from each month from each year from 1975 to 2016. The script gives the averages from each month but doesnt put it in a vector, but makes multiple 1x1 arrays and i do not know how to put all the averages into one big vector.
0 Comments
Accepted Answer
  David Hill
      
      
 on 29 Nov 2022
        load data_matrix.mat
data=SECTION_L;
data(:,1:3)=[];
row=9;
cleanup=data([1 2 3 row],:);
c=1;
for i = 1975:2016
    for j=1:12
        averageM(c)={mean(cleanup(4,cleanup(1,:)==i & cleanup(2,:)==j))};%index into averageM
        c=c+1;
    end 
end
3 Comments
  Walter Roberson
      
      
 on 30 Nov 2022
				We do not know what class(SECTION_L) is. Also, it is possible that you had an existing numeric averageM in your workspace that is interfering with the assignment.
More Answers (0)
See Also
Categories
				Find more on Loops and Conditional Statements 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!