首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用R语言作社群关系分析

数据准备: 1、首先,整理一份原始数据,文件名是app_sub.txt,数据格式如下: 编号,应用名称 11111,滴滴打车 99999,美图秀秀 99999,微信 99999,优酷 22222,淘宝...上面的社交网络图中大部分顶点重叠在一起,根本不能看出社交网络中顶点之间连接关系。下面需要对顶点和边格式做调整。...上图中顶点明显归属于某个或某几个社区。所有的点都是同一个颜色,不能直观呈现出社区概念。...划分网络图中社区: 1.利用igraph自带社区发现函数实现社区划分Igraph包中社区分类函数有以下几种: ? 不同分类算法,速度和适用社区网络大小都有所侧重。...利用R语言igraph作社群挖掘图 ?

2.3K80

通过R让你复杂网络图更具艺术感

经常听到数据科学家三种基本能力即分析能力、专业能力、IT能力外延到了人文、艺术,呵呵,大家顿时产生了一种高尚大自豪感。...二、数据准备: 1、首先,编造一份原始数据,文件名是app_sub.txt,数据格式如下: 编号,应用名称 11111,滴滴打车 99999,美图秀秀 99999,微信...图二 初步网络图 上面的社交网络图中大部分顶点重叠在一起,根本不能看出社交网络中顶点之间连接关系。下面需要对顶点和边格式做调整。...图二 改进后网络图 上图中顶点明显归属于某个或某几个社区。所有的点都是同一个颜色,不能直观呈现出社区概念。...四、划分网络图中社区: 1.利用igraph自带社区发现函数实现社区划分Igraph包中社区分类函数有以下几种: fastgreedy.community spinglass.community edge.betweenness.community

2.1K40
您找到你想要的搜索结果了吗?
是的
没有找到

【R语言在最优化中应用】igraph 包在图与网络分析中应用

igraph 包在图与网络分析中应用 igraph 包是一个非常强大包,它可以快速轻松地创建、绘制和分析无向图及有向图(图顶点和边允许百万以上),并解决了经典图论问题,如最小生成树、最大网络流量、...为要处理图,为igraph 格式,创立方式非常简单,参见帮助文档。...(默认) 来计算最短路程;当其为"out" 时,考虑各个边方向;当其为"in" 时,考虑各个边方向,此时将各边方向倒置。...例 图3 是个有向图10,方向如图中箭头所示,边上数字为权重,试求下列问题: 1. 顶点0 到顶点7 最大流量(此时图中各条边上数字代表容量限制); 2. 该连通图最小生成树; 3....该图中任意两顶点之间最短路程(考虑方向)。 ? 解:这三个问题是图论中典型问题。首先,应该在R中构造该图,然后分别调用相关命令即可。

4.4K30

【C#数据结构系列】图

(或弧)附带有一些数据信息,这些数据信息称为边(或弧)权(Weight)。...信息,这是邻接矩阵名称由来。...图遍历是指图中某个顶点出发,按照某种顺序访问图中每个顶点,使每个顶点被访问一次且仅一次。...该网顶点 A 到顶点 D 有 4 条路径,分别是:路径(A,D),带权路径长度为 30;路径(A,C,F,D),带权路径长度为 22;路径(A,C,B,E,D),带权路径长度为 32;路径(A,...下面是拓扑排序算法描述:   (1)在有向图中选择一个入度为 0 顶点(即没有前驱顶点),由于该顶点没有任何先决条件,输出该顶点;   (2)图中删除所有以它为尾弧;   (3)重复执行(1)

87620

一文学会网络分析——Co-occurrence网络图在R中实现

第三种为边列表(edgelist),共两列数据,分别代表网络内节点名称,每一行代表这两个节点间存在着联系。 ? 3)计算网络各种参数,用以推断网络性质。...常用网络参数有: 平均路径长度(Average path length):网络中任意两个节点之间距离平均值。反映网络中各个节点间分离程度。...= E(igraph)$weight # 做图前去掉igraphweight权重,因为做图时某些layout会受到影响 E(igraph)$weight = NA # 简单出图 # 设定随机种子数...)$name,] # 筛选对应OTU属性 igraph.size1 = log((igraph.size$abundance)*100) # 原始数据是什么,为什么*100再取e对数 V(igraph)...按划分模块着色,结果中也很常用 7.显示标签和点轮廓 # 最后添加删除color和label项可显示标签和点颜色边框 plot(igraph,main="Co-occurrence network",

9K106

社交网络分析 R 基础:(五)图导入与简单分析

以最简单无权无向图为例,邻接矩阵中第 行第 列元素 如果等于 1,则表示顶点顶点 之间有边,即邻接矩阵将所有节点之间关系都表示出来。...邻接表则是对顶点 建立一个单链表,这个单链表由顶点 所有邻居节点构成,即邻接表只是把存在关系节点表示出来。 网络上许多公开数据集更常使用三元组去表示一个图。...下面是一个三元组示例,以第一行三元组 (1, 2, 1) 为例,它表示有一条顶点 1 指向顶点 2 边,并且该边权重为 1。对于无权图而言,通常会省略三元组中第三个元素。...在读取文件之前还需要对进行一下修改,可以看到该文件第一行“% sym unweighted”是由空格分隔三个元素,R 语言还没有太过智能,在读取到第二行时会因为只有两个元素而报错,因此需要将第一行删除...上文导入外部网络和生成人工网络两个角度获得了 igraph 图对象,下面将使用 igraph 包中函数对 Dolphins 网络进行简单分析。

2.5K10

SNA社交网络R语言分析

数据清洗 需要从原始数据中清除这些: 以%开头注释行 不明用途第三字段 数据缺失第四字段 # 利用linux命令sed,awk完成数据清洗 cat facebook-wosn-links.txt...,数据间相互影响,为了使结果更清晰,我们选定某一用户,分析好友分布特点 library(igraph) # 将所有用户按照好友数量倒序排序 sort(table(c(friends.whole$from...,其实本例中并不存在孤立点,作为标准化操作保留 dg <- degree(friends.graph) friends.graph <- induced.subgraph(friends.graph,...在图中,有些用户是中间人角色,连接了两个聚集,我们可以利用igraph包提供betweenness函数找出他们 V(friends.graph)$btn = betweenness(friends.graph...,只要网络本身包含较多真实线下好友关系,推荐结果还是非常有价值

1.2K30

R语言社区主题检测算法应用案例

首先,我决定只保留具有显着相关性(20%+相关性)关系(边缘)。我使用20%,因为它对于100个观察维基百科样本具有0.05统计显着性水平。...cor_threshold <- .2 接下来,我们使用相关矩阵来创建igraph数据结构,删除所有具有小于20%最小阈值相关性边。...library(igraph) 让我们绘制一个简单igraph网络。...与我最初观察结果类似,该算法找到了我们在第一个图中识别的三个主要聚类,但也添加了其他较小聚类,这些聚类似乎不适合三个主要聚类中任何一个。...第一个下拉列表允许您按名称查找任何主题(按单词概率排名前五个单词)。 第二个下拉列表突出显示了我们算法中检测到社区。

1.3K20

Facebook社交网络R语言分析

数据清洗 需要从原始数据中清除这些: 以%开头注释行 不明用途第三字段 数据缺失第四字段 # 利用linux命令sed,awk完成数据清洗cat facebook-wosn-links.txt...,数据间相互影响,为了使结果更清晰,我们选定某一用户,分析好友分布特点 library(igraph)# 将所有用户按照好友数量倒序排序sort(table(c(friends.whole$from...,其实本例中并不存在孤立点,作为标准化操作保留dg <- degree(friends.graph) friends.graph <- induced.subgraph(friends.graph,...在图中,有些用户是中间人角色,连接了两个聚集,我们可以利用igraph包提供betweenness函数找出他们 V(friends.graph)$btn = betweenness(friends.graph...,只要网络本身包含较多真实线下好友关系,推荐结果还是非常有价值

1.8K90

进阶渲染系列(一)——平坦和线框着色(导数和几何体)

同样,如果我们可以使用具有任何网格平面着色材质,并覆盖原始法线(如果有),那将是更好。 除了平面着色,显示网格线框也可能有用或看起来时尚。这使得网格拓扑更加明显。...所以, 在本教程图中,会使用标准胶囊网格,材质为灰色。 ? ? (光滑和平坦着色) 远处看,它看起来像是由四边形制成胶囊,这些四边形分别由两个三角形组成。 ?...如果仅需要平面着色,则屏幕空间派生工具是实现该效果最便宜方法。然后,你还可以网格数据中删除法线(Unity可以自动执行此操作),并且还可以删除法线插值器数据。...给文件自己包含保护定义,MY_LIGHTING_INPUT_INCLUDED。 ? “My Lighting”中删除相同代码。...0到10范围应该足够,默认值为1,代表宽度测量倍数。第三是线框厚度,设置与平滑相同。 ?

2.3K21

基础渲染系列(二)——着色器

让我们简单地创建两个具有适当名称空void方法。 ? 此时,着色器将正常编译,球体将消失。如果没消失,说明你编译仍然有错。这取决于你编辑器使用哪个渲染平台。...(原始顶点位置) 黑色球体将变为可见,但会变形。这是因为我们将对象空间位置当作显示位置使用。因此,在视觉上移动球体不会产生任何影响。 我们必须将原始顶点位置与模型-视图-投影(MVP)矩阵相乘。...(绿色球) 3.3 顶点到片元 到目前为止,我们已经为所有像素提供了相同颜色,这是非常有限。通常,顶点数据起着重要作用。例如,我们可以将位置解释为颜色。但是,转换后位置不是很有用。...因此,让我们改为使用网格中局部位置作为颜色。如何将多余数据顶点程序传递到片段程序呢? GPU通过栅格化三角形来创建图像。它需要三个已处理顶点并在它们之间进行插值。...你将看到已编译顶点程序现在将UV坐标顶点数据复制到插值器输出。 ? ? Unity将UV坐标围绕球体包裹,使图像顶部和底部在极点处折叠。你会看到一个北到南极接缝,图像左右两侧相连。

3.8K20

普林斯顿算法讲义(三)

一个有向图(或有向图)是一组顶点和一组有向边,每条边连接一个有序对顶点。我们说一条有向边该对中第一个顶点指向该对中第二个顶点。对于 V 个顶点图,我们使用名称 0 到 V-1 来表示顶点。...(有向无环图中传递闭包是唯一且是原始有向图子图。) 奇长度路径。...对于每个作业,起始顶点结束顶点添加一条权重等于持续时间边。对于每个前置约束 v->w,对应于 v 结束顶点到对应于 w 开始顶点添加一条零权重边。...DijkstraSP.java 中实现版本(允许一个顶点多次入队)在存在负边权(没有负环)时是正确最坏情况下运行时间是指数级。...**编写一个程序 Squeeze.java,该程序接受一个字符串作为输入,并删除相邻空格,最多保留一个空格。 **删除重复项。**给定一个字符串,创建一个新字符串,其中删除所有连续重复项。

10710

进阶渲染系列(七)——三向贴图(任意表面纹理化)【进阶篇完结】

(不需要顶点UV坐标或切向量) 1 没有UV坐标的纹理 执行纹理映射通常方法是使用网格中每个顶点存储UV坐标。这不是唯一方法。有时,没有可用UV坐标。例如,当使用任意形状过程几何时。...我们将当前方法保留为默认方法,但是在定义NO_DEFAULT_UV时将切换为不使用UV方法。 1.1 不使用默认UV 当网格数据不包含UV时,则没有任何UV顶点传递到片段程序。...但是,这等效于从一开始就不对采样Z组件进行求反,因此我们只需删除该代码即可。 ? ? (正确法线融合) 现在,所得法向矢量偏向原始表面法线。尽管这并不完美,通常就足够了。...你可以更进一步,仅使用原始Z分量就可以完全删除采样Z分量。这称为UDN混合,使用DXT5nm压缩时更便宜,因为不需要重建Z分量,但是会降低未对齐表面的法线强度。...然后从中删除所有已属于基类代码。与其在OnGUI中自行设置变量,不如通过调用base.OnGUI将其委托给基类OnGUI方法。 ?

2.2K30

UE4Unity绘制地图基础元素-面和体

面数据通常以离散点串形式存储,因此渲染时最关注是如何将其展现为闭合图形。 体可以理解为带有高度面,在地图中代表各种建筑,通常是由顶部面数据和高度数据处理得到。...为了减少数据量,通常存储方式是顶面点串和对应拔起高度,在渲染时增加顶点构成闭合体。...而体元素立面拔起是按照原始数据在每一组相邻顶点间绘制矩形,因此会产生问题。...2、根据多边形计算外接矩形,减少细节 3、根据三角剖分结果剔除多余顶点,重新生成简单多边形 以上三个方案对于多边形细节保留由少到多,并不是完全还原真实数据。...对于一个非简单多边形,在分解为多个简单多边形后,绘制所有面积不为0图形就可以了。这种方案可以最大限度还原原始数据,并且规避闪烁问题。

1.2K51

基础渲染系列(十六)——静态光照

你可以通过将照明窗口“Scene”切换为“Global Maps”模式来查看它们。使用默认设置,我测试场景可以轻松放入单个1024×1024图中。 ?...你资产名称将显示在“Lightmap Parameters”下拉列表中。 ? ? (对透明四边形使用自定义参数) 将对象标记为透明还可以更改对间接照明作用。...因为它们与顶点灯互斥,所以两者都可以使用TEXCOORD6。 ? 顶点数据中坐标定义了用于光照贴图网格纹理展开。这并没有告诉我们该展开位置在光照图中位置,也没有告诉我们大小。...为了对进行采样,我们将使用UNITY_SAMPLE_TEX2D宏而不是tex2D。我们稍后将说明原因。 ? ? (使用光照贴图原始数据) 现在我们得到了间接照明,看起来不对。...因此,将所需变量和函数“My Lighting”复制到“My Lightmapping”。为此,我们仅需要顶点位置和uv坐标。不使用法线和切线,但是需要顶点着色器中光照贴图坐标。 ?

3.5K20

Unity可编程渲染管线系列(十一)后处理(全屏特效)

给它一个公共Render方法,并带有一个CommandBuffer参数,它可以用来执行工作。这个想法是堆栈将用命令填充缓冲区,但是执行和清除缓冲区是管道责任。最初,只需记录调用堆栈方法即可。...现在还可以使用深度纹理作为blit来源,它将显示原始深度信息而不是颜色。结果取决于图形API。 ? (原始深度) 3 全屏三角形 Blit纹理基本上与渲染常规几何体相同。...我们可以通过进一步增加滤镜区域来增强效果,这也会使通过变得更加复杂。另一种方法是保留我们拥有的过滤器,但会不止一次应用它。例如,执行第二次模糊通过会将滤镜大小增加到5×5。来做吧。...循环可以任何强度开始做,在循环中执行两次模糊,直到最多保留两个通道。在该循环内,可以在使用临时纹理和原始颜色纹理作为渲染目标之间进行切换。 ? 在仅模糊一次特殊情况下,我们可以避免获得临时纹理。...(带有堆栈额外相机组件) 为了使这项工作有效,MyPipeline.Render现在必须用于渲染摄像机中获取MyPipelineCamera组件。

3.4K20

Unity基础教程系列(新)(五)——计算着色器(Rendering One Million Cubes)

带有名称字符串PropertyToID。这些标识符是按需声明,并且在应用程序或编辑器运行时保持相同,因此我们可以直接将这些标识符存储在静态字段中。position属性开始。 ?...现在,我们可以通过#include“ PointGPU.hlsl”指令将此文件包含在Point Surface GPU着色器中,然后可以其中删除原始代码。 ?...参数名称按约定大写,因为它们将与着色器视图中使用输入和输出标签相对应。 ? 假设Out参数是一个输出参数,我们需要在其前面写出来来声明它。...(通过文件分配 自定义函数) 为了将我们代码集成到视图中,我们需要将节点链接到它。根据顶点阶段需要,将其输出连接到主节点“Vertex Position 。...函数计数转换为属性是不错选择。要自己创建一个,请GetFunctionCount中删除Get前缀,并删除空参数列表。然后将return语句包装在嵌套get代码块中。 ?

3.6K12

《offer来了》第四章学习笔记

删除节点 4 有两个子节点,左子树最小节点为 2,右子树最小节点为 5,因此有两种结果。 ? 5.3.查找 接近二分查找法。...7.4.图遍历 图遍历指图中某一顶点出发访遍图中每个顶点,且使每一个顶点仅被访问一次。图遍历分为广度优先遍历和深度优先遍历 1....广度优先遍历 假设图中某个顶点 V 出发,在访问了 V 之后依次访问 V 各个未曾访问过邻接点,然后分别从这些邻接点出发依次访问它们邻接点,并使先被访问顶点邻接点先于后被访问顶点邻接点被访问...,直到图中所有已被访问顶点邻接点都被访问;若此时图中尚有顶点未被访问,则另选图中未曾被访问一个顶点作为起始点重复上述过程,直至图中所有顶点均被访问。...深度优先遍历 假设图中某个顶点 V 出发,在访问 V 节点后依次 V 未被访问邻接点出发以深度优先原则遍历图,直到图中所有和 V 节点路径连通顶点都被访问;若此时图中尚有顶点未被访问,则另选一个未曾访问顶点作为起始点重复上述过程

91440

NLP中关键字提取方法总结和概述

然后通过将每个 n-gram 成员分数相乘并对进行归一化,以减少 n-gram 长度影响。停用词处理方式有所不同,以尽量减少影响。 5、重复数据删除和排名——在最后一步算法删除相似的关键字。...该方法通过以下步骤提取关键字: 1、带有词性 (PoS) 标签文本标记化和注释 2、词共现图构建——图中顶点带有选定 PoS 标签词(作者仅选择名词和形容词即可获得最佳结果)。...作者使用 Google PageRank 算法,该算法主要用于对网站图表进行排名。该算法使用上图中公式。顶点 Vi 权重 S(Vi) 是通过考虑连接到节点 Vi 顶点权重来计算。...4、得分最高单词选择——单词(顶点得分最高单词到最低得分单词排序。最后,算法选择单词前 1/3。...候选关键字是位于两个停用词或短语定界符之间短语。例如,短语分隔符是标点符号。 2、关键词共现图构建——图中顶点是单词。如果它们一起出现在候选关键字中,则它们是连接

1.6K20
领券