在R中将字符串更改为日期和时间

时间:2014-06-05 10:01:08

标签: r

我有一个字符类字符串向量。

enter image description here

我想将其转换为Sys.time()格式。我怎样才能做到这一点? 当我使用as.POSIXct(z,format= "%d/%m/%Y %H:%M:%S")时  我收到以下警告:

Warning message:
In as.POSIXlt.POSIXct(x, tz) : NAs introduced by coercion

我不希望它转换为NA。我该怎么办?

2 个答案:

答案 0 :(得分:4)

请使用

strptime("2014-06-05 15:33:55 IST","%Y-%m-%d %H:%M:%S",tz="Asia/Kolkata")

为您的问题

data$time <- strptime(data$time, "%Y-%m-%d %H:%M:%S",tz="Asia/Kolkata")
class(data$time)

它应该是POSIXlt类型

答案 1 :(得分:0)

我知道这是一个老问题但是为了Google搜索这个问题的好处,我最近在使用rbind.fill时遇到了类似的问题。我发现我的其中一个日期是欧洲格式,2017年1月31日而非2017年1月31日,就像所有其他日期一样。执行rbind.fill后,导致R使整个列空白。修复日期解决了问题。

希望这对某人有所帮助,我花了好几个小时试图弄清楚为什么会这样。 R有时候很挑剔。