我有一个字符向量,包含按时间顺序排列的日期和时间,格式如下:YYYY-MM-DD HH:MM:SS(用R表示:%Y-%m-%d%H:%m:%S(。我还制作了一个函数,它以特定格式(get_formatted_time_difference(提供两个POSIX对象之间的时间差,以及一个将字符串转换为POSIX对象的函数(string_to_POSIX(。
我想做的是一个函数,它将我的字符向量(长度:n(作为参数,并返回一个时间差向量(长度为n-1(。结果向量的第一个元素应该是初始向量的第一和第二个元素之间的时间差。得到的向量的第二个元素应该是初始向量的第三个元素和第二个之间的时间差,依此类推
为了清晰起见,我想要的是:
初始向量 | 结果向量 | |
---|---|---|
"2022-09-18 17:00:00"> | ";0天,05:00:00"> | |
"2022-09-18 12:00:00"> | ";0天,19:00:00"> | |
"2022-09-17 17:00:00"> | ";0天,05:00:00"> | |
"2022-09-17 12:00:00"> | ";0天,17:00:00"> | |
"2022-09-16 19:00:00"> | - |
从开始
events <- c("2022-09-18 17:00:00",
"2022-09-18 12:00:00",
"2022-09-17 17:00:00",
"2022-09-17 12:00:00",
"2022-09-16 19:00:00")
简单地说,diff(as.POSIXlt(events))
就能起作用。