新四季網

社會網絡分析數據處理(R文本挖掘社會網絡分析)

2023-09-20 09:03:51

社會網絡分析是綜合運用圖論、數學模型來研究行動者與行動者、行動者與其所處社會網絡、以及一個社會網絡與另一社會網絡之間關係的一種結構分析方法。在這個定義中的「行動者」,或稱「節點」,可以是一個個體,也可以是一個群體、一個組織,甚至是一個國家,這些行動者及其間的關係就構成了社會網絡(Socia Network)

社會網絡分析,英文social network analysis。社會網絡分析已經成為重要的研究思想,涉及了多個學科和研究領域,例如:數據挖掘領域、知識管理、數據可視化、統計分析、社會資本、小世界理論、信息傳播等。

當然了,這麼一種方法也可以用在文本挖掘中,好處多多:

These methods are especially efficient for large-scale datasets in which traditional approaches such as content analysis are prohibitively labor-intensive; however, even with relatively smaller textual data they can be effective in assisting manual analysis by identifying additional patterns which human coders may not recognize.

所以今天我們就來寫一寫如何用R語言做中文文本的社會網絡分析。

數據準備及預處理

數據依然還是新年賀詞,大家自己在網上一搜,貼在記事本中就行:

library(igraph)library(tm)library(Rwordseg)library(tmcn)heci <- readLines('C:/Users/hrd/Desktop/bootcamp/dataset/2021賀詞.txt',encoding = 'UTF-8')

數據讀入之後就是分詞和向量化,建立語料庫和去停用詞:

ci <- segmentCN(heci)#此步可以自定義詞典docs <- Corpus(VectorSource(ci))inspect(docs)docs <- tm_map(docs, removeNumbers)#自定義停用詞myStopwords <- readLines('C:/Users/hrd/Desktop/bootcamp/dataset/Chinese-StopWords.txt', encoding = 'UTF-8')myStopwords<-myStopwords[Encoding(myStopwords)!="unknown"]docs <- tm_map(docs, removeWords, myStopwords)toSpace <- content_transformer(function(x, pattern) { return (gsub(pattern, " ", x))})docs <- tm_map(docs, toSpace, "c")docs <- tm_map(docs, stripWhitespace)

處理好了之後,就建立文檔詞矩陣:

tdm <- createTDM(docs, language = "zh")tdm_removed<-removeSparseTerms(tdm, 0.9)##去掉低於95%的的稀疏條數dim(tdm_removed)#查看詞和文檔的數量

社會網絡分析

我們不考慮網絡中邊的粗細,只考慮連結關係,所以將詞文檔矩陣中的大於1的數字都轉化為1:

m =1] <- 1

然後我們生成社會網絡分析的專用矩陣,這個矩陣叫做term-term adjacency matrix,是詞文檔矩陣和文檔詞矩陣的矩陣乘積:

#轉化為term-term adjacency matrixtermMatrix <- m%*%t(m)

接下來我們就可以畫出社會網絡分析的圖了:

#建立graphg <- graph.adjacency(termMatrix,weighted = T,mode = 'undirected')g <- simplify( g, remove.multiple = T, remove.loops = F, ,) )V(g)$label <- V(g)$nameV(g)$degree <- degree(g)plot(g, vertex.label.dist=1.5

運行代碼就可以得到圖如下:

這個圖還有很多可以完善的地方,我還在慢慢探索中,以後再繼續更新。

小結

今天給大家寫了中文文本的社會網絡分析,現學現賣,還請大神點撥,感謝大家耐心看完。發表這些東西的主要目的就是督促自己,希望大家關注評論指出不足,一起進步。內容我都會寫的很細,用到的數據集也會在原文中給出連結,你只要按照文章中的代碼自己也可以做出一樣的結果,一個目的就是零基礎也能懂,因為自己就是什麼編程基礎沒有從零學Python和R的,加油。數據分析問題諮詢,代處理請私信。

(站外連結發不了,請關注後私信回復「數據連結」獲取本頭條號所有使用數據)

往期內容:

R文本挖掘:文本聚類分析

R文本挖掘:中文文本聚類

R文本挖掘:中文詞雲生成

R文本挖掘:中文詞雲生成,以2021新年賀詞為例

R文本挖掘:手把手教你做詞雲圖,小白教程

R文本挖掘:詞雲圖怎麼做,worldcloud2初識

,
同类文章
葬禮的夢想

葬禮的夢想

夢見葬禮,我得到了這個夢想,五個要素的五個要素,水火只好,主要名字在外面,職業生涯良好,一切都應該對待他人治療誠意,由於小,吉利的冬天夢想,秋天的夢是不吉利的
找到手機是什麼意思?

找到手機是什麼意思?

找到手機是什麼意思?五次選舉的五個要素是兩名士兵的跡象。與他溝通很好。這是非常財富,它擅長運作,職業是仙人的標誌。單身男人有這個夢想,主要生活可以有人幫忙
我不怎麼想?

我不怎麼想?

我做了什麼意味著看到米飯烹飪?我得到了這個夢想,五線的主要土壤,但是Tu Ke水是錢的跡象,職業生涯更加真誠。他真誠地誠實。這是豐富的,這是夏瑞的巨星
夢想你的意思是什麼?

夢想你的意思是什麼?

你是什​​麼意思夢想的夢想?夢想,主要木材的五個要素,水的跡象,主營業務,主營業務,案子應該抓住魅力,不能疏忽,春天夢想的吉利夢想夏天的夢想不幸。詢問學者夢想
拯救夢想

拯救夢想

拯救夢想什麼意思?你夢想著拯救人嗎?拯救人們的夢想有一個現實,也有夢想的主觀想像力,請參閱週宮官方網站拯救人民夢想的詳細解釋。夢想著敵人被拯救出來
2022愛方向和生日是在[質量個性]中

2022愛方向和生日是在[質量個性]中

[救生員]有人說,在出生88天之前,胎兒已經知道哪天的出生,如何有優質的個性,將走在什麼樣的愛情之旅,將與生活生活有什么生活。今天
夢想切割剪裁

夢想切割剪裁

夢想切割剪裁什麼意思?你夢想切你的手是好的嗎?夢想切割手工切割手有一個真正的影響和反應,也有夢想的主觀想像力。請參閱官方網站夢想的細節,以削減手
夢想著親人死了

夢想著親人死了

夢想著親人死了什麼意思?你夢想夢想你的親人死嗎?夢想有一個現實的影響和反應,還有夢想的主觀想像力,請參閱夢想世界夢想死亡的親屬的詳細解釋
夢想搶劫

夢想搶劫

夢想搶劫什麼意思?你夢想搶劫嗎?夢想著搶劫有一個現實的影響和反應,也有夢想的主觀想像力,請參閱週恭吉夢官方網站的詳細解釋。夢想搶劫
夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂什麼意思?你夢想缺乏異常藥物嗎?夢想缺乏現實世界的影響和現實,還有夢想的主觀想像,請看官方網站的夢想組織缺乏異常藥物。我覺得有些東西缺失了