加入收藏 | 设为首页 | 会员中心 | 我要投稿 滨州站长网 (https://www.0543zz.cn/)- CDN、边缘计算、物联网、云计算、运营!
当前位置: 首页 > 大数据 > 正文

文本挖掘:社交网络、社群划分

发布时间:2021-02-21 07:46:03 所属栏目:大数据 来源:网络整理
导读:作者:Matt ? 自然语言处理实习生 http://blog.csdn.net/sinat_26917383/article/details/51444536 回复此公众号 “ 社交网络 ”获取word版原文查看。向小编咨询问题,联系 微信:hai299014 一、关系网络数据类型 关系网络需要什么样子的数据呢? ? ?笔者接


有默认的线权重,并且默认是无向线的,directed=T时就代表有向线。


5、传播标签社群发现


文本挖掘:社交网络、社群划分


  1. #社群发现方法五:标签传播社群发现??

  2. member<-label.propagation.community(g.undir,weights=V(g.undir)$weight)??

  3. V(g.undir)$member??

  4. member<-label.propagation.community(g.undir,weights?=?E(g.undir)$weight,initial?=?c(1,-1,1))??

  5. V(g.undir)$member??

  6. member<-label.propagation.community(g.undir,??

  7. ????????????????????????????????????initial?=?c(1,1),fixed=c(T,F,T))??


initial是社群初始化函数,默认为-1(不设置初始值),当然这里你也可以设置;如initial=c(1,2)就代表1,2个数为社群1;3、4不设置初始值;5个为社群2
fixed是用来固定函数的,当然如果没有设定初始值,如3.4.6则T,F都无效;如果设定了初始值,T则代表固定在原设定上。


二、衡量社群的指标


1、模块化指标Q——modularity


相当于是组内误差。


  1. modularity(g.undir,membership=c(1,2))??#社群总差异,membership设置社群号??


membership是每个点的各自分组情况。

文本挖掘:社交网络、社群划分



2、网络聚类系数——transitivity


是表示一个图形中节点聚集程度的系数,一个网络一个值。

    3、网络密度——graph.density


    跟网路聚类系数差不多,也是用来形容网络的结构复杂程度。越大,说明网络越复杂,说明网络越能够放在一块。


    1. graph.density(g.zn)??

    2. graph.density(group1)??

    3. graph.density(group2)??

    4. #从中可以看到不同社群与整体之间的网络密度情况(关联程度)??


    三、画 图

    由于关系网络图很复杂,而且数据量一大,小的图片形式网路图基本就是一坨浆糊。所以这里JPEG一定要足够大,最好的就是SVG格式。SVG格式的好处就是矢量图,你可以自己放大缩小,而且还可以用工具进行修改。但是最不好就是,一般的工具还打开不了,要用一些特有的工具,打开之后也会出现一些问题。

    当然你是可以直接plot的。


    1、直接plot

    1. plot(g.test,layout=layout.fruchterman.reingold,edge.arrow.size=0.1,vertex.color=rainbow(7,alpha=0.3),edge.arrow.mode?=?"-")??


    代码解读:edge.arrow.size=0.1箭头大小;

    vertex.color=rainbow(7,alpha=0.3)颜色,七种;

    edge.arrow.mode = "-"连接方式用-。

    其中还有很多参数类型:


    1. #vertex.size=1表示节点的大小??

    2. #layout表示布局方式(发散性)??

    3. #vertex.label=NA,不显示任何点信息,默认显示idx号??

    4. #vertex.color=V(g)$color?点的颜色设置??

    5. #mark.groups表示设置分组??

    6. #vertex.shape='none'不带边框???

    7. #vertex.label.cex=1.5,?#节点字体大小??

    8. #vertex.label.color='red'??

    9. #edge.arrow.size=0.7?#连线的箭头的大小??

    10. #edge.color?=?grey(0.5)#线的颜色??

    11. #edge.arrow.mode?=?"-"?箭头换成线??

    12. #vertex.label.dist=5??点标签和节点之间的距离一般0.1,便于错开重叠??

    2、简易画图自编译函数

    R语言与网站分析中还专门写了一个画图函数。


    1. plot.membership<-function(graph,membership,main=""){??

    2. ??V(graph)$member<-membership??

    3. ??mem.col<-rainbow(length(unique(membership)),alpha=0.3)??

    4. ??V(graph)$color<-mem.col[membership]??

    5. ??plot(graph,edge.width=E(graph)$weight,vertex.color=V(graph)$color,main=main)??

    6. (编辑:滨州站长网)

      【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读