1,直接计算距离(如欧式距离)比较容易
test <- matrix(rnorm(20), ncol = 4)
rownames(test) <- LETTERS[1:5]
colnames(test) <- letters[1:4]
dist(test, method = "euclidean")
输出为
A B C D
B 2.5748497
C 0.7089751 2.9447468
D 1.5879985 1.6651831 1.9984134
E 2.1284458 2.5815245 2.0955073 1.3708863
2,系统树图中距离和上面的距离不一样,如何计算呢?
使用cophenetic()函数
# test跟1中一样
x <- hclust(dist(test, method = "euclidean"), method = "average")
cophenetic(x)
输出为
A B C D
B 2.5748497
C 0.7089751 2.9447468
D 1.5879985 1.6651831 1.9984134
E 2.1284458 2.5815245 2.0955073 1.3708863
计算距离与系统树图
本文介绍了在R语言中计算数据集之间的欧氏距离的方法,并通过实例演示了如何使用dist函数进行距离计算。此外,文章还探讨了系统树图中距离的计算方式,指出其与直接计算的距离可能存在的差异,并提供了使用cophenetic函数来获取系统树图中节点间距离的具体步骤。
1206

被折叠的 条评论
为什么被折叠?



