How to label columns in matrix?
19 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
How can I give the columns contaning values for m, o, r ,t and Diff_irr a label?
ResultMtx = [];
for m=1:length(months) %loop 12 times for the 12 months
for o=1:length(orientation) %loop 2 times for south and east
for r = 1:length(row) %loop 3 times for the 3 rows
for t=1:length(tilt) %loop 10 times for the 10 tilting possibilities, this also represents the rows in the matric of irr
%_____________calculations here to find Diff_irr_____________
ResultMtx = [ResultMtx;
m o r t Diff_irr];
end
ResultMtx = [ResultMtx;
nan nan nan nan nan];
end
end
end
xlswrite(strcat(Result_File), ResultMtx);
I attempted to write:
ResultMtx = [ResultMtx;
['month%d, orientation%d, rows%d, tilt%d Irradiance%d,', m, o, r, t, Diff_irr]];
but that did't work obviously and I got the error:
"Dimensions of arrays being concatenated are not consistent."
3 Kommentare
Simon Chan
am 18 Aug. 2021
Bearbeitet: Simon Chan
am 18 Aug. 2021
Use the following code after calculating the 'Diff_irr':
temp = [m o r t Diff_irr];
ResultMtx = [ResultMtx; temp];
Antworten (1)
Chunru
am 18 Aug. 2021
% After the loop, you obtain ResultMtx. Convert it into a table with
% column names. Then write the table
ResultMtx = array2table(ResultMtx, 'VariableNames', ["Month","orientation", "rows", "tilt", "Irradiance"]);
writetable(T, 'res.xlsx');
3 Kommentare
Chunru
am 18 Aug. 2021
The following line should be outside of the loop:
ResultMtx = array2table(ResultMtx, 'VariableNames', ["Month","orientation", "rows", "tilt", "Irradiance"]);
Siehe auch
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!