公告版位

新版部落格:blog.changyy.org

前陣子自己曾寫一篇關於社會網路分析的文章,發現還不少人用 UCINET 關鍵字找到,然而那篇文章只是純粹地發牢騷,並沒有記下任何的使用資訊。今天有收到別人的留言,我想,就順道回憶一下這套軟體的使用。

首先,要做的事就是將手頭社群網路建成 UCINET 軟體可輸入的資料格式,在此以文字檔為例:(前兩行是制式格式)

dl n = 個數 , format = 輸入格式
data:
...
...

其中,個數代表整個圖中有幾個 node 組成,輸入格式可分成 node list 和 edge list 兩種,若圖是有權重的,那只能用 edge list 方式輸入。

  • nodelist

dl n = 4, format = nodelist1
data:      
1 2 3
2 3 4
3 4
4 3

此例代表 node 1 跟 node 2 和 node 3 有連線; node 2 跟 node3 和 node 4 有連線,以此類推

  • edgelist

dl n = 4, format = edgelist1
data:      
1 2 10
2 3 15
3 4 1
4 3 5

此例代表 node 1 連到 node 2 ,權重為 10 ;node 2 連到 node 3 ,權重為 15 ;node 3 連到 node 4 ,權重為 1 ,以此類推

以 edge list 或 node list 的輸入格式,都是有向圖的輸入,若要弄成無向圖時,則需留意輸入,例如輸入 node 1 連到 node 2 後,要記得再建立 node 2 連到 node 1 的資訊。而使用上述的格式,是因為社群網路資訊可能很大,因此會需要用程式產生輸入資料,若資料不大,可以使用 UCINET 提供的輸入方式。

UCINET 6 -> [Data] -> [Import from text data] -> [dl]

完成圖的輸入後,緊接著就是分析的部分,此部分必須搭配演算法的意義來使用,例如最簡單的就是輸出 in-degree 和 out-degree 資訊,透過基本的資訊,可以得知哪些點可能是重要的,例如某點的 out-degree 和 in-degree 都多,但表該點可能位於圖的中心等。然而,分析並不是這般簡單的,因此才會有源源不絕的演算法蹦出來,以 Betweenness 為例,簡言之,若有某點常常出現在一些最短路徑上,那該點可能是重要的,因此,可以用 UCINET 幫你計算出該圖各點的 Betweenness 數值,數值高的就是一種重要的意義。

UCINET 6 -> [Network] -> [Centrality] -> [Freeman Betweenness] -> [Node Betweenness]

以上述提到的 node list 測資丟入

sna sample

運算完的 Betweenness 資訊如下:

                  1            2
        Betweenness nBetweenness
       ------------ ------------
    3         0.500        8.333
    2         0.500        8.333
    1         0.000        0.000
    4         0.000        0.000

其中, 2 跟 3 所得的 0.5 數值是因為 1 到 4 這條路可分成 1->2->4 和 1->3->4 ,各取 1/2 的關係。

最後,並沒有什麼演算法是萬能的,對於社群網路的分析靠的是經驗,這些都是我所缺乏的。

其他資訊:


changyy 發表在 痞客邦 PIXNET 留言(2) 人氣()


留言列表 (2)

發表留言
  • easygame
  • 如何入門UCINET

    您好:

     想請問一下如何入門UCINET?
     是否有相關的文件呢?因為它的SOP也無法下載
     故想請問一下您相關資訊 謝謝
  • 抱歉, 我對該軟體也不怎熟, 當初我只有修課稍微接觸, 大概只用不到 5 次, 最後比較著重在寫程式跟演算法, 例如用 C 語言寫出 betweenness 等等, 整體上使用 UCINET 大多拿來驗證程式有沒寫錯囉, 至於文件我也沒很仔細找或熟讀, 要說的話, 頂多文章上頭標示的連結: CCU - Social Network Analysis Lab 裡 Course Info 中, 有一些課程講義可以下載參考看看, 內有電子書, 主要用 UCINET 進行 demo 的樣子.

    我自己的認知:將資料弄成 UCINET 可以匯入的格式,接著依照演算法來進行運算。前提是要先懂那些演算法算完的意義,UCINET只是幫你計算,還有能畫出圖形來分析,所以我覺得要先懂演算法,透過 UCINET 運算後才有意義,不然能運行也只是看到一堆數字而已,上課老師倒也是先提提演算法的概念,再用 UCINET 跑出的結果跟大家分析。

    changyy 於 2009/09/29 19:25 回覆

  • 友環
  • 很感謝您熱心的寫出UCINET教學使用筆記 因為很多購買這套軟體的客戶詢問用法 因此我希望能將您的網頁以超連結方式放在linksoft公司網頁 讓更多人了解這套軟體 您可以在此看到 http://www.linksoft.com.tw/products.asp?seq=64
  • 這個使用筆記只是我之前求學時,順手寫得下的筆記,很歡迎你們拿去當簡單的介紹,只是我後來都沒有使用了,所以不曉得教學還適不適用於你們的新產品。如果文章還有價值,歡迎透過超連結或附上出處使用 :)

    changyy 於 2010/12/29 14:40 回覆