找回密码
 注册
查看: 363|回复: 4
打印 上一主题 下一主题

matlab中,如何在mat文件中的单个变量中追加数据

[复制链接]
  • TA的每日心情
    开心
    2022-1-21 15:21
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2023-2-9 11:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    我做的是一个循环,假设一个数据A,第一次循环获取了A(1),第二次循环获取了A(2),无限循环下去。; E0 z4 N1 E* G+ U4 r$ u
    之前采用load函数,然后再保存,& N/ Y7 F4 H% Q1 E$ Z9 ^0 a5 a& c
    1 Y7 m5 f) {( L  |1 n: {: I" Z2 a! d
    A(1)=1;
      M7 ?9 t+ L# _# Msave(“1.mat”,A);) j* K* V3 W3 W& y4 @9 T. v
    ……循环……
    , y" @7 y! H9 G& j8 ^1 Uload(“1.mat”)0 T. f0 ]1 S% C3 V2 U: W
    A(2)=2;2 X0 G5 n) _$ R7 z( V5 {
    save(“1.mat”,A);! U0 Y! Y  S6 l! @) {2 X
    ……循环……5 }  G) j# K$ V1 c
    load(“1.mat”)$ e$ q1 \+ U' P
    A(3)=3;
      b' a) W2 G; J( dsave(“1.mat”,A);9 a0 @* I# g+ X# }4 o+ U, P+ Z* n0 i2 h

    3 o' J! U& @, S7 A+ q这就有一个问题,就是随着数组A的增大,每次load占用的资源太多,而当A的数据达到几千的时候,同样会占用太多的资源导致matlab崩溃。
    6 ?5 G: @/ v7 ~3 [3 G: Q有没有办法在不采用load函数的情况下,能够将每次读取的数据存入到之前的变量中。7 k; J* S5 N; B3 |3 x' @7 u
    或者有没有办法保存这样的大数据(xlwrite也用过了,运行十几小时之后每次xlwrite变得巨慢无比),谢谢啦。* Y1 x8 w  Q4 a" B# Z5 S
  • TA的每日心情
    开心
    2022-1-21 15:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2023-2-9 13:09 | 只看该作者
    根据说明文档上的说明,可以用8 I6 h) u: f2 y! f
    save(filename,variables,'-append') adds new variables to an existing file. If a variable already exists in a MAT-file, then save overwrites it with the value in the workspace.* M! {- j$ p( R1 G0 B
    ) R8 h# W$ T6 a  ?3 p; J6 W) y) z7 R
    save(filename,variables,'-append','-nocompression') adds new variables to an existing file without compression. The existing file must be a MAT-file Version 7.3.

    点评

    这样是在mat文件里添加新的变量,我想的是在原有变量数组的尾部添加数据,不一样的。  详情 回复 发表于 2023-2-9 13:17
  • TA的每日心情
    开心
    2022-1-21 15:21
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
     楼主| 发表于 2023-2-9 13:17 | 只看该作者
    qian211111 发表于 2023-2-9 13:09
    ; W) ?% h9 L  R. R$ r- l根据说明文档上的说明,可以用" \) q8 W6 @3 [6 B0 @  q
    save(filename,variables,'-append') adds new variables to an existing f ...
    ( d! ~/ x  T% D# l: o; f# I
    这样是在mat文件里添加新的变量,我想的是在原有变量数组的尾部添加数据,不一样的。4 g" N& J* `1 f2 ?3 P5 D
  • TA的每日心情
    开心
    2022-1-29 15:05
  • 签到天数: 2 天

    [LV.1]初来乍到

    4#
    发表于 2023-2-9 13:23 | 只看该作者
    doc save% K% ]. W, c% f0 b  y
    请按照你版本自己的帮助文档来

    该用户从未签到

    5#
    发表于 2023-2-9 13:30 | 只看该作者
    有循环计数变量的话,可以定义一个空数组V_temp=[],然后在循环中加上这一句V_temp=[V_temp V](其中V是你要保存的变量)
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-5-26 04:36 , Processed in 0.078125 second(s), 27 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表