как выполнить повторную выборку данных по датам другого фрейма данных в R

#r #dataframe #date #resampling

#r #фрейм данных #Дата #повторная выборка

Вопрос:

Привет, у меня есть два фрейма данных, один ежедневный, а другой ежемесячный (конец месяца), как показано ниже

 27/1/2020    1
28/1/2020    1.2
29/1/2020    1.2
30/1/2020    1.4
31/1/2020    1.1

31/1/2020    5
28/2/2020    8
31/3/2020    7
  

теперь я хочу взять первый ежедневный фрейм данных и удалить все даты, за исключением тех, которые присутствуют во втором фрейме данных, поэтому первый DF становится,

 31/1/2020    1.1
  

В первом фрейме данных мне нужно иметь только даты и значение, основанные на датах второго фрейма данных. Это своего рода база повторной выборки по датам другого фрейма данных.

Кто-нибудь может помочь? Спасибо

Luigi

Комментарии:

1. нравится df1$date %in% df2$date ?

Ответ №1:

Попробуйте этот base R подход, используя %in% :

 #Code
df[df$V1 %in% df2$V1,]
  

Вывод:

          V1  V2
5 31/1/2020 1.1
  

Некоторые используемые данные:

 #Data 1
df <- structure(list(V1 = c("27/1/2020", "28/1/2020", "29/1/2020", 
"30/1/2020", "31/1/2020"), V2 = c(1, 1.2, 1.2, 1.4, 1.1)), class = "data.frame", row.names = c(NA, 
-5L))

#Data 2
df2 <- structure(list(V1 = c("31/1/2020", "28/2/2020", "31/3/2020"), 
    V2 = c(5L, 8L, 7L)), class = "data.frame", row.names = c(NA, 
-3L))