想象一下在 x 轴上运行的平滑颜色曲线,从左侧的白色到右侧的红色。此梯度由 描述x
。
set.seed(444)
x <-sort(runif(10,0,1))
x
#[1] 0.04887351 0.05602405 0.16805309 0.18510214 0.28311653 0.36549003 0.38968610
# 0.55943791 0.57680379 0.84906069
向量中x
彼此相邻的元素比序列中距离较远的元素更相似。我可以将此向量与 随机混合sample(x,10)
。但是,如果我想改组x
以使彼此相邻的数字(最近的邻居)比相距较远的数字更有可能彼此不同,那么实现此目的的好方法是什么?
例如,对于 x,一个元素与其最接近的元素的平均值之间的相关性是明确的:
neighbour <- c(x[2],mean(x[1],x[3]),mean(x[2],x[4]),mean(x[3],x[5]),
mean(x[4],x[6]),mean(x[5],x[7]),mean(x[6],x[8]),
mean(x[7],x[9]),mean(x[8],x[10]),x[9])
cor(x,neighbour)
#[1] 0.9539783
我想产生洗牌x
来产生一个cor()
强烈负面的向量。