R數(shù)據(jù)分析:網(wǎng)絡(luò)分析的做法慌洪,原理和復(fù)現(xiàn)方法

對于復(fù)雜問題和現(xiàn)象行為的研究拣宰,尤其是他們之間還有復(fù)雜的交互影響(complex interplay)的時(shí)候柄冲,網(wǎng)絡(luò)分析(備用名:psychological networks, network analysis or network psychometrics)是個(gè)備選的好方法遵绰,這個(gè)方法火了也沒幾年辽幌,感興趣的同學(xué)可以去學(xué)學(xué)增淹,而且,如果你再能把網(wǎng)絡(luò)圖做的美點(diǎn)乌企,應(yīng)該各個(gè)審稿人都愿意看的虑润。今天嘗試給大家做個(gè)網(wǎng)絡(luò)分析的簡單介紹。

舉個(gè)例子加酵,像physiological, psychological, social and environmental factors等等如何影響肥胖拳喻,很復(fù)雜,做個(gè)多元回歸虽画?做個(gè)結(jié)構(gòu)方程模型舞蔽?這些都缺乏系統(tǒng)性的視角,從整體上把握肥胖的影響因素之間的關(guān)系码撰,找最重要的干預(yù)靶點(diǎn)推薦用網(wǎng)絡(luò)分析渗柿。

像健康,行為脖岛,心理朵栖,認(rèn)知功能等等,反正就是復(fù)雜系統(tǒng)的分析柴梆,想不到課題了陨溅,就可以考慮在方法上上網(wǎng)絡(luò)分析

From a network perspective, health behaviours and outcomes can be conceptualised as emergent phenomena from a system of reciprocal interactions: network analysis offers a powerful methodological approach to investigate the complex patterns of such relationships.

比如一個(gè)文章,研究自殺的绍在,原文貼在下面:

Bloch-Elkouby, S., Gorman, B., Schuck, A., Barzilay, S., Calati, R., Cohen, L. J., Begum, F., & Galynker, I. (2020). The suicide crisis syndrome: A network analysis. Journal of Counseling Psychology, 67(5), 595–607.

通過網(wǎng)絡(luò)分析作者就回答了三個(gè)問題:一是自殺崩潰綜合征中不同癥狀的關(guān)系是什么门扇?二是這些癥狀有沒有哪幾個(gè)格外重要?三是這些癥狀有沒有一些聚集性偿渡?三個(gè)問題每一個(gè)都很有價(jià)值臼寄,一個(gè)網(wǎng)絡(luò)分析全給你解決了,感興趣的同學(xué)下載去讀讀溜宽。

還有一個(gè)點(diǎn)很重要送膳,網(wǎng)絡(luò)分析可以幫助你識(shí)別復(fù)雜系統(tǒng)的干預(yù)點(diǎn)分瘾,這個(gè)其實(shí)是很有臨床價(jià)值的

network analyses allow for the computation of centrality indices that provide information about the symptoms that are the most connected to the other symptoms included in the network and whose potential causal contribution to the other symptoms may thus deserve further investigation

如果你是搞人文社科的炕檩,由于其是一個(gè)針對復(fù)雜人文系統(tǒng)的作用關(guān)系聪轿,網(wǎng)絡(luò)分析也是最容易幫助你提出原創(chuàng)理論假設(shè)的一項(xiàng)重要技術(shù)支撐。總體的意思就是想推動(dòng)0到1的科研嫉嘀,這個(gè)方法必須要學(xué)炼邀。

網(wǎng)絡(luò)分析基礎(chǔ)

一個(gè)最簡單的網(wǎng)絡(luò),像這樣

[圖片上傳失敗...(image-d74433-1667914169815)]

有好些點(diǎn)叫做node剪侮,這些點(diǎn)被線連起來的汤善,線叫做edge。

在網(wǎng)絡(luò)圖中點(diǎn)表示的是變量票彪,線表示的是變量關(guān)系红淡,注意這個(gè)線是沒有箭頭的(一般是偏相關(guān)系數(shù)),正向系數(shù)是綠線降铸,負(fù)值系數(shù)是紅線在旱,線的粗細(xì)反應(yīng)關(guān)系的強(qiáng)度,越粗越強(qiáng)推掸。通過這么一個(gè)網(wǎng)絡(luò)圖桶蝎,對于多變量間的復(fù)雜關(guān)系就可以有一個(gè)一目了然的呈現(xiàn)。

Psychological networks consist of nodes representing observed variables, connected by edges representing statistical relationships. This methodology has gained substantial footing and has been used in various different fields of psychology, such as clinical psychology, psychiatry, personality research, social psychology , and quality of life research

成圖的基本步驟如下

[圖片上傳失敗...(image-df7502-1667914169815)]

首先得有數(shù)據(jù)間的統(tǒng)計(jì)模型谅畅,模型系數(shù)作為edge的權(quán)重登渣,然后成圖,然后評估模型毡泻。

具體來講可以選擇的統(tǒng)計(jì)模型多了: correlations, covariances, partial correlations, regression coefficients, odds ratios, factor loadings胜茧,一般我們都是選用偏相關(guān)系數(shù)作為邊的權(quán)重。節(jié)點(diǎn)固定的情況下仇味,網(wǎng)絡(luò)可以畫的很密的呻顽,為了增加interpretability and generalizability和網(wǎng)絡(luò)的穩(wěn)定性,需要用一些正則通常是LASSO來簡化網(wǎng)絡(luò)丹墨,就是把哪些意義不大的邊搞掉廊遍,使得網(wǎng)絡(luò)圖更加的簡潔好解釋。成圖之后就是評估模型了贩挣,主要的分析有兩個(gè)edge stability analysis和centrality indices喉前,以下簡單介紹:

edge stability analysis

本身來講網(wǎng)絡(luò)分析就是比較復(fù)雜的,網(wǎng)絡(luò)的隨機(jī)性相對于別的分析就要大一些王财,而且本身來講我們的科研邏輯就是用樣本反映總體卵迂,如果你做出來的網(wǎng)絡(luò)不穩(wěn)定你能說你發(fā)現(xiàn)的比如肥胖比如自殺的網(wǎng)絡(luò)是可信的?所以做完網(wǎng)絡(luò)分析之后我們對于網(wǎng)絡(luò)的穩(wěn)健性我們是一定要報(bào)告的搪搏,邏輯就是進(jìn)行反復(fù)的bootstrap抽樣狭握,反復(fù)的重新估計(jì)模型,反復(fù)的重新計(jì)算confidence intervals (e.g. 95% CI) for their edge estimates看看這些模型的差異從而評估模型的穩(wěn)健性疯溺,通過edge stability analysis我們可以得到網(wǎng)絡(luò)各個(gè)邊的權(quán)重的置信區(qū)間论颅,區(qū)間越窄,說明網(wǎng)絡(luò)越穩(wěn)定囱嫩。做edge stability analysis的示例代碼如下:

resboot1 <- bootnet(Data, default = c("EBICglasso"), tuning=.5,corMethod="cor_auto",
 nBoots = 1000, nCores = 8, type = c("nonparametric")) 

通常這一部分論文中也會(huì)以圖的形式報(bào)告出來恃疯。

centrality indices

在網(wǎng)絡(luò)分析中每個(gè)節(jié)點(diǎn)的重要性是不一樣的,是不是存在某些節(jié)點(diǎn)相對于另外的節(jié)點(diǎn)更重要墨闲?對節(jié)點(diǎn)重要性的評估的指標(biāo)就是centrality indices今妄,這個(gè)指標(biāo)又包含3個(gè)指數(shù)strength, closeness, and betweenness,三個(gè)指標(biāo)的意思見下面:

strength, which shows how well a node is directly connected to other nodes, closeness, which shows how well a node is indirectly connected to other nodes, and betweenness, which quantifies the number of times a node acts as a bridge along the shortest path between two other nodes

簡單的邏輯就是如果圖中的一個(gè)點(diǎn)和另外的點(diǎn)連線多越強(qiáng),那么這個(gè)點(diǎn)就重要盾鳞,這個(gè)點(diǎn)也越應(yīng)該放在圖的中心犬性;如果一個(gè)點(diǎn)和其他點(diǎn)的間接距離越近那么這個(gè)點(diǎn)越容易受到網(wǎng)絡(luò)變動(dòng)的影響;如果一個(gè)點(diǎn)平均來看總是在兩兩關(guān)系中起橋接作用腾仅,那么這個(gè)點(diǎn)對整個(gè)網(wǎng)絡(luò)的構(gòu)成就意義極大乒裆。

通常只報(bào)告strength就可以,因?yàn)槠渌麅蓚€(gè)指數(shù)都不太穩(wěn)定推励。

實(shí)例操練

我們今天依照一篇2022年發(fā)表在American Journal of Public Health Research上的研究為參照進(jìn)行做法復(fù)現(xiàn)鹤耍,文章的名字叫Partial Relationships between Health and Fitness Measures in Adults: A Network Analysis

結(jié)果中作者報(bào)告了變量的兩兩相關(guān)的相關(guān)系數(shù)矩陣還有模型的network edge weights,見下表:

[圖片上傳失敗...(image-a009f8-1667914169815)]

作者報(bào)告了網(wǎng)絡(luò)圖還有模型的centrality indices验辞,都是以圖的形式呈現(xiàn)的稿黄,見下圖:

[圖片上傳失敗...(image-3bcd62-1667914169815)]

還有Bootstrapped edge weight estimates,也是一個(gè)圖:

[圖片上傳失敗...(image-b0b78f-1667914169815)]

那么我們今天就來看下跌造,這個(gè)論文的圖如何用自己的數(shù)據(jù)復(fù)現(xiàn)出來杆怕。

比如我現(xiàn)在有數(shù)據(jù)如下,有2800個(gè)觀測鼻听,26個(gè)變量财著,最后一個(gè)變量是性別,其余的25個(gè)變量是5個(gè)5條目的量表

[圖片上傳失敗...(image-345afd-1667914169815)]

首先我要做的是擬合網(wǎng)絡(luò)模型撑碴,擬合網(wǎng)絡(luò)模型用到的核心函數(shù)是estimateNetwork撑教,通常我們只用設(shè)置data和default參數(shù)便可以運(yùn)行,我們要通過lasso來簡化網(wǎng)絡(luò)的話就設(shè)置default = "EBICglasso"醉拓,將擬合好的網(wǎng)絡(luò)模型對象喂給plot即可以出網(wǎng)絡(luò)圖伟姐。

[圖片上傳失敗...(image-3ee6d9-1667914169815)]

比如我要對男性觀測擬合網(wǎng)絡(luò)模型,可以寫出代碼如下:

network_male <- estimateNetwork(df %>% 
                                  filter(gender == "Male") %>% 
                                  select(-gender),
                                default = "EBICglasso",
                                corMethod = "spearman")

運(yùn)行完畢后亿卤,直接將模型對象喂給plot即可出圖:

[圖片上傳失敗...(image-ddec5a-1667914169815)]

到這兒就基本算是完成了愤兵,但是要發(fā)表的話還是有點(diǎn)粗糙的,其實(shí)我們的數(shù)據(jù)中不同的字母(變量名)代表的是不同的量表排吴,其實(shí)更好的方法是將各個(gè)量表的條目放一起秆乳,并且給出圖例,使得其一目了然钻哩,所以接下來我們得對圖形做一些調(diào)整屹堰。

比如我要對節(jié)點(diǎn)的整體布局做一個(gè)調(diào)整并且加上每個(gè)量表的圖例,我就可以在代碼中加上group參數(shù)街氢,指明每個(gè)節(jié)點(diǎn)都是來自哪個(gè)量表的:

[圖片上傳失敗...(image-f16dd-1667914169815)]

這樣其實(shí)就好看多了扯键,當(dāng)然如果需要更細(xì)的圖例,比如我想知道每個(gè)節(jié)點(diǎn)到底啥意思珊肃,我還可以用nodeNames參數(shù)加上節(jié)點(diǎn)的圖例:

[圖片上傳失敗...(image-f9355e-1667914169815)]

這樣就更好了荣刑,贊馅笙。

但是我們注意American Journal of Public Health Research上的這篇研究是給邊加了標(biāo)簽的,我們要出這樣的效果的話只需要設(shè)定edge.labels為真就可以了厉亏,因?yàn)楣?jié)點(diǎn)比較多董习,加上標(biāo)簽其實(shí)效果就不太好了:

[圖片上傳失敗...(image-f09d-1667914169815)]

我們接著再看作者的另外的兩個(gè)圖的做法,一個(gè)是centrality indices的圖叶堆,我們只需要將模型對象喂給centralityPlot即可出圖:

[圖片上傳失敗...(image-dd50db-1667914169815)]

另一個(gè)是邊的權(quán)重估計(jì)的圖阱飘,只需要將模型對象喂給bootnet,并且plot就可出來:

[圖片上傳失敗...(image-26f8dc-1667914169815)]

可以看到我們的圖的效果其實(shí)是比原文好的虱颗。

到這兒,原文中所有的結(jié)果都給大家復(fù)現(xiàn)完了蔗喂。

網(wǎng)絡(luò)分析的協(xié)變量控制

本身來講網(wǎng)絡(luò)分析的輸入數(shù)據(jù)其實(shí)是相關(guān)矩陣忘渔,這個(gè)時(shí)候我們想控制協(xié)變量比如年齡、性別缰儿、民族等等畦粮,可行的方法就是做回歸取殘差,以殘差的相關(guān)矩陣作為模型的輸入乖阵,同樣的思想可以在結(jié)構(gòu)方程中使用宣赔,比如你做個(gè)交叉滯后想控制協(xié)變量就可以用這個(gè)方法哈,中英文的發(fā)表文獻(xiàn)引用證據(jù)都各給大家貼一個(gè)瞪浸,做法上也都很好實(shí)現(xiàn)的:

[圖片上傳失敗...(image-73d1a2-1667914169815)]

[圖片上傳失敗...(image-2ae122-1667914169815)]

小結(jié)

今天給大家寫了網(wǎng)絡(luò)分析的做法儒将,其實(shí)還有一塊就是網(wǎng)絡(luò)分析的對比,解決的問題是幾個(gè)網(wǎng)絡(luò)是不是不一樣对蒲,或者同一個(gè)網(wǎng)絡(luò)的某兩個(gè)邊是不是不一樣钩蚊,這個(gè)以后有機(jī)會(huì)給大家寫。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蹈矮,一起剝皮案震驚了整個(gè)濱河市砰逻,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌泛鸟,老刑警劉巖蝠咆,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異北滥,居然都是意外死亡刚操,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進(jìn)店門碑韵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來赡茸,“玉大人,你說我怎么就攤上這事祝闻≌嘉裕” “怎么了遗菠?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長华蜒。 經(jīng)常有香客問我辙纬,道長,這世上最難降的妖魔是什么叭喜? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任贺拣,我火速辦了婚禮,結(jié)果婚禮上捂蕴,老公的妹妹穿的比我還像新娘譬涡。我一直安慰自己,他們只是感情好啥辨,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布涡匀。 她就那樣靜靜地躺著,像睡著了一般溉知。 火紅的嫁衣襯著肌膚如雪陨瘩。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天级乍,我揣著相機(jī)與錄音舌劳,去河邊找鬼。 笑死玫荣,一個(gè)胖子當(dāng)著我的面吹牛甚淡,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播崇决,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼材诽,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了恒傻?” 一聲冷哼從身側(cè)響起脸侥,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎盈厘,沒想到半個(gè)月后睁枕,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡沸手,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年外遇,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片契吉。...
    茶點(diǎn)故事閱讀 38,117評論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡跳仿,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出捐晶,到底是詐尸還是另有隱情菲语,我是刑警寧澤妄辩,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站山上,受9級特大地震影響眼耀,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜佩憾,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一哮伟、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧妄帘,春花似錦楞黄、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至婶恼,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間柏副,已是汗流浹背勾邦。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留割择,地道東北人眷篇。 一個(gè)月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像荔泳,于是被迫代替她去往敵國和親蕉饼。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評論 2 345

推薦閱讀更多精彩內(nèi)容