创建空列向量就可以
data = load('file.mat');
nameData = data.Name;
col1 = strings(size(nameData));
col2 = strings(size(nameData));
for i = 1:length(nameData)
name = nameData(i);
if length(name) >= 6
col1(i) = name(1:5);
col2(i) = name(6:end);
else
col1(i) = name;
end
end
save('split.mat', 'col1', 'col2');
我可以解决这个问题。
首先,我将展示如何读取.mat文件中的表格数据。然后,我将演示如何拆分"Name"列并创建两列。最后,我将展示如何将修改后的表格保存为.mat文件。
% 读取.mat文件中的表格数据
load('file.mat'); % 请将'file.mat'替换为你的.mat文件路径
% 拆分"Name"列为两列
names = table2cell(dataTable.Name); % 将"Name"列转换为一个cell数组
names1 = cellfun(@(x) x(1:5), names, 'UniformOutput', false); % 取前5个字符作为第一列
names2 = cellfun(@(x) x(6:end), names, 'UniformOutput', false); % 取第6个字符及之后的字符作为第二列
% 创建两列新列
dataTable.NewCol1 = names1; % 创建第一列
dataTable.NewCol2 = names2; % 创建第二列
% 保存修改后的表格为.mat文件
save('newfile.mat', 'dataTable'); % 将'newfile.mat'替换为你想要保存的文件路径和文件名
请注意,你需要将文件路径和文件名替换为你自己的路径和文件名,以及将dataTable
替换为你从.mat文件中加载的表格变量名。