在我的数据框中,我有一列包含日期的列。我已经将那些日期转换为DD / MM / YY表示法,现在我想知道是否只能处理框架中那些日期的YY等于特定数字的行。举例来说,我只想查看年份为18的行,但这包括所有的日和月。示例:
值<-(3,4,5,2)
日期<-(“ 6/7/19”,“ 3/5/18”,“ 12/12/18”,“ 5/2/12”)
框架<-data.frame(值,日期)
现在,例如frame [dates ==“ 3/5/18”,“ values”]会给我4,但我想知道是否可以使用某个命令来定位所有18括号中年份的位置。另外,稍后我想创建一个仅包含指定年份为18的行(在400.000个数据点中)的子帧,但是我猜测一旦我了解了如何解决该变量,该行就会起作用。
感谢提前答复。非常感谢您的帮助。
答案 0 :(得分:1)
我建议使用软件包lubridate
,因为它具有方便的功能,可以将时间戳转换为Date
格式。使用dmy()
(日-月-年的缩写)来转换时间戳。这是使用dplyr
语法的示例:
library(lubridate)
library(dplyr)
DF <- data.frame(
date = dmy(c("19/01/18", "12/05/18", "30/03/19")),
dummydata = paste0("dummy", 1:3)
)
DF %>%
filter(year(date) == 2018)
答案 1 :(得分:0)
如果没有示例,不确定您的问题到底是什么。如果我理解正确,那么您想从TimeStamp
中提取年份,并用它来过滤DataFrame
中的行。您可以使用年份从TimeStamp
中提取年份。
Example: year(now())
[1] 2019