2011-11-15 95 views
2

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

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

你可以建议一个矢量化的方法吗?对于单日期(矩阵之外),addtodate(d, -3, 'month')工作得很好!

回答

1

这个怎么样?

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