在日期框架中查找缺少的日期

时间:2018-11-30 20:10:29

标签: r dplyr

我有一个数据框,其中有15个日期,按顺序和顺序是月/日期/年日期,如何查找缺少的日期?例如,如果它从2/3/2018跳到2/5/2018,则结果将是一个值为2/4/2018的数据框,而它发现缺少的其他值?原始数据框只有一列,称为日期。

1 个答案:

答案 0 :(得分:2)

您也可以尝试这样做,以获取完整的日期序列:

data <-data.frame(Dates = as.Date(c("2018/10/10","2018/10/13","2018/10/31")))

data_ <- data.frame(Dates_all =
                    seq(min(data$Dates), max(data$Dates), by="days"))

data_
    Dates_all
1  2018-10-10
2  2018-10-11
3  2018-10-12
4  2018-10-13
5  2018-10-14
6  2018-10-15
7  2018-10-16
8  2018-10-17
9  2018-10-18
10 2018-10-19
11 2018-10-20
12 2018-10-21
13 2018-10-22
14 2018-10-23
15 2018-10-24
16 2018-10-25
17 2018-10-26
18 2018-10-27
19 2018-10-28
20 2018-10-29
21 2018-10-30
22 2018-10-31

要查找丢失的日期作为矢量:

data_[!data_$Dates_all %in% data$Dates,]
 [1] "2018-10-11" "2018-10-12" "2018-10-14" "2018-10-15" "2018-10-16" "2018-10-17"
 [7] "2018-10-18" "2018-10-19" "2018-10-20" "2018-10-21" "2018-10-22" "2018-10-23"
[13] "2018-10-24" "2018-10-25" "2018-10-26" "2018-10-27" "2018-10-28" "2018-10-29"
[19] "2018-10-30"