Могу ли я сопоставить строку символов, содержащую md, с вектором даты в R? - PullRequest
0 голосов
/ 24 октября 2018

Все, я видел, что вопросы о конверсии дат часто снимаются, но я не могу найти какую-либо информацию в Интернете или в файлах справки ...

У меня есть 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))

Теперь можно ли что-то искать и сопоставлять Date иMonthDay и затем напишите, что OtherData в df1?Я изо всех сил, так как я не могу преобразовать MonthDay в дату.Итак, у всех дат 2010-05-01 должно быть 30 рядом с ними, у всех дат 2010-05-02 должно быть 40 в следующем столбце, и так далее, и так далее ...

Спасибо y 'все!

1 Ответ

0 голосов
/ 24 октября 2018

Мы извлекаем 'MondayDay' с format, используем его в качестве общего столбца соединения в left_join

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