You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MATLAB循环处理CSV文件时,如何将25个ETotal存入25×1矩阵?

解决MATLAB循环存储Etotal到25×1矩阵的问题

没问题,这事儿很简单,只需要在循环开始前先初始化一个对应大小的空向量(矩阵),然后每次循环把计算好的Etotal存入对应的索引位置就行。我给你调整后的完整代码,带详细注释:

files_in_this_folder = dir('*.csv');
number_of_files = length(files_in_this_folder);

% 初始化一个number_of_files行1列的零矩阵,用来存储每个文件的Etotal
Etotal_matrix = zeros(number_of_files, 1);

for index = 1:number_of_files
    filename = files_in_this_folder(index).name;
    A = readtable(filename);
    % convert data to matrix
    T = table2array(A);
    % cumulatively sum the daily energy consumption values
    y0 = T(:,3);
    y = cumsum(y0);
    Etotal = max(y);
    
    % 将当前文件的Etotal存入矩阵的第index行
    Etotal_matrix(index) = Etotal;
end

% 循环结束后,Etotal_matrix就是你要的25×1矩阵(如果确实是25个文件的话)

关键说明:

  • 用zeros(number_of_files, 1)初始化矩阵是最稳妥的方式,不管实际文件数量是25还是其他数值,代码都能自适应,不用硬写25。当然如果你确定一定是25个文件,写成zeros(25,1)也没问题。
  • 每次循环里通过index变量定位到矩阵的对应行,把计算结果赋值进去,循环结束后就得到所有文件的Etotal汇总矩阵了。

内容的提问来源于stack exchange,提问作者mg17461

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:01:12