How to label columns in matrix?
28 次查看(过去 30 天)
显示 更早的评论
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 个评论
Simon Chan
2021-8-18
编辑:Simon Chan
2021-8-18
Use the following code after calculating the 'Diff_irr':
temp = [m o r t Diff_irr];
ResultMtx = [ResultMtx; temp];
回答(1 个)
Chunru
2021-8-18
% 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 个评论
Chunru
2021-8-18
The following line should be outside of the loop:
ResultMtx = array2table(ResultMtx, 'VariableNames', ["Month","orientation", "rows", "tilt", "Irradiance"]);
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!