JerryYe的个人博客分享 http://blog.sciencenet.cn/u/JerryYe

博文

【Matlab】eval命令的应用

已有 8541 次阅读 2016-12-28 20:04 |个人分类:Matlab|系统分类:科研笔记| MATLAB, 批处理, eval, 字符串命令执行

eval在matlab中可以用来执行字符串表示的命令,现总结几个常用格式例子:

(1)

   for i=1:length(file)

      data=load(file(i,1).name);

      ind=find(data(:,1)>50000&data(:,7)<0.9&data(:,8)<7);

      name=file(i,1).name(1:length(file(i,1).name)-4);    

       eval([name,'=','data(ind,:);']);              

       dat_nam=[' ',name];

       eval(['save ',outdir,name,dat_nam])    

   end

(2)

   for i=[2 3 5 6]

          eval(['data=','load(''DC',num2str(i),'.mat'');'])

          eval(['data1=','data.DC',num2str(i),'_nd5.u(:,1);'])

          eval(['data2=','data.DC',num2str(i),'_nd5.v(:,1);'])

          U_std(i,1)=std(data1);

          V_std(i,1)=std(data2);

   end

(3)

              for j=1:34;
                    for i=j*92-91:j*92
                              k=i-92*(j-1);
                              data(k,:,:)=mean(u(i*4-3:i*4,:,:));
                     end
                     eval(['u',num2str(j),'=data;'])
                     eval(['save u',num2str(j),' u',num2str(j)])

               end

(4)

   datadir='F:\工作\2017\解决问题\data\DG\';

   filename=dir([datadir,'\*.mat']);

   for i=1:length(filename)

       eval(['data=','load([''',datadir,'DG',num2str(i),'.mat'']);'])

       DG_stainfo(i,:)=data.loc;

       clear data

   end

   

eval能够进行批处理,所以对命名规律的数据的处理很有帮助。



https://blog.sciencenet.cn/blog-2824237-1023945.html

上一篇:【知识普及】热带气象学简介
下一篇:【如何建立引文跟踪以及获得最新研究文章的几种方法】
收藏 IP: 219.146.245.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-23 16:55

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部