R中的节点相似性

R中的节点相似性,r,graph,dataframe,nodes,similarity,R,Graph,Dataframe,Nodes,Similarity,我试图计算一个已知节点与R中图中所有其他节点之间的相似性。在每一步,如果相似性超过某个阈值,我将节点放入向量中,以存储dataframe中的所有节点(对于每个节点,我将给出它们的相似性) 但是,这段代码只给出了最后一个节点,以及他最后一个相似的节点 v <- DC2$node[order(-DC2$'Centrality')] Nei1 <- neighbors(g1,as.character(v[1]),1) vec <- numeric() if(length(Nei1)

我试图计算一个已知节点与R中图中所有其他节点之间的相似性。在每一步,如果相似性超过某个阈值,我将节点放入向量中,以存储dataframe中的所有节点(对于每个节点,我将给出它们的相似性)

但是,这段代码只给出了最后一个节点,以及他最后一个相似的节点

v <- DC2$node[order(-DC2$'Centrality')]
Nei1 <- neighbors(g1,as.character(v[1]),1)
vec <- numeric()
if(length(Nei1) > 0) {
    for (i in 1:length(V(g1))) {
        Nei2 <- neighbors(g,as.character(V(g1)[i]),1)
        k1 <- as.numeric(degree(g1,as.character(v[1])))
        k2 <- as.numeric(degree(g1,as.character(V(g1)[i])))
        Simhpi <- (length(intersect(Nei1,Nei2)) / min(k1,k2))
        if (Simhpi >= 0.5) {
            for (j in 1:length(V(g1))) {
                vv <- V(g1)[j]
                vec[j] <- c(vec,vv$name)
            }
        }
   }
}
nn<- data.frame(node=as.character(v[1]), Nei=vec)

v您的问题缺少某些基本细节:您使用什么数据结构来表示图形(似乎是igraph)?你想用什么相似性度量来比较节点?@VincentLabatut。是的,我用igraph。我指的是“枢纽提升指数”的相似性。但我的问题不是相似性,而是在这一部分,当我试图计算并存储向量向量向量中的相似节点时,它只给我最后一个值(即最后比较的节点):
for(j in 1:length(V(g1))){vv好的,如果我们想执行您的源代码,我们需要知道哪个库包含
degree
函数。此外,我们还需要
DC2
数据,或者更简单的替代品。