Arrays Matlab:超大阵列每年的观测次数
我有一个大数组,包含1926年至2012年的每日数据。我想知道每年有多少次观测(每年不同)。我有一个列向量,它的日期形式如下: 19290101 19290102 . . . 这里的一年是从七月到明年六月 因此,19630701至19640630Arrays Matlab:超大阵列每年的观测次数,arrays,matlab,Arrays,Matlab,我有一个大数组,包含1926年至2012年的每日数据。我想知道每年有多少次观测(每年不同)。我有一个列向量,它的日期形式如下: 19290101 19290102 . . . 这里的一年是从七月到明年六月 因此,19630701至19640630 我想用这个向量来计算每年的天数。我需要观察值的数量作为回归的输入 我不知道日期是以数字形式存储还是以字符串形式存储;我假设它们是数字。我建议将每个值转换为年份,然后使用hist计算每年的日期数。因此,请尝试以下方法: year = floor(dat
我想用这个向量来计算每年的天数。我需要观察值的数量作为回归的输入 我不知道日期是以数字形式存储还是以字符串形式存储;我假设它们是数字。我建议将每个值转换为年份,然后使用
hist
计算每年的日期数。因此,请尝试以下方法:
year = floor(date/10000);
obs_per_year = hist(year,1926:2012);
这将为您提供一个向量,其中包含从1926年开始的每年的观测数量。从7月1日开始的一系列年份:
bin = datenum(1926:2012,7,1);
Bin你每年的日期向量与Bin(1)这是可行的,但我忘了提到这里的一年是明年的6月到7月。有什么想法吗?从19260701年到19270630年。谢谢你
hist(date,datenum(1926:2012,7,1))
Ok,这个怎么样:year=floor((date-700)/10000)
这两个都返回date
的0行数组,在我建议的代码中,我指的是你的日期列向量。(您从未指定过如何调用它。)如果您只是按编写的方式键入date
,它将调用某个函数并返回一个非预期的值。
count = histc(dates,bin);