【发布时间】:2018-12-10 11:40:11
【问题描述】:
我的数据:
data <- c(1,5,11,15,24,31,32,65)
有 2 个邻居:31 和 32。我希望删除它们并只保留平均值(例如31.5),这样数据将是:
data <- c(1,5,11,15,24,31.5,65)
看起来很简单,但我希望自动完成,有时使用包含更多邻居的向量。例如:
data_2 <- c(1,5,11,15,24,31,32,65,99,100,101,140)
【问题讨论】:
-
这只是关于连续数字对还是关于更长的运行,例如31、32、33、34?
-
也可以是更长的运行时间(比如 data_2 中的 99、100、101)
-
也许使用
cumsum(...diff(...成语来创建组,例如tapply(data, cumsum(c(1L, diff(data) > 1)), mean) -
你的数据排序了吗?
-
是的,订单一直在增长
标签: r vector difference neighbours