簡體   English   中英

來自二進制矩陣R的網絡圖

[英]network diagram from binary matrix R

我有以下二進制矩陣,它們顯示每個關鍵字出現在哪篇文章中。

        keyword1  keyword2  keyword3
  art1    0          1        0
  art2    1          1        0
  art3    0          0        1

我嘗試了以下技術來創建鄰接矩陣,但不確定是否正確以及值的含義

  df1 <- data.frame(keyword1=c(0,1,0),keyword2=c(1,1,0),keyword3=c(0,0,1),row.names=c("art1","art2","art3"))
  df1.mt <- as.matrix(df1)
  df1.adj <- t(df1.mt) %*% df1.mt

至此,我創建了以下鄰接矩陣

          keyword1  keyword2  keyword3
  keyword1   1         1        0
  keyword2   1         2        0
  keyword3   0         0        1

這是鄰接矩陣嗎? 它顯示文章中關鍵字之間的關系嗎? 我可以用它來繪制網絡圖嗎?

感謝您的幫助。

如果您不熟悉igraph程序包,則它是一個網絡程序包,可輕松實現以下任務:

library(igraph)
g <- graph.adjacency(df1.adj)
plot(g)

第一矩陣是布爾矩陣。 您所做的轉換是一個鄰接矩陣,對角線是關鍵字顯示的總次數。 非對角線是兩個關鍵字(節點)之間的鏈接(邊)。 這些邊緣也可以加權。

這給出:

在此處輸入圖片說明

您還可以將對角線設置為零,以避免出現循環邊:

diag(df1.adj) <- 0
g <- graph.adjacency(df1.adj)
plot(g)

收益:

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM