R 使用不同的索引方法将列转换为datetime对象

R 使用不同的索引方法将列转换为datetime对象,r,datetime,R,Datetime,我正在尝试将数据帧中的日期列转换为datetime对象 dates <- c("11/28/2016 10:08 AM", "11/28/2016 10:08 AM", "11/28/2016 10:08 AM") dates <- as.data.frame(dates) # Using a $ to index the column works dates$dates <- as.POSIXlt(dates$dates, format="%m/%d/%Y %I:%M %p

我正在尝试将数据帧中的日期列转换为datetime对象

dates <- c("11/28/2016 10:08 AM", "11/28/2016 10:08 AM", "11/28/2016 10:08 AM")
dates <- as.data.frame(dates)
# Using a $ to index the column works 
dates$dates <- as.POSIXlt(dates$dates, format="%m/%d/%Y %I:%M %p")
            dates
1 2016-11-28 10:08:00
2 2016-11-28 10:08:00
3 2016-11-28 10:08:00
# But this does not work
dates[,'dates'] <- as.POSIXlt(dates[,'dates'], format="%m/%d/%Y %I:%M %p")
Warning message:
In `[<-.data.frame`(`*tmp*`, , "dates", value = list(sec = c(0,  :
  provided 11 variables to replace 1 variables

dates@akrun是正确的
as。POSIXlt
不是向量,不能简单地作为列添加到数据帧中。对于列表,
[
用于选择单个元素,而
[
返回所选元素的列表

dates[['dates']] <- as.POSIXlt(dates[['dates']], format="%m/%d/%Y %I:%M %p")
            dates
1 2016-11-28 10:08:00
2 2016-11-28 10:08:00
3 2016-11-28 10:08:00

dates[['dates']]使用
[[
dates[['dates']]