【问题标题】:Subtract months from a given date从给定日期减去月份
【发布时间】:2011-11-15 23:49:15
【问题描述】:

我需要从矩阵中的给定 DateCol 中减去月份。我使用命令 bsxfun(@minus, datevec(date),[0,3,0,0,0,0]) 从给定日期减去 3 个月。您可以看到此代码中有一个错误。如果日期是 2011 年 2 月 1 日,则此代码会将您带到 2011 年 1 月 1 日,而不是 2010 年 11 月 1 日。

垫= [100 734505; 200 734536; 200 734539]; % Col1 是 ID,Col2 是日期

您能建议一种矢量化方法吗?对于单一日期(矩阵之外),addtodate(d, -3, 'month') 工作得非常好!

【问题讨论】:

    标签: matlab date bsxfun date-math


    【解决方案1】:

    这个怎么样?

    newDateVector = arrayfun(@(x) addtodate(x, -3, 'month'), oldDateVector)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-03-12
      • 2019-11-06
      • 2020-08-05
      • 1970-01-01
      • 1970-01-01
      • 2014-10-01
      相关资源
      最近更新 更多