我的日期列显示如下:“2016年5月27日上午10:08:13”
我的所有尝试都导致一列填有NA。
我试过很多方法,比如:
df$Create_Month <- format(as.Date(df$`Create Date`, format="%d/%b/%Y %I:%M:%s %p"),"%Y-%m"))
df$Create_Month <- format(as.POSIXct(df$`Create Date`, format="%d/%b/%Y %I:%M:%s %p"),"%Y-%m"))
df[,"Create_Month"] <- format(as.Date(df$`Create Date`, format="%d/%b/%Y %I:%M:%s %p"),"%Y-%m"))
df[,"Create_Month"] <- format(df$`Create Date`,"%Y-%m"))
以及对它们的修改,包括dplyr piping、mutate、lubridate等。终端输出为:
R> format(df$`Create Date`,"%Y %m"))
Error in format.default(Infocards$`Create Date`, "%Y %m") :
invalid 'trim' argument
R> as.POSIXct("27 May 2016 10:08:13 AM", tz="EST", "%d %b %Y %i:%m:%s %p")
[1] NA
R> as.Date("27 May 2016 10:08:13 AM", "%d %b %Y %i:%m:%s %p")
[1] NA
任何帮助都将不胜感激。
3条答案
按热度按时间gc0ot86w1#
%i
、%m
、%s
应为大写字母有了这个,
format
就可以工作了bxgwgixi2#
尝试
parse_date
包中的parse_date()
函数:wnvonmuf3#
函数的作用是:将日期和时间对象转换成字符串形式。它接受一个或多个格式化代码的输入,并返回字符串形式。
% B表示完整的月份名称,如January、February等。