主要内容

本页翻译不是最新的。点击此处可查看最新英文版本。

保存和加载工作区变量

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

保存工作区变量

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

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

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

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

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

save("june10")
或者,仅将变量 AB 保存到文件 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 中仅加载变量 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 在版本 7 或更高版本的 MAT 文件中默认会压缩数据。有关详细信息,请参阅 MAT 文件版本

另请参阅

|

主题