保存和加载工作区变量

目录

保存工作区变量

加载工作区变量

查看 MAT 文件的内容


        在 MATLAB® 会话之间并不保留工作区。退出 MATLAB 时,工作区清除。但是,您可以将当前工作区中的任何或所有变量保存到 MAT 文件(.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 函数。这有助于处理由于数据过大而无法放入内存的超大型数据集。

        在 MATLAB Online™ 中,变量在会话之间保持不变。保存允许您清空工作区并在以后加载变量。要保存变量,请使用 save 或 matfile 函数。

加载工作区变量

        要将保存的变量从 MAT 文件加载到工作区中,请在当前文件夹浏览器中双击该 MAT 文件。

        要从 MAT 文件中加载变量子集,请在主页选项卡上的变量部分中,点击导入数据。选择您要加载的 MAT 文件并点击打开。您也可以将所需变量从所选 MAT 文件的当前文件夹浏览器的详细信息面板拖动到工作区浏览器中。在 MATLAB Online 中,您还可以在文件浏览器中点击 MAT 文件右侧的预览按钮 

,并将所需的变量从预览中拖到工作区面板。

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

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

load('durer')

        要从文件 durer.mat 加载变量 X 和 map

load('durer','X','map')

        要加载变量的一部分,请使用 matfile 函数。这有助于处理由于数据过大而无法放入内存的超大型数据集。

小心

        当将数据加载至 MATLAB 工作区时,创建的新变量将会覆盖工作区中同名的任何现有变量。为了避免覆盖现有变量,请使用 load 函数将变量加载到结构体中。例如,S = load('durer') 会将文件 durer.mat 中的所有变量加载到结构体 S 中。

查看 MAT 文件的内容

​        要在将 MAT 文件加载到工作区之前查看该文件中的变量,请在当前文件夹浏览器中点击该文件名称。有关变量的信息将显示在详细信息窗格中。

        或者,使用 whos-filefilename 命令。此函数将返回指定的 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 文件中会压缩数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值