我想从一个数据框创建一个单位矩阵。该数据框如下:
i<-c("South Korea", "South Korea", "France", "France","France")
j <-c("Rwanda", "France", "Rwanda", "South Korea","France")
distance <-c(10844.6822,9384,6003,9384,0)
dis_matrix<-data.frame(i,j,distance)
dis_matrix
1 South Korea South Korea 0.0000
2 South Korea Rwanda 10844.6822
3 South Korea France 9384.1793
4 France Rwanda 6003.3498
5 France South Korea 9384.1793
6 France France 0.0000
我想创建一个看起来像这样的矩阵:
South Korea France Rwanda
South Korea 0 9384.1793 10844.6822
France 9384.1793 0 6003.3498
Rwanda 10844.6822 6003.3498 0
我已经尝试使用矩阵包中的SparseMatrix,就像这里描述的那样( 从数据框创建稀疏矩阵)。问题是i和j必须是整数,而我只有字符字符串。我找不到另一个可以满足我的要求的函数。感谢任何帮助。谢谢。
unique(unlist(
,而不是unlist(unique(
... ? - Mikael Jagan