我目前正在研究谷歌数据分析顶点循环。 我要添加一个名为“日期”、“日”、“月”和“年”的列。 我已经安装了必要的软件包。 我有一个名为 $started_at 的列,其中包含格式为“4/26/2020 17:45”的日期和时间,并且采用 chr (字符)格式 我这样输入代码
df$date<-as.Date(df$started_at)
输出说 海图日期错误 (x) 字符串不是标准的明确格式
我也尝试过
df$date<-as.Date(df$started_at,format = "%y%m%d")
日期栏带来 NA
我也尝试过
df$started_at = strptime(df$started_at,"%y-%m-
%d %H: %M: %S")
这个的输出也是NA
有什么问题
我目前正在研究 Google 数据分析顶点循环。
我要添加一个名为日期、日、月和年的列。
我已经安装了必要的软件包。
我有一个名为 $started_at 的列,其中包含格式为“4/26/2020 17:45”的日期和时间,并且采用 chr(字符)格式
我输入这样的代码
df$date<-as.Date(df$started_at)
输出说
图表日期(x)中的错误
字符串不是标准的明确格式
我也尝试过
df$date<-as.Date(df$started_at,format = "%y%m%d")
日期栏带来 NA
我也尝试过
df$started_at = strptime(df$started_at,"%y-%m-
%d %H: %M: %S")
这个的输出也是NA
有什么问题
问题是您的started_at列是datetime,而不是日期。要将其转换为日期,您必须使用 strptime 格式化语法:
传入格式df$started_at <- as.POSIXct(df$started_at, format = "%m/%d/%Y %H:%M") |> as.Date()
# or
df$started_at <- as.Date(df$started_at, format = "%m/%d/%Y %H:%M")
#or
library(lubridate)
mdy_hm(df$started_at) |> as_date()
数据:
df <- data.frame(
started_at = "4/26/2020 17:45")