メインコンテンツ

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

ワークスペース変数の保存と読み込み

ワークスペース内の変数は、複数の MATLAB® セッションにまたがって保持されません。MATLAB を終了すると、ワークスペースは消去されます。ただし、現在のワークスペースにある任意またはすべての変数を MAT ファイルに保存できます。そうすれば、現在の MATLAB セッション中または別のセッション中に、保存された MAT ファイルを読み込んで後からワークスペース変数を再利用できます。

ワークスペース変数の保存

ワークスペース変数を対話形式で保存するには、いくつかの方法があります。

  • すべてのワークスペース変数を MAT ファイルに保存するには、[ホーム] タブの [変数] セクションで、[ワークスペースの保存] をクリックします。

  • ワークスペース変数のサブセットを MAT ファイルに保存するには、[ワークスペース] パネルで変数を選択し、選択項目を右クリックして、[選択の保存] を選択します。

  • 変数を MATLAB スクリプトに保存するには、[ホーム] タブの [変数] セクションで、[ワークスペースの保存] をクリックします。次に、[ワークスペース変数の保存] ダイアログ ボックスで、[ファイルの種類] オプションを [MATLAB スクリプト] に設定します。スクリプトに保存できない変数は、そのスクリプトと同じ名前の MAT ファイルに保存されます。

また、関数 save を使用してワークスペース変数をプログラムにより保存することもできます。たとえば、現在のワークスペース変数をすべてファイル june10.mat に保存します。

save("june10")
あるいは、変数 A および B のみをファイル june10.mat に保存します。

save("june10","A","B")

スカラー構造体のフィールドを個々の変数として保存するには、関数 save-struct オプションと共に使用します。このオプションは、以前に構文 S = load(filename) を使用して変数を MAT ファイルから構造体に読み込んでいて、元の変数構造体を維持したまま新しい MAT ファイルに保存するときに便利です。

変数の一部を保存するには、関数 matfile を使用します。この機能は、大きすぎてメモリに収まらない非常に大きなデータ セットを使用している場合に役に立ちます。詳細については、MAT ファイルへの変数の一部の読み込みと保存を参照してください。

メモ

MATLAB Online™ では、変数がセッション間で保持されます。

ワークスペース変数の読み込み

MAT ファイルからワークスペースに保存済み変数を読み込むには、[ファイル] パネルで MAT ファイルをダブルクリックします。MAT ファイルを [ファイル] パネルから [ワークスペース] パネルにドラッグすることもできます。

MAT ファイルから変数のサブセットを読み込むには、[ホーム] タブの [変数] セクションで、[データのインポート] をクリックします。読み込む MAT ファイルを選択し、[開く] をクリックします。次に、[インポート ツール] ダイアログ ボックスを使用して、インポートする変数を選択します。

MATLAB スクリプトに保存されている変数をワークスペースに読み込むには、スクリプトを実行します。

また、load 関数を使用して、保存した変数をプログラムで読み込むこともできます。たとえば、ファイル durer.mat からのすべての変数を読み込みます。

load("durer")
ファイル durer.mat から変数 Xmap のみを読み込みます。

load("durer","X","map")

変数の一部を読み込むには、関数 matfile を使用します。この関数は、他の方法では大きすぎてメモリに収まらない、非常に大規模なデータ セットを扱う場合に便利です。詳細については、MAT ファイルへの変数の一部の読み込みと保存を参照してください。

注意

MATLAB ワークスペースにデータを読み込むと、新たに作成する変数により、ワークスペースにある同名の既存の変数はすべて上書きされます。既存の変数が上書きされないようにするには、load 関数の出力引数を指定して、変数を新しい構造体に読み込みます。たとえば、S = load("durer") はファイル durer.mat からのすべての変数を構造体 S に読み込みます。

MAT ファイルの内容の表示

MAT ファイルをワークスペースに読み込む前にファイル内の変数を確認するには、[ファイル] パネルでファイルの右にある [プレビュー] ボタンをクリックします。プレビューには、ファイル内の変数の名前と値、ファイルのサイズ、最終更新日が表示されます。

コマンド whos -file filename を使用して、MAT ファイルの内容をプログラムで表示することもできます。このコマンドは、指定された MAT ファイル内のすべての変数の名前、サイズ、バイト数、およびクラスを返します。たとえば、サンプル ファイル durer.mat の内容を表示します。

whos -file durer.mat
 Name           Size               Bytes  Class     Attributes

  X            648x509            2638656  double              
  caption        2x28                 112  char                
  map          128x3                 3072  double              

メモ

ここでのバイト数は、MATLAB ワークスペースに読み込まれたときにデータがメモリで占めるバイト数を表します。圧縮、データ エンコード、メタデータが原因で、ファイル内で変数が占める領域はインメモリ サイズと異なる場合があります。既定では、MATLAB は、Version 7 以降の MAT ファイルでデータを圧縮します。詳細については、MAT ファイルのバージョンを参照してください。

参考

|

トピック