【发布时间】:2021-11-04 02:01:38
【问题描述】:
我有一个给定二进制矩阵 0 或 1 的计算。当我绘制它时,这些矩阵总是显示具有值“1”的单元格创建一个路径,如下图所示。路径并不总是从一个边界到另一个边界。
我想沿着这条路径创建一个向量或一条线,如下图所示(红线只是一个图例,用于说明我在提到创建向量或线时的意思)。
目标是使用这条线来执行计算:从特定单元格到这条线的最短距离等。
setwd("C:/Users/Desktop/test/")
mat <- read.csv("test.csv", header = TRUE)
mat <- as.matrix(mat)
mat
X0 X0.1 X0.2 X0.3 X1 X1.1 X1.2 X1.3 X1.4 X0.4 X0.5
[1,] 0 0 0 0 1 1 1 1 0 0 0
[2,] 0 0 0 0 1 1 0 0 0 0 0
[3,] 0 0 0 0 1 1 0 0 0 0 0
[4,] 0 0 0 0 1 1 0 0 0 0 0
[5,] 0 0 0 0 1 1 0 0 0 0 0
[6,] 0 0 0 0 1 0 0 0 0 0 0
[7,] 0 0 0 0 1 0 0 0 0 0 0
[8,] 0 0 0 1 1 0 0 0 0 0 0
[9,] 0 0 0 1 1 0 0 0 0 0 0
[10,] 0 0 0 1 1 0 0 0 0 0 0
[11,] 0 0 1 1 0 0 0 0 0 0 0
[12,] 0 0 1 1 0 0 0 0 0 0 0
[13,] 0 0 1 1 0 0 0 0 0 0 0
[14,] 0 0 1 1 0 0 0 0 0 0 0
[15,] 0 0 0 1 0 0 0 0 0 0 0
[16,] 0 0 0 1 0 0 0 0 0 0 0
[17,] 0 0 0 1 0 1 0 0 0 0 0
[18,] 0 0 0 1 1 0 0 0 0 0 0
[19,] 0 0 0 1 1 0 0 0 0 0 0
[20,] 0 0 0 1 1 0 0 0 0 0 0
[21,] 0 0 0 1 1 0 0 0 0 0 0
[22,] 0 0 0 1 1 0 0 0 0 0 0
[23,] 0 0 0 1 1 0 0 0 0 0 0
[24,] 0 0 0 0 1 0 0 0 0 0 0
[25,] 0 0 0 0 1 1 0 0 0 0 0
[26,] 0 0 0 1 1 1 1 0 0 0 0
[27,] 0 0 0 0 1 1 1 1 1 0 0
[28,] 0 0 0 0 0 0 1 1 1 0 0
【问题讨论】:
-
提供可重现的示例数据:
dput(mat)。另外,你试过什么? -
这条红线代表什么?如何计算单元格到红线的距离?
-
红线代表我想要的。找到路径并用一条简单的线简化它,我可以用它来计算距离等