【Matlab】eval命令的应用

[复制链接]
eval在matlab中可以用来执行字符串表示的命令,现总结几个常用格式例子:
- s. b8 D' v/ j  o" q! [' x(1)( o3 J* o5 g( e$ s
    for i=1:length(file)& j0 y9 T7 |8 d0 n
       data=load(file(i,1).name);7 [! z+ W. s, Q+ [4 t
       ind=find(data(:,1)>50000&data(:,7)<0.9&data(:,8)<7);
) G4 z% j& d* n       name=file(i,1).name(1:length(file(i,1).name)-4);     
# G" H5 E: }+ z" n, K        eval([name,'=','data(ind,;']);               " m3 e5 h/ ]' x! H' G* c
        dat_nam=[' ',name];; X8 Z. A8 V; `# s; X8 D
        eval(['save ',outdir,name,dat_nam])   
: [6 w( w/ g$ Z/ `5 ~    end/ Q6 O/ p! Y  d1 f( V
(2): P+ q) b# S4 }# i
    for i=[2 3 5 6]9 Q9 C0 N' O3 R2 T" i5 P
           eval(['data=','load(''DC',num2str(i),'.mat'');'])8 U& @3 k$ D3 s/ X* D8 C
           eval(['data1=','data.DC',num2str(i),'_nd5.u(:,1);'])3 P, \, k7 |5 S- t8 `$ j  O
           eval(['data2=','data.DC',num2str(i),'_nd5.v(:,1);'])
0 H* R, c" t: g  v9 U/ I& d           U_std(i,1)=std(data1);7 S5 l7 H9 [( h3 t! s0 H+ r; E0 I
           V_std(i,1)=std(data2);1 n3 p$ y9 `, f+ X- x7 M5 c
    end  f- S' J8 q; T1 R) ]8 o* |1 Q
(3)$ x& r: i+ @' l$ k- V# J
               for j=1:34;& k2 a/ ?9 k" }0 h/ t7 Q7 H
                     for i=j*92-91:j*92: w4 ]/ z. w" \2 A! Z: d8 f, w
                               k=i-92*(j-1);
, {$ ?/ E. m+ M                               data(k,:,=mean(u(i*4-3:i*4,:,);
5 u; v% O2 [$ g% q. \                      end
' ]" \; C2 [1 U                      eval(['u',num2str(j),'=data;'])
" u* V3 i# i' b# p/ `: |; v. d                      eval(['save u',num2str(j),' u',num2str(j)])

7 p7 f$ \* J1 Z( g1 D0 |) d
                end
4 x8 z. Y/ c+ z' `; {  @(4)
) }# @7 |. }& q  X    datadir='F:\工作\2017\解决问题\data\DG\';
) n5 W2 o- j% |- t# [, J    filename=dir([datadir,'\*.mat']);4 r8 q7 x! ^6 c& y4 l
    for i=1:length(filename)
  ?2 r* k1 B4 C# ~) T( h+ R! x+ f4 M        eval(['data=','load([''',datadir,'DG',num2str(i),'.mat'']);'])
% ~8 }% J* i" e2 \! w        DG_stainfo(i,=data.loc;
- M2 f; x& }5 E) T: h8 c        clear data
8 q1 \9 T* W; _% k    end
1 g* {; ~! R. V7 D8 x6 t   
! N* ]. c6 h# X* N2 y: P. \8 C2 `+ d5 r1 r% [8 e& V

8 Q5 ^' v" m9 Ueval能够进行批处理,所以对命名规律的数据的处理很有帮助。
" g7 z; i1 U% X, H! M9 q                    " f# C8 C. l; e% h2 A  j& J% ~

& N) a7 }0 c7 l& l$ H) B) u                                        转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。
回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
黄金品质
活跃在2021-12-8
快速回复 返回顶部 返回列表