在R中查找dataframe中缺少的日期

s5a0g9ez  于 2023-03-27  发布在  其他
关注(0)|答案(2)|浏览(101)

我有从1963年的每日降雨量数据,然而,有一个缺失的数据点.有没有一种方法,我可以产生一个列表的缺失日期.日期列是一个POSIX ct.在形式“1963-01-02”和运行到2022-01-02与偶尔缺失的日期之间.

jq6vz3qz

jq6vz3qz1#

base R中,在开始日期和结束日期之间创建一个日期序列,并使用%in%和否定(!)来获取不在数据集列中的日期(假设“Date”是一列)。如果是行索引,则必须相应地修改代码

full_dates <- seq(as.Date("1963-01-02"), as.Date("2022-01-02"), by = "1 day")
full_dates[!full_dates %in% as.Date(df1$Date)]
cbjzeqam

cbjzeqam2#

如果你想要一些更健壮的东西来更容易地处理POSIXct和日期,使用我的包timeplyr,它是为涉及日期/日期时间序列的分析而创建的。

#remotes::install_github("NicChr/timeplyr")
library(timeplyr)
library(dplyr)
library(lubridate)
tseq <- time_seq("1963-01-02", "2022-01-02", by = "day")
set.seed(987654321)
dates <- sample(tseq, size = 1.5 * 10^3)
my_data <- tibble(date = dates, 
                  datetime = as_datetime(dates))

missing_dates_list <- missing_dates(my_data)
lengths(missing_dates_list)
#>     date datetime 
#>    20005    20005

创建于2023-03-24使用reprex v2.0.2

相关问题