r - 如何以 1 分钟为间隔创建 28 小时制表?
问题描述
我对使用循环不是很熟悉。我正在尝试创建这样的表:00:00 00:01 00:02 ... 27:58 27:59 28:00
它适用于持续到第二天的数据,但仍被视为原始日期的一部分。
我试过这个:
hh<-c(seq('00','28',1))
mm<-c(seq('01','60',1))
for (i in (1:29)) {
int<-paste(hh[i],":",mm)
}
View(int)
但它只会将 1 到 60 分钟的时间粘贴到 28 小时: 只有第 28 小时
我希望这比我想象的要简单,我不知道如何使用 sapply 或 lapply 来做到这一点。谢谢你的帮助。
解决方案
您可以在以下帮助下做到这一点outer
:
times <- c(t(outer(sprintf('%02d', 0:27),sprintf('%02d', 0:59),paste,sep = ":")))
#add the last time manually
times <- c(times, '28:00')
head(times, 8)
#[1] "00:00" "00:01" "00:02" "00:03" "00:04" "00:05" "00:06" "00:07"
tail(times, 8)
#[1] "27:53" "27:54" "27:55" "27:56" "27:57" "27:58" "27:59" "28:00"
sprintf
将 0 附加到单个数字,我们paste
每小时(0 到 27)到每分钟(0 到 59)。
推荐阅读
- javascript - 无法使用新选择更新我的多个 mat-select
- matlab - Matlab中的自动图像级别调整
- c++ - 如何从我的咖啡机获取销售报告(每日销售)?
- xtext - 是否可以引用另一个模型元素的属性?
- c# - IIS 返回 404 错误,怀疑问题出在 RouteConfig
- c# - 非泛型 HashCode.Combine
- python - 如何根据排名列在熊猫中使用移位
- python - 在 python 中使用 bvp 求解器求解两个不同域中的微分方程
- python - 将 Keras NN 转换为 Pytorch NN
- java - OpenGL 纹理呈现黑色,即使其数据不为空