主要内容

保存和加载工作区变量

R2026b

工作区中的变量不会在 MATLAB® 会话之间持久存在。退出 MATLAB 时,工作区清除。但是,您可以将当前工作区中的任何或所有变量保存到 MAT 文件。之后,只需加载保存的 MAT 文件,即可在当前 MATLAB 会话期间或在另一个会话期间重用工作区变量。

保存工作区变量

以交互方式保存工作区变量的方法有几种:

  • 要将所有工作区变量保存到 MAT 文件,请在主页选项卡的变量部分中,点击保存工作区。

  • 要将工作区变量的一部分保存到 MAT 文件,请在“工作区”面板中选择这些变量,右键点击所选内容,然后选择保存选择。

  • 要将变量保存到 MATLAB 脚本中,请在主页选项卡的变量部分中,点击保存工作区。然后,在保存工作区变量对话框中,将保存类型选项设置为 MATLAB 脚本。无法保存到脚本的变量将保存到与脚本同名的 MAT 文件中。

您还可以使用 save 函数以编程方式保存工作区变量。例如,将所有当前工作区变量保存到文件 june10.mat。

save("june10")
或者,仅将变量 A 和 B 保存到文件 june10.mat。

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

要将标量结构体的字段存储为单独的变量,请使用带有 -struct 选项的 save 函数。如果您先前使用语法 S = load(filename) 将来自 MAT 文件的变量加载到了结构体中并且希望在保存到新 MAT 文件时保留原始变量结构体,则此选项非常有用。

要保存变量的一部分,请使用 matfile 函数。此功能有助于处理由于数据过大而无法放入内存的超大型数据集。有关详细信息,请参阅在 MAT 文件中保存和加载部分变量。

注意

在 MATLAB Online™ 中,变量在会话之间保持不变。

加载工作区变量

要将保存的变量从 MAT 文件加载到工作区中,请在“文件”面板中双击该 MAT 文件。您还可以将 MAT 文件从“文件”面板拖到“工作区”面板。

要从 MAT 文件中加载变量子集,请在主页选项卡上的变量部分中,点击导入数据。选择要加载的 MAT 文件并点击打开。然后,使用导入工具对话框选择要导入的变量。

要将保存到 MATLAB 脚本的变量加载到工作区中,请运行该脚本。

您还可以通过使用 load 函数以编程方式加载保存的变量。例如,从文件 durer.mat 加载所有变量。

load("durer")
从文件 durer.mat 中仅加载变量 X 和 map。

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 在版本 7 或更高版本的 MAT 文件中默认会压缩数据。有关详细信息,请参阅 MAT 文件版本。

另请参阅

|

主题