MATLAB如何使count_data_cell元胞数组的每一个数据按文件输出,文件的名字以201401、201402到202312命名,请举代码说明
时间: 2024-09-09 15:17:20 浏览: 49
在MATLAB中,如果你有一个名为`count_data_cell`的元胞数组,你想将每个元胞里的数据分别保存到按照年份和月份命名的文件中,你可以遍历元胞数组,并使用`fprintf`函数将数据写入到相应的文本文件中。下面是一个示例代码,假设`count_data_cell`的结构类似这样,每个元胞里存储了日期和对应的计数:
```matlab
% 假设 count_data_cell 的样子如下:
count_data_cell = {...
{'201401', 50}, {'201402', 60}, ... % 等等
{'202312', 80} ...
};
% 获取所有年月组合
years_months = cellfun(@(x) x(1:2), count_data_cell, 'UniformOutput', false);
% 创建目录(如果不存在)
if ~exist('output_dir', 'dir')
mkdir('output_dir');
end
% 遍历元胞数组并按年月创建文件
for i = 1:numel(years_months)
year_month = years_months{i};
year = str2double(year_month(1:4));
month = str2double(year_month(5:7));
% 根据年月创建文件名
filename = sprintf('output_dir/%04d%02d.txt', year, month);
% 写入文件
fid = fopen(filename, 'w');
if fid > 0
fprintf(fid, '%s\t%d\n', year_month, count_data_cell{i}{2});
fclose(fid);
disp(['Wrote data to file: ' filename]);
else
disp(['Failed to open file for writing: ' filename]);
end
end
阅读全文