在 R 中创建一个时间序列?
Create a sequence of times in R?
我想创建一个时间序列 00:00 - 12:00 和 12:00 到 00:00,步长为 10 分钟。
我如何在 R 中执行此操作?
我试过:
library(chron)
t <- merge(0:23, seq(0, 50, by = 10))
chron(time = paste(x$x, ':', x$y), format = c(times = "h:m"))
但是我有两个问题:
- 我得到一个错误 运行
chron(time = paste(x$x, ':', x$y), format = c(times = "h:m"))
:
Error in convert.times(times., fmt) : format h:m may be incorrect
- 如何使用 AM/PM 将其转换为标准时间?我应该合并它两次吗:
t <- merge(0:12, seq(0, 50, by = 10))
t_am <- merge(t, "AM")
t_pm <- merge(t, "PM")
或者使用 POSIXt 的另一种方式?
我们可以使用 seq
:
format(seq(as.POSIXct('00:00', format = "%H:%M", tz = "UTC"),
as.POSIXct(Sys.Date() + 1), by = '10 mins'), "%I:%M%p")
#[1] "12:00AM" "12:10AM" "12:20AM" "12:30AM" "12:40AM" "12:50AM" "01:00AM ...
#[141] "11:20PM" "11:30PM" "11:40PM" "11:50PM" "12:00AM"
确保您的区域设置正确或通过以下方式设置:
Sys.setlocale("LC_TIME", "en_US.UTF-8")!
我想创建一个时间序列 00:00 - 12:00 和 12:00 到 00:00,步长为 10 分钟。 我如何在 R 中执行此操作?
我试过:
library(chron)
t <- merge(0:23, seq(0, 50, by = 10))
chron(time = paste(x$x, ':', x$y), format = c(times = "h:m"))
但是我有两个问题:
- 我得到一个错误 运行
chron(time = paste(x$x, ':', x$y), format = c(times = "h:m"))
:
Error in convert.times(times., fmt) : format h:m may be incorrect
- 如何使用 AM/PM 将其转换为标准时间?我应该合并它两次吗:
t <- merge(0:12, seq(0, 50, by = 10))
t_am <- merge(t, "AM")
t_pm <- merge(t, "PM")
或者使用 POSIXt 的另一种方式?
我们可以使用 seq
:
format(seq(as.POSIXct('00:00', format = "%H:%M", tz = "UTC"),
as.POSIXct(Sys.Date() + 1), by = '10 mins'), "%I:%M%p")
#[1] "12:00AM" "12:10AM" "12:20AM" "12:30AM" "12:40AM" "12:50AM" "01:00AM ...
#[141] "11:20PM" "11:30PM" "11:40PM" "11:50PM" "12:00AM"
确保您的区域设置正确或通过以下方式设置:
Sys.setlocale("LC_TIME", "en_US.UTF-8")!