2018-10-24
阅读量:
2607
几行代码教你怎么用R实现幂律分布
自然界与社会生活中存在各种各样性质迥异的幂律分布现象,因而对它们的研究具有广泛而深远的意义。借助于有效的物理和数学工具以及强大的计算机运算能力,科学家们对幂律分布的本质有了进一步深层次的理解。
实际上,幂律分布广泛存在生物、地球与行星科学、计算机科学、生物学、生态学、人口统计学与社会科学、经济与金融学等众多领域中,且表现形式多种多样. 在自然界与日常生活中,包括地震规模大小的分布 (古登堡2里希特定律) 、月球表面上月坑直径的分布、行星间碎片大小的分布 、太阳耀斑强度的分布 、计算机文件大小的分布 、战争规模的分布 、人类语言中单词频率的分布 、大多数国家姓氏的分布 、科学家撰写的论文数的分布、论文被引用的次数的分布、网页被点击次数的分布 、书籍及唱片的销售册数或张数的分布、每类生物中物种数的分布、甚至电影所获得的奥斯卡奖项数的分布等,都是典型的幂律分布。
那这么在R里实现幂律分布呢,别急代码如下:
用curve函数可以实现,我用的例子是power.law.fit函数帮助文档下面的example:
library(igraph)
g <- barabasi.game(1000) # increase this number to have a better estimate
d <- degree(g, mode="in")
fit1 <- power.law.fit(d+1, 10)
## 这里可以作出拟合的图出来
curve(x^fit1$alpha,from=1,to=10)
99.9904
1
2
关注作者
收藏
评论(0)
发表评论
暂无数据
推荐帖子
0条评论
0条评论
1条评论