R中的距离矩阵

aka*_*ash 2 r matrix

我必须使用R创建距离矩阵.我的数据在excel文件中,包含300行和10列.我必须根据第9列的值创建距离矩阵.例如

   s s s s s
s  1
s  2 2
s  3 3 4
s  4 4 7 3
s  5 5 8 2 8
Run Code Online (Sandbox Code Playgroud)

如何创建这种类型的矩阵?

Rei*_*son 8

我知道的最简单的选项是将包含数据的Excel工作表保存为CSV文件.确保只有工作表的第一行和第一列包含任何样本或变量名称.

然后使用以下方法读入R:

dat <- read.csv("path/to/my/file.csv")
Run Code Online (Sandbox Code Playgroud)

然后dist()在第9列上使用来计算相异矩阵

dij <- dist(dat[, 9])
Run Code Online (Sandbox Code Playgroud)

如果您想要欧几里德距离以外的其他内容,请参阅选项?dist,如果不适合,请尝试daisy()推荐的包集群中的函数,或者vegdist()在包vegan代理包中运行.