如何在R中将因子转换为DateTime

  • 本文关键字:转换 DateTime datetime
  • 更新时间 :
  • 英文 :


这个问题对你们中的一些人来说可能很简单,但请耐心等待,因为我是R.的初学者

我有一个数据帧,它有一个包含DateTime数据的因子列(称为时间),如下所示:

time
01/01/2011 00:10
02/01/2011 03:00
03/01/2011 05:00
04/01/2011 10:03

我想将此列转换为R中的DateTime列。我搜索并尝试了一些函数,但结果为"NA"。以下是我尝试过的功能:

> dataframe1$datetime <- as.POSIXlt(as.character(dataframe1$time), format="%d/%m/%Y %H:%M")
> dataframe1$datetime <- as.POSIXlt(strptime(dataframe1$time), format="%d/%m/%Y %H:%M")
> dataframe1$datetime <- as.POSIXlt(dataframe1$time, format="%d/%m/%Y %H:%M")
> dataframe1$datetime <- as.chron(dataframe1$time, "%d/%m/%Y %H:%M")

我不知道还能尝试什么。理想情况下,我希望添加三列,即日期时间、日期和时间。

尝试:

dataframe1$datetime <- strptime(x = as.character(dataframe1$datetime),
                                format = "%d/%m/%Y %H:%M")

可能最简单的方法是使用lubridate包,该包具有大量用于日期操作的函数。以下将把您的时间转换为POSIXct对象:

 library(lubridate)
 mdy_hm( as.character(dataframe1$time) )

请参阅?mdy以查看各种日期解析功能。

对于不依赖lubridate的稍微更详细的版本

strptime(x = as.character( dataframe1$datetime ), format = "%d/%m/%Y %H:%M")

相关内容

  • 没有找到相关文章

最新更新