如何追踪GitHub项目的流行度

简介:

介绍

GitHub 是世界上最大的开源软件托管平台,因此追踪 GitHub 流行度对于软件开发者和用户都非常重要。本篇文章是介绍一个 GitHub 流行度追踪框架,使用他们的 Stars 数目来评估 GitHub 的流行软件。本文使用的数据是 GitHub 5 月 1 日的数据。

度量流行度

这里我们考虑 GitHub 上前 24 强编程语言,通过 GitHub 先进的搜索引擎分类出来的。下面的数据是每个语言前 1000 个库的 stars 数分布。

假设在 24000 个样例中系统中前 10% 的系统是流行的,前 1% 是非常流行的。

下面这个表展示的是每个编程语言流行和非常流行的系统数目

流行度增长模式 Popularity Growth Patterns

随着时间的推移评估应用的流行度,我们限制分析流行系统时间至少是 52 周。以这种方式,我们研究了 2138 个流行系统(89% 的初始样例)。为了这个系统,我们定义 Rt 是在周数 t 排名列表的排名对数(基数为 2)。这个排名对数是根据流行系统的 Stars 数目的 right-skewed 确定的。最受欢迎的系统排名是 1。最早的周是 1,最新的是 52。同时还定义了 RTop 和 RBottom 作为最高排名和最低排名。

我们得出以下的几种流行度增长模式:

持续性增长:在分析周期下持续性增长,计算方式:

(RBottom − RTop ) < 0.25示例:

 快速增长:计算方式:

(ROld − RNow ) > 1 ∧ (Rt+1 ≤ Rt) in at least 90% of the weeks t

示例:

缓慢增长:计算方式:

(RNow − ROld) > 1 ∧ (Rt+1 ≥ Rt) in at least 90% of the weeks t

示例 (which resulted in a decrease on their rank):

病毒式增长:在很短的时间内(比如一周)达到最高的 Stars 数目

示例:

下面列表展示的是每个编程语言持续性增长,快速增长,缓慢增长,病毒式增长的情况:

流行度相关的 Forks 和相关使用

Forks:下面的数据展示了一个项目流行度和 TA 的 forks 数的关系。我们可以看到 forks 和 Stars 很强的正相关关系(Spearman rank correlation coefficient = 0.55)。

客户端:为了关联客户端使用和 Stars,我们专注于一个限制的应用分组,这是由 NPM 注册表的 Node.js 基础库组成的。我们首先使用 NPM API 检索在数据库中流行 JavaScript 应用依赖的数量。然后手动根据依赖选择的 Node.js 基础库模块来审查前 100 个应用。我们发现这两个因素也有很强的关联关系(Spearman’s rank correlation coefficient of 0.68)。

总结

我们致力于一个可以跟踪 GitHub 流行度的框架,使用这个框架我们能发现:

  • JavaScript 垄断了超过三分之一的 GitHub 流行应用,接下来是 Ruby, Objective-C, Python, Java 和 PHP 这 5 种语言占据另外三分之一的流行应用。

  • 21% 的流行系统有可持续的增长;5% 的流行系统有快速的增长;少于 1% 的流行系统会缓慢增长。我们发现有 37 个系统有病毒式增长的行为。

  • 系统的 Stars 数不仅仅跟 forks 数有关,其他客户端应用的高效使用也有一定的关联。

来源:51CTO
相关文章
|
1月前
|
人工智能 文字识别 异构计算
关于github开源ocr项目的疑问
小白尝试Python OCR学习,遇到报错。尝试Paddle OCR部署失败,Tesseract OCR在Colab误操作后恢复失败。EasyOCR在Colab和阿里天池Notebook成功,但GPU资源不足。其他平台部署不顺,决定使用WebUI或阿里云轻应用。求教OCR项目部署到本地及简单OCR项目推荐。
29 2
|
1月前
|
人工智能 自然语言处理 iOS开发
『GitHub项目圈选19』推荐5款本周 让人爱不释手 的开源项目
『GitHub项目圈选19』推荐5款本周 让人爱不释手 的开源项目
|
1月前
|
存储 Web App开发 人工智能
『GitHub项目圈选18』推荐5款本周 超实用 的开源项目
『GitHub项目圈选18』推荐5款本周 超实用 的开源项目
|
1月前
|
人工智能 物联网 机器人
『GitHub项目圈选17』推荐5款本周 火火火 的AI开源项目
『GitHub项目圈选17』推荐5款本周 火火火 的AI开源项目
193 1
|
1月前
|
JSON 搜索推荐 程序员
『GitHub项目圈选15』推荐5款本周 深受程序员喜爱 的开源项目
『GitHub项目圈选15』推荐5款本周 深受程序员喜爱 的开源项目
|
1月前
|
人工智能 自然语言处理 NoSQL
『GitHub项目圈选13』推荐5款本周 让人爱不释手 的开源项目
『GitHub项目圈选13』推荐5款本周 让人爱不释手 的开源项目
|
1月前
|
SQL NoSQL Linux
『GitHub项目圈选11』推荐5款本周 深受开发人员青睐 的开源项目
『GitHub项目圈选11』推荐5款本周 深受开发人员青睐 的开源项目
|
1月前
|
存储 人工智能 API
『GitHub项目圈选10』推荐5款本周 实用给力 的开源项目
『GitHub项目圈选10』推荐5款本周 实用给力 的开源项目
|
1月前
|
人工智能 Java Linux
『GitHub项目圈选09』推荐5款本周大佬都在用的开源项目
『GitHub项目圈选09』推荐5款本周大佬都在用的开源项目
|
1月前
|
安全 机器人 API
『GitHub项目圈选08』推荐5款本周使用率超高的开源项目
『GitHub项目圈选08』推荐5款本周使用率超高的开源项目