【发布时间】:2014-03-17 01:34:32
【问题描述】:
这可能是一个已经被问过的非常简单的问题,但是.. 我有一个从 excel 中生成的 CSV 文件构建的数据框。观察结果不是均匀采样的,即它们是针对用电的“高峰”时间。这意味着他们每年排除不同的日子。我有 20 年的数据(1993-2012)并且正在运行非鲁棒和鲁棒黄土来提取季节性和线性趋势。 分解完成后,我只想关注从 6 月到 9 月的观察结果。
如何创建仅包含这些结果的新数据框?
对格式也很抱歉。
Date MaxLoad TMAX
1 1993-01-02 2321 118.6667
2 1993-01-04 2692 148.0000
3 1993-01-05 2539 176.0000
4 1993-01-06 2545 172.3333
5 1993-01-07 2517 177.6667
6 1993-01-08 2438 157.3333
7 1993-01-09 2302 152.0000
8 1993-01-11 2553 144.3333
9 1993-01-12 2666 146.3333
10 1993-01-13 2472 177.6667
【问题讨论】:
-
使用
month包中的函数lubridate你可以这样做:df[month(df$Date) >= 6 & month(df$Date) <= 9, ] -
谢谢!我知道这应该很容易,只是不知道从哪里开始。
-
@Victorp 不需要任何软件包。 base中有函数
weekdays、months和quarters。 -
请注意
months需要POSIXt或Date上课日期;您可以使用as.POSIXt函数集合进行转换。