写一段MATLAB代码,读取一个CSV文档,这个文档一共1列,把它转换为每286行为一列的矩阵,然后保存为csv文档。
时间: 2024-11-04 17:10:11 浏览: 50
基于MATLAB,将.mat矩阵转换为csv格式表格保存
你可以使用MATLAB的`readtable`函数来读取CSV文件,并利用`reshape`函数将数据转换为所需的矩阵结构。最后,再使用`writetable`函数保存处理后的矩阵到新的CSV文件。以下是相应的MATLAB代码:
```matlab
% 读取原始CSV文件
data = readtable('your_file.csv'); % 'your_file.csv' 替换为你的文件名
% 确保数据是一维的,因为我们需要每286行一组
if size(data, 2) == 1
data = data.';
end
% 将数据转换为每286行为一行的矩阵
rows_per_block = 286;
blocks = mat2cell(data, ones(1, rows_per_block), size(data, 1)); % 分割数据块
% 保存每个数据块到新的CSV文件
new_files = {};
for i = 1:numel(blocks)
new_data = blocks{i};
filename = ['block_' num2str(i) '.csv'];
new_files{i} = writetable(new_data, filename);
end
% 显示生成的新文件列表
disp(['New CSV files saved as:']);
for file = new_files
disp(file);
end
```
在这段代码中,你需要替换 `'your_file.csv'` 为你实际的CSV文件路径。运行这段代码后,它会按每286行生成一个新的CSV文件。
阅读全文