是否可以从 stats 包中强制距离对象为 0 以外的值?
在这里,我尝试将其强制为其他内容,我可以更改上部或下部,但不能更改对角线:
set.seed(10)
x <- matrix(rnorm(25), ncol = 5)
y <- dist(x, diag =TRUE)
z <- 1 - as.matrix(y)
as.dist(z, diag =TRUE)
给出:
1 2 3 4 5
1 0.0000000
2 -0.9030066 0.0000000
3 -0.9803571 -1.9319785 0.0000000
4 -1.5249747 -2.3673155 -1.5928891 0.0000000
5 -2.7903980 -2.8020380 -2.2491893 -1.5839067 0.0000000
而不是预期的:
1 2 3 4 5
1 1.0000000
2 -0.9030066 1.0000000
3 -0.9803571 -1.9319785 1.0000000
4 -1.5249747 -2.3673155 -1.5928891 1.0000000
5 -2.7903980 -2.8020380 -2.2491893 -1.5839067 1.0000000
也许我必须将其作为矩阵对象输出,因为有些东西会强制对角线不为 0,这会导致它不符合处理“dist”对象的方式。