网络数据统计分析笔记|| 为什么研究网络
前情回顾:
Gephi网络图极简教程
Network在单细胞转录组数据分析中的应用
我研究网络是因为项目需要,在2018年的时候,有个可视化项目需要做网络图,于是就在某购书网上搜:
这本书买来后,大致 浏览了一番,确实对网络分析的基本概念有了系统的感知。感谢作者为我们提供了一个钥匙,打开网络分析的大门。
Eric D. Kolaczyk是波士顿大学数学与统计系的统计学教授与统计学项目负责人,同时是生物信息学项目、系统工程方向以及计算神经科学项目的教职人员。他撰写的以网络为主题的著作不仅发展了统计学的方法与理论,还涵盖了探测计算机网络上的匿名流量模式,预测蛋白质相互作用网络中的生物功能,以及刻画社会网络中行动者群体影响等应用性的工作。他是美国统计协会(American Statistical Association,简称ASA)会士,也是电气和电子工程师协会(Institute of Electrical and Electronics Engineers,简称IEEE)高级会员。
那个项目最后产生的就是Gephi网络图极简教程。自那以后,这本书基本在吃灰,前几日读李霞老师《生物信息学》教材,第十二章《生物分子网络》勾起那段记忆,打算二刷。故建立了这个文集,在这里把书中的 代码跑一边,一些概念再加深一下:
- 作为在线笔记方便查阅
+作为公开笔记希望遇见你
凡事都要问个,为什么,值得吗?
要回答这个问题,不得不问一下两个问题:
- 什么是网络?
- 网络值得我们花时间吗?
归结到底,我们为什么要研究网络?
网络是描述和建模复杂系统的通用语言。网络是我们熟悉的概念,讲的是集合中元素之间的关系。在数据分析中也是用来描述元素属性的关系,随着大数据的发展,各行各业的数据积累越来越多,不管是数据量还是数据类型不断增加,而网络是一种描述多元数据的有力工具。可以说,研究网络让我们更加逼近真实世界。在生物信息学中有生物分子网络(Biological molecular network),它之所以作为文章的figM,不仅仅因为花哨。
当描述系统中的元素及其相互连接的概念是,网(network)的形象是一种自然的选择。在历史上,网络的正式研究一般追溯到1735年欧拉对七桥问题的研究,在数学上经常用图(graph)来形象化地表示网络。所以这两个概念有时候会互换使用,在我们的文章中也不做过多地强调,根据语境我们可以理解,不至于把graph理解成picture。
网络作为一种数据结构,在计算生物学,工程学,金融,营销,公共卫生等领域均有用武之地。随着高通量数据搜集、存储和管理的设备健全,网络数据科学作为数据科学的一个分支反映了一个面向复杂系统的研究范式,即面向系统发展而非还原论视角。
那么,网络数据科学主要可以做什么呢?
- 网络可视化与特征化
- 建模与推断
- 网络过程
网络可视化与特征化的主要工作是把网络中的节点与连线的属性与实际的科学领域联系到一起,构建基于网络的描述体系,如:子图,加权,传递性,同配性,聚类系数,小世界等。建模与推断主要应用统计模型来探索网络的形成,布局,基于随机图的统计推断等。 网络过程旨在描述一个以节点为索引的、正在进行的随机过程。就像人与人之间的关系一样,网络中的元素不是静止的,而是各种关系的总和,
接下来,为什么要用R进行网络分析?
降低学习曲线。
可以进行网络分析的工具有很多,R中igraph包、Python 中的Networkx构建并实现出图。当然,除此之外,还有一些非命令行的软件,例如cytoscape,gephi,pajek,graphviz(dot),Ucinet等。用R因为比较容易入门,相对于python版本更新没有那么频繁,很多教程还可以参考学习。
我们跟着《网络数据的统计分析:R语言实战》这本书来入门网络数据分析,书的作者希望你是需要网络分析的科研人员或者感兴趣的本科生。本书并没有太多的理论知识,更偏向实操和应用。本书是想在概念与技术背景以及软件使用之间找到一种平衡。
本书的示例代码打包为sand(R包),可以安装使用,也可以在github中下载下代码,本地调试。
这一切,都是为了你能够尽快入门。
R 4.0.2
在写作的过程中发现这本书有不少人在写笔记,看来,这真的是一门网络图入门的书籍呀。
https://zhuanlan.zhihu.com/p/146230302