r - 如何在R中生成具有特定开始日期/时间的日期和时间序列
问题描述
我希望生成或完成一列日期和时间。我有一个包含四个数字列和一个 POSIXct 时间列的数据框,如下所示:
CH_1 CH_2 CH_3 CH_4 date_time
1 -10096 -11940 -9340 -9972 2018-07-24 10:45:01
2 -10088 -11964 -9348 -9960 <NA>
3 -10084 -11940 -9332 -9956 <NA>
4 -10088 -11956 -9340 -9960 <NA>
5 -10084 -11944 -9332 -9976 <NA>
6 -10076 -11940 -9340 -9948 <NA>
7 -10088 -11956 -9352 -9960 <NA>
8 -10084 -11944 -9348 -9980 <NA>
9 -10076 -11964 -9348 -9976 <NA>
0 -10076 -11956 -9348 -9964 <NA>
我想为 date_time 列顺序生成日期和时间,增加1 秒,直到数据框被填充。(即下一个日期/时间应该是 2018-07-24 10:45: 02)。这意味着对于多个数据集是可重现的,并且需要填充的行数并不总是已知的,但开始日期/时间将始终存在于第一个单元格中。
我知道解决方案可能在 seq.Date (或类似的)内,但我遇到的问题是我并不总是知道结束日期/时间,这是我发现的大多数示例所需要的。任何帮助,将不胜感激!
解决方案
这是一个tidyverse
解决方案,使用 Zygmunt Zawadzki 的示例数据:
library(lubridate)
library(tidyverse)
df %>% mutate(date_time = date_time[1] + seconds(row_number()-1))
输出:
date_time
1 2018-01-01 00:00:00
2 2018-01-01 00:00:01
3 2018-01-01 00:00:02
4 2018-01-01 00:00:03
5 2018-01-01 00:00:04
6 2018-01-01 00:00:05
7 2018-01-01 00:00:06
8 2018-01-01 00:00:07
9 2018-01-01 00:00:08
10 2018-01-01 00:00:09
11 2018-01-01 00:00:10
数据:
df <- data.frame(date_time = c(as.POSIXct("2018-01-01 00:00:00"), rep(NA,10)))
推荐阅读
- c - 在结构中查找偏移量
- prometheus - 入口控制器中 request_duration 和 response_duration prometheus 指标之间的区别
- r - 当所有值都在R中数据框的同一列中时计算百分比
- javascript - 传播不可迭代实例的无效尝试(在 React 的 reducer 中)
- git - Git: git pull --rebase 进入“分离 HEAD”状态
- javascript - 可以使用 javascript `??` 运算符作为简写吗
- android - 如何将数组列表存储到内部存储中?
- python - 如果满足特定条件,如何对 DataFrame 值进行切片和连接
- javascript - 如何在循环中创建对象数组,而无需 Javascript 中的键
- c# - 使所有根节点的子节点成为根节点时发生 System.NullReferenceException