将经过 0.5 秒均值平滑处理的数据分组为 1 分钟间隔,并获得 r 中的范围
group the data smoothed over 0.5 second means into 1 min intervals and obtain the range in r
我有一个经过 0.5 秒平均平滑处理的数据帧。
我必须将数据分组为 1 分钟的间隔,并为这 1 分钟的间隔获取 z_diff = z_max - z_min。
1 分钟内的所有行(120 行)应具有相同的 z_diff 值。
我使用了如下的剪切功能。
但它将数据分成 1 分钟的间隔。但是,我需要在 1 分钟间隔内为所有行设置相同的 z_diff 值。
如果不在 r
中拆分数据,我应该怎么做
df_1min <- df_selected %>% group_by(Time_Interval = cut(df_selected$Timestamp, "60 sec")) %> % 汇总(z_diff = 最大值(z)-最小值(z))
示例数据
时间戳 <- c("10:50:00.5", "10:50:01.0", "10:50:01.5", "10:50:02.0", "10:50:02.5", “10:50:03.0”)
z <- c(1, 2, 3, 5, 8, 7)
library(tidyverse)
Timestamp <- c("10:50:00.5", "10:50:01.0", "10:50:01.5", "10:50:02.0", "10:50:02.5", "10:50:03.0")
z <- c(1, 2, 3, 5, 8, 7)
tibble(z, Timestamp) %>%
mutate(Timestamp = lubridate::hms(Timestamp),
Time_Interval = floor(Timestamp)) %>%
group_by(Time_Interval) %>%
mutate(z_diff = max(z) - min(z))
我有一个经过 0.5 秒平均平滑处理的数据帧。 我必须将数据分组为 1 分钟的间隔,并为这 1 分钟的间隔获取 z_diff = z_max - z_min。 1 分钟内的所有行(120 行)应具有相同的 z_diff 值。
我使用了如下的剪切功能。 但它将数据分成 1 分钟的间隔。但是,我需要在 1 分钟间隔内为所有行设置相同的 z_diff 值。 如果不在 r
中拆分数据,我应该怎么做df_1min <- df_selected %>% group_by(Time_Interval = cut(df_selected$Timestamp, "60 sec")) %> % 汇总(z_diff = 最大值(z)-最小值(z))
示例数据
时间戳 <- c("10:50:00.5", "10:50:01.0", "10:50:01.5", "10:50:02.0", "10:50:02.5", “10:50:03.0”)
z <- c(1, 2, 3, 5, 8, 7)
library(tidyverse)
Timestamp <- c("10:50:00.5", "10:50:01.0", "10:50:01.5", "10:50:02.0", "10:50:02.5", "10:50:03.0")
z <- c(1, 2, 3, 5, 8, 7)
tibble(z, Timestamp) %>%
mutate(Timestamp = lubridate::hms(Timestamp),
Time_Interval = floor(Timestamp)) %>%
group_by(Time_Interval) %>%
mutate(z_diff = max(z) - min(z))