如何为几个科目分配时间点和平均数据?

问题描述 投票:1回答:1

这是我的档案:

time3从-3600到+ 400-600ms。我需要在20秒的窗口中将这个time30时间点保持为0并且不在窗口中间。然后我需要为每20秒窗口做一个reSYS的意思。我需要为每个Subject"DL001""DL028")和每个condition"Light""control")这样做。

我尝试了几个选项,越接近这个选项:

data3 <- data2 %>% 
  group_by(time3 = cut(time3, breaks=205, include.lowest = TRUE)) %>%
  summarize(RR_int.mean = mean(RR_int))

但是20秒的窗口从第一个出现-3599.312的时间点开始并且一直向上,这样0时间点在-9+11之间的窗口中。它将来自所有主题的所有值平均在一起,而不是分别为每个主题进行。

有人能帮我吗?

r time average bin
1个回答
0
投票

没有示例数据集很难说,但尝试以下内容。

定义一个包含零的断裂向量,并从那里向上或向下移动。

brk_time3 <- with(data2, unique(c(rev(seq(0, min(time3), by = -20)), seq(0, max(time3), by = 20))))

现在它是一个简单的group_by/summarize

data3 <- data2 %>%
    group_by(time3 = cut(time3, breaks = brk_time3, include.lowest = TRUE), Subject, condition) %>%
    summarize(mean.reSYS = mean(reSYS))
© www.soinside.com 2019 - 2024. All rights reserved.