我尝试使用二分图理论进行名称匹配。理想情况下,我希望能够在最后返回百分比匹配。所以这是一个例子:
v1 = "John Alex Smith"
v2 = "John A Smith"
我希望能够生成这样的图表:
"J" "O" "H" "N" "A" "L" "E" "X" "S" "M" "I" "T" "H"
| | | | | | | | | |
"J" "O" "H" "N" "A" "S" "M" "I" "T" "H"
我根据我在网上找到的几个例子编写了一些代码。 vert1
和vert2
是字符向量。
edgeVec <- c(vert1, vert2)
g <- make_empty_graph(n=0, directed = FALSE)
g <- add.vertices(g, nv=length(vert1), attr=list(name=paste0(vert1),
type=rep(TRUE, length(vert1))))
g <- add.vertices(g, nv=length(vert2), attr=list(name=vert2),
type=rep(FALSE, length(vert2)))
g <- add.edges(g, edgeVec)
plot.igraph(g, layout=layout.bipartite, vertex.color=c("blue", "green")[V(g)$type+1])
is.bipartite(g)
现在它正在绘制顶点(非常接近于你可以告诉哪个字母与哪个圆相关的点),然而,它并没有绘制连接顶点的边缘&#39; 。
所以我有2个问题,
如何使图形上的顶点更加分离?
如何构建边缘向量?
现在我将vert1
和vert2
合并到&#34; edgeVec&#34;,这可能不是最好的方法,也可能是我的问题。