4

在这里有点疯狂,因为我没有设法为我新创建的时间序列对象使用索引引用。

我想做的就是查询/返回/修改特定日期的值。

即我的时间序列“temp”是温度的每日值,我想在 2008 年 1 月 16 日更改值。我的日期结构格式为“01-Jan-2008”

我尝试了各种方法,但没有管理!:(

temp('16-Jan-2008')= 25; % Info on this page ref [1]
temp(16) = 25; % 16 referring to the element index

我知道我可以进入 tstools 并手动修改它,但我想对时间序列进行更多的矩阵操作,但即使使用索引引用,我也会以某种方式挣扎!它们不能在命令窗口中轻松修改吗?

谢谢

[1] - http://www.mathworks.co.uk/help/finance/working-with-financial-time-series-objects.html#f13-5213

4

1 回答 1

0

对于 2 个向量

时间 [大小 = n x 1] & temp [大小 = n x 1]

如果你的时间序列是一个字符向量(所有行的长度相同,而不是单元格)。您可以转换为 matlab 时间数字,例如

time_tmp = datenum(time,'dd-mmm-yyyy');

然后你可以改变一个临时向量(与时间相同的长度)

temp(time_tmp == datenum(2008,1,16)) = 25;

否则,您可以将您的数据转换为 2 个向量,然后执行上述操作。

于 2013-11-11T04:30:46.240 回答