read_csv 可以解析 m/d/Y H:M:S AM/PM 向量吗?
Can read_csv parse m/d/Y H:M:S AM/PM vector?
我正在努力学习 tidyverse 原则,想知道是否有 easier/better 方法来引入我的数据,其中包括 m/d/Y H:M:S [= 中的日期时间向量25=] 格式。目前我使用 read_csv
导入,它识别字符格式的列,然后我使用 ludridate 创建一个新列,使用 mdy_hms
解析日期时间列:
> test <- read_csv("data.csv")
Parsed with column specification:
cols(
ActivityMinute = col_character(),
Steps = col_integer()
)
> head(test)
# A tibble: 6 x 2
ActivityMinute Steps
<chr> <int>
1 5/12/2016 12:00:00 AM 0
2 5/12/2016 12:01:00 AM 0
3 5/12/2016 12:02:00 AM 0
4 5/12/2016 12:03:00 AM 0
5 5/12/2016 12:04:00 AM 0
6 5/12/2016 12:05:00 AM 0
> test$datetime <- mdy_hms(test$ActivityMinute)
> head(test)
# A tibble: 6 x 3
ActivityMinute Steps datetime
<chr> <int> <dttm>
1 5/12/2016 12:00:00 AM 0 2016-05-12 00:00:00
2 5/12/2016 12:01:00 AM 0 2016-05-12 00:01:00
3 5/12/2016 12:02:00 AM 0 2016-05-12 00:02:00
4 5/12/2016 12:03:00 AM 0 2016-05-12 00:03:00
5 5/12/2016 12:04:00 AM 0 2016-05-12 00:04:00
6 5/12/2016 12:05:00 AM 0 2016-05-12 00:05:00
是否有更好的方法来做到这一点,也许使用 cols()?我尝试将 ActivityMinute
指定为 col_datetime
,但这没有用。任何更好的提示 code/process 表示赞赏。
您必须在 col_datetime
调用中设置日期时间格式:
test <-
read_csv(
"data.csv",
col_types = cols(
ActivityMinute = col_datetime("%m/%d/%Y %I:%M:%S %p"),
Steps = col_integer()
)
)
我正在努力学习 tidyverse 原则,想知道是否有 easier/better 方法来引入我的数据,其中包括 m/d/Y H:M:S [= 中的日期时间向量25=] 格式。目前我使用 read_csv
导入,它识别字符格式的列,然后我使用 ludridate 创建一个新列,使用 mdy_hms
解析日期时间列:
> test <- read_csv("data.csv")
Parsed with column specification:
cols(
ActivityMinute = col_character(),
Steps = col_integer()
)
> head(test)
# A tibble: 6 x 2
ActivityMinute Steps
<chr> <int>
1 5/12/2016 12:00:00 AM 0
2 5/12/2016 12:01:00 AM 0
3 5/12/2016 12:02:00 AM 0
4 5/12/2016 12:03:00 AM 0
5 5/12/2016 12:04:00 AM 0
6 5/12/2016 12:05:00 AM 0
> test$datetime <- mdy_hms(test$ActivityMinute)
> head(test)
# A tibble: 6 x 3
ActivityMinute Steps datetime
<chr> <int> <dttm>
1 5/12/2016 12:00:00 AM 0 2016-05-12 00:00:00
2 5/12/2016 12:01:00 AM 0 2016-05-12 00:01:00
3 5/12/2016 12:02:00 AM 0 2016-05-12 00:02:00
4 5/12/2016 12:03:00 AM 0 2016-05-12 00:03:00
5 5/12/2016 12:04:00 AM 0 2016-05-12 00:04:00
6 5/12/2016 12:05:00 AM 0 2016-05-12 00:05:00
是否有更好的方法来做到这一点,也许使用 cols()?我尝试将 ActivityMinute
指定为 col_datetime
,但这没有用。任何更好的提示 code/process 表示赞赏。
您必须在 col_datetime
调用中设置日期时间格式:
test <-
read_csv(
"data.csv",
col_types = cols(
ActivityMinute = col_datetime("%m/%d/%Y %I:%M:%S %p"),
Steps = col_integer()
)
)