python社会网络分析包 python社会网络分析法_网络分析

一想到你在关注我就忍不住有点紧张

     社会网络分析方法的起源在社会学史中存在争论,但至少在20世界70年代时,这一方法得到确立和发展,并成为社会计量学的主要研究方法[1]。相较于社会学的研究,传统经济学以理性个体作为研究对象,因而对这一社会互动性方法的研究和使用存在滞后。虽然经济学在20世纪90年代前后才开始将这一研究方法应用于经济问题[2],但是其在金融风险传染(Acemoglu et al.,2013b,2015;Elliott M et al.2014)、股价联动(Muslu et al.,2014;ANTóN et al.,2014;Israelsen,2016;)和公司治理(Subrahmanyam,2008;Fracassi,2017)等领域均得到广泛应用。

    社会网络分析将经济社会中的个体以及个体之间连接与否及其连接强度作为主要研究对象和测量方法,以期对整体性的现象做出解释。然而该方法由于存在一定的技术性,特别是数学上、数据处理上的困难,让很多初学者望而却步。数学上,社会网络分析与图论为基础。在技术上,通常借助很多社会网络分析软件,目前比较流行的是Ucinet、Pajak、Gephi等,这些软件使用早,受众多,易学习。然而这些软件最大的缺陷是数据处理。通常我们将清理好的数据(如邻接矩阵)输入软件中,最后输出网络分析结果。使得数据清洗与网络分析割裂开来,网络数据清理的错误与修正都不能及时更新。因此转向Python就显得顺理成章了。Python提供社会网络分析的专用包NetworkX,NetworkX是一个用Python语言开发的图论于复杂网络建模工具,内置了常用的图与复杂网络分析方法,可以方便地进行复杂网络数据分析和仿真建模等工作。NetworkX支持创建无向图、有向图和多重图;内置许多标准的图论算法,节点可以为任意可哈希数据;支持任意的边值维度。

今天先来个开场白,让NetworkX秀一下自己的技能,后面我们将更深入具体的学习NetworkX及其与Python的其它分析包的交互使用。



#导入相应的包




import pandas as pd




import networkx as nx




nG=nx.Graph() #用nx.Graph()函数生成一个空图