3
我有一個函數調用特定的日期格式。例如,只有格式爲如果日期格式不正確,則返回錯誤消息
2002-09-04 16:45:40
然後該函數將工作。否則,它會返回錯誤消息,如
"Format incorrect"
我想知道如何實現它?
我有一個函數調用特定的日期格式。例如,只有格式爲如果日期格式不正確,則返回錯誤消息
2002-09-04 16:45:40
然後該函數將工作。否則,它會返回錯誤消息,如
"Format incorrect"
我想知道如何實現它?
嘗試發送這樣的:
convert.to.date <- function(d) {
if(is.na(strptime(d, '%Y-%m-%d %H:%M:%S'))) stop("Format incorrect")
return(format(d, format='%Y-%m-%d %H:%M:%S', usetz = FALSE))
}
convert.to.date('2002-09-04 16:45:40')
#[1] "2002-09-04 16:45:40"
convert.to.date('09-04-2002 16:45:40')
#Error in convert.to.date("09-04-2002 16:45:40") : Format incorrect
那麼,你可以編寫一個函數來檢查日期的格式輸入您所使用as.Date
函數指定format
參數
checkDateFormat <- function(input) {
x <- as.Date(input, format= "%Y-%m-%d %H:%M:%S")
if(is.na(x))
"Format incorrect"
else
"Format correct"
}
checkDateFormat("2002-09-04 16:45:40")
#[1] "Format correct"
checkDateFormat("2002-09-04")
#[1] "Format incorrect"
checkDateFormat("2002-09-04 16:45")
#[1] "Format incorrect"
其實我只想使'checkDateFormat(「2002-09-04 16:45」)'是正確的。所以我在函數中刪除了':%s'。但是,當我使用'checkDateFormat(「2002-09-04 16:45:00」)'這應該是不正確的,但確實得到正確的結果。這裏發生了什麼? –