R

R中statnet包构建网络图——数据导入

2019-04-12  本文已影响79人  环校长跑

写在前面

相信有不少小可爱们需要使用R的statnet包来构建社会网络,那你有没有碰到这个问题呢?在你费劲千辛万苦得到数据后,却不知需将数据处理成何种格式,才可以使用statnet。如果有小可爱们碰到此问题,那这篇博文简直是福音hhh

操作环境

R-3.5.1  

操作步骤

第一步:构建社会网络的稀疏矩阵

无论你的原数据是哪种类型的格式,都需要转换成稀疏矩阵。我是先将原数据转换成from_to的形式,再使用python的networkx将数据转换成稀疏矩阵。

稀疏矩阵无表头。有一点要强烈注意:导入数据时,节点的身份识别是有强制要求的(原数据小张、小王、小李),必须是从1开始的连续型整数,我血的教训(官网也没说。。。)。

稀疏矩阵

第二步:“网络节点属性”数据准备

节点顺序和稀疏矩阵顺序对应,用Excel的vlookup实现。

节点属性.csv

第三步:三行代码构建网络矩阵

read.csv()参数“header=F”意指数据文件的首行不表示节点名称。

edges(稀疏矩阵)的矩阵无节点信息,所以为F;vertex的csv(节点属性)首行有节点信息,所以T。


R代码

导入节点信息时,有小插曲报错:

应该是属性只能是实数,不能是字符串子类的。我有身份的分类变量,没处理为整数型的分类变量。把这个变量删了,可以成功导入。等我后续处理身份变量后,再接更

节点.csv中属性的值有字符串出的错

验证结果

查看net信息,返回网络的基本信息。

查看net数据类型,返回network的数据类型。

成功,撒花。。。。

结果图
上一篇下一篇

猜你喜欢

热点阅读