获取matlab 中mat文件变量名字

http://zhidao.baidu.com/question/478264993.html 在这个提问中,你说找到了方法,请问是怎么做到的?谢谢!

  首先进入.mat文件所在的目录文件夹:(共有两种方法)  
  1. 用load命令,具体为load+文件名.mat,就可以将mat中的数据放到工作空间里,然后查看修改就容易了;
  2. 用save命令,具体为save+文件名(自己取一个).mat,就可以将当前工作区间里的数据保存下来供调用了;
  eg: save rot.mat;
  load('rot.mat');
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-22
b=whos('-file','文件名.mat')

这个命令不可以吗?
其结果是
b =
4x1 struct array with fields:
name
size
bytes
class
global
sparse
complex
nesting
persistent
其中b.name就是文件中的变量名追问

这个在处理单个文件的时候是可以的。但是,我要处理很多个mat文件,每个mat文件里面的变量名不一样。比如:
b=whos('-file','drc1.mat')
b =
name: 'drc1'
……
我要对变量名为drc1的结构体里面的数据(比如,有X,Y两种数据)进行操作,该怎样继续?

追答

你要对数据操作的话还是需要把数据读到workspace里面的。因为你这样的查看并没有把数据读进来。

你可以先使用dir函数查看这些文件名,然后把它们做个循环依次读进来。读进来以后使用whos函数检查变量名(因为变量名不一样),然后使用检查的结果对结构体进行操作,结构体你会用吗?例如drc1.x什么的。

追问

这个方法,我会,就是太麻烦了,每个文件都要单独操作。我在问题补充里面重新说明了下,你可以看一看我的要求。网上类似的讲解还比较多,我在一个方法一个方法的试,找一个通用的方法,用m文件写出来。

本回答被网友采纳
第2个回答  2013-04-11
p = load('文件名.mat');
s = whos('-file','文件名.mat');
%如果你的数据结构里不止一个数据
p.(s.name)(i).x和p.(s.name)(i).y 就可以不用知道结构名来访问数据

希望会有用本回答被网友采纳
第3个回答  2012-12-22
用dir就好了。
假设你把路径放到变量P里。
可以这样。
D = dir([P *.mat]);

这样就找出了在P文件夹中的所有.MAT文件

MATLAB中,怎么统计.mat文件中的变量数目和每个变量的名字?
使用whos函数 b=whos('-file','文件名.mat')b里面是这个文件中的变量的名字等情况。

matlab中怎么获取打开文件的变量, [filename,pathname]=uigetfile...
你说的变量时filename和pathname吗,你可以使用dir命令来查看的。dir(*.mat)就能得到当前文件夹下所有mat后缀的文件的文件名等属性,然后你就可以进行操作了!

matlab mat文件怎样读取和怎样调用
在MATLAB中.mat文件有两种读取方法:从MATLAB工作目录下找到该文件,双击;使用MATLAB函数。下面举例说明如何使用MATLAB函数读取和调用.mat文件:假设data.mat 中包含变量:a、b、c 1:load('data.mat'); % 或,load data.mat 该情况下降data.mat中所有的变量都导入进来,且变量名可以直接访问。比如访...

matlab读取.mat文件中的指定数据
load(filename,A) 加载 MAT 文件 filename 中的指定变量A。对于读取这个变量A中的某一列,可以运用代码:A(:,m)可以提取A矩阵中的第m列。拓展说明:matlab中还有个代码importdata可以导入数据。A = importdata('filename'),将filename中的数据导入到工作区中,并保存为变量A;

如何读写Matlab的mat文件?
在MATLAB中.mat文件有两种读取方法:1. 从MATLAB工作目录下找到该文件,双击;2. 使用MATLAB函数。下面举例说明如何使用MATLAB函数读取和调用.mat文件:假设data.mat 中包含变量:a、b、c 1:load('data.mat'); % 或,load data.mat 该情况下降data.mat中所有的变量都导入进来,且变量名可以直接访问...

matlab mat文件怎样读取和怎样调用
在MATLAB中.mat文件有两种读取方法:从MATLAB工作目录下找到该文件,双击;使用MATLAB函数。下面举例说明如何使用MATLAB函数读取和调用.mat文件:假设data.mat 中包含变量:a、b、c 1:load('data.mat'); % 或,load data.mat 该情况下降data.mat中所有的变量都导入进来,且变量名可以直接访问。比如...

如何查看mat文件
具体来说,用户可以使用`load`函数来加载MAT文件。例如,如果有一个名为“example.mat”的MAT文件,用户可以在MATLAB的命令窗口中输入`load`来加载这个文件。加载成功后,MATLAB的工作空间中就会出现MAT文件中的所有变量,用户可以直接查看和使用这些变量。此外,MATLAB还提供了其他一些函数和工具来帮助用户...

MATLAB如何读取mat格式的文件?
在工作区浏览器中,右击需要保存的变量名,选择Save As…,将该变量保存为MAT文件。3. 利用save命令保存 该命令可以保存工作区,或工作区中任何指定文件。该命令的调用格式如下:● save:将工作区中的所有变量保存在当前工作区中的文件中,文件名为 matlab.mat,MAT文件可以通过load函数再次导入工作区...

如何打开MATLAB里的后缀名为mat的文件?
mat是matlab的数据文件,可以直接双击导入\\x0d\\x0a或者通过命令窗输入命令以及编写m文件导入\\x0d\\x0a\\x0d\\x0a如果是当前目录下的文件file1.mat,直接输入load file1\\x0d\\x0a如果不是当前目录下的,输入 load(['目录\\file1.mat']);\\x0d\\x0a如果file1里含有a,b,c这三个变量,\\x0d...

请问怎样在matlab中读取一个文件夹中的所有文件名 以filename开头的 .m...
26x1 struct array with fields:name date bytes isdir 你会得到一个n*1的结构体,每个结构体里通过isdir来判断这个项是文件还是文件夹,name存放着文件的完整路径。>> [ m n q ] = fileparts( 'D:\\Program Files\\Microsoft Visual Studio 8\\VSKnownIssues.htm' )m = D:\\Program Files\\...

相似回答