nlp-lab/Project/Tools/EmojiCounting.ipynb

205 lines
12 KiB
Plaintext
Raw Normal View History

2018-07-19 17:49:00 +02:00
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
2018-07-19 17:53:16 +02:00
"%matplotlib ipympl"
2018-07-19 17:49:00 +02:00
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Count emoji occurences"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
2018-07-19 17:53:16 +02:00
"outputs": [],
2018-07-19 17:49:00 +02:00
"source": [
"import numpy as np\n",
"import json\n",
"import glob\n",
"import matplotlib\n",
"import matplotlib.pyplot as plt\n",
"from __future__ import unicode_literals\n",
2018-07-19 17:53:16 +02:00
"matplotlib.rc('font', family='symbola')\n",
2018-07-19 17:49:00 +02:00
"from matplotlib.font_manager import FontProperties"
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 3,
2018-07-19 17:49:00 +02:00
"metadata": {},
"outputs": [],
"source": [
"from matplotlib import font_manager as fm\n",
"\n",
"#fm.findfont(prop)"
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 4,
2018-07-19 17:49:00 +02:00
"metadata": {},
"outputs": [],
"source": [
"json_root = \"../simple_approach/\""
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 5,
2018-07-19 17:49:00 +02:00
"metadata": {},
"outputs": [],
"source": [
"json_files = sorted(glob.glob(json_root + \"/*.json\"))"
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 6,
2018-07-19 17:49:00 +02:00
"metadata": {},
2018-07-19 17:53:16 +02:00
"outputs": [
{
"data": {
"text/plain": [
"['../simple_approach/count_from_read_progress_2018-07-19 17:49:53.844311.json']"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
2018-07-19 17:49:00 +02:00
"source": [
"json_files"
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 7,
2018-07-19 17:49:00 +02:00
"metadata": {},
"outputs": [],
"source": [
"json_lists = []"
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 8,
2018-07-19 17:49:00 +02:00
"metadata": {},
"outputs": [],
"source": [
"for path in json_files:\n",
" with open(path) as f:\n",
" data = json.load(f)\n",
" json_lists.append(data)"
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 9,
2018-07-19 17:49:00 +02:00
"metadata": {},
"outputs": [],
"source": [
"merged_dict = {}\n"
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 10,
2018-07-19 17:49:00 +02:00
"metadata": {},
"outputs": [],
"source": [
"for j in json_lists:\n",
" for emoji in j.keys():\n",
" if emoji in merged_dict:\n",
" merged_dict[emoji] = merged_dict[emoji] + j[emoji]\n",
" else:\n",
" merged_dict[emoji] = j[emoji]"
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 11,
2018-07-19 17:49:00 +02:00
"metadata": {},
"outputs": [],
"source": [
"n_top = 30"
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 12,
2018-07-19 17:49:00 +02:00
"metadata": {},
"outputs": [],
"source": [
"keysort = np.argsort(list(merged_dict.values()))[-n_top:]"
]
},
{
"cell_type": "code",
2018-07-19 17:53:16 +02:00
"execution_count": 13,
2018-07-19 17:49:00 +02:00
"metadata": {},
2018-07-19 17:53:16 +02:00
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
2018-07-19 17:49:00 +02:00
"source": [
"plt.bar(np.array(list(merged_dict.keys()))[keysort], np.array(list(merged_dict.values()))[keysort], color='g')\n",
"plt.savefig(\"histogram.png\", bbox_inches='tight')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"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
}