Skip to content

Instantly share code, notes, and snippets.

@rubenarslan
Created June 16, 2020 19:44
Show Gist options
  • Save rubenarslan/43abdfb261dfbaf7ff4aaa518cbbd19d to your computer and use it in GitHub Desktop.
Save rubenarslan/43abdfb261dfbaf7ff4aaa518cbbd19d to your computer and use it in GitHub Desktop.
paper rejection cycle
library(tidyverse)
n_papers <- 1000
papers <- tibble(
paper = 1:n_papers,
quality = rnorm(n_papers),
reviews = 0,
published = FALSE,
journal = NA_real_,
most_recent_assessment = NA_real_
)
n_journals <- 20
journals <- tibble(
journal = 1:n_journals,
threshold = rnorm(n_journals),
fame = 0.5*threshold + 0.5 * rnorm(n_journals)
) %>% arrange(desc(fame))
for(p in seq_along(1:n_papers)) {
for(j in seq_along(1:n_journals)) {
papers[p, "most_recent_assessment"] <- 0.3*papers[p, "quality"] + rnorm(1)
papers[p, "reviews"] <- papers[p, "reviews"] + 3
if(papers[p, "most_recent_assessment"] > journals[j, "threshold"]) {
papers[p, "published"] <- TRUE
papers[p, "journal"] <- journals[j, "journal"]
break
}
}
}
papers_in_journals <- papers %>% left_join(journals)
papers_in_journals %>% select(quality, fame, reviews) %>% cor(use = 'pairwise')
qplot(fame, reviews, data= papers_in_journals)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment