收藏本站 劰载中...网站公告 | 吾爱海洋论坛交流QQ群:835383472

【Matlab】eval命令的应用

[复制链接]
eval在matlab中可以用来执行字符串表示的命令,现总结几个常用格式例子:
7 {  ]  x& t6 b, Q(1)
1 ^0 r# M6 E( ?% ?# u    for i=1:length(file)
1 G3 r- ?* k5 m4 K, b% f: Q       data=load(file(i,1).name);+ f$ v4 T* M1 n6 y$ \+ M
       ind=find(data(:,1)>50000&data(:,7)<0.9&data(:,8)<7);
- c; W3 J. b7 R1 [       name=file(i,1).name(1:length(file(i,1).name)-4);     + j6 u6 W- W6 x! E6 \7 G4 _
        eval([name,'=','data(ind,;']);               / q1 t8 k' @2 S7 M$ v
        dat_nam=[' ',name];9 q) V: y8 G* ?4 m" y2 e+ [
        eval(['save ',outdir,name,dat_nam])    5 `! c% A! d! ]8 y" ^: [0 v+ y
    end
+ q9 J( w: ~/ A6 ^* h4 R4 C(2)
0 b$ O" |$ q8 K! a  |3 {& }: `    for i=[2 3 5 6]
4 f# s# B/ Z* w9 O: z9 U           eval(['data=','load(''DC',num2str(i),'.mat'');'])
( d- t2 b4 T" l; C           eval(['data1=','data.DC',num2str(i),'_nd5.u(:,1);'])
% {5 B# t& o. [( ?           eval(['data2=','data.DC',num2str(i),'_nd5.v(:,1);'])8 @( ^  Q! _, v  g6 D% r$ i2 R
           U_std(i,1)=std(data1);$ Z8 P7 t& z' K( t& B
           V_std(i,1)=std(data2);1 `" T8 \9 {4 [. P! j
    end
7 i- ?+ a" v3 Z(3); I% ?& w: X  H+ Q
               for j=1:34;
, U; i9 \7 @6 a8 [* G; D! x8 y                     for i=j*92-91:j*92
4 S+ [. e0 v' V0 E                               k=i-92*(j-1);
9 P" ^3 u8 H( s; \+ p2 Q. }$ f9 z# g                               data(k,:,=mean(u(i*4-3:i*4,:,);- O7 i7 }; z- p. W9 ]1 Z5 X
                      end, Q  I6 v4 W  E6 i
                      eval(['u',num2str(j),'=data;'])
) ^- h' f8 q  E0 e7 a6 l( Q1 g                      eval(['save u',num2str(j),' u',num2str(j)])
1 a/ g3 s9 ]: D3 A
                end1 B9 O) T) ]8 v, k0 u
(4)
1 }1 L3 ~# }! I$ C    datadir='F:\工作\2017\解决问题\data\DG\';; k- X' W+ P  U7 g; J( b9 m
    filename=dir([datadir,'\*.mat']);& H. z7 b8 g& z+ i7 D$ g0 d. y
    for i=1:length(filename)
: I8 _, O1 ^3 v( g: q7 N  I5 u3 Q; L5 t        eval(['data=','load([''',datadir,'DG',num2str(i),'.mat'']);'])
& m% B/ C: N1 d+ \2 W1 w& c        DG_stainfo(i,=data.loc;* d, X$ B  y5 j# F& H9 [
        clear data
# q) o4 L- O0 G! E" R6 D    end% \. U, g+ t( U
    1 Z% {+ |/ }9 z$ {4 _
" H. g+ o# }* H4 J; v0 g0 p6 U
$ c% c' T/ I, K3 K
eval能够进行批处理,所以对命名规律的数据的处理很有帮助。
8 I% c& I  }: U2 P4 u2 y                    
) d* ?4 j& Z& {% {, I
; s6 [7 s3 y+ @4 ^$ i                                        转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。
回复

举报 使用道具

相关帖子

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