sha*_*da 1 r vector sorted mean
我有一个数值的排序向量,我想创建一个包含所有对的中点的新向量.例如:
a <- c(1,2,3,4)
Run Code Online (Sandbox Code Playgroud)
我想创建b它包含的中点(1,2),(2,3)并且(3,4):
b <- c(1.5, 2.5, 3.5)
Run Code Online (Sandbox Code Playgroud)
正如@Khashaa在评论中指出的那样,您可以在使用rowMeans后使用,embed或者您可以使用rollmean"zoo"包.
例:
a <- 1:4
rowMeans(embed(a, 2))
# [1] 1.5 2.5 3.5
library(zoo)
rollmean(a, 2)
# [1] 1.5 2.5 3.5
Run Code Online (Sandbox Code Playgroud)
如果这些太模糊,类似的概念就是组合两个版本的向量,一个缺少第一个值,另一个缺少最后一个值,然后使用rowMeans.
例:
rowMeans(cbind(head(a, -1), tail(a, -1)))
# [1] 1.5 2.5 3.5
Run Code Online (Sandbox Code Playgroud)