{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Using GRID and Dimensions together to identify Collaboration within a region"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"from dslquery import dslquery\n",
"import zipfile as zf\n",
"import io\n",
"import requests\n",
"import geopy.distance"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## First download the GRID dataset, and extract the addresses.csv file\n",
"you can get the GRID dataset from here: https://grid.ac/downloads\n",
"Once unzipped, put the types.csv file in your notebook directory..."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## you can also download the latest release directly from Figshare...\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" defined_type | \n",
" doi | \n",
" group_id | \n",
" id | \n",
" published_date | \n",
" thumb | \n",
" title | \n",
" url | \n",
" url_private_api | \n",
" url_private_html | \n",
" url_public_api | \n",
" url_public_html | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 4 | \n",
" 10.6084/m9.figshare.6683654.v1 | \n",
" 6072 | \n",
" 6683654 | \n",
" 2018-06-27T09:50:05Z | \n",
" | \n",
" GRID release 2018-06-25 | \n",
" https://api.figshare.com/v2/articles/6683654 | \n",
" https://api.figshare.com/v2/account/articles/6... | \n",
" https://figshare.com/account/articles/6683654 | \n",
" https://api.figshare.com/v2/articles/6683654 | \n",
" https://figshare.com/articles/GRID_release_201... | \n",
"
\n",
" \n",
" 1 | \n",
" 4 | \n",
" 10.6084/m9.figshare.6216392.v1 | \n",
" 6072 | \n",
" 6216392 | \n",
" 2018-05-03T13:02:09Z | \n",
" | \n",
" GRID release 2018-05-01 | \n",
" https://api.figshare.com/v2/articles/6216392 | \n",
" https://api.figshare.com/v2/account/articles/6... | \n",
" https://figshare.com/account/articles/6216392 | \n",
" https://api.figshare.com/v2/articles/6216392 | \n",
" https://figshare.com/articles/GRID_release_201... | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" defined_type doi group_id id \\\n",
"0 4 10.6084/m9.figshare.6683654.v1 6072 6683654 \n",
"1 4 10.6084/m9.figshare.6216392.v1 6072 6216392 \n",
"\n",
" published_date thumb title \\\n",
"0 2018-06-27T09:50:05Z GRID release 2018-06-25 \n",
"1 2018-05-03T13:02:09Z GRID release 2018-05-01 \n",
"\n",
" url \\\n",
"0 https://api.figshare.com/v2/articles/6683654 \n",
"1 https://api.figshare.com/v2/articles/6216392 \n",
"\n",
" url_private_api \\\n",
"0 https://api.figshare.com/v2/account/articles/6... \n",
"1 https://api.figshare.com/v2/account/articles/6... \n",
"\n",
" url_private_html \\\n",
"0 https://figshare.com/account/articles/6683654 \n",
"1 https://figshare.com/account/articles/6216392 \n",
"\n",
" url_public_api \\\n",
"0 https://api.figshare.com/v2/articles/6683654 \n",
"1 https://api.figshare.com/v2/articles/6216392 \n",
"\n",
" url_public_html \n",
"0 https://figshare.com/articles/GRID_release_201... \n",
"1 https://figshare.com/articles/GRID_release_201... "
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"grid_versions = pd.DataFrame(\n",
" requests.get(\"https://api.figshare.com/v2/collections/3812929/articles\").json()\n",
").sort_values('published_date', ascending=False)\n",
"\n",
"grid_versions.head(2)"
]
},
{
"cell_type": "code",
"execution_count": 65,
"metadata": {},
"outputs": [],
"source": [
"grid_download_url = requests.get(grid_versions.loc[1]['url_public_api']).json()['files'][0]['download_url']\n",
"\n",
"with zf.ZipFile(\n",
" io.BytesIO(requests.get(grid_download_url).content)\n",
" ) as thezip:\n",
" \n",
" grid_addresses = pd.read_csv(thezip.open('full_tables/addresses.csv'),low_memory=False)\n",
" grid_institutes = pd.read_csv(thezip.open('full_tables/institutes.csv'),low_memory=False)"
]
},
{
"cell_type": "code",
"execution_count": 70,
"metadata": {},
"outputs": [],
"source": [
"grid_details = grid_institutes.merge(grid_addresses, left_on='grid_id', right_on='grid_id', how='outer')"
]
},
{
"cell_type": "code",
"execution_count": 129,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" grid_id | \n",
" name | \n",
" wikipedia_url | \n",
" email_address | \n",
" established | \n",
" line_1 | \n",
" line_2 | \n",
" line_3 | \n",
" lat | \n",
" lng | \n",
" postcode | \n",
" primary | \n",
" city | \n",
" state | \n",
" state_code | \n",
" country | \n",
" country_code | \n",
" geonames_city_id | \n",
" dist_from_melbourne | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" grid.1001.0 | \n",
" Australian National University | \n",
" http://en.wikipedia.org/wiki/Australian_Nation... | \n",
" NaN | \n",
" 1946.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" -35.277800 | \n",
" 149.120500 | \n",
" NaN | \n",
" False | \n",
" Canberra | \n",
" Australian Capital Territory | \n",
" AU-ACT | \n",
" Australia | \n",
" AU | \n",
" 2172517.0 | \n",
" 465.706096 | \n",
"
\n",
" \n",
" 1 | \n",
" grid.1002.3 | \n",
" Monash University | \n",
" http://en.wikipedia.org/wiki/Monash_University | \n",
" NaN | \n",
" 1958.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" -37.908300 | \n",
" 145.138000 | \n",
" NaN | \n",
" False | \n",
" Melbourne | \n",
" Victoria | \n",
" AU-VIC | \n",
" Australia | \n",
" AU | \n",
" 2158177.0 | \n",
" 19.944366 | \n",
"
\n",
" \n",
" 2 | \n",
" grid.1003.2 | \n",
" University of Queensland | \n",
" http://en.wikipedia.org/wiki/University_of_Que... | \n",
" NaN | \n",
" 1909.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" -27.495964 | \n",
" 153.009627 | \n",
" NaN | \n",
" False | \n",
" Brisbane | \n",
" Queensland | \n",
" AU-QLD | \n",
" Australia | \n",
" AU | \n",
" 2174003.0 | \n",
" 1368.120576 | \n",
"
\n",
" \n",
" 3 | \n",
" grid.1004.5 | \n",
" Macquarie University | \n",
" http://en.wikipedia.org/wiki/Macquarie_University | \n",
" NaN | \n",
" 1964.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" -33.775259 | \n",
" 151.112915 | \n",
" NaN | \n",
" False | \n",
" Sydney | \n",
" New South Wales | \n",
" AU-NSW | \n",
" Australia | \n",
" AU | \n",
" 2147714.0 | \n",
" 712.839058 | \n",
"
\n",
" \n",
" 4 | \n",
" grid.1005.4 | \n",
" UNSW Australia | \n",
" http://en.wikipedia.org/wiki/University_of_New... | \n",
" NaN | \n",
" 1949.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" -33.917731 | \n",
" 151.230964 | \n",
" NaN | \n",
" False | \n",
" Sydney | \n",
" New South Wales | \n",
" AU-NSW | \n",
" Australia | \n",
" AU | \n",
" 2147714.0 | \n",
" 711.126541 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" grid_id name \\\n",
"0 grid.1001.0 Australian National University \n",
"1 grid.1002.3 Monash University \n",
"2 grid.1003.2 University of Queensland \n",
"3 grid.1004.5 Macquarie University \n",
"4 grid.1005.4 UNSW Australia \n",
"\n",
" wikipedia_url email_address \\\n",
"0 http://en.wikipedia.org/wiki/Australian_Nation... NaN \n",
"1 http://en.wikipedia.org/wiki/Monash_University NaN \n",
"2 http://en.wikipedia.org/wiki/University_of_Que... NaN \n",
"3 http://en.wikipedia.org/wiki/Macquarie_University NaN \n",
"4 http://en.wikipedia.org/wiki/University_of_New... NaN \n",
"\n",
" established line_1 line_2 line_3 lat lng postcode primary \\\n",
"0 1946.0 NaN NaN NaN -35.277800 149.120500 NaN False \n",
"1 1958.0 NaN NaN NaN -37.908300 145.138000 NaN False \n",
"2 1909.0 NaN NaN NaN -27.495964 153.009627 NaN False \n",
"3 1964.0 NaN NaN NaN -33.775259 151.112915 NaN False \n",
"4 1949.0 NaN NaN NaN -33.917731 151.230964 NaN False \n",
"\n",
" city state state_code country country_code \\\n",
"0 Canberra Australian Capital Territory AU-ACT Australia AU \n",
"1 Melbourne Victoria AU-VIC Australia AU \n",
"2 Brisbane Queensland AU-QLD Australia AU \n",
"3 Sydney New South Wales AU-NSW Australia AU \n",
"4 Sydney New South Wales AU-NSW Australia AU \n",
"\n",
" geonames_city_id dist_from_melbourne \n",
"0 2172517.0 465.706096 \n",
"1 2158177.0 19.944366 \n",
"2 2174003.0 1368.120576 \n",
"3 2147714.0 712.839058 \n",
"4 2147714.0 711.126541 "
]
},
"execution_count": 129,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"grid_details.head(5)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Calculate distance from a point (In this case, the University of Melbourne)"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [],
"source": [
"institution = 'grid.1008.9'"
]
},
{
"cell_type": "code",
"execution_count": 73,
"metadata": {},
"outputs": [],
"source": [
"def gridcoords(df,grid_id):\n",
" rw = df[df['grid_id'] == grid_id]\n",
" return (rw.iloc[0]['lat'],rw.iloc[0]['lng'])\n",
"\n",
"def getdistance(coord1,coord2):\n",
" try:\n",
" return geopy.distance.distance(coord1,coord2).km\n",
" except:\n",
" return None\n",
"\n",
"source_coords = gridcoords(grid_details,institution) \n",
"\n",
"grid_details['dist_from_melbourne'] = grid_details.apply (lambda row: getdistance(source_coords,\n",
" (row['lat'],row['lng'])\n",
" ),axis=1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Identify Institutions within a 1 km radius of the University of Melbourne"
]
},
{
"cell_type": "code",
"execution_count": 139,
"metadata": {},
"outputs": [],
"source": [
"local_grids = grid_details[grid_details['dist_from_melbourne'] < 1 ]"
]
},
{
"cell_type": "code",
"execution_count": 140,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"29\n"
]
}
],
"source": [
"grids = list(local_grids.grid_id.unique())\n",
"print(len(grids))"
]
},
{
"cell_type": "code",
"execution_count": 156,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" grid_id | \n",
" name | \n",
" wikipedia_url | \n",
" email_address | \n",
" established | \n",
" line_1 | \n",
" line_2 | \n",
" line_3 | \n",
" lat | \n",
" lng | \n",
" postcode | \n",
" primary | \n",
" city | \n",
" state | \n",
" state_code | \n",
" country | \n",
" country_code | \n",
" geonames_city_id | \n",
" dist_from_melbourne | \n",
"
\n",
" \n",
" \n",
" \n",
" 7 | \n",
" grid.1008.9 | \n",
" University of Melbourne | \n",
" http://en.wikipedia.org/wiki/University_of_Mel... | \n",
" NaN | \n",
" 1853.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" -37.797115 | \n",
" 144.959972 | \n",
" NaN | \n",
" False | \n",
" Melbourne | \n",
" Victoria | \n",
" AU-VIC | \n",
" Australia | \n",
" AU | \n",
" 2158177.0 | \n",
" 0.000000 | \n",
"
\n",
" \n",
" 36 | \n",
" grid.1042.7 | \n",
" Walter and Eliza Hall Institute of Medical Res... | \n",
" https://en.wikipedia.org/wiki/Walter_and_Eliza... | \n",
" NaN | \n",
" 1915.0 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" -37.798000 | \n",
" 144.956000 | \n",
" NaN | \n",
" False | \n",
" Melbourne | \n",
" Victoria | \n",
" AU-VIC | \n",
" Australia | \n",
" AU | \n",
" 2158177.0 | \n",
" 0.363357 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" grid_id name \\\n",
"7 grid.1008.9 University of Melbourne \n",
"36 grid.1042.7 Walter and Eliza Hall Institute of Medical Res... \n",
"\n",
" wikipedia_url email_address \\\n",
"7 http://en.wikipedia.org/wiki/University_of_Mel... NaN \n",
"36 https://en.wikipedia.org/wiki/Walter_and_Eliza... NaN \n",
"\n",
" established line_1 line_2 line_3 lat lng postcode \\\n",
"7 1853.0 NaN NaN NaN -37.797115 144.959972 NaN \n",
"36 1915.0 NaN NaN NaN -37.798000 144.956000 NaN \n",
"\n",
" primary city state state_code country country_code \\\n",
"7 False Melbourne Victoria AU-VIC Australia AU \n",
"36 False Melbourne Victoria AU-VIC Australia AU \n",
"\n",
" geonames_city_id dist_from_melbourne \n",
"7 2158177.0 0.000000 \n",
"36 2158177.0 0.363357 "
]
},
"execution_count": 156,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"local_grids.head(2)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Search for all publications produced by these institutions since 2010"
]
},
{
"cell_type": "code",
"execution_count": 143,
"metadata": {},
"outputs": [],
"source": [
"def publicationsfromgrid(grids,limit=1000,pubskip='qpub'):\n",
" searchstring = \"\"\"\n",
" search publications\n",
" where\n",
" research_orgs.id in [{}]\n",
" and year >= \"2010\"\n",
" and id < \"{}\"\n",
" return publications[id+doi+times_cited+year+author_affiliations] sort by id\n",
" limit {}\n",
" \"\"\".format(\",\".join([ '\"{}\"'.format(g) for g in grids]),pubskip,limit)\n",
" #print (searchstring)\n",
" return searchstring"
]
},
{
"cell_type": "code",
"execution_count": 144,
"metadata": {},
"outputs": [],
"source": [
"def dslsearchpublications(grids):\n",
" pubskip = 'q'\n",
" pubs = []\n",
" total_pubs = []\n",
" result = {}\n",
" while (pubskip == 'q') or (len(pubs) == 1000):\n",
" pubs = dslquery(publicationsfromgrid(grids,pubskip=pubskip),0).get('publications',[])\n",
" total_pubs += pubs\n",
" pubskip = pubs[len(pubs)-1]['id'] \n",
" \n",
" \n",
" return total_pubs"
]
},
{
"cell_type": "code",
"execution_count": 145,
"metadata": {},
"outputs": [],
"source": [
"def publicationsfromgridlist(grids):\n",
" pubs=[]\n",
" \n",
" idchunks = [grids[x:x + 499] for x in range(0, len(grids), 499)]\n",
" for ids in idchunks:\n",
" pubs += dslsearchpublications(ids)\n",
" print(len(pubs))\n",
" \n",
" return pubs"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"industry_pubs = publicationsfromgridlist(grids)"
]
},
{
"cell_type": "code",
"execution_count": 147,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"70215"
]
},
"execution_count": 147,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(industry_pubs)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Citations by year of publication for the region"
]
},
{
"cell_type": "code",
"execution_count": 148,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 148,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAY0AAAEZCAYAAABrUHmEAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAH1dJREFUeJzt3XmUVfWZ7vHvw+AUQRSRRtEuOsEkiFBKBTC0WRiCoHaCyXKivRETFV3KjUlubLH9Q9toQjrT6phoQgIRb5xnbotBQkyyNBdCoSWiOBQEmyKINDjGEXzvH/tX3AOpojZ1DrW38nzWOqvOeff0HvamntrD2UcRgZmZWR7dim7AzMzePxwaZmaWm0PDzMxyc2iYmVluDg0zM8vNoWFmZrk5NMzMLDeHhpmZ5ebQMDOz3HoU3UCtHXjggVFXV1d0G2Zm7ytLly7974jo19F4H7jQqKuro7Gxseg2zMzeVyQ9n2c8H54yM7PcHBpmZpabQ8PMzHL7wJ3TMLP3j3fffZeWlhbeeuutolvZbey1114MHDiQnj17dmp6h4aZFaalpYVevXpRV1eHpKLb+cCLCDZu3EhLSwuDBg3q1Dx8eMrMCvPWW2/Rt29fB0YXkUTfvn2r2rPrMDQkzZb0oqTlFbXbJDWlx2pJTaleJ+nNimE/rZhmhKQnJDVL+pHSViLpAEkLJD2Xfu6f6krjNUtaJunoTr9LMystB0bXqvbfO8+exg3AxMpCRJweEfURUQ/cBdxdMXhl67CIuKCifj1wHjA4PVrnOR1YGBGDgYXpNcAJFeNOTdObmVmBOjynERF/kFTX1rC0t3Aa8OkdzUPSAKB3RCxKr28ETgYeACYBY9Ooc4DfAZem+o2RfYn5Ikl9JA2IiHUdviurmbrp99dkPqtnnFST+dgHW622t1be7mqv2nMaxwLrI+K5itogSY9J+r2kY1PtEKClYpyWVAPoXxEELwD9K6ZZ084025A0VVKjpMYNGzZU8XbMbHfz8ssvc9111wHwl7/8hVNOOaXgjjLnnnsuTz31FADf+ta3dnr6G264gWnTptW6rapDYzJwS8XrdcBhEXEU8HXgZkm9884s7VXEzjYRETMjoiEiGvr16/DWKWZmW1WGxsEHH8ydd95ZcEeZX/ziFwwZMgToXGjsKp0ODUk9gC8At7XWIuLtiNiYni8FVgKHA2uBgRWTD0w1gPXp8FXrYawXU30tcGg705iZ1cT06dNZuXIl9fX1nHrqqQwdOhTI/lI/+eSTGT9+PHV1dfz4xz/mBz/4AUcddRSjR49m06ZNAKxcuZKJEycyYsQIjj32WJ5++mkA7rjjDoYOHcrw4cP51Kc+1e7yt2zZwje+8Q2GDh3KsGHDuPbaawEYO3YsjY2NTJ8+nTfffJP6+nrOPPNMAH71q18xcuRI6uvrOf/889myZQsAv/zlLzn88MMZOXIkjzzyyC7596pmT+MzwNMRsfWwk6R+krqn5/9AdhJ7VTr89Kqk0ek8yFnAfWmyucCU9HzKdvWz0lVUo4FXfD7DzGptxowZfPjDH6apqYnvfve72wxbvnw5d999N0uWLOHyyy9nn3324bHHHuOYY47hxhtvBGDq1Klce+21LF26lO9973tceOGFAFx11VXMnz+fxx9/nLlz57a7/JkzZ7J69WqamppYtmzZ1mCo7G/vvfemqamJm266iRUrVnDbbbfxyCOP0NTURPfu3bnppptYt24dV1xxBY888ggPP/zw1kNbtdbhiXBJt5CdqD5QUgtwRUTMAs5g20NTAJ8CrpL0LvAecEFEbErDLiS7EmtvshPgD6T6DOB2SecAz5OdWAeYB5wINANvAF/qxPszM+u04447jl69etGrVy/2228/PvvZzwJw5JFHsmzZMl5//XX++Mc/cuqpp26d5u233wZgzJgxnH322Zx22ml84QtfaHcZv/nNb7jgggvo0SP7dXzAAQfssKeFCxeydOlSPvGJTwDw5ptvctBBB7F48WLGjh1L6yH6008/nWeffbbzb74dea6emtxO/ew2aneRXYLb1viNwNA26huBcW3UA7ioo/4+SHylklm57Lnnnlufd+vWbevrbt26sXnzZt577z369OlDU1PT30z705/+lMWLF3P//fczYsQIli5dSt++favuKSKYMmUK3/72t7ep33vvvVXPO4/d8jYitbysz7+gzWqniP9PvXr14rXXXuvUtL1792bQoEHccccdnHrqqUQEy5YtY/jw4axcuZJRo0YxatQoHnjgAdasWdNmaIwfP56f/exnHHfccfTo0YNNmzb9zd5Gz549effdd+nZsyfjxo1j0qRJfO1rX+Oggw5i06ZNvPbaa4waNYqLL76YjRs30rt3b+644w6G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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"pd.DataFrame(industry_pubs).groupby(['year']).sum().plot(kind='bar')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Publications by year for the region"
]
},
{
"cell_type": "code",
"execution_count": 149,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 149,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"pd.DataFrame(industry_pubs)[['id','year']]. \\\n",
" groupby(['year']). \\\n",
" count(). \\\n",
" plot(kind='bar')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Filter Publications list for publications produced by two or more institutions in the region"
]
},
{
"cell_type": "code",
"execution_count": 150,
"metadata": {},
"outputs": [],
"source": [
"industry_aff = [dict( \n",
" year = p['year'],\n",
" pubid = p['id'],\n",
" grid = aff['id'],\n",
" inst = aff['name']\n",
" \n",
" )\n",
" for p in industry_pubs\n",
" for auth in p.get('author_affiliations', [{}])[0]\n",
" for aff in auth.get('affiliations',[])\n",
" if aff.get('id','') in grids\n",
" \n",
"]"
]
},
{
"cell_type": "code",
"execution_count": 151,
"metadata": {},
"outputs": [],
"source": [
"idf = pd.DataFrame(industry_aff).drop_duplicates()"
]
},
{
"cell_type": "code",
"execution_count": 152,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" inst | \n",
" grid | \n",
" pubid | \n",
"
\n",
" \n",
" \n",
" \n",
" 16 | \n",
" University of Melbourne | \n",
" grid.1008.9 | \n",
" 62186 | \n",
"
\n",
" \n",
" 13 | \n",
" Royal Children's Hospital | \n",
" grid.416107.5 | \n",
" 4356 | \n",
"
\n",
" \n",
" 14 | \n",
" Royal Melbourne Hospital | \n",
" grid.416153.4 | \n",
" 4193 | \n",
"
\n",
" \n",
" 20 | \n",
" Walter and Eliza Hall Institute of Medical Res... | \n",
" grid.1042.7 | \n",
" 2695 | \n",
"
\n",
" \n",
" 7 | \n",
" Florey Institute of Neuroscience and Mental He... | \n",
" grid.418025.a | \n",
" 1682 | \n",
"
\n",
" \n",
" 15 | \n",
" Royal Women's Hospital | \n",
" grid.416259.d | \n",
" 1243 | \n",
"
\n",
" \n",
" 10 | \n",
" Melbourne Health | \n",
" grid.429299.d | \n",
" 496 | \n",
"
\n",
" \n",
" 17 | \n",
" Victorian Infectious Diseases Reference Labora... | \n",
" grid.433799.3 | \n",
" 479 | \n",
"
\n",
" \n",
" 11 | \n",
" Melbourne Sexual Health Centre | \n",
" grid.490309.7 | \n",
" 251 | \n",
"
\n",
" \n",
" 8 | \n",
" IBM Research - Australia | \n",
" grid.481553.e | \n",
" 163 | \n",
"
\n",
" \n",
" 4 | \n",
" CO2CRC | \n",
" grid.450289.2 | \n",
" 137 | \n",
"
\n",
" \n",
" 12 | \n",
" Peter Doherty Institute | \n",
" grid.483778.7 | \n",
" 134 | \n",
"
\n",
" \n",
" 5 | \n",
" CRC for Spatial information | \n",
" grid.484046.a | \n",
" 103 | \n",
"
\n",
" \n",
" 18 | \n",
" Victorian Life Sciences Computation Initiative | \n",
" grid.452643.2 | \n",
" 74 | \n",
"
\n",
" \n",
" 2 | \n",
" Australian and New Zealand Intensive Care Society | \n",
" grid.489411.1 | \n",
" 62 | \n",
"
\n",
" \n",
" 3 | \n",
" BirdLife Australia | \n",
" grid.478479.1 | \n",
" 34 | \n",
"
\n",
" \n",
" 0 | \n",
" Australia and New Zealand School of Government | \n",
" grid.473712.4 | \n",
" 16 | \n",
"
\n",
" \n",
" 19 | \n",
" Victorian Responsible Gambling Foundation | \n",
" grid.484726.b | \n",
" 5 | \n",
"
\n",
" \n",
" 1 | \n",
" Australian Mathematical Sciences Institute | \n",
" grid.467229.c | \n",
" 4 | \n",
"
\n",
" \n",
" 6 | \n",
" Centre of Excellence for Particle Physics at t... | \n",
" grid.453169.c | \n",
" 1 | \n",
"
\n",
" \n",
" 9 | \n",
" Intensive Care Foundation | \n",
" grid.479943.4 | \n",
" 1 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" inst grid pubid\n",
"16 University of Melbourne grid.1008.9 62186\n",
"13 Royal Children's Hospital grid.416107.5 4356\n",
"14 Royal Melbourne Hospital grid.416153.4 4193\n",
"20 Walter and Eliza Hall Institute of Medical Res... grid.1042.7 2695\n",
"7 Florey Institute of Neuroscience and Mental He... grid.418025.a 1682\n",
"15 Royal Women's Hospital grid.416259.d 1243\n",
"10 Melbourne Health grid.429299.d 496\n",
"17 Victorian Infectious Diseases Reference Labora... grid.433799.3 479\n",
"11 Melbourne Sexual Health Centre grid.490309.7 251\n",
"8 IBM Research - Australia grid.481553.e 163\n",
"4 CO2CRC grid.450289.2 137\n",
"12 Peter Doherty Institute grid.483778.7 134\n",
"5 CRC for Spatial information grid.484046.a 103\n",
"18 Victorian Life Sciences Computation Initiative grid.452643.2 74\n",
"2 Australian and New Zealand Intensive Care Society grid.489411.1 62\n",
"3 BirdLife Australia grid.478479.1 34\n",
"0 Australia and New Zealand School of Government grid.473712.4 16\n",
"19 Victorian Responsible Gambling Foundation grid.484726.b 5\n",
"1 Australian Mathematical Sciences Institute grid.467229.c 4\n",
"6 Centre of Excellence for Particle Physics at t... grid.453169.c 1\n",
"9 Intensive Care Foundation grid.479943.4 1"
]
},
"execution_count": 152,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"idf[['inst','grid','pubid']]. \\\n",
" groupby(['inst','grid']). \\\n",
" count(). \\\n",
" reset_index(). \\\n",
" sort_values(by='pubid', ascending=False)"
]
},
{
"cell_type": "code",
"execution_count": 153,
"metadata": {},
"outputs": [],
"source": [
"ia = pd.DataFrame(industry_aff)\n",
"\n",
"def precinct_collab(series):\n",
" precinct = [grid\n",
" for grid in series.tolist()\n",
" if grid in grids ]\n",
" if len(set(precinct)) > 1:\n",
" return 1\n",
" else:\n",
" return 0\n",
" return \n",
"\n",
"iadf =ia.groupby(['pubid','year']). \\\n",
" agg({'grid': [precinct_collab],\n",
" \n",
" }).reset_index()"
]
},
{
"cell_type": "code",
"execution_count": 157,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/usr/local/lib/python3.6/site-packages/pandas/core/generic.py:3108: PerformanceWarning: dropping on a non-lexsorted multi-index without a level parameter may impact performance.\n",
" obj = obj._drop_axis(labels, axis, level=level, errors=errors)\n"
]
},
{
"data": {
"text/plain": [
""
]
},
"execution_count": 157,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYAAAAEZCAYAAACervI0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzt3Xt8FPW9//HXh4DEinINqMRjsHJAxARDBNQfggYQxcpFvKByUSv68IJWq8bDo9X2Vy99eKHSntofj4Ki5aiVgnqsR7FqjsailCBSBZSoUYNcYkAUFeXy+f2xQ7qBBJbssjvJvJ+PB4/Mfmd25rM7w753vjM7Y+6OiIhET4tMFyAiIpmhABARiSgFgIhIRCkAREQiSgEgIhJRCgARkYhSAIiIRJQCQEQkohQAIiIR1TLTBexJp06dPC8vL9NliIg0KeXl5Z+7e87epgt1AOTl5bF48eJMlyEi0qSY2ceJTKcuIBGRiFIAiIhElAJARCSiQn0MoD5bt26lqqqKLVu2ZLoUaYKys7PJzc2lVatWmS5FJOOaXABUVVVx8MEHk5eXh5lluhxpQtydmpoaqqqq6NatW6bLEcm4JtcFtGXLFjp27KgPf9lnZkbHjh219ygSaHIBAOjDXxpN247IvzTJABARkeQ1uWMATZWZccMNN3DfffcBcO+997J582Zuv/32/bbMvLw8+vbty1/+8hcA5s6dy7PPPsvDDz+835Ypkml5JX9N2bwq7x6RsnmFkfYA0qR169bMmzePzz//PK3LLS8vZ/ny5Wldpog0DQqANGnZsiWTJ09m2rRpu42rrKzktNNOIz8/n+LiYj755BMAJk2axJQpUzjppJM46qijmDt3bu1z7rnnHk444QTy8/O57bbbGlzujTfeyB133LFb+4YNGxg1ahT5+fkMGDCAZcuWAXD77bdz6aWXMnjwYI466iimT59e+5w//elP9OvXjz59+nDFFVewffv2Rr8fIpJ5CoA0uvrqq5kzZw6bNm2q037ttdcyceJEli1bxkUXXcSUKVNqx61Zs4aysjKeffZZSkpKAFiwYAGrVq1i0aJFLF26lPLycl599dV6l3neeeexZMkSKioq6rTfdtttHH/88Sxbtow777yTCRMm1I5buXIlL7zwAosWLeIXv/gFW7duZcWKFTzxxBO8/vrrLF26lKysLObMmZOqt0ZEMkDHANLokEMOYcKECUyfPp0DDzywtn3hwoXMmzcPgPHjx3PzzTfXjhs1ahQtWrSgV69erFu3DogFwIIFCzj++OMB2Lx5M6tWreKUU07ZbZlZWVncdNNN3HXXXZxxxhm17WVlZbXHBk477TRqamr48ssvARgxYgStW7emdevWdO7cmXXr1vHSSy9RXl7OCSecAMC3335L586dU/n2iEiaKQDS7Prrr6ewsJBLLrkkoelbt25dO+zutX9vvfVWrrjiioTmMX78eO666y569+69z8vMyspi27ZtuDsTJ07krrvuSmgeIhJ+6gJKsw4dOnDeeecxc+bM2raTTjqJxx9/HIA5c+YwcODAPc7j9NNPZ9asWWzevBmA1atXs379egCKi4tZvXp1nelbtWrFT37ykzrHHwYOHFjbhVNaWkqnTp045JBDGlxmcXExc+fOrV3Ohg0b+PjjhK44KyIhpQDIgBtvvLHO2UC//e1veeihh8jPz+fRRx/lgQce2OPzhw0bxoUXXsiJJ57Icccdx9ixY/nqq6/YsWMHFRUVdOjQYbfnXHbZZWzbtq328e233055eTn5+fmUlJQwe/bsPS6zV69e/OpXv2LYsGHk5+czdOhQ1qxZs4+vXETCxHZ2K4RRUVGR73pDmBUrVnDMMcdkqKJwe+edd5g1axb3339/pksJNW1DzZt+BwBmVu7uRXubTnsAzUjv3r314S8iCVMAiIhElAJARCSiFAAiIhG11wAws1lmtt7M3olru8fMVprZMjObb2bt4sbdamYVZvaemZ0e1z48aKsws5LUvxQREdkXiewBPAwM36XtRaC3u+cD7wO3AphZL+AC4NjgOb83sywzywL+EzgD6AWMC6YVEZEM2esvgd39VTPL26VtQdzDN4CxwfBI4HF3/w74yMwqgH7BuAp3/xDAzB4Ppk36MpWpPOULmu5pXyIi+yoVxwAuBf4nGO4KfBo3ripoa6h9N2Y22cwWm9ni6urqFJSXet9++y2DBg3a56th/vznP+dvf/vbbu2lpaWcddZZqSpvn3z22WeMHTt27xPWo7S0lL///e8pradNmzZA7Aqpe7t0xZ7etyFDhrBx48aU1ibS3CQVAGY2FdgGpOyykO4+w92L3L0oJycnVbNNqVmzZjFmzBiysrISfs727dv55S9/yZAhQ/Zj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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"iadf.groupby('year').sum().plot(kind='bar')"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}