我导入的表格包含大小为nxn的出发地 - 目的地成本矩阵的旅行时间。因此,当起点和终点相同时,行程时间等于零。
例如,25个来源和25个目的地(625个元素)的OD成本矩阵将具有沿对角线向下运行的零值。在向量中,值0出现在第0个元素,第26个元素,第51个元素等
我已经将传播时间作为矢量读取了,我想将矢量重新整形为矩阵,其中对角线上的每个元素的值都为零。有没有人对如何做到这一点有任何想法?
代码:
### READ and PREPARE DATA ###
# Read OD cost matrix (use data.table for performance)
od_table <- read.table('DMatrix.txt', sep=',', header=TRUE, na.strings="NA", stringsAsFactors=FALSE)
v <- t(od_table$Total_TravelTime)
n <- sqrt(length(v))
D <- matrix(v, nrow=25)
结果矩阵仅沿第一行具有零值: