{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Gender Stats\n",
"\n",
"Since the GenderAPI data seems a bit more comprehensive ([see here](./gender_methods.ipynb)), that's what we'll use going forward. This first block recapitulates what I did in the beginning of the last notebook.function bs2{T<:Number}(a::DataArray{T}, n::Int)\n",
" means = @data(Float64[])\n",
" for x in 1:n\n",
" push!(means, mean(dropna(\n",
" sample!(a, similar(a, length(a)))\n",
" )))\n",
" end\n",
" means = dropna(means)\n",
" return (mean(means), [quantile(means, .025), quantile(means, .975)])\n",
"end"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"
ID
Date
Journal
Author_First_Name
Author_Last_Name
Author_Initials
Position
1
26466425
2015-10-15
Southeast Asian J. Trop. Med. Public Health
Suwit
Chotinun
NA
first
2
26466425
2015-10-15
Southeast Asian J. Trop. Med. Public Health
Prapas
Patchanee
NA
last
3
26466425
2015-10-15
Southeast Asian J. Trop. Med. Public Health
Suvichai
Rojanasthien
NA
second
4
26466425
2015-10-15
Southeast Asian J. Trop. Med. Public Health
Pakpoom
Tadee
NA
penultimate
5
26466425
2015-10-15
Southeast Asian J. Trop. Med. Public Health
Fred
Unger
NA
other
"
],
"text/plain": [
"5×7 DataFrames.DataFrame\n",
"│ Row │ ID │ Date │ Journal │\n",
"├─────┼──────────┼────────────┼───────────────────────────────────────────────┤\n",
"│ 1 │ 26466425 │ 2015-10-15 │ \"Southeast Asian J. Trop. Med. Public Health\" │\n",
"│ 2 │ 26466425 │ 2015-10-15 │ \"Southeast Asian J. Trop. Med. Public Health\" │\n",
"│ 3 │ 26466425 │ 2015-10-15 │ \"Southeast Asian J. Trop. Med. Public Health\" │\n",
"│ 4 │ 26466425 │ 2015-10-15 │ \"Southeast Asian J. Trop. Med. Public Health\" │\n",
"│ 5 │ 26466425 │ 2015-10-15 │ \"Southeast Asian J. Trop. Med. Public Health\" │\n",
"\n",
"│ Row │ Author_First_Name │ Author_Last_Name │ Author_Initials │ Position │\n",
"├─────┼───────────────────┼──────────────────┼─────────────────┼───────────────┤\n",
"│ 1 │ \"Suwit\" │ \"Chotinun\" │ NA │ \"first\" │\n",
"│ 2 │ \"Prapas\" │ \"Patchanee\" │ NA │ \"last\" │\n",
"│ 3 │ \"Suvichai\" │ \"Rojanasthien\" │ NA │ \"second\" │\n",
"│ 4 │ \"Pakpoom\" │ \"Tadee\" │ NA │ \"penultimate\" │\n",
"│ 5 │ \"Fred\" │ \"Unger\" │ NA │ \"other\" │"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"using StatPlots\n",
"\n",
"\n",
"include(\"../src/dataimport.jl\") # `importauthors()` and `getgenderprob()` functions\n",
"\n",
"bio = importauthors(\"../data/pubdata/bio.csv\", \"bio\")\n",
"comp = importauthors(\"../data/pubdata/comp.csv\", \"comp\")\n",
"alldata = vcat(bio, comp)\n",
"bio = 0 # to free up memory\n",
"comp = 0\n",
"\n",
"alldata[:Pfemale], alldata[:Count] = getgenderprob(alldata, \"../data/genders/genderAPI_genders.json\", :Author_First_Name)\n",
"\n",
"pool!(alldata)\n",
"alldata = alldata[!isna(alldata[:Journal]), :] # remove rows where there's no Journal\n",
"\n",
"alldata[1:5, 1:7]\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"
Dataset
MeanPF
1
bio
0.34048754243415824
2
comp
0.29633429724211385
"
],
"text/plain": [
"2×2 DataFrames.DataFrame\n",
"│ Row │ Dataset │ MeanPF │\n",
"├─────┼─────────┼──────────┤\n",
"│ 1 │ \"bio\" │ 0.340488 │\n",
"│ 2 │ \"comp\" │ 0.296334 │"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"means = by(alldata, [:Dataset], df -> DataFrame(MeanPF = mean(dropna(df[:Pfemale]))))"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
""
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"sys:1: MatplotlibDeprecationWarning: The set_axis_bgcolor function was deprecated in version 2.0. Use set_facecolor instead.\n"
]
}
],
"source": [
"bar(means, :MeanPF,\n",
" xaxis=(\"Dataset\", ([1,2], means[:Dataset])),\n",
" yaxis=(\"Percent Female\", (0, 0.6), 0:0.1:0.6),\n",
" legend=false,\n",
" grid=false,\n",
" title=\"Proportion of Female Authors\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Currently, the author positions are ordered in the dataframe in alphabetical order (first, last, other, penultimate, second), so I'm going to define a \"less than\" function to do a custom sort (thanks [Stack Overflow](http://stackoverflow.com/questions/37932963/efficient-custom-ordering-in-julia-dataframes)!). This function needs to return true for the call `x < y` for the strings in the following order: [\"first\", \"second\", \"other\", \"penultimate\", \"last\"]. "
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"true\n",
"false\n"
]
}
],
"source": [
"order = Dict(key => ix for (ix, key) in enumerate([\"first\", \"second\", \"other\", \"penultimate\", \"last\"]))\n",
"\n",
"\n",
"function authororder(pos1, pos2)\n",
" return order[pos1] < order[pos2]\n",
"end\n",
"\n",
"println(authororder(\"first\", \"second\"))\n",
"println(authororder(\"second\", \"first\"))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So now we can sort the dataframe using our custom function and the `lt` keyword."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"
ID
Date
Journal
Author_First_Name
Author_Last_Name
Author_Initials
Position
1
26466425
2015-10-15
Southeast Asian J. Trop. Med. Public Health
Suwit
Chotinun
NA
first
2
26466421
2015-10-15
Southeast Asian J. Trop. Med. Public Health
Chariya
Chomvarin
NA
first
3
26466418
2015-10-15
Southeast Asian J. Trop. Med. Public Health
Meng-Bin
Tang
NA
first
4
26460400
2015-10-11
Ann. Hum. Genet.
Christopher
Steele
D
first
5
26255944
2015-08-10
Mutat. Res.
Sara
Skiöld
NA
first
"
],
"text/plain": [
"5×7 DataFrames.DataFrame\n",
"│ Row │ ID │ Date │ Journal │\n",
"├─────┼──────────┼────────────┼───────────────────────────────────────────────┤\n",
"│ 1 │ 26466425 │ 2015-10-15 │ \"Southeast Asian J. Trop. Med. Public Health\" │\n",
"│ 2 │ 26466421 │ 2015-10-15 │ \"Southeast Asian J. Trop. Med. Public Health\" │\n",
"│ 3 │ 26466418 │ 2015-10-15 │ \"Southeast Asian J. Trop. Med. Public Health\" │\n",
"│ 4 │ 26460400 │ 2015-10-11 │ \"Ann. Hum. Genet.\" │\n",
"│ 5 │ 26255944 │ 2015-08-10 │ \"Mutat. Res.\" │\n",
"\n",
"│ Row │ Author_First_Name │ Author_Last_Name │ Author_Initials │ Position │\n",
"├─────┼───────────────────┼──────────────────┼─────────────────┼──────────┤\n",
"│ 1 │ \"Suwit\" │ \"Chotinun\" │ NA │ \"first\" │\n",
"│ 2 │ \"Chariya\" │ \"Chomvarin\" │ NA │ \"first\" │\n",
"│ 3 │ \"Meng-Bin\" │ \"Tang\" │ NA │ \"first\" │\n",
"│ 4 │ \"Christopher\" │ \"Steele\" │ \"D\" │ \"first\" │\n",
"│ 5 │ \"Sara\" │ \"Skiöld\" │ NA │ \"first\" │"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sort!(alldata, cols=:Position, lt=authororder)\n",
"alldata[1:5, 1:7]"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
""
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"byposition = by(alldata, [:Position, :Dataset], df -> mean(dropna(df[:Pfemale])))\n",
"sort!(byposition, cols=:Position, lt=authororder)\n",
"ys = hcat([byposition[byposition[:Dataset] .== x, :x1] for x in levels(byposition[:Dataset])]...)\n",
"\n",
"groupedbar(ys, bar_position=:dodge,\n",
" xaxis=(\"Author Position\", (1:5, levels(alldata[:Position]))),\n",
" yaxis=(\"Percent Female\", (0, 0.6), 0:0.1:0.6),\n",
" legend=false,\n",
" grid=false,\n",
" title=\"Proportion of Female Authors\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To reiterate, these data suggest:\n",
"\n",
"- Women are less likely to be authors than men\n",
"- Women are less likely to be first authors than second authors\n",
"- Women are less likely to be last authors than first authors\n",
"- this recapitulates previously published data that women are under-represented in biology publishing.\n",
"\n",
"New finding: It seems to be worse in computational biology than in all of biology, though not by as much as I expected."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Additional Annalysis\n",
"\n",
"Let's see how this holds up. We can't do the \"normal\" sorts of statistics that folks often do (like T-tests, chi squared etc), since we're not taking a random sample of a population, we're looking at the whole population. An alternative is to use [bootstrap analysis](https://en.wikipedia.org/wiki/Bootstrapping_(statistics)), where we randomly resample the data a bunch of times, and get statistics on those samples. Julia has a [bootstrap package](https://github.com/juliangehring/Bootstrap.jl), but it seems to be actively in development and stuff is a bit broken right now, so I decided to roll my own (my needs are modest).\n",
"\n",
"The function below takes a DataArray `a` (like a column in a DataFrame), and then takes `|a|` samples with replacement. It does this `n` times, and then takes the mean, and generates a 95% confidence interval (because of the [central limit theroem](https://en.wikipedia.org/wiki/Central_limit_theorem), I can assume these samples are normally distributed). "
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"bootstrap (generic function with 1 method)"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"function bootstrap{T<:Number}(a::DataArray{T}, n::Int)\n",
" means = Float64[]\n",
" for x in 1:n\n",
" push!(means, mean(dropna(\n",
" sample!(a, similar(a, length(a)))\n",
" )))\n",
" end\n",
" means = dropna(means) \n",
" return (mean(means), [quantile(means, .025), quantile(means, .975)])\n",
"end"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"This function takes a vector of values `v` (like, say, a group of gender probabilities), and then samples them with replacement `n` times. In other words, if I had a vector `t = [1, 2, 3, 4, 5]` and I called getbootstrap(t), it would go through and take 5 samples at random... sometimes it would be `[5, 2, 4, 3, 3]`, sometimes `[1, 1, 1, 1, 1]` etc. It would do this 1000 times, getting the mean each time."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"(2.9941999999999993,[1.8,4.4])"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"t = @data([1,2,3,4,5])\n",
"(m, ci) = bootstrap(t, 1000)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The estimate for the mean is ~3, just as it should be, but I also get a confidence interval. That means that 95% of the time, the mean was between 1.6 and 4.2.\n",
"\n",
"I can use this to look at the author genders:"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"
Dataset
Position
Mean
Lower
Upper
1
bio
first
0.37554899967549205
0.37341618040791885
0.37760934519023026
2
bio
last
0.2445807802726165
0.2425217412944195
0.24667229687530196
3
bio
other
0.36811105488635143
0.36672005662522206
0.36955886435787955
4
bio
penultimate
0.2794508567134617
0.2769456272599794
0.28192603507064085
5
bio
second
0.37867720975402264
0.376309021032719
0.38124814138903007
6
comp
first
0.31628457043398167
0.31216277156822253
0.32071948984831855
7
comp
last
0.20728100188266085
0.2035118072511263
0.21131039035313787
8
comp
other
0.33066245511496395
0.3278958261091234
0.3334795748392778
9
comp
penultimate
0.23616028172389428
0.2314216315959131
0.24072637668427668
10
comp
second
0.3219207849916515
0.3173954530484164
0.3265934968596715
"
],
"text/plain": [
"10×5 DataFrames.DataFrame\n",
"│ Row │ Dataset │ Position │ Mean │ Lower │ Upper │\n",
"├─────┼─────────┼───────────────┼──────────┼──────────┼──────────┤\n",
"│ 1 │ \"bio\" │ \"first\" │ 0.375549 │ 0.373416 │ 0.377609 │\n",
"│ 2 │ \"bio\" │ \"last\" │ 0.244581 │ 0.242522 │ 0.246672 │\n",
"│ 3 │ \"bio\" │ \"other\" │ 0.368111 │ 0.36672 │ 0.369559 │\n",
"│ 4 │ \"bio\" │ \"penultimate\" │ 0.279451 │ 0.276946 │ 0.281926 │\n",
"│ 5 │ \"bio\" │ \"second\" │ 0.378677 │ 0.376309 │ 0.381248 │\n",
"│ 6 │ \"comp\" │ \"first\" │ 0.316285 │ 0.312163 │ 0.320719 │\n",
"│ 7 │ \"comp\" │ \"last\" │ 0.207281 │ 0.203512 │ 0.21131 │\n",
"│ 8 │ \"comp\" │ \"other\" │ 0.330662 │ 0.327896 │ 0.33348 │\n",
"│ 9 │ \"comp\" │ \"penultimate\" │ 0.23616 │ 0.231422 │ 0.240726 │\n",
"│ 10 │ \"comp\" │ \"second\" │ 0.321921 │ 0.317395 │ 0.326593 │"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"by(alldata, [:Dataset, :Position]) do df\n",
" (m, ci) = bootstrap(df[:Pfemale], 1000)\n",
" return DataFrame(Mean=m, Lower=ci[1], Upper=ci[2])\n",
"end"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"That code takes the data, subsets it by `:Dataset` and `:Position` (that's the first two columns) and then returns the mean and 95% confidence intervals for each subset."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Based on Journal Specialty\n",
"\n",
"Another way to do this is to split by journals that tend to publish computational biology articles vs those that are more generalist. Here we'll only use the articles in the \"bio\" dataset to avoid double-dipping (the \"comp\" dataset is almost entirely a subset of \"bio\")"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"There are 202816 articles in the \"bio\" dataset\n",
"There are 42880 articles in the \"comp\" dataset\n",
"There are 236 articles in the \"comp\" dataset that aren't in the \"bio\" dataset\n"
]
}
],
"source": [
"bioids = Set(levels(alldata[alldata[:Dataset] .== \"bio\", :ID]))\n",
"compids = Set(levels(alldata[alldata[:Dataset] .== \"comp\", :ID]))\n",
"\n",
"println(\"There are $(length(bioids)) articles in the \\\"bio\\\" dataset\")\n",
"println(\"There are $(length(compids)) articles in the \\\"comp\\\" dataset\")\n",
"\n",
"dif = length(setdiff(compids, bioids))\n",
"\n",
"println(\"There are $dif articles in the \\\"comp\\\" dataset that aren't in the \\\"bio\\\" dataset\")"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"10×5 DataFrames.DataFrame\n",
"│ Row │ Journal │ Position │ Mean │ Lower │ Upper │\n",
"├─────┼──────────────────────┼───────────────┼──────────┼──────────┼──────────┤\n",
"│ 1 │ \"PLoS Biol.\" │ \"first\" │ 0.332263 │ 0.279012 │ 0.389686 │\n",
"│ 2 │ \"PLoS Comput. Biol.\" │ \"first\" │ 0.243255 │ 0.224564 │ 0.261672 │\n",
"│ 3 │ \"PLoS Biol.\" │ \"second\" │ 0.329098 │ 0.264278 │ 0.393998 │\n",
"│ 4 │ \"PLoS Comput. Biol.\" │ \"second\" │ 0.24995 │ 0.228304 │ 0.271633 │\n",
"│ 5 │ \"PLoS Biol.\" │ \"other\" │ 0.327756 │ 0.305247 │ 0.351926 │\n",
"│ 6 │ \"PLoS Comput. Biol.\" │ \"other\" │ 0.292379 │ 0.27278 │ 0.312326 │\n",
"│ 7 │ \"PLoS Biol.\" │ \"penultimate\" │ 0.217716 │ 0.153413 │ 0.284721 │\n",
"│ 8 │ \"PLoS Comput. Biol.\" │ \"penultimate\" │ 0.200221 │ 0.176161 │ 0.224715 │\n",
"│ 9 │ \"PLoS Biol.\" │ \"last\" │ 0.24128 │ 0.190627 │ 0.303766 │\n",
"│ 10 │ \"PLoS Comput. Biol.\" │ \"last\" │ 0.1768 │ 0.16034 │ 0.194609 │"
]
},
{
"data": {
"text/html": [
""
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"plosfocus = alldata[(alldata[:Dataset] .== \"bio\")&\n",
" ((alldata[:Journal] .== String(\"PLoS Biol.\"))|\n",
" (alldata[:Journal] .== String(\"PLoS Comput. Biol.\"))), :]\n",
"\n",
"df = by(plosfocus, [:Journal, :Position]) do df\n",
" (m, ci) = bootstrap(df[:Pfemale], 1000)\n",
" return DataFrame(Mean=m, Lower=ci[1], Upper=ci[2])\n",
"end\n",
"\n",
"sort!(df, cols=:Position, lt=authororder)\n",
"show(df)\n",
"ys = hcat([df[df[:Journal] .== x, :Mean] for x in [\"PLoS Biol.\", \"PLoS Comput. Biol.\"]]...)\n",
"\n",
"groupedbar(ys, bar_position=:dodge, lab=[\"PLoS Bio\", \"PLoS Comp Bio\"],\n",
" xaxis=(\"Author Position\", (1:5, [\"first\", \"second\", \"other\", \"penultimate\", \"last\"])),\n",
" yaxis=(\"Percent Female\", (0, 0.6), 0:0.1:0.6),\n",
" grid=false,\n",
" title=\"Proportion of Female Authors in PLoS Journals\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Alternatively, we can look at all the journals, and look at where each journal in terms of the proportion of female authors. Here, I'm plotting out all of the journals with more than 1000 authors (each author is a line, so I can just get the number of rows with a particular journal), and coloring them grey if they have \"comput\", \"omic\", \"informatic\", or \"system\" in their title."
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
""
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"bio = alldata[alldata[:Dataset] .== \"bio\", :]\n",
"c = countmap(bio[:Journal])\n",
"\n",
"journals = bio[map(x -> c[x] > 1000, bio[:Journal]), :]\n",
"\n",
"function checktitle(t::String)\n",
" for f in [\"comput\", \"omic\", \"informatic\", \"system\"]\n",
" if contains(t, f)\n",
" return true\n",
" end\n",
" end\n",
" return false\n",
"end\n",
"\n",
"data = by(journals, :Journal) do df\n",
" m = mean(dropna(df[:Pfemale]))\n",
" return DataFrame(Mean=m)\n",
"end\n",
"\n",
"data[:Color] = [checktitle(x) ? :grey : :black for x in data[:Journal]]\n",
"data = data[!isna(data[:Mean]), :]\n",
"sort!(data, cols=:Mean)\n",
"bar(data[:Mean], color=data[:Color], grid=false, legend=false, bar_edges=false)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Subsetting Conclusions\n",
"\n",
"With a few exceptions, each of these subsets show a similar trend: women are less likely to be authors in computational biology publications. "
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"## Data from the arXiv\n",
"\n",
"Previous work suggests that women are far less likely to publish in computer science. Unfortunately, pubmed doesn't index computer science research. \n",
"\n",
"The arXiv has preprints in many fields, including computer science. The sorts of papers posted here are likely to be different, so we can't compare directly to the stuff on pubmed, but there's also quantatative biology..."
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"collapsed": false
},
"outputs": [
{
"ename": "LoadError",
"evalue": "SystemError: opening file ../data/pubdata/arxivcs.csv: No such file or directory",
"output_type": "error",
"traceback": [
"SystemError: opening file ../data/pubdata/arxivcs.csv: No such file or directory",
"",
" in #systemerror#51 at ./error.jl:34 [inlined]",
" in systemerror(::String, ::Bool) at ./error.jl:34",
" in open(::String, ::Bool, ::Bool, ::Bool, ::Bool, ::Bool) at ./iostream.jl:89",
" in open(::String, ::String) at ./iostream.jl:101",
" in #readtable#79(::Bool, ::Char, ::Array{Char,1}, ::Char, ::Array{String,1}, ::Array{String,1}, ::Array{String,1}, ::Bool, ::Int64, ::Array{Symbol,1}, ::Array{Any,1}, ::Bool, ::Char, ::Bool, ::Int64, ::Array{Int64,1}, ::Bool, ::Symbol, ::Bool, ::Bool, ::DataFrames.#readtable, ::String) at /Users/ksb/.julia/v0.5/DataFrames/src/dataframe/io.jl:941",
" in readtable(::String) at /Users/ksb/.julia/v0.5/DataFrames/src/dataframe/io.jl:930",
" in importauthors(::String, ::String) at /Users/ksb/computation/science/gender-comp-bio/src/dataimport.jl:5"
]
}
],
"source": [
"\n",
"arxivcs = importauthors(\"../data/pubdata/arxivcs.csv\", \"arxivcs\")\n",
"arxivbio = importauthors(\"../data/pubdata/arxivbio.csv\", \"arxivbio\")\n",
"\n",
"arxiv = vcat(arxivbio, arxivcs)\n",
"arxivcs = 0\n",
"arxivbio = 0\n",
"\n",
"pool!(arxiv)\n",
"arxiv = arxiv[!isna(arxiv[:Author_Name]), :]\n",
"\n",
"arxiv[:Pfemale], arxiv[:Count] = getgenderprob(arxiv, \"../data/genders/genderAPI_genders.json\", :Author_Name)\n",
"\n",
"\n",
"arxivbyposition = bystats(arxiv, [:Dataset, :Position])"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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",
"image/svg+xml": [
"\n",
"\n"
],
"text/html": [
"\n",
"\n"
],
"text/plain": [
"Plot(...)"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"plot(arxivbyposition, x=:Position, y=:Mean, color=:Dataset,\n",
" Scale.color_discrete_manual(my_colors...),\n",
" Guide.title(\"Female Authors in arXiv\"),\n",
" Geom.bar(position = :dodge),\n",
" Scale.x_discrete(levels=[\"first\", \"second\", \"other\", \"penultimate\", \"last\"]),\n",
" Theme(bar_spacing=2mm))"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Julia 0.5.1-pre",
"language": "julia",
"name": "julia-0.5"
},
"language_info": {
"file_extension": ".jl",
"mimetype": "application/julia",
"name": "julia",
"version": "0.5.1"
}
},
"nbformat": 4,
"nbformat_minor": 0
}