'load' function bug?
5 ビュー (過去 30 日間)
古いコメントを表示
Hi all, these days I'm writing a function that take a strings as input, let call it 'var'; that string contain the path to a .mat file conteining a variable called 'mat'(it'a a NxM matrix). After I need to load the matrix saved into the .mat file, so i use the command
...
load 'var'
...
and the variable 'mat' appears on my workspace. Instead, if i use a different name for the input variable, for example 'var_1', or 'm_1' or something, it doesn't work!
...
??? Error using ==> load
Unable to read file m_1: No such file or directory
..
The code below is working
...
prova='C:filename.mat';
...
load 'prova'
inside my workspace I found tha matrix 'mat'
But if i rename the variable containing tha variable name as below
...
n=prova;
load 'n'
??? Error using ==> load
Unable to read file n: No such file or directory
...
Can anybody explain me this?! It's so annoyng because my function works only depending on the name of the input variable!
1 件のコメント
Jan
2012 年 3 月 8 日
Btw. It is recommended not to use "var" as name of a variable, because this shaddows the built-in function VAR. Try this:
clear var
var(1:10)
var = rand(1, 10)
var(1:10)
採用された回答
Jan
2012 年 3 月 8 日
Please read the documentation of load and save again. Look in the given examples to learn the difference between these possibilities
name = 'myfile'
save 'name' % saves "name.mat"
save name % saves "name.mat"
save(name) % saves "myfile.mat"
save('name') % saves "name.mat"
The non-functional form save name or the equivalent save 'name' is useful in the command window, but it confuses beginners frequently.
0 件のコメント
その他の回答 (1 件)
Walter Roberson
2012 年 3 月 8 日
load(prova)
and correspondingly
save(prova)
I think if you check you will find that you happen to have a file named var.mat
2 件のコメント
Walter Roberson
2012 年 3 月 8 日
Do not use
load 'prova'
as your syntax. Instead, use
load(prova)
as your syntax.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!