数据
财务时间序列对象(FINTS),包含以下列:
日期时间编号
我每天每小时都有2年的数据。
问题
我希望获得过去一年每小时的平均值。换句话说,我希望每天24小时都有时间栏,相应的数字应该是同一时间所有过去几天的平均值。
我尝试了什么
我已经尝试过查看perav,tsmovavg函数和accumarray函数。还有其他想法吗?我是Matlab的新手,所以我甚至不知道如何循环这个时间序列数据。虽然考虑到它是使用时间序列特定函数的时间序列对象,但必须有某种方法来做到这一点。
编辑:我希望将其保留在理想的时间序列中。
答案 0 :(得分:1)
假设您的数据已存储在矩阵F
中,“日期”为年份而“时间”为小时,您可以使用此for
循环打印不同日期内同一时间的平均值特定年份y
:
for t=unique(F(:,2))
mean(F(F(:,2)==t & F(:,1)==y) ,3)
end
说明:
通过使用unique
,您可以检索“时间”的不同值。 mean
内的两个条件确保特定年份的“时间”相同。