https://github.com/hongtaoh/32vis
Tip revision: 9960413711b0efb1f51ff7cce3548d259be8d8cb authored by Hongtao Hao on 24 May 2025, 20:13:11 UTC
Update README.md
Update README.md
Tip revision: 9960413
Trends_Statistics.ipynb
{
"cells": [
{
"cell_type": "code",
"execution_count": 11,
"id": "da0cc1f9",
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"from collections import Counter\n",
"import seaborn as sns\n",
"import matplotlib\n",
"font = {'family' : 'Arial',\n",
" 'weight' : 'normal',\n",
" 'size' : 12}\n",
"matplotlib.rc('font', **font)\n",
"import altair as alt\n",
"pd.set_option('display.max_rows', 500)\n",
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "b87e11fb",
"metadata": {},
"outputs": [],
"source": [
"author = pd.read_csv('../data/ht_class/ht_cleaned_author_df.csv')\n",
"paper = pd.read_csv('../data/ht_class/ht_cleaned_paper_df.csv')"
]
},
{
"cell_type": "markdown",
"id": "c86de97a",
"metadata": {},
"source": [
"### Number of publications by year"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "877f7f98",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Year</th>\n",
" <th>Number of Publications</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1990-01-01</td>\n",
" <td>52</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1991-01-01</td>\n",
" <td>50</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1992-01-01</td>\n",
" <td>53</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1993-01-01</td>\n",
" <td>55</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1994-01-01</td>\n",
" <td>53</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Year Number of Publications\n",
"0 1990-01-01 52\n",
"1 1991-01-01 50\n",
"2 1992-01-01 53\n",
"3 1993-01-01 55\n",
"4 1994-01-01 53"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pub_num_df = paper.groupby(\n",
" 'Year').size().reset_index(name = 'Number of Publications')\n",
"pub_num_df['Year'] = pd.to_datetime(\n",
" pub_num_df['Year'], format=\"%Y\"\n",
")\n",
"pub_num_df.head()"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "2508935e",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Year</th>\n",
" <th>Number of Publications</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>2017-01-01</td>\n",
" <td>114</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>2018-01-01</td>\n",
" <td>127</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>2019-01-01</td>\n",
" <td>129</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>2020-01-01</td>\n",
" <td>157</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>2021-01-01</td>\n",
" <td>170</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Year Number of Publications\n",
"27 2017-01-01 114\n",
"28 2018-01-01 127\n",
"29 2019-01-01 129\n",
"30 2020-01-01 157\n",
"31 2021-01-01 170"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pub_num_df.tail()"
]
},
{
"cell_type": "markdown",
"id": "bae056e1",
"metadata": {},
"source": [
"### Number of unique authors"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "2c94bd33",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"110"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# how many rows miss openalex author id\n",
"author[author['OpenAlex Author ID'].isnull()].shape[0]"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "1eb832d6",
"metadata": {},
"outputs": [],
"source": [
"author_with_author_id = author[\n",
" author['OpenAlex Author ID'].notnull()]"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "72e1818e",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Year</th>\n",
" <th>Number of Unique Authors</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1990-01-01</td>\n",
" <td>118</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1991-01-01</td>\n",
" <td>126</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1992-01-01</td>\n",
" <td>121</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1993-01-01</td>\n",
" <td>117</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1994-01-01</td>\n",
" <td>130</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Year Number of Unique Authors\n",
"0 1990-01-01 118\n",
"1 1991-01-01 126\n",
"2 1992-01-01 121\n",
"3 1993-01-01 117\n",
"4 1994-01-01 130"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"unique_author_num_df = author_with_author_id.groupby(\n",
" 'Year')['OpenAlex Author ID'].nunique().reset_index(\n",
" name = 'Number of Unique Authors')\n",
"unique_author_num_df['Year'] = pd.to_datetime(\n",
" unique_author_num_df['Year'], format=\"%Y\",\n",
")\n",
"unique_author_num_df.head()"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "004e5d73",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Year</th>\n",
" <th>Number of Unique Authors</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>2017-01-01</td>\n",
" <td>455</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>2018-01-01</td>\n",
" <td>494</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>2019-01-01</td>\n",
" <td>551</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>2020-01-01</td>\n",
" <td>640</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>2021-01-01</td>\n",
" <td>670</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Year Number of Unique Authors\n",
"27 2017-01-01 455\n",
"28 2018-01-01 494\n",
"29 2019-01-01 551\n",
"30 2020-01-01 640\n",
"31 2021-01-01 670"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"unique_author_num_df.tail()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "63f9aede",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"467.79661016949154"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"((670 - 118)/118)*100"
]
},
{
"cell_type": "markdown",
"id": "27788fa4",
"metadata": {},
"source": [
"### Non-VIS VS VIS citations"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "5c4a95fb",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# VIS PAPERS' OPENALEX IDS\n",
"ids = paper['OpenAlex ID'].tolist()\n",
"len(list(set(ids))) == paper.shape[0]"
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "d1b3ed04",
"metadata": {},
"outputs": [],
"source": [
"# Yes, I should not use the unique paper df\n",
"ref = pd.read_csv('../data/processed/openalex_reference_paper_df.csv')\n",
"ref = ref[ref['OpenAlex ID'].notnull()]"
]
},
{
"cell_type": "code",
"execution_count": 22,
"id": "0452502d",
"metadata": {},
"outputs": [],
"source": [
"cit = pd.read_csv('../data/processed/openalex_citation_paper_df.csv')\n",
"cit = cit[cit['Citation Paper OpenAlex ID'].notnull()]"
]
},
{
"cell_type": "code",
"execution_count": 23,
"id": "b959806d",
"metadata": {},
"outputs": [],
"source": [
"ref['VIS'] = ref['OpenAlex ID'].apply(\n",
" lambda x: 'Yes' if x in ids else 'No'\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "e2cdf5fa",
"metadata": {},
"outputs": [],
"source": [
"cit['VIS'] = cit['Citation Paper OpenAlex ID'].apply(\n",
" lambda x: 'Yes' if x in ids else 'No'\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "2dfd8a64",
"metadata": {},
"outputs": [],
"source": [
"tuples = []\n",
"for group in cit.groupby('OpenAlex Year'):\n",
" year = group[0]\n",
" total = group[1].shape[0]\n",
" for subgroup in group[1].groupby('VIS'):\n",
" type_of_paper = subgroup[0] # true or false\n",
" count = subgroup[1].shape[0]\n",
" ratio = count / total\n",
" tuples.append((year, type_of_paper, count, ratio))"
]
},
{
"cell_type": "code",
"execution_count": 26,
"id": "1b298589",
"metadata": {},
"outputs": [],
"source": [
"cit_df = pd.DataFrame(list(tuples), columns=['year', 'type', 'count', 'ratio']) "
]
},
{
"cell_type": "code",
"execution_count": 27,
"id": "3dffe128",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>type</th>\n",
" <th>count</th>\n",
" <th>ratio</th>\n",
" <th>Year</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1990.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>6</td>\n",
" <td>0.750000</td>\n",
" <td>1990-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1990.0</td>\n",
" <td>VIS</td>\n",
" <td>2</td>\n",
" <td>0.250000</td>\n",
" <td>1990-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>1991.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>56</td>\n",
" <td>0.736842</td>\n",
" <td>1991-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>1991.0</td>\n",
" <td>VIS</td>\n",
" <td>20</td>\n",
" <td>0.263158</td>\n",
" <td>1991-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>1992.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>113</td>\n",
" <td>0.710692</td>\n",
" <td>1992-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>1992.0</td>\n",
" <td>VIS</td>\n",
" <td>46</td>\n",
" <td>0.289308</td>\n",
" <td>1992-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>1993.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>202</td>\n",
" <td>0.801587</td>\n",
" <td>1993-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>1993.0</td>\n",
" <td>VIS</td>\n",
" <td>50</td>\n",
" <td>0.198413</td>\n",
" <td>1993-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>1994.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>285</td>\n",
" <td>0.789474</td>\n",
" <td>1994-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>1994.0</td>\n",
" <td>VIS</td>\n",
" <td>76</td>\n",
" <td>0.210526</td>\n",
" <td>1994-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>1995.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>454</td>\n",
" <td>0.809269</td>\n",
" <td>1995-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>1995.0</td>\n",
" <td>VIS</td>\n",
" <td>107</td>\n",
" <td>0.190731</td>\n",
" <td>1995-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>1996.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>485</td>\n",
" <td>0.822034</td>\n",
" <td>1996-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>1996.0</td>\n",
" <td>VIS</td>\n",
" <td>105</td>\n",
" <td>0.177966</td>\n",
" <td>1996-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>1997.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>766</td>\n",
" <td>0.829004</td>\n",
" <td>1997-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>1997.0</td>\n",
" <td>VIS</td>\n",
" <td>158</td>\n",
" <td>0.170996</td>\n",
" <td>1997-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>1998.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>809</td>\n",
" <td>0.788499</td>\n",
" <td>1998-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>1998.0</td>\n",
" <td>VIS</td>\n",
" <td>217</td>\n",
" <td>0.211501</td>\n",
" <td>1998-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>1999.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>1079</td>\n",
" <td>0.839689</td>\n",
" <td>1999-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>1999.0</td>\n",
" <td>VIS</td>\n",
" <td>206</td>\n",
" <td>0.160311</td>\n",
" <td>1999-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>2000.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>1355</td>\n",
" <td>0.847935</td>\n",
" <td>2000-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>2000.0</td>\n",
" <td>VIS</td>\n",
" <td>243</td>\n",
" <td>0.152065</td>\n",
" <td>2000-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>2001.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>1664</td>\n",
" <td>0.891747</td>\n",
" <td>2001-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>2001.0</td>\n",
" <td>VIS</td>\n",
" <td>202</td>\n",
" <td>0.108253</td>\n",
" <td>2001-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>2002.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>2159</td>\n",
" <td>0.889576</td>\n",
" <td>2002-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>2002.0</td>\n",
" <td>VIS</td>\n",
" <td>268</td>\n",
" <td>0.110424</td>\n",
" <td>2002-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>2003.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>2746</td>\n",
" <td>0.898854</td>\n",
" <td>2003-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>2003.0</td>\n",
" <td>VIS</td>\n",
" <td>309</td>\n",
" <td>0.101146</td>\n",
" <td>2003-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>2004.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>3354</td>\n",
" <td>0.892021</td>\n",
" <td>2004-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>32</th>\n",
" <td>2004.0</td>\n",
" <td>VIS</td>\n",
" <td>406</td>\n",
" <td>0.107979</td>\n",
" <td>2004-01-01</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" year type count ratio Year\n",
"3 1990.0 Non-VIS 6 0.750000 1990-01-01\n",
"4 1990.0 VIS 2 0.250000 1990-01-01\n",
"5 1991.0 Non-VIS 56 0.736842 1991-01-01\n",
"6 1991.0 VIS 20 0.263158 1991-01-01\n",
"7 1992.0 Non-VIS 113 0.710692 1992-01-01\n",
"8 1992.0 VIS 46 0.289308 1992-01-01\n",
"9 1993.0 Non-VIS 202 0.801587 1993-01-01\n",
"10 1993.0 VIS 50 0.198413 1993-01-01\n",
"11 1994.0 Non-VIS 285 0.789474 1994-01-01\n",
"12 1994.0 VIS 76 0.210526 1994-01-01\n",
"13 1995.0 Non-VIS 454 0.809269 1995-01-01\n",
"14 1995.0 VIS 107 0.190731 1995-01-01\n",
"15 1996.0 Non-VIS 485 0.822034 1996-01-01\n",
"16 1996.0 VIS 105 0.177966 1996-01-01\n",
"17 1997.0 Non-VIS 766 0.829004 1997-01-01\n",
"18 1997.0 VIS 158 0.170996 1997-01-01\n",
"19 1998.0 Non-VIS 809 0.788499 1998-01-01\n",
"20 1998.0 VIS 217 0.211501 1998-01-01\n",
"21 1999.0 Non-VIS 1079 0.839689 1999-01-01\n",
"22 1999.0 VIS 206 0.160311 1999-01-01\n",
"23 2000.0 Non-VIS 1355 0.847935 2000-01-01\n",
"24 2000.0 VIS 243 0.152065 2000-01-01\n",
"25 2001.0 Non-VIS 1664 0.891747 2001-01-01\n",
"26 2001.0 VIS 202 0.108253 2001-01-01\n",
"27 2002.0 Non-VIS 2159 0.889576 2002-01-01\n",
"28 2002.0 VIS 268 0.110424 2002-01-01\n",
"29 2003.0 Non-VIS 2746 0.898854 2003-01-01\n",
"30 2003.0 VIS 309 0.101146 2003-01-01\n",
"31 2004.0 Non-VIS 3354 0.892021 2004-01-01\n",
"32 2004.0 VIS 406 0.107979 2004-01-01"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cit_df = cit_df[(cit_df.year >= 1990) & (cit_df.year <= 2021)]\n",
"cit_df['Year'] = pd.to_datetime(cit_df['year'], format='%Y')\n",
"cit_df.replace({'Yes': 'VIS', 'No': 'Non-VIS'}, inplace=True)\n",
"cit_df.head(30)"
]
},
{
"cell_type": "code",
"execution_count": 28,
"id": "79af1c1f",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>type</th>\n",
" <th>count</th>\n",
" <th>ratio</th>\n",
" <th>Year</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>2011.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>6091</td>\n",
" <td>0.888938</td>\n",
" <td>2011-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>2011.0</td>\n",
" <td>VIS</td>\n",
" <td>761</td>\n",
" <td>0.111062</td>\n",
" <td>2011-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>65</th>\n",
" <td>2021.0</td>\n",
" <td>Non-VIS</td>\n",
" <td>11309</td>\n",
" <td>0.843703</td>\n",
" <td>2021-01-01</td>\n",
" </tr>\n",
" <tr>\n",
" <th>66</th>\n",
" <td>2021.0</td>\n",
" <td>VIS</td>\n",
" <td>2095</td>\n",
" <td>0.156297</td>\n",
" <td>2021-01-01</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" year type count ratio Year\n",
"45 2011.0 Non-VIS 6091 0.888938 2011-01-01\n",
"46 2011.0 VIS 761 0.111062 2011-01-01\n",
"65 2021.0 Non-VIS 11309 0.843703 2021-01-01\n",
"66 2021.0 VIS 2095 0.156297 2021-01-01"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cit_df[cit_df.year.isin([2021, 2011])]"
]
},
{
"cell_type": "markdown",
"id": "a1495e00",
"metadata": {},
"source": [
"### Average number of authors"
]
},
{
"cell_type": "code",
"execution_count": 29,
"id": "89b8c7e0",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Year</th>\n",
" <th>Number of Authors</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>2012</td>\n",
" <td>4.310345</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>2013</td>\n",
" <td>4.128713</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>2014</td>\n",
" <td>4.609023</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>2015</td>\n",
" <td>4.519685</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>2016</td>\n",
" <td>4.686957</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>2017</td>\n",
" <td>4.728070</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>2018</td>\n",
" <td>4.629921</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>2019</td>\n",
" <td>5.255814</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>2020</td>\n",
" <td>5.050955</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>2021</td>\n",
" <td>4.970588</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Year Number of Authors\n",
"22 2012 4.310345\n",
"23 2013 4.128713\n",
"24 2014 4.609023\n",
"25 2015 4.519685\n",
"26 2016 4.686957\n",
"27 2017 4.728070\n",
"28 2018 4.629921\n",
"29 2019 5.255814\n",
"30 2020 5.050955\n",
"31 2021 4.970588"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"author_num_df = paper.groupby(\n",
" 'Year')['Number of Authors'].mean().to_frame().reset_index()\n",
"author_num_df.tail(10)"
]
},
{
"cell_type": "code",
"execution_count": 30,
"id": "d941030c",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"g = sns.lineplot(x='Year', \n",
" y='Number of Authors', \n",
" data = author_num_df)\n",
"g.set_ylim(0,)\n",
"g.set_ylabel('Average Number of Authors')\n",
"plt.grid()"
]
},
{
"cell_type": "markdown",
"id": "097d8acd",
"metadata": {},
"source": [
"### Number of participating countries"
]
},
{
"cell_type": "code",
"execution_count": 31,
"id": "f0613595",
"metadata": {},
"outputs": [],
"source": [
"year_1990_paper = paper[paper.Year == 1990]\n",
"year_1990_cross_country = year_1990_paper[\n",
" year_1990_paper['Cross-country Collaboration']==True]\n",
"year_1990_cross_country_dois = year_1990_cross_country.DOI.tolist()"
]
},
{
"cell_type": "code",
"execution_count": 32,
"id": "8c696d1f",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Conference</th>\n",
" <th>Year</th>\n",
" <th>Title</th>\n",
" <th>DOI</th>\n",
" <th>FirstPage</th>\n",
" <th>LastPage</th>\n",
" <th>PaperType</th>\n",
" <th>OpenAlex Year</th>\n",
" <th>OpenAlex Publication Date</th>\n",
" <th>OpenAlex ID</th>\n",
" <th>...</th>\n",
" <th>Number of Authors</th>\n",
" <th>Cross-type Collaboration</th>\n",
" <th>Cross-country Collaboration</th>\n",
" <th>With US Authors</th>\n",
" <th>Both Cross-type and Cross-country Collaboration</th>\n",
" <th>IEEE Title</th>\n",
" <th>Citation Counts on Google Scholar</th>\n",
" <th>Award</th>\n",
" <th>Award Name</th>\n",
" <th>Award Track</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>1042</th>\n",
" <td>Vis</td>\n",
" <td>1990</td>\n",
" <td>Methods for surface interrogation</td>\n",
" <td>10.1109/VISUAL.1990.146381</td>\n",
" <td>187.0</td>\n",
" <td>193, 472</td>\n",
" <td>C</td>\n",
" <td>1990</td>\n",
" <td>1990-10-23</td>\n",
" <td>W2103253409</td>\n",
" <td>...</td>\n",
" <td>3.0</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>Methods for surface interrogation</td>\n",
" <td>55</td>\n",
" <td>False</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2155</th>\n",
" <td>Vis</td>\n",
" <td>1990</td>\n",
" <td>A journey into the fourth dimension</td>\n",
" <td>10.1109/VISUAL.1990.146385</td>\n",
" <td>219.0</td>\n",
" <td>229, 476-477</td>\n",
" <td>C</td>\n",
" <td>1990</td>\n",
" <td>1990-10-23</td>\n",
" <td>W2149054233</td>\n",
" <td>...</td>\n",
" <td>2.0</td>\n",
" <td>False</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>A journey into the fourth dimension (visualiza...</td>\n",
" <td>16</td>\n",
" <td>False</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>2 rows × 27 columns</p>\n",
"</div>"
],
"text/plain": [
" Conference Year Title \\\n",
"1042 Vis 1990 Methods for surface interrogation \n",
"2155 Vis 1990 A journey into the fourth dimension \n",
"\n",
" DOI FirstPage LastPage PaperType \\\n",
"1042 10.1109/VISUAL.1990.146381 187.0 193, 472 C \n",
"2155 10.1109/VISUAL.1990.146385 219.0 229, 476-477 C \n",
"\n",
" OpenAlex Year OpenAlex Publication Date OpenAlex ID ... \\\n",
"1042 1990 1990-10-23 W2103253409 ... \n",
"2155 1990 1990-10-23 W2149054233 ... \n",
"\n",
" Number of Authors Cross-type Collaboration Cross-country Collaboration \\\n",
"1042 3.0 True True \n",
"2155 2.0 False True \n",
"\n",
" With US Authors Both Cross-type and Cross-country Collaboration \\\n",
"1042 True True \n",
"2155 True False \n",
"\n",
" IEEE Title \\\n",
"1042 Methods for surface interrogation \n",
"2155 A journey into the fourth dimension (visualiza... \n",
"\n",
" Citation Counts on Google Scholar Award Award Name Award Track \n",
"1042 55 False NaN NaN \n",
"2155 16 False NaN NaN \n",
"\n",
"[2 rows x 27 columns]"
]
},
"execution_count": 32,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"year_1990_cross_country"
]
},
{
"cell_type": "code",
"execution_count": 33,
"id": "219cc3eb",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Year</th>\n",
" <th>DOI</th>\n",
" <th>Title</th>\n",
" <th>Number of Authors</th>\n",
" <th>Author Position</th>\n",
" <th>Author Name</th>\n",
" <th>OpenAlex Author ID</th>\n",
" <th>Affiliation Name</th>\n",
" <th>Affiliation Country Code</th>\n",
" <th>Affiliation Type</th>\n",
" <th>Binary Type</th>\n",
" <th>Cross-type Collaboration</th>\n",
" <th>International Collaboration</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>3614</th>\n",
" <td>1990</td>\n",
" <td>10.1109/VISUAL.1990.146381</td>\n",
" <td>Methods for surface interrogation</td>\n",
" <td>3.0</td>\n",
" <td>1.0</td>\n",
" <td>H. Hagen</td>\n",
" <td>https://openalex.org/A2237445521</td>\n",
" <td>FB-Informatik, Universität Kaiserslautern</td>\n",
" <td>DE</td>\n",
" <td>education</td>\n",
" <td>education</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3615</th>\n",
" <td>1990</td>\n",
" <td>10.1109/VISUAL.1990.146381</td>\n",
" <td>Methods for surface interrogation</td>\n",
" <td>3.0</td>\n",
" <td>2.0</td>\n",
" <td>T. Schreiber</td>\n",
" <td>https://openalex.org/A2973511128</td>\n",
" <td>FB-Informatik, Universität Kaiserslautern</td>\n",
" <td>DE</td>\n",
" <td>education</td>\n",
" <td>education</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3616</th>\n",
" <td>1990</td>\n",
" <td>10.1109/VISUAL.1990.146381</td>\n",
" <td>Methods for surface interrogation</td>\n",
" <td>3.0</td>\n",
" <td>3.0</td>\n",
" <td>E. Gschwind</td>\n",
" <td>https://openalex.org/A1980220218</td>\n",
" <td>Mechanical Design Division, Hewlett-Packard GmbH</td>\n",
" <td>US</td>\n",
" <td>company</td>\n",
" <td>non-education</td>\n",
" <td>True</td>\n",
" <td>True</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7745</th>\n",
" <td>1990</td>\n",
" <td>10.1109/VISUAL.1990.146385</td>\n",
" <td>A journey into the fourth dimension</td>\n",
" <td>2.0</td>\n",
" <td>1.0</td>\n",
" <td>Y. Ke</td>\n",
" <td>https://openalex.org/A2684845787</td>\n",
" <td>Department of Computational Science, Universit...</td>\n",
" <td>CA</td>\n",
" <td>education</td>\n",
" <td>education</td>\n",
" <td>False</td>\n",
" <td>True</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7746</th>\n",
" <td>1990</td>\n",
" <td>10.1109/VISUAL.1990.146385</td>\n",
" <td>A journey into the fourth dimension</td>\n",
" <td>2.0</td>\n",
" <td>2.0</td>\n",
" <td>E.S. Panduranga</td>\n",
" <td>https://openalex.org/A2302757246</td>\n",
" <td>Department of Computer Sciences, Johns Hopkins...</td>\n",
" <td>US</td>\n",
" <td>education</td>\n",
" <td>education</td>\n",
" <td>False</td>\n",
" <td>True</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Year DOI Title \\\n",
"3614 1990 10.1109/VISUAL.1990.146381 Methods for surface interrogation \n",
"3615 1990 10.1109/VISUAL.1990.146381 Methods for surface interrogation \n",
"3616 1990 10.1109/VISUAL.1990.146381 Methods for surface interrogation \n",
"7745 1990 10.1109/VISUAL.1990.146385 A journey into the fourth dimension \n",
"7746 1990 10.1109/VISUAL.1990.146385 A journey into the fourth dimension \n",
"\n",
" Number of Authors Author Position Author Name \\\n",
"3614 3.0 1.0 H. Hagen \n",
"3615 3.0 2.0 T. Schreiber \n",
"3616 3.0 3.0 E. Gschwind \n",
"7745 2.0 1.0 Y. Ke \n",
"7746 2.0 2.0 E.S. Panduranga \n",
"\n",
" OpenAlex Author ID \\\n",
"3614 https://openalex.org/A2237445521 \n",
"3615 https://openalex.org/A2973511128 \n",
"3616 https://openalex.org/A1980220218 \n",
"7745 https://openalex.org/A2684845787 \n",
"7746 https://openalex.org/A2302757246 \n",
"\n",
" Affiliation Name \\\n",
"3614 FB-Informatik, Universität Kaiserslautern \n",
"3615 FB-Informatik, Universität Kaiserslautern \n",
"3616 Mechanical Design Division, Hewlett-Packard GmbH \n",
"7745 Department of Computational Science, Universit... \n",
"7746 Department of Computer Sciences, Johns Hopkins... \n",
"\n",
" Affiliation Country Code Affiliation Type Binary Type \\\n",
"3614 DE education education \n",
"3615 DE education education \n",
"3616 US company non-education \n",
"7745 CA education education \n",
"7746 US education education \n",
"\n",
" Cross-type Collaboration International Collaboration \n",
"3614 True True \n",
"3615 True True \n",
"3616 True True \n",
"7745 False True \n",
"7746 False True "
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"author[author.DOI.isin(year_1990_cross_country.DOI)]"
]
},
{
"cell_type": "markdown",
"id": "c804332e",
"metadata": {},
"source": [
"### Cross country collaboration"
]
},
{
"cell_type": "code",
"execution_count": 34,
"id": "56b08142",
"metadata": {},
"outputs": [],
"source": [
"def get_total_and_ratio_by_year(DF, BY, subgroup_par):\n",
" tuples = []\n",
" for group in DF.groupby(BY):\n",
" year = group[0]\n",
" total = group[1].shape[0]\n",
" for subgroup in group[1].groupby(subgroup_par):\n",
" subtype = 'Yes' if subgroup[0] else 'No'\n",
" count = subgroup[1].shape[0]\n",
" ratio = count / total\n",
" tuples.append((year, subtype, count, ratio))\n",
" dff = pd.DataFrame(\n",
" list(tuples), columns=['year', 'type', 'count', 'ratio']) \n",
" return dff"
]
},
{
"cell_type": "code",
"execution_count": 35,
"id": "4a55728f",
"metadata": {},
"outputs": [],
"source": [
"cross_country = get_total_and_ratio_by_year(\n",
" paper, \n",
" 'Year',\n",
" 'Cross-country Collaboration'\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 36,
"id": "576469ee",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>type</th>\n",
" <th>count</th>\n",
" <th>ratio</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1990</td>\n",
" <td>No</td>\n",
" <td>50</td>\n",
" <td>0.961538</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1990</td>\n",
" <td>Yes</td>\n",
" <td>2</td>\n",
" <td>0.038462</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1991</td>\n",
" <td>No</td>\n",
" <td>49</td>\n",
" <td>0.980000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1991</td>\n",
" <td>Yes</td>\n",
" <td>1</td>\n",
" <td>0.020000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1992</td>\n",
" <td>No</td>\n",
" <td>47</td>\n",
" <td>0.886792</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" year type count ratio\n",
"0 1990 No 50 0.961538\n",
"1 1990 Yes 2 0.038462\n",
"2 1991 No 49 0.980000\n",
"3 1991 Yes 1 0.020000\n",
"4 1992 No 47 0.886792"
]
},
"execution_count": 36,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cross_country.head()"
]
},
{
"cell_type": "code",
"execution_count": 37,
"id": "24c13637",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>type</th>\n",
" <th>count</th>\n",
" <th>ratio</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>2003</td>\n",
" <td>No</td>\n",
" <td>91</td>\n",
" <td>0.892157</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>2003</td>\n",
" <td>Yes</td>\n",
" <td>11</td>\n",
" <td>0.107843</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>2004</td>\n",
" <td>No</td>\n",
" <td>79</td>\n",
" <td>0.814433</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>2004</td>\n",
" <td>Yes</td>\n",
" <td>18</td>\n",
" <td>0.185567</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>2005</td>\n",
" <td>No</td>\n",
" <td>98</td>\n",
" <td>0.823529</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>2005</td>\n",
" <td>Yes</td>\n",
" <td>21</td>\n",
" <td>0.176471</td>\n",
" </tr>\n",
" <tr>\n",
" <th>32</th>\n",
" <td>2006</td>\n",
" <td>No</td>\n",
" <td>90</td>\n",
" <td>0.796460</td>\n",
" </tr>\n",
" <tr>\n",
" <th>33</th>\n",
" <td>2006</td>\n",
" <td>Yes</td>\n",
" <td>23</td>\n",
" <td>0.203540</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>2012</td>\n",
" <td>No</td>\n",
" <td>74</td>\n",
" <td>0.637931</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>2012</td>\n",
" <td>Yes</td>\n",
" <td>42</td>\n",
" <td>0.362069</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>2013</td>\n",
" <td>No</td>\n",
" <td>75</td>\n",
" <td>0.742574</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td>2013</td>\n",
" <td>Yes</td>\n",
" <td>26</td>\n",
" <td>0.257426</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>2014</td>\n",
" <td>No</td>\n",
" <td>85</td>\n",
" <td>0.639098</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td>2014</td>\n",
" <td>Yes</td>\n",
" <td>48</td>\n",
" <td>0.360902</td>\n",
" </tr>\n",
" <tr>\n",
" <th>62</th>\n",
" <td>2021</td>\n",
" <td>No</td>\n",
" <td>94</td>\n",
" <td>0.552941</td>\n",
" </tr>\n",
" <tr>\n",
" <th>63</th>\n",
" <td>2021</td>\n",
" <td>Yes</td>\n",
" <td>76</td>\n",
" <td>0.447059</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" year type count ratio\n",
"26 2003 No 91 0.892157\n",
"27 2003 Yes 11 0.107843\n",
"28 2004 No 79 0.814433\n",
"29 2004 Yes 18 0.185567\n",
"30 2005 No 98 0.823529\n",
"31 2005 Yes 21 0.176471\n",
"32 2006 No 90 0.796460\n",
"33 2006 Yes 23 0.203540\n",
"44 2012 No 74 0.637931\n",
"45 2012 Yes 42 0.362069\n",
"46 2013 No 75 0.742574\n",
"47 2013 Yes 26 0.257426\n",
"48 2014 No 85 0.639098\n",
"49 2014 Yes 48 0.360902\n",
"62 2021 No 94 0.552941\n",
"63 2021 Yes 76 0.447059"
]
},
"execution_count": 37,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cross_country[cross_country.year.isin([2004, 2005, 2006, 2003, 2013, 2012, 2014, 2021])]"
]
},
{
"cell_type": "markdown",
"id": "7919afca",
"metadata": {},
"source": [
"#### Author chord"
]
},
{
"cell_type": "code",
"execution_count": 38,
"id": "406cc349",
"metadata": {},
"outputs": [],
"source": [
"author_chord = pd.read_csv('../data/plots/author_chord/author_chord_df.csv')\n",
"node1, node2 = author_chord.source, author_chord.target\n",
"unique_cntry = list(set(node1.append(node2).tolist()))"
]
},
{
"cell_type": "code",
"execution_count": 39,
"id": "1b939b92",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1218"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"author_chord.value.sum()"
]
},
{
"cell_type": "code",
"execution_count": 49,
"id": "c345c76e",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>source</th>\n",
" <th>target</th>\n",
" <th>value</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>CN</td>\n",
" <td>US</td>\n",
" <td>123</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>DE</td>\n",
" <td>US</td>\n",
" <td>112</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>CA</td>\n",
" <td>US</td>\n",
" <td>70</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>US</td>\n",
" <td>FR</td>\n",
" <td>59</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>US</td>\n",
" <td>AT</td>\n",
" <td>43</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>GB</td>\n",
" <td>US</td>\n",
" <td>33</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>CN</td>\n",
" <td>DE</td>\n",
" <td>31</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>DE</td>\n",
" <td>AT</td>\n",
" <td>29</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>KR</td>\n",
" <td>US</td>\n",
" <td>28</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>US</td>\n",
" <td>GB</td>\n",
" <td>25</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" source target value\n",
"0 CN US 123\n",
"1 DE US 112\n",
"2 CA US 70\n",
"3 US FR 59\n",
"4 US AT 43\n",
"5 GB US 33\n",
"6 CN DE 31\n",
"7 DE AT 29\n",
"8 KR US 28\n",
"9 US GB 25"
]
},
"execution_count": 49,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"author_chord.head(10)"
]
},
{
"cell_type": "code",
"execution_count": 41,
"id": "72f07485",
"metadata": {},
"outputs": [],
"source": [
"tuples = []\n",
"for i in unique_cntry:\n",
" dff = author_chord[(author_chord.source == i) | (author_chord.target == i)]\n",
" total = dff.value.sum()\n",
" tuples.append((i, total))"
]
},
{
"cell_type": "code",
"execution_count": 42,
"id": "11dce8cd",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1197"
]
},
"execution_count": 42,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"collab_df = pd.DataFrame(list(tuples), columns = ['country', 'value']).sort_values(\n",
" by=['value'], ascending = False).reset_index(drop=True)\n",
"collab_df.value.sum()\n",
"most_active_cntry = collab_df.head(10).country.tolist()\n",
"# Number of pairs where the most active countries appeared\n",
"author_chord[(\n",
" author_chord.source.isin(most_active_cntry)) | (\n",
" author_chord.target.isin(most_active_cntry))].value.sum()\n",
"# most_active_cntry"
]
},
{
"cell_type": "code",
"execution_count": 43,
"id": "e1affcf5",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['US', 'DE', 'CN', 'AT', 'GB', 'FR', 'CA', 'NL', 'CH', 'AU']"
]
},
"execution_count": 43,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"most_active_cntry"
]
},
{
"cell_type": "code",
"execution_count": 44,
"id": "344840c6",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0.9827586206896551"
]
},
"execution_count": 44,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"1197/1218"
]
},
{
"cell_type": "code",
"execution_count": 45,
"id": "83ff6383",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"862"
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Number of pairs made up by collaborations between most active countries\n",
"author_chord[(\n",
" author_chord.source.isin(most_active_cntry)) & (\n",
" author_chord.target.isin(most_active_cntry))].value.sum()"
]
},
{
"cell_type": "code",
"execution_count": 46,
"id": "38ea4da7",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0.7077175697865353"
]
},
"execution_count": 46,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"862/1218"
]
},
{
"cell_type": "markdown",
"id": "f5cad371",
"metadata": {},
"source": [
"### Cross-type collaboration"
]
},
{
"cell_type": "code",
"execution_count": 47,
"id": "03c91bed",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>type</th>\n",
" <th>count</th>\n",
" <th>ratio</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1990</td>\n",
" <td>No</td>\n",
" <td>47</td>\n",
" <td>0.903846</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1990</td>\n",
" <td>Yes</td>\n",
" <td>5</td>\n",
" <td>0.096154</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1991</td>\n",
" <td>No</td>\n",
" <td>43</td>\n",
" <td>0.860000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1991</td>\n",
" <td>Yes</td>\n",
" <td>7</td>\n",
" <td>0.140000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1992</td>\n",
" <td>No</td>\n",
" <td>43</td>\n",
" <td>0.811321</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" year type count ratio\n",
"0 1990 No 47 0.903846\n",
"1 1990 Yes 5 0.096154\n",
"2 1991 No 43 0.860000\n",
"3 1991 Yes 7 0.140000\n",
"4 1992 No 43 0.811321"
]
},
"execution_count": 47,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cross_type = get_total_and_ratio_by_year(\n",
" paper, \n",
" 'Year',\n",
" 'Cross-type Collaboration'\n",
")\n",
"cross_type.head()"
]
},
{
"cell_type": "code",
"execution_count": 48,
"id": "fd56c478",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>year</th>\n",
" <th>type</th>\n",
" <th>count</th>\n",
" <th>ratio</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>32</th>\n",
" <td>2006</td>\n",
" <td>No</td>\n",
" <td>90</td>\n",
" <td>0.796460</td>\n",
" </tr>\n",
" <tr>\n",
" <th>33</th>\n",
" <td>2006</td>\n",
" <td>Yes</td>\n",
" <td>23</td>\n",
" <td>0.203540</td>\n",
" </tr>\n",
" <tr>\n",
" <th>34</th>\n",
" <td>2007</td>\n",
" <td>No</td>\n",
" <td>69</td>\n",
" <td>0.644860</td>\n",
" </tr>\n",
" <tr>\n",
" <th>35</th>\n",
" <td>2007</td>\n",
" <td>Yes</td>\n",
" <td>38</td>\n",
" <td>0.355140</td>\n",
" </tr>\n",
" <tr>\n",
" <th>56</th>\n",
" <td>2018</td>\n",
" <td>No</td>\n",
" <td>69</td>\n",
" <td>0.543307</td>\n",
" </tr>\n",
" <tr>\n",
" <th>57</th>\n",
" <td>2018</td>\n",
" <td>Yes</td>\n",
" <td>58</td>\n",
" <td>0.456693</td>\n",
" </tr>\n",
" <tr>\n",
" <th>62</th>\n",
" <td>2021</td>\n",
" <td>No</td>\n",
" <td>116</td>\n",
" <td>0.682353</td>\n",
" </tr>\n",
" <tr>\n",
" <th>63</th>\n",
" <td>2021</td>\n",
" <td>Yes</td>\n",
" <td>54</td>\n",
" <td>0.317647</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" year type count ratio\n",
"32 2006 No 90 0.796460\n",
"33 2006 Yes 23 0.203540\n",
"34 2007 No 69 0.644860\n",
"35 2007 Yes 38 0.355140\n",
"56 2018 No 69 0.543307\n",
"57 2018 Yes 58 0.456693\n",
"62 2021 No 116 0.682353\n",
"63 2021 Yes 54 0.317647"
]
},
"execution_count": 48,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cross_type[cross_type.year.isin([2006, 2007, 2018, 2021])]"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "652fe9e3",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"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.8.12"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
