如何从Excel加载变量到Matlab工作区?
29次浏览(过去30天)
显示旧的注释
清晰的
关闭
clc
aa =" a1 ";
bb =“a2”;
cc =“a3”;
dd =“a4”;
ee =“a5”;
ff =“a6”;
gg =“a7”;
hh =“a8”;
2 =“a9”;
jj =“a10”;
kk =“a11”;
我=“a12”;
毫米=“首次购物”;
nn =“阿”;
oo =“它”;
页=“换”;
qq =“第a17”;
rr =“那么”;
党卫军=“a19”;
tt =“样子”;
uu =“a21”;
vv =“a22”;
ww =“a23”;
xx =“a24”;
yy =“25”;
zz =“a26”;
保存变量将工作空间保存到variables.mat
数据=负载(“变量”);%加载回并赋值给struct变量
F = fieldnames(数据);包含变量名的% cell
Nf = numel(f);变量百分比
Sz = 0 (nf,1);数组保存变量的维数
这里每个变量都有不同的维度
为J = 1:nf
Dataj = data.(f{j});%负载在变量j
将字符数组转换为字符串
如果ischar (dataj)
dataj = convertCharsToStrings(dataj);
Data .(f{j}) = dataj;
结束
Sz (j) =数字(dataj);变量j的%大小
结束
MXSZ = max(sz);最大可变尺寸
C = cell(mxsz+1,nf);%单元格数组来保存数据
C (1,:) = f';%列标题
为J = 1:nf
Dataj = data.(f{j})(:);%变量j(必要时转换为列向量)
C (2:sz(j)+1,j) = num2cell(dataj);%分配给单元格数组
结束
T = cell2table(c(2:end,:)),“VariableNames”c (: 1));
writetable (T)“variables.xls”)
上面的代码展示了如何将我的工作区变量(所有字符串)放入Excel。我怎么能倒回去呢?如果给我一个带有变量的Excel表格,我如何将它们加载到工作区中。我的第一次尝试是这样的
%清洁你的工作空间
清晰的
关闭
clc
%创建变量
aa =" a1 ";
bb =“a2”;
cc =“a3”;
%定义为文件名
varsFile =“workspace.csv”;
将变量转换为表
dataTable = table(aa, bb, cc);
将表写入各自的文件
writetable (dataTable, varsFile);
但我不喜欢这个方法,因为我必须调用每个变量,这是乏味的,如果我有很多变量。谢谢。