我有一段时间在excel中,当转换为R时,它是一个角色,看起来像这样0.59658.
我正在尝试转换为POSIXct,但它返回为带有NA的POSIXct。
teste <- as.POSIXct(test, format = "%H:%M")
我也试过teste <- as.POSIXct(test, format = "%H:%M:%S")
对于其他列,它工作正常,但不是这个..
更新: 我已经完成了解决方案,但第二个问题来自我需要的其余部分。
teste <- as.POSIXct(teste*24*60*60,"%H%M", origin="1970-01-01")
teste <- format(as.POSIXct(teste, format = "%Y-%m-%d %H:%M:%S"), format="%H:%M")
现在,我想在2013-01-06中使用此命令粘贴日期向量,这是一个POSIXct:
teste<-as.POSIXct(paste(date, teste), format="%Y-%m-%d %H:%M:%S")
NA回来了
答案 0 :(得分:0)
对于你究竟想要什么感到困惑,但这个功能出了什么问题:
df <- data.frame(number = c(0.59658, 0.59658, 0.59658, 0.59658, 0.59658), dates = c("2013-01-06", "2013-01-06", "2013-01-06", "2013-01-07", "2013-01-07"))
testing <- function(number, dates){
teste <- as.POSIXct(number*24*60*60,"%H%M", origin="1970-01-01")
teste <- format(as.POSIXct(teste, format = "%Y-%m-%d %H:%M:%OS"), format="%H:%M")
return(as.POSIXct(paste0(dates," ",teste)))
}
在执行testing(df$number, df$dates)
时会给出以下内容:
"2013-01-06 14:19:00 EST" "2013-01-06 14:19:00 EST" "2013-01-06 14:19:00 EST" "2013-01-07 14:19:00 EST" "2013-01-07 14:19:00 EST"