首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 其他开发语言 >

【MATLAB】load 的用法?怎么导入.mat文件中的一个变量

2014-01-12 
【MATLAB】load 的用法?如何导入.mat文件中的一个变量?我有一个img_db.mat文件,想用load方式导入到当前的工

【MATLAB】load 的用法?如何导入.mat文件中的一个变量?
我有一个img_db.mat文件,想用load方式导入到当前的工作空间中。在这个.mat文件中只有一个名为 img_db 的 struct 类型变量。我在脚本中这么写的:


【MATLAB】load 的用法?怎么导入.mat文件中的一个变量
如何才能正确导入img_db这个变量而不显示警告呢?
[解决办法]
引用:
Quote: 引用:

matlab就是这样的,你a = load(...)之后,a可以看做那个mat对象,保存在mat中的变量需要通过点操作符(.)加名称来获取,例如a.img_db
你说的那个错误,最好将错误信息全部发上来看看

上面的其实也不算错误,我想着有没有一种load的方式,在引用.mat内的变量时,不用像a.img_db这样引用,而是直接使用img_db这个变量。还是说只能像你所说的这种方式引用?

个人推荐用点操作符,因为这样可以控制导入的变量(有点儿像c++等语言的命名空间,防止变量名冲突).直接load('img_db.mat')之后,如果你前面有同名变量,会被覆盖的.
但是如果你非要如此用,是可以的.原来.mat文件中的所有变量已经被导入了当前工作空间,可以直接使用.你可以自己写个代码测试一下.

下面的代码跑一次你就明白了
% generate test data
a = randi(100,[2,3]);
save('a.mat','a');

% test
load('a.mat')
whos
size(a)

热点排行