Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R:向量中相邻元素的平均值_R_Vector_Grouping - Fatal编程技术网

R:向量中相邻元素的平均值

R:向量中相邻元素的平均值,r,vector,grouping,R,Vector,Grouping,我有很多向量,比如:c(28,30,50,55,99,102),我想得到一个新的向量,其中每个元素之间的差异小于10,求平均值。在本例中,我希望以另一种方式获得c(29,52.5100.5) vec <- c(28, 30, 50, 55, 99, 102) indx <- cumsum(c(0, diff(vec)) > 10) tapply(vec, indx, mean) # 0 1 2 # 29.0 52.5 100.5 vec我必须运行,

我有很多向量,比如:
c(28,30,50,55,99,102)
,我想得到一个新的向量,其中每个元素之间的差异小于10,求平均值。在本例中,我希望以另一种方式获得
c(29,52.5100.5)

vec <- c(28, 30, 50, 55, 99, 102)
indx <- cumsum(c(0, diff(vec)) > 10)
tapply(vec, indx, mean)
#    0     1     2 
# 29.0  52.5 100.5 

vec我必须运行,但是你能检查
c(10,50,80,22,89,98,102)
这是否有效吗。(或者可能是我错了)。@akrun请看OPS的回复。无论如何,你的解决方案是正确的。我的在某些情况下不起作用。你在乎订单吗?例如,对于像这样的向量
c(10,50,80,22,89,98,102)
您想将
10
22
视为两组还是一组?亲爱的大卫,我的向量已经排序了。。。所以10和22应该属于同一组