【问题标题】:Subsetting winter (Dez, Jan, Feb) from daily time series (zoo)从每日时间序列(动物园)中划分冬季(Dez、Jan、Feb)
【发布时间】:2011-09-15 10:57:16
【问题描述】:

我有一个每日动物园 (xts),其中包含以下格式的几十年数据:

head(almorol)
1973-10-02 1973-10-03 1973-10-04 1973-10-05 1973-10-06 1973-10-07
     183.9      208.2      153.7       84.8       52.5       35.5

我只想绘制冬季数据(12 月、1 月和 2 月的完整月份)。我找到了 xts 的子集,所以我想我可以使用以下方法提取所有十二月:

x<-apply.yearly(almorol, FUN=last(almorol, "1 month"))

然后为一月和二月做类似的事情,但我收到以下错误:

Error in get(as.character(FUN), mode = "function", envir = envir) :
object 'FUN' of mode 'function' was not found

我可以分别使用apply.yearlylast(almorol, "1 month"),但是当我将它们组合起来时它不起作用。有谁知道对这 3 个月的时间序列进行子集化的方法?感谢您的帮助!

【问题讨论】:

  • 请使用dput(head(almorol)) 提供您的数据样本。也许dput(head(almorol,15))
  • dput(head(almorol,15)) 结构(c(183.9, 208.2, 153.7, 84.8, 52.5, 35.5, 49.2, 77.7, 73, 104.9, 124.8, 103, 75.9, 108.7, 138.2 ), 索引 = 结构(c(1370, 1371, 1372, 1373, 1374, 1375, 1376, 1377, 1378, 1379, 1380, 1381, 1382, 1383, 1384), class= "日期"), class= "zoo ")

标签: r subset zoo


【解决方案1】:

试试这个:

z.winter <- z[months(time(z), TRUE) %in% c("Dec", "Jan", "Feb")]
plot(z.winter)

【讨论】:

    猜你喜欢
    • 2017-08-11
    • 1970-01-01
    • 2013-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-05
    • 1970-01-01
    • 2014-03-08
    相关资源
    最近更新 更多