matlab - 在matlab中计算周数

标签 matlab week-number

我有一个年度时间序列,其中以每小时为间隔记录测量值:

StartDate = '2011-01-01 00:00';
EndDate = '2011-12-031 23:00';
DateTime=datevec(datenum(StartDate,'yyyy-mm-dd HH:MM'):60/(60*24):...
    datenum(EndDate,'yyyy-mm-dd HH:MM'));
dat = 2+(20-2).*rand(size(DateTime,1),1);

我想计算一年中每周的平均 24 小时周期,即第 1 周,第 1 到第 7 天我想计算平均 00:00、01:00 等所以最终我会得到 52 个 24 小时的系列,即一年中的每个星期一个。 Matlab 确实有一个名为“weeknum”的函数,它从给定的系列日期数字返回周数,但是,这个函数在金融工具箱中。谁能建议另一种查找周数的方法?

最佳答案

也许这会有所帮助(我以当前日期和时间为例):

c = datevec(datestr(now));
week_num = ceil(diff(datenum([c(1), 1, 1, 0, 0, 0; c])) / 7)

我不确定这个解决方案如何正确处理边缘情况,但我认为这是一个很好的起点。

您也可以使用 this website 来验证它告诉当前周数。

可以将此应用于您的示例,例如,像这样:

weeknum = @(v)ceil(diff(datenum([v(1), 1, 1, 0, 0, 0; v(:)'])) / 7);
arrayfun(@(n)weeknum(DateTime(n, :)), 1:size(DateTime, 1))'

关于matlab - 在matlab中计算周数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13930863/

相关文章:

matlab - 颜色和标记的图例条目

powershell - (Godot引擎) 如何计算特定日期的ISO周数?

ruby-on-rails - 使用方法 Date.commercial 无法找到第 53 周的开始

date - 给定 ISO 8601 周数,在 LibreOffice Calc 电子表格中获取该周第一天的日期

excel - 使用给定的引用年份计算给定日期的周数

c# - 从日期时间获取周数

matlab - 如何在 Simulink 中调整子系统模块上 IO 端口的显示?

.net - 如何检查 NET 程序集是否已添加到 Matlab 中?

image - 如何根据矩阵值检测图像的一部分?

matlab - 将函数元胞数组应用于值