我對閏年有些疑惑,我怎麼可以肯定的是,通過使用一個公式是這樣如何解釋閏年?
add.years= function(x,y){
if(!isTRUE(all.equal(y,round(y)))) stop("Argument \"y\" must be an integer.\n")
x <- as.POSIXlt(x)
x$year <- x$year+y
as.Date(x)
}
它會考慮到閏年,例如加入100多年來對我的觀察數據集時?我怎樣才能控制這個?
我已經擁有50年的觀測時間序列數據集:
date obs
1995-01-01 1.0
1995-01-02 2.0
1995-01-03 2.5
...
2045-12-30 0.2
2045-12-31 0.1
數據集+百年
date obs
2095-01-01 1.0
2095-01-02 2.0
2095-01-03 2.5
...
2145-12-30 0.2
2145-12-31 0.1
基本檢查後,我注意到,行數是數據集的原始數據和100年數據都是相同的。我不確定在閏年之前的第29屆Februray會是非閏年的3月1日的obs值,等等。
我可以從chron庫檢查閏年功能閏年,但是我想知道是否有更簡單的方法來做到這一點,以確保2月29日的通行日在100年後不存在的行將被刪除,並且新的日子2月29日增加了NA值。
混合'POSIXlt'和'日期'格式只會以晦澀的錯誤和眼淚結束。 –
我確認!最好花一些時間清理我的代碼。謝謝! –