现在我的数据集就是这个,我正在尝试计算距离矩阵以绘制聚类。字符串必须完全匹配,我标记了食谱A,B,C,但它们可以是" Pizza"," Pasta"," Salad"等等,我需要创建一个显示配方之间连接的集群图表,但首先需要距离矩阵。现在正在使用它,
library(proxy)
mat = as.matrix(dist(data))
我获得了9x9矩阵,而不是所需的3x3
如何根据连接客户以绘制的相反配方获得距离矩阵,反之亦然?
答案 0 :(得分:0)
以下是如何创建距离矩阵:
data <- read.table(sep=",", text="1,A
2,B
1,C
2,C
2,B
3,A
3,B
3,C
3,D")
data <- reshape2::dcast(
data,
V1~V2,
fun.aggregate = length,
value.var="V2"
)
(mat <- as.matrix(dist(data, meth = "binary")) )
# 1 2 3
# 1 0.0 0.5 0.4
# 2 0.5 0.0 0.4
# 3 0.4 0.4 0.0