首页 > 解决方案 > 闰日移除

问题描述

我的数据集包含两列,一Date列带有 YYYYMMDD,一列带有另一个值。

日期列是 type Date,因为我使用函数as.Date将值从intto转换为characterto Date %Y%m%d

我正在使用每日数据,因此,我必须删除闰日。我尝试了很多东西,但我还没有找到任何可行的方法。我想删除每个闰年的 2 月 29 日(即 1992、1996、2000、2004、2008、2012、2016、2020)。我怎样才能做到这一点?

dsKNMI$Date <- as.character(dsKNMI$Date)
dsKNMI$Date <- as.Date(dsKNMI$Date, format = "%Y%m%d")

日期格式为 1990-12-31

标签: rdateleap-year

解决方案


Base R,

dsKNMI <- dsKNMI[!(format(dsKNMI$Date, format = "%m") =="02" &
                      format(dsKNMI$Date, format = "%d")=="29"),]

推荐阅读