{ "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
defined_typedoigroup_ididpublished_datethumbtitleurlurl_private_apiurl_private_htmlurl_public_apiurl_public_html
0410.6084/m9.figshare.6683654.v1607266836542018-06-27T09:50:05ZGRID release 2018-06-25https://api.figshare.com/v2/articles/6683654https://api.figshare.com/v2/account/articles/6...https://figshare.com/account/articles/6683654https://api.figshare.com/v2/articles/6683654https://figshare.com/articles/GRID_release_201...
1410.6084/m9.figshare.6216392.v1607262163922018-05-03T13:02:09ZGRID release 2018-05-01https://api.figshare.com/v2/articles/6216392https://api.figshare.com/v2/account/articles/6...https://figshare.com/account/articles/6216392https://api.figshare.com/v2/articles/6216392https://figshare.com/articles/GRID_release_201...
\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
grid_idnamewikipedia_urlemail_addressestablishedline_1line_2line_3latlngpostcodeprimarycitystatestate_codecountrycountry_codegeonames_city_iddist_from_melbourne
0grid.1001.0Australian National Universityhttp://en.wikipedia.org/wiki/Australian_Nation...NaN1946.0NaNNaNNaN-35.277800149.120500NaNFalseCanberraAustralian Capital TerritoryAU-ACTAustraliaAU2172517.0465.706096
1grid.1002.3Monash Universityhttp://en.wikipedia.org/wiki/Monash_UniversityNaN1958.0NaNNaNNaN-37.908300145.138000NaNFalseMelbourneVictoriaAU-VICAustraliaAU2158177.019.944366
2grid.1003.2University of Queenslandhttp://en.wikipedia.org/wiki/University_of_Que...NaN1909.0NaNNaNNaN-27.495964153.009627NaNFalseBrisbaneQueenslandAU-QLDAustraliaAU2174003.01368.120576
3grid.1004.5Macquarie Universityhttp://en.wikipedia.org/wiki/Macquarie_UniversityNaN1964.0NaNNaNNaN-33.775259151.112915NaNFalseSydneyNew South WalesAU-NSWAustraliaAU2147714.0712.839058
4grid.1005.4UNSW Australiahttp://en.wikipedia.org/wiki/University_of_New...NaN1949.0NaNNaNNaN-33.917731151.230964NaNFalseSydneyNew South WalesAU-NSWAustraliaAU2147714.0711.126541
\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
grid_idnamewikipedia_urlemail_addressestablishedline_1line_2line_3latlngpostcodeprimarycitystatestate_codecountrycountry_codegeonames_city_iddist_from_melbourne
7grid.1008.9University of Melbournehttp://en.wikipedia.org/wiki/University_of_Mel...NaN1853.0NaNNaNNaN-37.797115144.959972NaNFalseMelbourneVictoriaAU-VICAustraliaAU2158177.00.000000
36grid.1042.7Walter and Eliza Hall Institute of Medical Res...https://en.wikipedia.org/wiki/Walter_and_Eliza...NaN1915.0NaNNaNNaN-37.798000144.956000NaNFalseMelbourneVictoriaAU-VICAustraliaAU2158177.00.363357
\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
instgridpubid
16University of Melbournegrid.1008.962186
13Royal Children's Hospitalgrid.416107.54356
14Royal Melbourne Hospitalgrid.416153.44193
20Walter and Eliza Hall Institute of Medical Res...grid.1042.72695
7Florey Institute of Neuroscience and Mental He...grid.418025.a1682
15Royal Women's Hospitalgrid.416259.d1243
10Melbourne Healthgrid.429299.d496
17Victorian Infectious Diseases Reference Labora...grid.433799.3479
11Melbourne Sexual Health Centregrid.490309.7251
8IBM Research - Australiagrid.481553.e163
4CO2CRCgrid.450289.2137
12Peter Doherty Institutegrid.483778.7134
5CRC for Spatial informationgrid.484046.a103
18Victorian Life Sciences Computation Initiativegrid.452643.274
2Australian and New Zealand Intensive Care Societygrid.489411.162
3BirdLife Australiagrid.478479.134
0Australia and New Zealand School of Governmentgrid.473712.416
19Victorian Responsible Gambling Foundationgrid.484726.b5
1Australian Mathematical Sciences Institutegrid.467229.c4
6Centre of Excellence for Particle Physics at t...grid.453169.c1
9Intensive Care Foundationgrid.479943.41
\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 }