{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Popular Data Science Questions"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Our goal in this project is to use [Data Science Stack Exchange](https://datascience.stackexchange.com) to determine what content should a data science education company create, based on interest by subject."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Stack Exchange"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### What kind of questions are welcome on this site?\n",
"\n",
"On DSSE's help center's [section on questions](https://datascience.stackexchange.com/help/asking) , we can read that we should:\n",
"\n",
"* Avoid subjective questions.\n",
"* Ask practical questions about Data Science — there are adequate sites for theoretical questions.\n",
"* Ask specific questions.\n",
"* Make questions relevant to others.\n",
"\n",
"All of these characteristics, if employed, should be helpful attributes to our goal.\n",
"\n",
"In the help center we also learned that in addition to the sites mentioned in the _Learn_ section, there are other two sites that are relevant:\n",
"\n",
"* [Open Data](https://opendata.stackexchange.com/help/on-topic) (Dataset requests)\n",
"* [Computational Science](https://scicomp.stackexchange.com/help/on-topic) (Software packages and algorithms in applied mathematics)\n",
"\n",
"#### What, other than questions, does DSSE's [home](https://datascience.stackexchange.com) subdivide into?\n",
"\n",
"On the [home page](https://datascience.stackexchange.com/) we can see that we have four sections:\n",
"\n",
"* [Questions](https://datascience.stackexchange.com/questions) — a list of all questions asked;\n",
"* [Tags](https://datascience.stackexchange.com/tags) — a list of tags (keywords or labels that categorize questions);\n",
"\n",
" ![tags_ds](https://dq-content.s3.amazonaws.com/469/tags_ds.png)\n",
"* [Users](https://datascience.stackexchange.com/users) — a list of users;\n",
"* [Unanswered](https://datascience.stackexchange.com/unanswered) — a list of unanswered questions;\n",
"\n",
"The tagging system used by Stack Exchange looks just like what we need to solve this problem as it allow us to quantify how many questions are asked about each subject.\n",
"\n",
"Something else we can learn from exploring the help center, is that Stack Exchange's sites are heavily moderated by the community; this gives us some confidence in using the tagging system to derive conclusions.\n",
"\n",
"#### What information is available in each post?\n",
"\n",
"Looking, just as an example, at [this](https://datascience.stackexchange.com/questions/19141/linear-model-to-generate-probability-of-each-possible-output?rq=1) question, some of the information we see is:\n",
"\n",
"* For both questions and answers:\n",
" * The posts's score;\n",
" * The posts's title;\n",
" * The posts's author;\n",
" * The posts's body;\n",
"* For questions only:\n",
" * How many users have it on their \"\n",
" * The last time the question as active;\n",
" * How many times the question was viewed;\n",
" * Related questions;\n",
" * The question's tags;\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Stack Exchange Data Explorer\n",
"\n",
"Perusing the table names, a few stand out as relevant for our goal:\n",
"\n",
"* Posts\n",
"* PostTags\n",
"* Tags\n",
"* TagSynonyms\n",
"\n",
"Running a few exploratory queries, leads us to focus our efforts on `Posts` table. For examples, the `Tags` table looked very promising as it tells us how many times each tag was used, but there's no way to tell just from this if the interest in these tags is recent or a thing from the past.\n",
"\n",
"\n",
"
\n",
"
\n",
"
Id
\n",
"
TagName
\n",
"
Count
\n",
"
ExcerptPostId
\n",
"
WikiPostId
\n",
"
\n",
"
\n",
"
2
\n",
"
machine-learning
\n",
"
6919
\n",
"
4909
\n",
"
4908
\n",
"
\n",
"
\n",
"
46
\n",
"
python
\n",
"
3907
\n",
"
5523
\n",
"
5522
\n",
"
\n",
"
\n",
"
81
\n",
"
neural-network
\n",
"
2923
\n",
"
8885
\n",
"
8884
\n",
"
\n",
"
\n",
"
194
\n",
"
deep-learning
\n",
"
2786
\n",
"
8956
\n",
"
8955
\n",
"
\n",
"
\n",
"
77
\n",
"
classification
\n",
"
1899
\n",
"
4911
\n",
"
4910
\n",
"
\n",
"
\n",
"
324
\n",
"
keras
\n",
"
1736
\n",
"
9251
\n",
"
9250
\n",
"
\n",
"
\n",
"
128
\n",
"
scikit-learn
\n",
"
1303
\n",
"
5896
\n",
"
5895
\n",
"
\n",
"
\n",
"
321
\n",
"
tensorflow
\n",
"
1224
\n",
"
9183
\n",
"
9182
\n",
"
\n",
"
\n",
"
47
\n",
"
nlp
\n",
"
1162
\n",
"
147
\n",
"
146
\n",
"
\n",
"
\n",
"
24
\n",
"
r
\n",
"
1114
\n",
"
49
\n",
"
48
\n",
"
\n",
"
"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Getting the Data\n",
"\n",
"To get the relevant data we run the following query.\n",
"\n",
"```\n",
"SELECT Id, CreationDate,\n",
" Score, ViewCount, Tags,\n",
" AnswerCount, FavoriteCount\n",
" FROM posts\n",
" WHERE PostTypeId = 1 AND YEAR(CreationDate) = 2019;\n",
"```\n",
"\n",
"Here's what the first few rows look like:\n",
"\n",
"
"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Exploring the Data\n",
"\n",
"We can read in the data while immediately making sure `CreationDate` will be stored as a datetime object:"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"# We import everything that we'll use\n",
"\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"questions = pd.read_csv(\"2019_questions.csv\", parse_dates=[\"CreationDate\"])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Running [`questions.info()`](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.info.html) should gives a lot of useful information."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"RangeIndex: 8839 entries, 0 to 8838\n",
"Data columns (total 7 columns):\n",
"Id 8839 non-null int64\n",
"CreationDate 8839 non-null datetime64[ns]\n",
"Score 8839 non-null int64\n",
"ViewCount 8839 non-null int64\n",
"Tags 8839 non-null object\n",
"AnswerCount 8839 non-null int64\n",
"FavoriteCount 1407 non-null float64\n",
"dtypes: datetime64[ns](1), float64(1), int64(4), object(1)\n",
"memory usage: 483.5+ KB\n"
]
}
],
"source": [
"questions.info()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We see that only `FavoriteCount` has missing values. A missing value on this column probably means that the question was is not present in any users' favorite list, so we can replace the missing values with zero.\n",
"\n",
"The types seem adequate for every column, however, after we fill in the missing values on `FavoriteCount`, there is no reason to store the values as floats.\n",
"\n",
"Since the `object` dtype is a catch-all type, let's see what types the objects in `questions[\"Tags\"]` are."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([], dtype=object)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"questions[\"Tags\"].apply(lambda value: type(value)).unique()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We see that every value in this column is a string. On Stack Exchange, each question can only have a maximum of five tags ([source](https://meta.stackexchange.com/a/18879)), so one way to deal with this column is to create five columns in `questions` called `Tag1`, `Tag2`, `Tag3`, `Tag4`, and `Tag5` and populate the columns with the tags in each row.\n",
"\n",
"However, since doesn't help is relating tags from one question to another, we'll just keep them as a list."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Cleaning the Data\n",
"\n",
"We'll begin by fixing `FavoriteCount`."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Id int64\n",
"CreationDate datetime64[ns]\n",
"Score int64\n",
"ViewCount int64\n",
"Tags object\n",
"AnswerCount int64\n",
"FavoriteCount int64\n",
"dtype: object"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"questions.fillna(value={\"FavoriteCount\": 0}, inplace=True)\n",
"questions[\"FavoriteCount\"] = questions[\"FavoriteCount\"].astype(int)\n",
"questions.dtypes"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's now modify `Tags` to make it easier to work with."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Id
\n",
"
CreationDate
\n",
"
Score
\n",
"
ViewCount
\n",
"
Tags
\n",
"
AnswerCount
\n",
"
FavoriteCount
\n",
"
\n",
" \n",
" \n",
"
\n",
"
511
\n",
"
56382
\n",
"
2019-07-25 15:00:20
\n",
"
0
\n",
"
34
\n",
"
[machine-learning, python, pandas, natural-lan...
\n",
"
0
\n",
"
0
\n",
"
\n",
"
\n",
"
2178
\n",
"
58312
\n",
"
2019-08-28 09:44:00
\n",
"
1
\n",
"
41
\n",
"
[neural-network, pytorch]
\n",
"
0
\n",
"
1
\n",
"
\n",
"
\n",
"
2536
\n",
"
58151
\n",
"
2019-08-25 01:01:29
\n",
"
0
\n",
"
37
\n",
"
[dataset, audio-recognition]
\n",
"
2
\n",
"
0
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" Id CreationDate Score ViewCount \\\n",
"511 56382 2019-07-25 15:00:20 0 34 \n",
"2178 58312 2019-08-28 09:44:00 1 41 \n",
"2536 58151 2019-08-25 01:01:29 0 37 \n",
"\n",
" Tags AnswerCount \\\n",
"511 [machine-learning, python, pandas, natural-lan... 0 \n",
"2178 [neural-network, pytorch] 0 \n",
"2536 [dataset, audio-recognition] 2 \n",
"\n",
" FavoriteCount \n",
"511 0 \n",
"2178 1 \n",
"2536 0 "
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"questions[\"Tags\"] = questions[\"Tags\"].str.replace(\"^<|>$\", \"\").str.split(\"><\")\n",
"questions.sample(3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Most Used and Most Viewed\n",
"\n",
"We'll begin by counting how many times each tag was used"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"tag_count = dict()\n",
"\n",
"for tags in questions[\"Tags\"]:\n",
" for tag in tags:\n",
" if tag in tag_count:\n",
" tag_count[tag] += 1\n",
" else:\n",
" tag_count[tag] = 1"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For improved aesthetics, let's transform `tag_count` in a dataframe."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
"
],
"text/plain": [
" Count\n",
"machine-learning-model 224\n",
"statistics 234\n",
"clustering 257\n",
"predictive-modeling 265\n",
"r 268\n",
"dataset 340\n",
"regression 347\n",
"pandas 354\n",
"lstm 402\n",
"time-series 466\n",
"cnn 489\n",
"nlp 493\n",
"scikit-learn 540\n",
"tensorflow 584\n",
"classification 685\n",
"keras 935\n",
"neural-network 1055\n",
"deep-learning 1220\n",
"python 1814\n",
"machine-learning 2693"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"most_used = tag_count.sort_values(by=\"Count\").tail(20)\n",
"most_used"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The threshold of `20` is somewhat arbitrary and we can experiment with others, however, popularity of the tags rapidly declines, so looking at these tags should be enough to help us with our goal. Let's visualize these data."
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"most_used.plot(kind=\"barh\", figsize=(16,8))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Some tags are very, very broad and are unlikely to be useful; e.g.: `python`, `dataset`, `r`. Before we investigate the tags a little deeper, let's repeat the same process for views.\n",
"\n",
"We'll use Python's builtin [`enumerate()`](https://docs.python.org/3/library/functions.html#enumerate) function. Its utility is well understood by seeing it action."
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0 I\n",
"1 t\n",
"2 e\n",
"3 r\n",
"4 a\n",
"5 t\n",
"6 e\n",
"7 \n",
"8 t\n",
"9 h\n",
"10 i\n",
"11 s\n",
"12 !\n"
]
}
],
"source": [
"some_iterable = \"Iterate this!\"\n",
"\n",
"for i,c in enumerate(some_iterable):\n",
" print(i,c)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In addition to the elements of `some_iterable`, `enumerate` gives us the index of each of them."
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"tag_view_count = dict()\n",
"\n",
"for idx, tags in enumerate(questions[\"Tags\"]):\n",
" for tag in tags:\n",
" if tag in tag_view_count:\n",
" tag_view_count[tag] += questions[\"ViewCount\"].iloc[idx]\n",
" else:\n",
" tag_view_count[tag] = 1\n",
" \n",
"tag_view_count = pd.DataFrame.from_dict(tag_view_count, orient=\"index\")\n",
"tag_view_count.rename(columns={0: \"ViewCount\"}, inplace=True)\n",
"\n",
"most_viewed = tag_view_count.sort_values(by=\"ViewCount\").tail(20)\n",
"\n",
"most_viewed.plot(kind=\"barh\", figsize=(16,8))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's see them side by side."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([],\n",
" dtype=object)"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"fig, axes = plt.subplots(nrows=1, ncols=2)\n",
"fig.set_size_inches((24, 10))\n",
"most_used.plot(kind=\"barh\", ax=axes[0], subplots=True)\n",
"most_viewed.plot(kind=\"barh\", ax=axes[1], subplots=True)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [],
"source": [
"in_used = pd.merge(most_used, most_viewed, how=\"left\", left_index=True, right_index=True)\n",
"in_viewed = pd.merge(most_used, most_viewed, how=\"right\", left_index=True, right_index=True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Relations Between Tags"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"One way of trying to gauge how pairs of tags are related to each other, is to count how many times each pair appears together. Let's do this.\n",
"\n",
"We'll begin by creating a list of all tags."
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [],
"source": [
"all_tags = list(tag_count.index)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We'll now create a dataframe where each row will represent a tag, and each column as well. Something like this:\n",
"\n",
"
"
],
"text/plain": [
" machine-learning data-mining regression linear-regression\n",
"machine-learning NaN NaN NaN NaN\n",
"data-mining NaN NaN NaN NaN\n",
"regression NaN NaN NaN NaN\n",
"linear-regression NaN NaN NaN NaN"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"associations = pd.DataFrame(index=all_tags, columns=all_tags)\n",
"associations.iloc[0:4,0:4]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We will now fill this dataframe with zeroes and then, for each lists of tags in `questions[\"Tags\"]`, we will increment the intervening tags by one. The end result will be a dataframe that for each pair of tags, it tells us how many times they were used together."
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [],
"source": [
"associations.fillna(0, inplace=True)\n",
"\n",
"for tags in questions[\"Tags\"]:\n",
" associations.loc[tags, tags] += 1"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This dataframe is quite large. Let's focus our attention on the most used tags. We'll add some colors to make it easier to talk about the dataframe. (At the time of this writing, GitHub's renderer does not display the colors, we suggest you use this solution notebook together with [JupyterLab](https://jupyterlab.readthedocs.io/en/stable/)."
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
machine-learning-model
statistics
clustering
predictive-modeling
r
dataset
regression
pandas
lstm
time-series
cnn
nlp
scikit-learn
tensorflow
classification
keras
neural-network
deep-learning
python
machine-learning
\n",
"
\n",
"
machine-learning-model
\n",
"
224
\n",
"
3
\n",
"
3
\n",
"
21
\n",
"
7
\n",
"
12
\n",
"
8
\n",
"
4
\n",
"
5
\n",
"
7
\n",
"
4
\n",
"
4
\n",
"
18
\n",
"
9
\n",
"
21
\n",
"
17
\n",
"
10
\n",
"
19
\n",
"
37
\n",
"
139
\n",
"
\n",
"
\n",
"
statistics
\n",
"
3
\n",
"
234
\n",
"
3
\n",
"
16
\n",
"
16
\n",
"
17
\n",
"
16
\n",
"
3
\n",
"
1
\n",
"
22
\n",
"
1
\n",
"
3
\n",
"
6
\n",
"
0
\n",
"
19
\n",
"
3
\n",
"
11
\n",
"
12
\n",
"
35
\n",
"
89
\n",
"
\n",
"
\n",
"
clustering
\n",
"
3
\n",
"
3
\n",
"
257
\n",
"
0
\n",
"
16
\n",
"
5
\n",
"
2
\n",
"
5
\n",
"
3
\n",
"
20
\n",
"
0
\n",
"
9
\n",
"
24
\n",
"
0
\n",
"
12
\n",
"
0
\n",
"
8
\n",
"
2
\n",
"
45
\n",
"
61
\n",
"
\n",
"
\n",
"
predictive-modeling
\n",
"
21
\n",
"
16
\n",
"
0
\n",
"
265
\n",
"
13
\n",
"
7
\n",
"
28
\n",
"
4
\n",
"
13
\n",
"
31
\n",
"
6
\n",
"
1
\n",
"
12
\n",
"
6
\n",
"
27
\n",
"
11
\n",
"
13
\n",
"
32
\n",
"
35
\n",
"
123
\n",
"
\n",
"
\n",
"
r
\n",
"
7
\n",
"
16
\n",
"
16
\n",
"
13
\n",
"
268
\n",
"
6
\n",
"
10
\n",
"
2
\n",
"
3
\n",
"
22
\n",
"
2
\n",
"
4
\n",
"
1
\n",
"
1
\n",
"
10
\n",
"
10
\n",
"
9
\n",
"
5
\n",
"
24
\n",
"
63
\n",
"
\n",
"
\n",
"
dataset
\n",
"
12
\n",
"
17
\n",
"
5
\n",
"
7
\n",
"
6
\n",
"
340
\n",
"
6
\n",
"
14
\n",
"
7
\n",
"
6
\n",
"
11
\n",
"
11
\n",
"
9
\n",
"
9
\n",
"
28
\n",
"
13
\n",
"
20
\n",
"
32
\n",
"
53
\n",
"
99
\n",
"
\n",
"
\n",
"
regression
\n",
"
8
\n",
"
16
\n",
"
2
\n",
"
28
\n",
"
10
\n",
"
6
\n",
"
347
\n",
"
6
\n",
"
11
\n",
"
24
\n",
"
6
\n",
"
2
\n",
"
37
\n",
"
9
\n",
"
34
\n",
"
31
\n",
"
42
\n",
"
21
\n",
"
59
\n",
"
119
\n",
"
\n",
"
\n",
"
pandas
\n",
"
4
\n",
"
3
\n",
"
5
\n",
"
4
\n",
"
2
\n",
"
14
\n",
"
6
\n",
"
354
\n",
"
7
\n",
"
19
\n",
"
1
\n",
"
3
\n",
"
37
\n",
"
3
\n",
"
3
\n",
"
3
\n",
"
1
\n",
"
1
\n",
"
244
\n",
"
62
\n",
"
\n",
"
\n",
"
lstm
\n",
"
5
\n",
"
1
\n",
"
3
\n",
"
13
\n",
"
3
\n",
"
7
\n",
"
11
\n",
"
7
\n",
"
402
\n",
"
87
\n",
"
24
\n",
"
19
\n",
"
2
\n",
"
43
\n",
"
20
\n",
"
133
\n",
"
69
\n",
"
103
\n",
"
61
\n",
"
71
\n",
"
\n",
"
\n",
"
time-series
\n",
"
7
\n",
"
22
\n",
"
20
\n",
"
31
\n",
"
22
\n",
"
6
\n",
"
24
\n",
"
19
\n",
"
87
\n",
"
466
\n",
"
8
\n",
"
0
\n",
"
12
\n",
"
9
\n",
"
25
\n",
"
51
\n",
"
33
\n",
"
44
\n",
"
105
\n",
"
131
\n",
"
\n",
"
\n",
"
cnn
\n",
"
4
\n",
"
1
\n",
"
0
\n",
"
6
\n",
"
2
\n",
"
11
\n",
"
6
\n",
"
1
\n",
"
24
\n",
"
8
\n",
"
489
\n",
"
7
\n",
"
0
\n",
"
57
\n",
"
20
\n",
"
116
\n",
"
118
\n",
"
160
\n",
"
62
\n",
"
124
\n",
"
\n",
"
\n",
"
nlp
\n",
"
4
\n",
"
3
\n",
"
9
\n",
"
1
\n",
"
4
\n",
"
11
\n",
"
2
\n",
"
3
\n",
"
19
\n",
"
0
\n",
"
7
\n",
"
493
\n",
"
12
\n",
"
11
\n",
"
35
\n",
"
23
\n",
"
24
\n",
"
72
\n",
"
71
\n",
"
113
\n",
"
\n",
"
\n",
"
scikit-learn
\n",
"
18
\n",
"
6
\n",
"
24
\n",
"
12
\n",
"
1
\n",
"
9
\n",
"
37
\n",
"
37
\n",
"
2
\n",
"
12
\n",
"
0
\n",
"
12
\n",
"
540
\n",
"
15
\n",
"
47
\n",
"
34
\n",
"
24
\n",
"
16
\n",
"
235
\n",
"
188
\n",
"
\n",
"
\n",
"
tensorflow
\n",
"
9
\n",
"
0
\n",
"
0
\n",
"
6
\n",
"
1
\n",
"
9
\n",
"
9
\n",
"
3
\n",
"
43
\n",
"
9
\n",
"
57
\n",
"
11
\n",
"
15
\n",
"
584
\n",
"
20
\n",
"
256
\n",
"
108
\n",
"
136
\n",
"
167
\n",
"
106
\n",
"
\n",
"
\n",
"
classification
\n",
"
21
\n",
"
19
\n",
"
12
\n",
"
27
\n",
"
10
\n",
"
28
\n",
"
34
\n",
"
3
\n",
"
20
\n",
"
25
\n",
"
20
\n",
"
35
\n",
"
47
\n",
"
20
\n",
"
685
\n",
"
58
\n",
"
65
\n",
"
59
\n",
"
98
\n",
"
259
\n",
"
\n",
"
\n",
"
keras
\n",
"
17
\n",
"
3
\n",
"
0
\n",
"
11
\n",
"
10
\n",
"
13
\n",
"
31
\n",
"
3
\n",
"
133
\n",
"
51
\n",
"
116
\n",
"
23
\n",
"
34
\n",
"
256
\n",
"
58
\n",
"
935
\n",
"
235
\n",
"
247
\n",
"
280
\n",
"
195
\n",
"
\n",
"
\n",
"
neural-network
\n",
"
10
\n",
"
11
\n",
"
8
\n",
"
13
\n",
"
9
\n",
"
20
\n",
"
42
\n",
"
1
\n",
"
69
\n",
"
33
\n",
"
118
\n",
"
24
\n",
"
24
\n",
"
108
\n",
"
65
\n",
"
235
\n",
"
1055
\n",
"
305
\n",
"
137
\n",
"
366
\n",
"
\n",
"
\n",
"
deep-learning
\n",
"
19
\n",
"
12
\n",
"
2
\n",
"
32
\n",
"
5
\n",
"
32
\n",
"
21
\n",
"
1
\n",
"
103
\n",
"
44
\n",
"
160
\n",
"
72
\n",
"
16
\n",
"
136
\n",
"
59
\n",
"
247
\n",
"
305
\n",
"
1220
\n",
"
160
\n",
"
429
\n",
"
\n",
"
\n",
"
python
\n",
"
37
\n",
"
35
\n",
"
45
\n",
"
35
\n",
"
24
\n",
"
53
\n",
"
59
\n",
"
244
\n",
"
61
\n",
"
105
\n",
"
62
\n",
"
71
\n",
"
235
\n",
"
167
\n",
"
98
\n",
"
280
\n",
"
137
\n",
"
160
\n",
"
1814
\n",
"
499
\n",
"
\n",
"
\n",
"
machine-learning
\n",
"
139
\n",
"
89
\n",
"
61
\n",
"
123
\n",
"
63
\n",
"
99
\n",
"
119
\n",
"
62
\n",
"
71
\n",
"
131
\n",
"
124
\n",
"
113
\n",
"
188
\n",
"
106
\n",
"
259
\n",
"
195
\n",
"
366
\n",
"
429
\n",
"
499
\n",
"
2693
\n",
"
\n",
"
"
],
"text/plain": [
""
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"relations_most_used = associations.loc[most_used.index, most_used.index]\n",
"\n",
"def style_cells(x):\n",
" helper_df = pd.DataFrame('', index=x.index, columns=x.columns)\n",
" helper_df.loc[\"time-series\", \"r\"] = \"background-color: yellow\"\n",
" helper_df.loc[\"r\", \"time-series\"] = \"background-color: yellow\"\n",
" for k in range(helper_df.shape[0]):\n",
" helper_df.iloc[k,k] = \"color: blue\"\n",
" \n",
" return helper_df\n",
"\n",
"relations_most_used.style.apply(style_cells, axis=None)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The cells highlighted in yellow tell us that `time-series` was used together with `r` 22 times. The values in blue tell us how many times each of the tags was used. We saw earlier that `machine-learning` was used 2693 times and we confirm it in this dataframe.\n",
"\n",
"It's hard for a human to understand what is going on in this dataframe. Let's create a heatmap. But before we do it, let's get rid of the values in blue, otherwise the colors will be too skewed."
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"for i in range(relations_most_used.shape[0]):\n",
" relations_most_used.iloc[i,i] = pd.np.NaN"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(12,8))\n",
"sns.heatmap(relations_most_used, cmap=\"Greens\", annot=False)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The most used tags also seem to have the strongest relationships, as given by the dark concentration in the bottom right corner. However, this could simply be because each of these tags is used a lot, and so end up being used together a lot without possibly even having any strong relation between them.\n",
"\n",
"A more intuitive manifestation of this phenomenon is the following. A lot of people buy bread, a lot of people buy toilet paper, so they end up being purchased together a lot, but purchasing one of them doesn't increase the chances of purchasing the other."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Another shortcoming of this attempt is that it only looks at relations between pairs of tags and not between multiple groups of tags. For example, it could be the case that when used together, `dataset` and `scikit-learn` have a \"strong\" relation to `pandas`, but each by itself doesn't.\n",
"\n",
"So how do we attack both these problems? There is a powerful data mining technique that allows us to handle this: [association rules](https://en.wikipedia.org/wiki/Association_rule_learning). Association rules allow us to analytically spot relations like \"people who purchase milk, also purchase eggs\". Moreover, we can also measure how strong this relations are on several fronts: how common the relation is, how strong it is, and how independent the components of the relationship are (toilet paper and bread are probably more independent than eggs and milk — you'll learn more about [statistical independence](https://en.wikipedia.org/wiki/Independence_(probability_theory)) in the next step).\n",
"\n",
"\n",
"We won't get into the details of it, as the technique is out of scope for this course, but it is a path worth investigating!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Enter Domain Knowledge\n",
"\n",
"[Keras](https://keras.io/), [scikit-learn](https://scikit-learn.org/), [TensorFlow](https://www.tensorflow.org/) are all Python libraries that allow their users to employ deep learning (a type of neural network).\n",
"\n",
"Most of the top tags are all intimately related with one central machine learning theme: deep learning. If we want to be very specific, we can suggest the creation of Python content that uses deep learning for classification problems (and other variations of this suggestion).\n",
"\n",
"At the glance of an eye, someone with sufficient domain knowledge can tell that the most popular topic at the moment, as shown by our analysis, is deep learning."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Just a Fad?\n",
"\n",
"Let's read in the file into a dataframe called `all_q`. We'll parse the dates at read-time."
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [],
"source": [
"all_q = pd.read_csv(\"all_questions.csv\", parse_dates=[\"CreationDate\"])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can use the same technique as before to clean the tags column."
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [],
"source": [
"all_q[\"Tags\"] = all_q[\"Tags\"].str.replace(\"^<|>$\", \"\").str.split(\"><\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Before deciding which questions should be classified as being deep learning questions, we should decide what tags are deep learning tags.\n",
"\n",
"The definition of what constitutes a deep learning tag we'll use is: a tag that belongs to the list `[\"lstm\", \"cnn\", \"scikit-learn\", \"tensorflow\", \"keras\", \"neural-network\", \"deep-learning\"]`.\n",
"\n",
"This list was obtained by looking at all the tags in `most_used` and seeing which ones had any relation to deep learning. You can use Google and read the tags descriptions to reach similar results.\n",
"\n",
"We'll now create a function that assigns `1` to deep learning questions and `0` otherwise; and we use it."
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [],
"source": [
"def class_deep_learning(tags):\n",
" for tag in tags:\n",
" if tag in [\"lstm\", \"cnn\", \"scikit-learn\", \"tensorflow\",\n",
" \"keras\", \"neural-network\", \"deep-learning\"]:\n",
" return 1\n",
" return 0"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [],
"source": [
"all_q[\"DeepLearning\"] = all_q[\"Tags\"].apply(class_deep_learning)"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Id
\n",
"
CreationDate
\n",
"
Tags
\n",
"
DeepLearning
\n",
"
\n",
" \n",
" \n",
"
\n",
"
15231
\n",
"
44675
\n",
"
2019-01-28 06:20:18
\n",
"
[model-selection]
\n",
"
0
\n",
"
\n",
"
\n",
"
440
\n",
"
55639
\n",
"
2019-07-14 11:45:43
\n",
"
[machine-learning, dataset, machine-learning-m...
\n",
"
0
\n",
"
\n",
"
\n",
"
11720
\n",
"
51523
\n",
"
2019-05-07 04:57:35
\n",
"
[neural-network, gradient-descent, batch-norma...
\n",
"
1
\n",
"
\n",
"
\n",
"
6262
\n",
"
27232
\n",
"
2018-01-30 09:53:38
\n",
"
[python, convergence]
\n",
"
0
\n",
"
\n",
"
\n",
"
19292
\n",
"
64930
\n",
"
2019-12-16 14:38:17
\n",
"
[neural-network, deep-learning, keras, convolu...
\n",
"
1
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" Id CreationDate \\\n",
"15231 44675 2019-01-28 06:20:18 \n",
"440 55639 2019-07-14 11:45:43 \n",
"11720 51523 2019-05-07 04:57:35 \n",
"6262 27232 2018-01-30 09:53:38 \n",
"19292 64930 2019-12-16 14:38:17 \n",
"\n",
" Tags DeepLearning \n",
"15231 [model-selection] 0 \n",
"440 [machine-learning, dataset, machine-learning-m... 0 \n",
"11720 [neural-network, gradient-descent, batch-norma... 1 \n",
"6262 [python, convergence] 0 \n",
"19292 [neural-network, deep-learning, keras, convolu... 1 "
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"all_q.sample(5)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Looks good!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The data-science-techonology landscape isn't something as dynamic to merit daily, weekly, or even monthly tracking. Let's track it quarterly.\n",
"\n",
"Since we don't have all the data for the first quarter of 2020, we'll get rid of those dates:"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [],
"source": [
"all_q = all_q[all_q[\"CreationDate\"].dt.year < 2020]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's create a column that identifies the quarter in which a question was asked."
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [],
"source": [
"def fetch_quarter(datetime):\n",
" year = str(datetime.year)[-2:]\n",
" quarter = str(((datetime.month-1) // 3) + 1)\n",
" return \"{y}Q{q}\".format(y=year, q=quarter)\n",
"\n",
"all_q[\"Quarter\"] = all_q[\"CreationDate\"].apply(fetch_quarter)"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Id
\n",
"
CreationDate
\n",
"
Tags
\n",
"
DeepLearning
\n",
"
Quarter
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
45416
\n",
"
2019-02-12 00:36:29
\n",
"
[python, keras, tensorflow, cnn, probability]
\n",
"
1
\n",
"
19Q1
\n",
"
\n",
"
\n",
"
1
\n",
"
45418
\n",
"
2019-02-12 00:50:39
\n",
"
[neural-network]
\n",
"
1
\n",
"
19Q1
\n",
"
\n",
"
\n",
"
2
\n",
"
45422
\n",
"
2019-02-12 04:40:51
\n",
"
[python, ibm-watson, chatbot]
\n",
"
0
\n",
"
19Q1
\n",
"
\n",
"
\n",
"
3
\n",
"
45426
\n",
"
2019-02-12 04:51:49
\n",
"
[keras]
\n",
"
1
\n",
"
19Q1
\n",
"
\n",
"
\n",
"
4
\n",
"
45427
\n",
"
2019-02-12 05:08:24
\n",
"
[r, predictive-modeling, machine-learning-mode...
\n",
"
0
\n",
"
19Q1
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" Id CreationDate \\\n",
"0 45416 2019-02-12 00:36:29 \n",
"1 45418 2019-02-12 00:50:39 \n",
"2 45422 2019-02-12 04:40:51 \n",
"3 45426 2019-02-12 04:51:49 \n",
"4 45427 2019-02-12 05:08:24 \n",
"\n",
" Tags DeepLearning Quarter \n",
"0 [python, keras, tensorflow, cnn, probability] 1 19Q1 \n",
"1 [neural-network] 1 19Q1 \n",
"2 [python, ibm-watson, chatbot] 0 19Q1 \n",
"3 [keras] 1 19Q1 \n",
"4 [r, predictive-modeling, machine-learning-mode... 0 19Q1 "
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"all_q.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For the final stretch of this screen, we'll group by quarter and:\n",
"\n",
"* Count the number of deep learning questions.\n",
"* Count the total number of questions.\n",
"* Compute the ratio between the two numbers above."
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"