Netflix is an organization which is Open Source Platform Github Repo : Netflix has 207 repositories and 21 members Github link : https://github.com/netflix
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(gh)
library(httr)
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.1 ──
## ✓ ggplot2 3.3.5 ✓ purrr 0.3.4
## ✓ tibble 3.1.6 ✓ stringr 1.4.0
## ✓ tidyr 1.1.4 ✓ forcats 0.5.1
## ✓ readr 2.1.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
library(ggthemes)
library(kableExtra)
##
## Attaching package: 'kableExtra'
## The following object is masked from 'package:dplyr':
##
## group_rows
library(ggplot2)
library(ggpubr)
Setting the GIT token
my_token = "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"
Sys.setenv(GITHUB_TOKEN = my_token)
A table showing the organization login, name, public_repos and members
netflix_org <- gh("/orgs/netflix", .limit = Inf)
netflix_org_members <- gh("/orgs/netflix/members", .limit = Inf)
netflix_org_df <- tibble(
login = netflix_org$login,
name = netflix_org$name,
public_repos = netflix_org$public_repos,
members = length(netflix_org_members)
)
kbl(netflix_org_df,caption = "Neflix Organization Profile") %>%
kable_classic(full_width = F, html_font = "Cambria")
| login | name | public_repos | members |
|---|---|---|---|
| Netflix | Netflix, Inc. | 207 | 21 |
netflix_org_members <- gh("/orgs/netflix/members", .limit = Inf)
netflix_members_df <- data.frame(member_name=character(),member_login=character(),
member_public_repos=integer(), member_followers=integer())
A table summarizing the members login, name, public_repos and their followers
null <- function(x){map_chr(x, ~{ifelse(is.null(.x), NA, .x)})}
notnull <- function(x) !is.null(x)
for (i in 1:length(netflix_org_members))
{
# Take login of one follower to fetch further data
login = netflix_org_members[[i]]$login
# fetch that follower's profile
f_profile <- gh("GET /users/:login", login = login, .limit = Inf)
# Take rest of data
name = f_profile$name
public_repos =f_profile$public_repos
followers = f_profile$followers
# Check for null and if not then populate data frame
if (notnull(name) & notnull(login) & notnull(public_repos) & notnull(followers))
{
netflix_members_df <- rbind(netflix_members_df,
data.frame(member_name=null(name),member_login = (login),
member_public_repos=null(public_repos),member_followers = null(followers)))
}
}
head(netflix_members_df, n = 50) %>%
kbl(caption = "Neflix Organization Member Information") %>%
kable_classic(full_width = F, html_font = "Cambria")
| member_name | member_login | member_public_repos | member_followers |
|---|---|---|---|
| Antonio Osorio | antonio-osorio | 17 | 87 |
| Armando Magalhães | armand1m | 114 | 581 |
| Ivan Porto Carrero | casualjim | 212 | 284 |
| Martin Chalupa | chali | 84 | 137 |
| Colin McIntosh | colinmcintosh | 45 | 64 |
| Flavio Ribeiro | flavioribeiro | 129 | 486 |
| Elliot Jordan | homebysix | 313 | 247 |
| James | jamesplease | 325 | 863 |
| Jason Koch | jasonk000 | 31 | 57 |
| Jay Phelps | jayphelps | 377 | 1724 |
| Karthik Kumar | karkum | 21 | 23 |
| Patrick Strawderman | kilink | 23 | 164 |
| Moshe Kolodny | kolodny | 231 | 333 |
| Kevin Wang | kzwang | 39 | 61 |
| Luis Medina | lu4nm3 | 17 | 26 |
| Obi-Ike Nwoke | nwokeo | 32 | 32 |
| Rahin Jegarajaratnam | rjegaraj | 6 | 26 |
| Roberto Perez Alcolea | rpalcolea | 118 | 140 |
| Ricardo Veguilla | rveguilla | 16 | 34 |
| Vincent | vtsao | 5 | 90 |
| Wes Todd | wesleytodd | 189 | 417 |
Note: created new column “created_year” for better visualization
netflix_org_repos <- gh("/orgs/netflix/repos", .limit = Inf)
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
length(netflix_org_repos)
## [1] 207
netflix_repos_df <- data.frame(repo_name=character(),repo_size=integer(), forks_count=integer(),
open_issues_count=integer(),closed_issues_count=integer())
for (i in 1:length(netflix_org_repos))
{
# Find all required columns
name = netflix_org_repos[[i]]$name
size = netflix_org_repos[[i]]$size
created_year = as.integer(substring(netflix_org_repos[[i]]$created_at,1,4))
forks = netflix_org_repos[[i]]$forks_count
open_issues_count = netflix_org_repos[[i]]$open_issues_count
closed_issues_url <-
paste0(netflix_org_repos[[i]]$url,"/issues?state=closed")
closed_issues = gh(closed_issues_url,username = "netflix",.limit = Inf)
closed_issues_count = length(closed_issues)
# Populate data to data frame
if (notnull(name) & notnull(size) & notnull(forks)
& notnull(created_year)
& notnull(open_issues_count) & notnull(closed_issues_count))
{
netflix_repos_df<-rbind(netflix_repos_df, data.frame(repo_name = null(name),
repo_size = null(size),
forks_count = null(forks),
created_year = null(created_year),
open_issues_count = null(open_issues_count),
closed_issues_count = null(closed_issues_count)))
}
}
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 500
## ℹ Running gh query, got 200 records of about 500
## ℹ Running gh query, got 300 records of about 500
## ℹ Running gh query, got 400 records of about 500
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1000
## ℹ Running gh query, got 200 records of about 1000
## ℹ Running gh query, got 300 records of about 1000
## ℹ Running gh query, got 400 records of about 1000
## ℹ Running gh query, got 500 records of about 1000
## ℹ Running gh query, got 600 records of about 1000
## ℹ Running gh query, got 700 records of about 1000
## ℹ Running gh query, got 800 records of about 1000
## ℹ Running gh query, got 900 records of about 1000
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 500
## ℹ Running gh query, got 200 records of about 500
## ℹ Running gh query, got 300 records of about 500
## ℹ Running gh query, got 400 records of about 500
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 500
## ℹ Running gh query, got 200 records of about 500
## ℹ Running gh query, got 300 records of about 500
## ℹ Running gh query, got 400 records of about 500
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 600
## ℹ Running gh query, got 200 records of about 600
## ℹ Running gh query, got 300 records of about 600
## ℹ Running gh query, got 400 records of about 600
## ℹ Running gh query, got 500 records of about 600
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 400
## ℹ Running gh query, got 200 records of about 400
## ℹ Running gh query, got 300 records of about 400
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1400
## ℹ Running gh query, got 200 records of about 1400
## ℹ Running gh query, got 300 records of about 1400
## ℹ Running gh query, got 400 records of about 1400
## ℹ Running gh query, got 500 records of about 1400
## ℹ Running gh query, got 600 records of about 1400
## ℹ Running gh query, got 700 records of about 1400
## ℹ Running gh query, got 800 records of about 1400
## ℹ Running gh query, got 900 records of about 1400
## ℹ Running gh query, got 1000 records of about 1400
## ℹ Running gh query, got 1100 records of about 1400
## ℹ Running gh query, got 1200 records of about 1400
## ℹ Running gh query, got 1300 records of about 1400
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1500
## ℹ Running gh query, got 200 records of about 1500
## ℹ Running gh query, got 300 records of about 1500
## ℹ Running gh query, got 400 records of about 1500
## ℹ Running gh query, got 500 records of about 1500
## ℹ Running gh query, got 600 records of about 1500
## ℹ Running gh query, got 700 records of about 1500
## ℹ Running gh query, got 800 records of about 1500
## ℹ Running gh query, got 900 records of about 1500
## ℹ Running gh query, got 1000 records of about 1500
## ℹ Running gh query, got 1100 records of about 1500
## ℹ Running gh query, got 1200 records of about 1500
## ℹ Running gh query, got 1300 records of about 1500
## ℹ Running gh query, got 1400 records of about 1500
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 400
## ℹ Running gh query, got 200 records of about 400
## ℹ Running gh query, got 300 records of about 400
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1000
## ℹ Running gh query, got 200 records of about 1000
## ℹ Running gh query, got 300 records of about 1000
## ℹ Running gh query, got 400 records of about 1000
## ℹ Running gh query, got 500 records of about 1000
## ℹ Running gh query, got 600 records of about 1000
## ℹ Running gh query, got 700 records of about 1000
## ℹ Running gh query, got 800 records of about 1000
## ℹ Running gh query, got 900 records of about 1000
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1200
## ℹ Running gh query, got 200 records of about 1200
## ℹ Running gh query, got 300 records of about 1200
## ℹ Running gh query, got 400 records of about 1200
## ℹ Running gh query, got 500 records of about 1200
## ℹ Running gh query, got 600 records of about 1200
## ℹ Running gh query, got 700 records of about 1200
## ℹ Running gh query, got 800 records of about 1200
## ℹ Running gh query, got 900 records of about 1200
## ℹ Running gh query, got 1000 records of about 1200
## ℹ Running gh query, got 1100 records of about 1200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 700
## ℹ Running gh query, got 200 records of about 700
## ℹ Running gh query, got 300 records of about 700
## ℹ Running gh query, got 400 records of about 700
## ℹ Running gh query, got 500 records of about 700
## ℹ Running gh query, got 600 records of about 700
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1200
## ℹ Running gh query, got 200 records of about 1200
## ℹ Running gh query, got 300 records of about 1200
## ℹ Running gh query, got 400 records of about 1200
## ℹ Running gh query, got 500 records of about 1200
## ℹ Running gh query, got 600 records of about 1200
## ℹ Running gh query, got 700 records of about 1200
## ℹ Running gh query, got 800 records of about 1200
## ℹ Running gh query, got 900 records of about 1200
## ℹ Running gh query, got 1000 records of about 1200
## ℹ Running gh query, got 1100 records of about 1200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1000
## ℹ Running gh query, got 200 records of about 1000
## ℹ Running gh query, got 300 records of about 1000
## ℹ Running gh query, got 400 records of about 1000
## ℹ Running gh query, got 500 records of about 1000
## ℹ Running gh query, got 600 records of about 1000
## ℹ Running gh query, got 700 records of about 1000
## ℹ Running gh query, got 800 records of about 1000
## ℹ Running gh query, got 900 records of about 1000
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1400
## ℹ Running gh query, got 200 records of about 1400
## ℹ Running gh query, got 300 records of about 1400
## ℹ Running gh query, got 400 records of about 1400
## ℹ Running gh query, got 500 records of about 1400
## ℹ Running gh query, got 600 records of about 1400
## ℹ Running gh query, got 700 records of about 1400
## ℹ Running gh query, got 800 records of about 1400
## ℹ Running gh query, got 900 records of about 1400
## ℹ Running gh query, got 1000 records of about 1400
## ℹ Running gh query, got 1100 records of about 1400
## ℹ Running gh query, got 1200 records of about 1400
## ℹ Running gh query, got 1300 records of about 1400
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 600
## ℹ Running gh query, got 200 records of about 600
## ℹ Running gh query, got 300 records of about 600
## ℹ Running gh query, got 400 records of about 600
## ℹ Running gh query, got 500 records of about 600
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1000
## ℹ Running gh query, got 200 records of about 1000
## ℹ Running gh query, got 300 records of about 1000
## ℹ Running gh query, got 400 records of about 1000
## ℹ Running gh query, got 500 records of about 1000
## ℹ Running gh query, got 600 records of about 1000
## ℹ Running gh query, got 700 records of about 1000
## ℹ Running gh query, got 800 records of about 1000
## ℹ Running gh query, got 900 records of about 1000
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 3900
## ℹ Running gh query, got 200 records of about 3900
## ℹ Running gh query, got 300 records of about 3900
## ℹ Running gh query, got 400 records of about 3900
## ℹ Running gh query, got 500 records of about 3900
## ℹ Running gh query, got 600 records of about 3900
## ℹ Running gh query, got 700 records of about 3900
## ℹ Running gh query, got 800 records of about 3900
## ℹ Running gh query, got 900 records of about 3900
## ℹ Running gh query, got 1000 records of about 3900
## ℹ Running gh query, got 1100 records of about 3900
## ℹ Running gh query, got 1200 records of about 3900
## ℹ Running gh query, got 1300 records of about 3900
## ℹ Running gh query, got 1400 records of about 3900
## ℹ Running gh query, got 1500 records of about 3900
## ℹ Running gh query, got 1600 records of about 3900
## ℹ Running gh query, got 1700 records of about 3900
## ℹ Running gh query, got 1800 records of about 3900
## ℹ Running gh query, got 1900 records of about 3900
## ℹ Running gh query, got 2000 records of about 3900
## ℹ Running gh query, got 2100 records of about 3900
## ℹ Running gh query, got 2200 records of about 3900
## ℹ Running gh query, got 2300 records of about 3900
## ℹ Running gh query, got 2400 records of about 3900
## ℹ Running gh query, got 2500 records of about 3900
## ℹ Running gh query, got 2600 records of about 3900
## ℹ Running gh query, got 2700 records of about 3900
## ℹ Running gh query, got 2800 records of about 3900
## ℹ Running gh query, got 2900 records of about 3900
## ℹ Running gh query, got 3000 records of about 3900
## ℹ Running gh query, got 3100 records of about 3900
## ℹ Running gh query, got 3200 records of about 3900
## ℹ Running gh query, got 3300 records of about 3900
## ℹ Running gh query, got 3400 records of about 3900
## ℹ Running gh query, got 3500 records of about 3900
## ℹ Running gh query, got 3600 records of about 3900
## ℹ Running gh query, got 3700 records of about 3900
## ℹ Running gh query, got 3800 records of about 3900
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1000
## ℹ Running gh query, got 200 records of about 1000
## ℹ Running gh query, got 300 records of about 1000
## ℹ Running gh query, got 400 records of about 1000
## ℹ Running gh query, got 500 records of about 1000
## ℹ Running gh query, got 600 records of about 1000
## ℹ Running gh query, got 700 records of about 1000
## ℹ Running gh query, got 800 records of about 1000
## ℹ Running gh query, got 900 records of about 1000
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 500
## ℹ Running gh query, got 200 records of about 500
## ℹ Running gh query, got 300 records of about 500
## ℹ Running gh query, got 400 records of about 500
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 500
## ℹ Running gh query, got 200 records of about 500
## ℹ Running gh query, got 300 records of about 500
## ℹ Running gh query, got 400 records of about 500
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 2600
## ℹ Running gh query, got 200 records of about 2600
## ℹ Running gh query, got 300 records of about 2600
## ℹ Running gh query, got 400 records of about 2600
## ℹ Running gh query, got 500 records of about 2600
## ℹ Running gh query, got 600 records of about 2600
## ℹ Running gh query, got 700 records of about 2600
## ℹ Running gh query, got 800 records of about 2600
## ℹ Running gh query, got 900 records of about 2600
## ℹ Running gh query, got 1000 records of about 2600
## ℹ Running gh query, got 1100 records of about 2600
## ℹ Running gh query, got 1200 records of about 2600
## ℹ Running gh query, got 1300 records of about 2600
## ℹ Running gh query, got 1400 records of about 2600
## ℹ Running gh query, got 1500 records of about 2600
## ℹ Running gh query, got 1600 records of about 2600
## ℹ Running gh query, got 1700 records of about 2600
## ℹ Running gh query, got 1800 records of about 2600
## ℹ Running gh query, got 1900 records of about 2600
## ℹ Running gh query, got 2000 records of about 2600
## ℹ Running gh query, got 2100 records of about 2600
## ℹ Running gh query, got 2200 records of about 2600
## ℹ Running gh query, got 2300 records of about 2600
## ℹ Running gh query, got 2400 records of about 2600
## ℹ Running gh query, got 2500 records of about 2600
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 1300
## ℹ Running gh query, got 200 records of about 1300
## ℹ Running gh query, got 300 records of about 1300
## ℹ Running gh query, got 400 records of about 1300
## ℹ Running gh query, got 500 records of about 1300
## ℹ Running gh query, got 600 records of about 1300
## ℹ Running gh query, got 700 records of about 1300
## ℹ Running gh query, got 800 records of about 1300
## ℹ Running gh query, got 900 records of about 1300
## ℹ Running gh query, got 1000 records of about 1300
## ℹ Running gh query, got 1100 records of about 1300
## ℹ Running gh query, got 1200 records of about 1300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 900
## ℹ Running gh query, got 200 records of about 900
## ℹ Running gh query, got 300 records of about 900
## ℹ Running gh query, got 400 records of about 900
## ℹ Running gh query, got 500 records of about 900
## ℹ Running gh query, got 600 records of about 900
## ℹ Running gh query, got 700 records of about 900
## ℹ Running gh query, got 800 records of about 900
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 400
## ℹ Running gh query, got 200 records of about 400
## ℹ Running gh query, got 300 records of about 400
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 500
## ℹ Running gh query, got 200 records of about 500
## ℹ Running gh query, got 300 records of about 500
## ℹ Running gh query, got 400 records of about 500
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 800
## ℹ Running gh query, got 200 records of about 800
## ℹ Running gh query, got 300 records of about 800
## ℹ Running gh query, got 400 records of about 800
## ℹ Running gh query, got 500 records of about 800
## ℹ Running gh query, got 600 records of about 800
## ℹ Running gh query, got 700 records of about 800
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 700
## ℹ Running gh query, got 200 records of about 700
## ℹ Running gh query, got 300 records of about 700
## ℹ Running gh query, got 400 records of about 700
## ℹ Running gh query, got 500 records of about 700
## ℹ Running gh query, got 600 records of about 700
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 300
## ℹ Running gh query, got 200 records of about 300
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 2200
## ℹ Running gh query, got 200 records of about 2200
## ℹ Running gh query, got 300 records of about 2200
## ℹ Running gh query, got 400 records of about 2200
## ℹ Running gh query, got 500 records of about 2200
## ℹ Running gh query, got 600 records of about 2200
## ℹ Running gh query, got 700 records of about 2200
## ℹ Running gh query, got 800 records of about 2200
## ℹ Running gh query, got 900 records of about 2200
## ℹ Running gh query, got 1000 records of about 2200
## ℹ Running gh query, got 1100 records of about 2200
## ℹ Running gh query, got 1200 records of about 2200
## ℹ Running gh query, got 1300 records of about 2200
## ℹ Running gh query, got 1400 records of about 2200
## ℹ Running gh query, got 1500 records of about 2200
## ℹ Running gh query, got 1600 records of about 2200
## ℹ Running gh query, got 1700 records of about 2200
## ℹ Running gh query, got 1800 records of about 2200
## ℹ Running gh query, got 1900 records of about 2200
## ℹ Running gh query, got 2000 records of about 2200
## ℹ Running gh query, got 2100 records of about 2200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 200
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 600
## ℹ Running gh query, got 200 records of about 600
## ℹ Running gh query, got 300 records of about 600
## ℹ Running gh query, got 400 records of about 600
## ℹ Running gh query, got 500 records of about 600
## ℹ Running gh query
## ℹ Running gh query, got 100 records of about 400
## ℹ Running gh query, got 200 records of about 400
## ℹ Running gh query, got 300 records of about 400
netflix_repos_df$repo_size <- as.numeric(as.character(netflix_repos_df$repo_size))
netflix_repos_df$forks_count <- as.numeric(as.character(netflix_repos_df$forks_count))
netflix_repos_df$created_year <- as.numeric(as.character(netflix_repos_df$created_year))
netflix_repos_df$open_issues_count <- as.numeric(as.character(netflix_repos_df$open_issues_count))
netflix_repos_df$closed_issues_count <- as.numeric(as.character(netflix_repos_df$closed_issues_count))
head(netflix_repos_df, n = 50) %>%
kbl(caption = "Neflix Organization Repositories Summary") %>%
kable_classic(full_width = F, html_font = "Cambria")
| repo_name | repo_size | forks_count | created_year | open_issues_count | closed_issues_count |
|---|---|---|---|---|---|
| astyanax | 6987 | 362 | 2011 | 158 | 490 |
| curator | 7545 | 440 | 2011 | 10 | 295 |
| Priam | 13378 | 286 | 2011 | 48 | 927 |
| CassJMeter | 2441 | 64 | 2011 | 16 | 9 |
| servo | 5421 | 294 | 2011 | 0 | 464 |
| aws-autoscaling | 17 | 97 | 2012 | 1 | 1 |
| netflix.github.com | 26541 | 416 | 2012 | 36 | 122 |
| gradle-template | 679 | 103 | 2012 | 3 | 10 |
| archaius | 3446 | 480 | 2012 | 104 | 500 |
| asgard | 26590 | 432 | 2012 | 102 | 573 |
| SimianArmy | 15326 | 1150 | 2012 | 45 | 285 |
| governator | 4567 | 174 | 2012 | 63 | 353 |
| netflix-commons | 404 | 73 | 2012 | 9 | 21 |
| eureka | 12117 | 3507 | 2012 | 41 | 1377 |
| edda | 3091 | 135 | 2012 | 11 | 125 |
| frigga | 448 | 45 | 2012 | 1 | 37 |
| blitz4j | 1247 | 116 | 2012 | 8 | 19 |
| Hystrix | 9784 | 4578 | 2012 | 392 | 1427 |
| Turbine | 1839 | 257 | 2012 | 54 | 62 |
| ribbon | 3376 | 1167 | 2013 | 210 | 287 |
| denominator | 4178 | 109 | 2013 | 29 | 354 |
| karyon | 2586 | 161 | 2013 | 31 | 292 |
| EVCache | 3046 | 231 | 2013 | 11 | 109 |
| aminator | 864 | 177 | 2013 | 25 | 250 |
| recipes-rss | 54008 | 105 | 2013 | 11 | 11 |
| Cloud-Prize | 274 | 465 | 2013 | 1 | 6 |
| netflix-graph | 482 | 97 | 2013 | 3 | 26 |
| zuul | 4464 | 2205 | 2013 | 256 | 980 |
| suro | 4383 | 177 | 2013 | 30 | 220 |
| brutal | 108 | 44 | 2013 | 10 | 3 |
| pytheas | 1243 | 59 | 2013 | 8 | 25 |
| Lipstick | 5663 | 142 | 2013 | 14 | 106 |
| NfWebCrypto | 15898 | 51 | 2013 | 1 | 4 |
| genie | 202868 | 358 | 2013 | 7 | 1155 |
| Nicobar | 1228 | 40 | 2013 | 6 | 52 |
| glisten | 49482 | 29 | 2013 | 17 | 21 |
| blesk | 1647 | 22 | 2013 | 0 | 12 |
| dynomite | 8833 | 515 | 2013 | 103 | 686 |
| aegisthus | 623 | 88 | 2013 | 0 | 58 |
| zeno | 5320 | 64 | 2013 | 6 | 8 |
| staash | 117999 | 44 | 2013 | 6 | 23 |
| s3mper | 146 | 35 | 2013 | 2 | 3 |
| PigPen | 1821 | 59 | 2013 | 19 | 149 |
| fabricator | 386 | 11 | 2014 | 3 | 10 |
| Fido | 4495 | 167 | 2014 | 21 | 6 |
| dyno | 7311 | 93 | 2014 | 52 | 262 |
| ReactiveLab | 581 | 72 | 2014 | 4 | 18 |
| msl | 17215 | 76 | 2014 | 30 | 288 |
| security_monkey | 14392 | 819 | 2014 | 85 | 1151 |
| spectator | 16694 | 142 | 2014 | 12 | 934 |
netflix_repo_summary <- netflix_repos_df %>% group_by(created_year) %>%
summarise(repos_count = n())
library(RColorBrewer)
coul <- brewer.pal(5, "Set2")
barplot(height=netflix_repo_summary$repos_count, names=netflix_repo_summary$created_year, col=coul)
Regarding the above bar plot, we can understand the number of repositories created by netflix organization every year
plot1 <- netflix_repo_summary %>%
ggplot(aes(x=repos_count)) +
geom_density(fill="#69b3a2", color="#e9ecef", alpha=0.8)
plot2 <- netflix_repos_df %>%
ggplot(aes(x=forks_count)) +
geom_density(fill="#69b3a2", color="#e9ecef", alpha=0.8)
ggarrange(plot1,plot2)
We can understand the density distribution of repository count and forks count from the above density plot
netflix_issue_summary <- head(netflix_repos_df, n=10)
netflix_issue_summary <- netflix_issue_summary %>% arrange(desc(open_issues_count))
ggplot(netflix_issue_summary, aes(x=repo_name, y=open_issues_count ,color=repo_size, size=open_issues_count)) + geom_point(alpha=0.7) + coord_flip()
netflix_issue_summary <- netflix_issue_summary %>% arrange(desc(closed_issues_count))
ggplot(netflix_issue_summary, aes(x=repo_name, y=closed_issues_count ,color=repo_size, size=closed_issues_count)) + geom_point(alpha=0.7) + coord_flip()
Regarding the above scatter plot, we can understand the open issue count and closed issue count of the netflix organization repositories
plot5 = ggplot(netflix_issue_summary, aes(x="", y=repo_size, fill=open_issues_count)) +
geom_bar(stat="identity", width=1) +
coord_polar("y", start=0)
plot6 = ggplot(netflix_issue_summary, aes(x="", y=repo_size, fill=closed_issues_count)) +
geom_bar(stat="identity", width=1) +
coord_polar("y", start=0)
ggarrange(plot5,plot6)
Regarding the above pie chart, we can understand the distribution of open issues count and closed issue count with respect to repo size