How to label columns in matrix?
28 views (last 30 days)
Show older comments
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 Comments
Simon Chan
on 18 Aug 2021
Edited: Simon Chan
on 18 Aug 2021
Use the following code after calculating the 'Diff_irr':
temp = [m o r t Diff_irr];
ResultMtx = [ResultMtx; temp];
Answers (1)
Chunru
on 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 Comments
Chunru
on 18 Aug 2021
The following line should be outside of the loop:
ResultMtx = array2table(ResultMtx, 'VariableNames', ["Month","orientation", "rows", "tilt", "Irradiance"]);
See Also
Categories
Find more on Data Type Conversion 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!