Skip to content

Commit 52eac8b

Browse files
committed
initial release
0 parents  commit 52eac8b

6 files changed

Lines changed: 10348 additions & 0 deletions

File tree

.DS_Store

6 KB
Binary file not shown.

README.Rmd

Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
## About
2+
3+
The aim of this repository is:
4+
5+
- to share a copy of DOAJ journal master list (downloaded January 2014) -> [data/doajJournalList.csv](data/doajJournalList.csv)
6+
- to release a Bielefeld University Paid APCs 2012/13 Dataset under an Open Database License -> [data/unibi12-13.csv](data/unibi12-13.csv)
7+
- to demonstrate how reporting on fee-based Open Access publishing can be made more transparent and reproducible
8+
9+
This documentation is written in Markdown and embeds source code written in [R](http://www.r-project.org/).
10+
11+
You can run ```knit()``` to reproduce this file
12+
13+
```
14+
require(knitr)
15+
knit(readme.Rmd)
16+
```
17+
18+
## DOAJ
19+
20+
The current [DOAJ journal master list](http://doaj.org/faq#metadata) that can be downloaded as `csv` lacks information on the applicability of author processing charges (APC). Answering Ulrich Herbs concerns in his blog post [The prevalence of Open Access publication fees](http://www.scinoptica.com/pages/topics/the-prevalence-of-open-access-publication-fees.php), we decided to share our copy that we used for reporting Open Access Gold publications as part of the [DFG Open-Access Publishing Programme](http://www.dfg.de/en/research_funding/programmes/infratructure/lis/funding_opportunities/open_access_publishing/index.html) in January 2014.
21+
22+
### Load DOAJ master list
23+
24+
```{r}
25+
doaj <- read.csv("data/doajJournalList.csv", header = TRUE, sep =",")
26+
```
27+
This list contains
28+
29+
```{r}
30+
length(unique(doaj$ISSN))
31+
```
32+
registered Open Access journals.
33+
34+
The following columns are available:
35+
36+
```{r}
37+
colnames(doaj)
38+
```
39+
40+
### A closer look on APCs
41+
42+
This table summarises whether a journal requires APCs or not:
43+
44+
```{r, results='asis', tab.cap ='DOAJ APCs'}
45+
apc.table <- data.frame(table(unlist(doaj$Publication.fee)))
46+
apc.table$Perc <- apc.table$Freq / sum(apc.table$Freq) * 100
47+
colnames(apc.table) <-c("Fee", "Journals", "Share")
48+
49+
knitr::kable(apc.table[order(apc.table$Journals, decreasing = T),], row.names = FALSE, digits = 2)
50+
```
51+
52+
You may also wish to explore the growth of DOAJ by APC applicability.
53+
54+
```{r simpleplot, echo=TRUE, fig.height=8/2.54, fig.width=18/2.54, warning = FALSE, message = FALSE}
55+
#exclude journals with blank APC info
56+
doaj <- doaj[!doaj$Publication.fee == "",]
57+
doaj <- droplevels(doaj)
58+
59+
# transform to date object
60+
doaj$Added.on.date <- as.Date(doaj$Added.on.date, format="%Y-%m-%d")
61+
62+
# relevel
63+
doaj$Publication.fee <- factor (doaj$Publication.fee,
64+
levels = c(rownames(data.frame(rev(sort(table(doaj$Publication.fee)))))))
65+
66+
#prepare df for ggplotting
67+
tt <- data.frame(table(doaj$Publication.fee, doaj$Added.on.date))
68+
tt$Cumsum<-ave(tt$Freq,tt$Var1,FUN=cumsum)
69+
70+
#plot
71+
72+
ggplot2::ggplot(tt, aes(as.Date(Var2),Cumsum, group = Var1)) +
73+
geom_line(aes(colour = Var1, show_guide=FALSE)) +
74+
xlab("Date added to DOAJ") + ylab("Cumulative Sum") +
75+
scale_colour_brewer("Publication Fee",palette=2, type="qual") +
76+
theme_bw(base_size= 16) +
77+
opts(legend.key=theme_rect(fill="white",colour="white"))
78+
```
79+
80+
As this little exploration demonstrates, the DOAJ journal title master list is an excellent source (not only) to study the longitudinal growth of Open Access journal publishing. As we have shown, by reusing such a file, you can also make your study reproducible.
81+
82+
We hope that DOAJ will continue its bulk download service in order to provide an convenient way to monitor Open Access journal publishing. At Bielefeld University Library, for instance, we use the `csv` download to answer our DFG reporting requirements.
83+
84+
## Bielefeld University Paid APCs 2012/13 Dataset
85+
86+
With this dataset, we are providing information on paid Article Processing Charges (APC) by the [Open Access Publication Fund of Bielefeld University](http://oa.uni-bielefeld.de/publikationsfonds.html). The fund is supported by the German Research Foundation (DFG) under its [Open-Access Publishing Programme](http://www.dfg.de/en/research_funding/programmes/infrastructure/lis/funding_opportunities/open_access_publishing/index.html).
87+
88+
89+
### Load Data
90+
91+
To load the data in R:
92+
```{r}
93+
my.df <- read.csv("data/unibi12-13.csv", header = TRUE, sep =",")
94+
head(my.df)
95+
```
96+
97+
The dataset covers the accounting periods 2012 and 2013 (`Period`). For every single article, the `doi` is provided. Journal titles (`Journal`), publisher names (`Publisher`) and the International Standard Serial Numbers (`issn.1` and `issn.2`) are normalized according to CrossRef metadata store. In addition, `PUBID` references the copy stored in the institutional repository [PUB - Publications at Bielefeld University](http://pub.uni-bielefeld.de/en).
98+
99+
With this step, we follow Wellcome Trust example to share data on paid APCs. See:
100+
101+
Neylon, Cameron (2014): Wellcome Trust Article Processing Charges by Article 2012/13.
102+
[https://github.com/cameronneylon/apcs](https://github.com/cameronneylon/apcs)
103+
104+
105+
### Paid APCs
106+
107+
Column `EURO` contains the author processing charge for each paper including VAT.
108+
109+
In total, we paid
110+
111+
```{r}
112+
sum(my.df$EURO)
113+
```
114+
115+
for
116+
```{r}
117+
nrow(my.df)
118+
```
119+
articles.
120+
121+
122+
DFG funding covered 75%.
123+
124+
```{r}
125+
sum(my.df$EURO) * 0.75
126+
```
127+
128+
#### APC per accounting period
129+
130+
Column `EURO` contains the author processing charge paid for each paper in Euro including VAT.
131+
132+
To obtain the yearly costs for 2012 and 2013:
133+
134+
```{r}
135+
tapply(my.df$EURO, my.df$Period, sum)
136+
```
137+
138+
139+
#### APC per Publisher
140+
141+
To calculate APC paid per publisher and accounting period and print it as pretty markdown table:
142+
143+
```{r, results='asis', tab.cap ='Bielefeld University publication fund: APCs paid in EURO (incl VAT)'}
144+
# relevel publishers according to sorting
145+
my.df$Publisher <- factor (my.df$Publisher,
146+
levels = c(rownames(data.frame(rev(sort(table(my.df$Publisher)))))))
147+
148+
# calculate and print
149+
knitr::kable(tapply(my.df$EURO, list(my.df$Publisher, my.df$Period), sum))
150+
```
151+
152+
Mean APCs paid:
153+
154+
```{r, results='asis', tab.cap ='Bielefeld University publication fund: Mean APCs paid in EURO (incl VAT)'}
155+
knitr::kable(tapply(my.df$EURO, list(my.df$Publisher, my.df$Period), mean))
156+
```
157+
158+
### Licence
159+
160+
The Bielefeld University Paid APCs 2012/13 Dataset is made available under the Open Database License: http://opendatacommons.org/licenses/odbl/1.0/. Any rights in individual contents of the database are licensed under the Database Contents License: http://opendatacommons.org/licenses/dbcl/1.0/
161+
162+
### Contact
163+
164+
Najko Jahn < najko.jahn [ at ] uni-bielefeld.de >
165+
166+
Dirk Pieper < dirk.pieper [ at ] uni-bielefeld.de >

0 commit comments

Comments
 (0)