[英]max and min dates returning different than head, tail of sorted list
我發現了一些令人費解的行為。 給出50個日期列表:
structure(c("15513", "12830", "16503", "-3628", "15833", "13553",
"473", "17126", "7916", "74", "4736", "7712", "12726", "8684",
"16217", "14725", "11836", "7061", "4687", "8733", "17176", "17175",
"16155", "14005", "14635", "-1793", "4296", "15316", "4746",
"6865", "14228", "5177", "4543", "1936", "10372", "-1393", "13648",
"17267", "9177", "10380", "9427", "9527", "-1375", "2133", "13966",
"336", "1925", "9611", "15601", "9218"), class = "Date")
我跑了這個:
head(sort(b), 1) ## prints "1960-01-26"
tail(sort(b), 1) ## prints "2017-04-11"
max(b) ## prints "1996-04-25"
min(b) ## prints "1966-03-28"
但真正令我困惑的是當所有打印值都在一個列表中時, max
和min
返回預期結果。
dc = as.Date(c("1960-01-26", "2017-04-11", "1996-04-25", "1966-03-28"))
max(dc) ## prints "2017-04-11"
min(dc) ## prints "1960-01-26"
為什么是這樣?
min()和max()函數僅用於類“numeric”的輸入。示例中的向量i類“Date”。 對於:
structure(min(as.numeric(example)), class ="Date")
“示例”是你的矢量,你得到了正確的解決方案......
希望這說清楚。
干杯
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.