【发布时间】:2022-12-21 10:00:33
【问题描述】:
标签: r dataframe rstudio filtering subset
标签: r dataframe rstudio filtering subset
这是使用dplyr 的解决方案。请注意,我使用的日期格式是 MM/DD/YYYY,而您表格中的日期是 DD/MM/YYYY。
library(dplyr)
library(lubridate)
df1 <- data.frame(
Name = c('A', 'B', 'C'),
Limit = c(100, 200, 300),
EndDate = lubridate::mdy(c('12-13-2022', '01-30-2023', '02-28-2023'))
)
df2 <- data.frame(
Name = c('A', 'B', 'B', 'C', 'C'),
Limit = c(50, 150, 10, 250, 50),
StartDate = lubridate::mdy(c('01-01-2022', '02-01-2022', '03-01-2023', '03-01-2023', '04-01-2023'))
)
df2 %>%
left_join(df1, by = "Name") %>%
filter(StartDate > EndDate) %>%
select(Name, Limit = Limit.x, StartDate)
这使:
Name Limit StartDate
1 B 10 2023-03-01
2 C 250 2023-03-01
3 C 50 2023-04-01
【讨论】: