我可以将包含 m-d 的字符串与 R 中的日期向量匹配吗?



全部,我看到日期转换问题被否决了很多,但我在网上或帮助文件中找不到任何信息......

我有一个 df,日期格式为 ymd_hm((,然后在其他列中有一些数据。然后我有另一个 df 有 366 行,每天一个,还有一列包含与当天相关的一些值(一些气候学的东西,每年基本相同,所以年份无关紧要(。dfs 可能如下所示:

df1 <- tibble(Date=seq(ymd_hm('2010-05-01 00:00'),ymd_hm('2010-05-03 00:00'), by = 'hour'), Data=c(1:length(Date)))

df2 <- tibble(MonthDay=c("04-30", "05-01", "05-02","05-03","05-04"), OtherData=c(20,30,40,50, 60))

现在,是否可以做一些查找之类的事情并匹配DateMonthDay然后将任何OtherData写入df1?我很挣扎,因为我无法将MonthDay转换为约会。 因此,所有 2010-05-01 日期旁边都应该有 30,所有 2010-05-02 日期的下一列都应该有 40,依此类推......

谢谢你们!

我们用format提取"星期一",将其用作left_join中的公共连接列

library(dplyr)
df1 %>% 
mutate(MonthDay = format(Date, "%m-%d")) %>%
left_join(df2) %>%
select(-MonthDay)

最新更新