在MATLAB中修改timeseries数据的单个值

在MATLAB中修改timeseries数据的单个值,matlab,indexing,time-series,Matlab,Indexing,Time Series,这里有点疯狂,因为我没有为新创建的timeseries对象使用索引引用 我只想查询/返回/修改特定日期的值 i、 e.其中我的timeseries“temp”是温度的每日值,我想在2008年1月16日更改该值。 我的日期结构格式为“01-Jan-2008” 我尝试过各种方法,但没有成功( 我知道我可以进入tstools并手动修改它,但我想对timeseries进行更进一步的矩阵操作,但即使在索引引用方面,我也在苦苦挣扎!在命令窗口中不能轻松修改它们吗 谢谢 [1] -用于2个向量 时间[size

这里有点疯狂,因为我没有为新创建的timeseries对象使用索引引用

我只想查询/返回/修改特定日期的值

i、 e.其中我的timeseries“temp”是温度的每日值,我想在2008年1月16日更改该值。 我的日期结构格式为“01-Jan-2008”

我尝试过各种方法,但没有成功(

我知道我可以进入tstools并手动修改它,但我想对timeseries进行更进一步的矩阵操作,但即使在索引引用方面,我也在苦苦挣扎!在命令窗口中不能轻松修改它们吗

谢谢

[1] -

用于2个向量

时间[size=n乘以1]&温度[size=n乘以1]

如果ur timeseries是一个字符向量(所有行的长度相同,而不是单元格),则可以像

time_tmp = datenum(time,'dd-mmm-yyyy');
然后你可以改变一个温度向量(与时间长度相同)


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

我认为您需要类似于
temp.MySeriesName(16)的内容=25
谢谢!这在一定程度上有所帮助,尽管我认为我需要用我的数据解决其他问题-为pointer@Dan我建议你把它作为答案发布,这样问题就不会一直悬而未决了。
time_tmp = datenum(time,'dd-mmm-yyyy');
temp(time_tmp == datenum(2008,1,16)) = 25;