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

写在前面

相信有不少小可爱们需要使用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的数据类型。

成功,撒花。。。。

结果图
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 主要内容 自然语言输入编码 前馈网络 卷积网络 循环网络(recurrent networks ) 递归网络(re...
    JackHorse阅读 4,241评论 0 2
  • 第一步:创建带xib的单元格,并且在xib中添加约束 LayoutCell.h LayoutCell.m Layo...
    才寒阅读 1,305评论 1 11
  • 祝誓青云赴五中, 夏花落木晚林风。 琳琅字句如珠玉, 艳曲高歌似送终。 每日生涯常猥琐, 天姬坠落与相逢。 高山卧...
    浮零先生阅读 185评论 0 1
  • 同学们提起最多的就是面膜到底能不能美容,这次我们就说说面膜的作用。简单说: 正规生产的面膜能起到保湿的作用,这种效...
    elleyes阅读 657评论 0 0
  • 今天的上海断断续续下了一天的雨,秋老虎也算是短暂下线了。 原本我是在苦恼着的,无心写文,又怕一次的偷懒把我打回原点...
    MemorizingAll阅读 307评论 0 0