如何计算R中的对象(变量)与组(两个变量)之间的距离矩阵

问题描述 投票:0回答:1

首先,我在R中是一个非常陌生的人,我正在尝试遵循一些教程。我陷入了有关距离矩阵的问题。首先,我需要计算虹膜数据帧各列的距离矩阵。我设法做到了。

data(iris)
data<-iris
iris_t<-data.frame(t(iris[,-5]
colnames(iris_t<-rownamens(iris)
dist<-dist(iris_t)
dist        

但是,现在我必须将最接近的Petal.LengthSepal.Width视为一个组,并重新计算距离矩阵,以便获得它们之间的距离。我不知道该怎么做。

r euclidean-distance distance-matrix iris-dataset
1个回答
0
投票

如果我正确的话:

D<-dist(t(iris[,-5]))
D = as.matrix(D)

[您不需要重新计算,只是子集,距离不会改变:

D[c("Petal.Length","Sepal.Width"),c("Petal.Length","Sepal.Width")]
             Petal.Length Sepal.Width
Petal.Length      0.00000    25.77809
Sepal.Width      25.77809     0.00000

如果要用作距离对象:

as.dist(D[c("Petal.Length","Sepal.Width"),c("Petal.Length","Sepal.Width")])
            Petal.Length
Sepal.Width     25.77809
© www.soinside.com 2019 - 2024. All rights reserved.