turning the loop answer into a vector

4 Ansichten (letzte 30 Tage)
Michelangelo Cannistraro
Michelangelo Cannistraro am 29 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.

Akzeptierte Antwort

David Hill
David Hill am 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 Kommentare
Walter Roberson
Walter Roberson am 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.
Michelangelo Cannistraro
Michelangelo Cannistraro am 30 Nov. 2022
I changed the name of the numeric and it worked. Thank you, both of you.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements 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!

Translated by