2

ハードドライブに構造体が保存されています。そのフィールドの1つをローカル変数にロードする必要があります。単純なロードで

% 'PRICES' is the stored struct.  1st fieldname is '.Raw'.  
% Only '.Raw' needs to be loaded

var = load( fullfile(path, 'PRICES.Mat') ) % Wrong as var becomes a struct containing a struct.
% DESIRED value: var = PRICES.Raw ;

これを1ステップで行うことは可能ですか?もちろん、varを上書きしてこれを実行することはできますが、それを直接行う方法はありますか?ありがとう。

4

2 に答える 2

8

MATLAB 7以降を使用している場合は、-structフラグを使用して構造体を保存できます。

save(fullfile(path, 'PRICES.Mat'),'-struct','PRICES');

この方法で構造体を保存すると、構造体のすべてのフィールドをロードせずに、構造体の特定のフィールドをロードできます。

load(fullfile(path, 'PRICES.Mat'),'Raw');
disp(Raw);
于 2011-08-31T17:01:02.960 に答える
1

MATファイルから変数の一部をロードすることはできません。あなたはどちらかが欲しい:

var = load( fullfile(path, 'PRICES.Mat'), 'PRICES' );
var = var.PRICES.Raw;

また

load( fullfile(path, 'PRICES.Mat'), 'PRICES');
var = PRICES.Raw;

MATLABヘルプを参照してください:http://www.mathworks.co.uk/help/techdoc/ref/load.html

于 2011-08-31T16:54:06.870 に答える