nlp-lab/Project/Tools/EmojiCounting.ipynb

280 lines
17 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Count emoji occurences"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"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"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"json_root = \"./emoji_counts/\""
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"json_files = sorted(glob.glob(json_root + \"/*.json\"))"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['./emoji_counts/twitter_emoji_count_2017-12.json',\n",
" './emoji_counts/twitter_emoji_count_2017_11.json']"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"json_files"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"json_lists = []"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": true
},
"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",
"execution_count": 8,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"merged_dict = {}\n"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": true
},
"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",
"execution_count": 10,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"n_top = 50"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"keysort = np.argsort(list(merged_dict.values()))[-n_top:]"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# for apple:\n",
"from matplotlib.font_manager import FontProperties\n",
"\n",
"prop = FontProperties(fname='/System/Library/Fonts/Apple Color Emoji.ttc')\n",
"plt.rcParams['font.family'] = prop.get_family()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 720x360 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"#matplotlib.rc('font', family='Arial')\n",
"plt.figure(figsize=(10,5))\n",
"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": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([106, 14, 46, 41, 74, 91, 87, 104, 69, 11, 52, 81, 15,\n",
" 38, 16, 27, 65, 66, 28, 1, 57, 31, 55, 53, 33, 21,\n",
" 2, 59, 29, 6, 32, 34, 13, 49, 37, 54, 40, 10, 4,\n",
" 23, 50, 25, 8, 17, 5, 24, 7, 9, 3, 0])"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"keysort"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array(['🤔', '🤣', '💕', '😚', '🤦', '😓', '😥', '🙄', '😻', '😣', '😛', '😝', '😃',\n",
" '😐', '😈', '😡', '😞', '😪', '😑', '😕', '😬', '😱', '😇', '😄', '😆', '😴',\n",
" '🙈', '😜', '😤', '😫', '😳', '😋', '😀', '😌', '😏', '😔', '😒', '😎', '😢',\n",
" '😅', '😁', '😉', '🙌', '🙏', '😘', '😊', '😩', '😍', '😭', '😂'], dtype='<U1')"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.array(list(merged_dict.keys()))[keysort]"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'🤔🤣💕😚🤦😓😥🙄😻😣😛😝😃😐😈😡😞😪😑😕😬😱😇😄😆😴🙈😜😤😫😳😋😀😌😏😔😒😎😢😅😁😉🙌🙏😘😊😩😍😭😂'"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"''.join(np.array(list(merged_dict.keys()))[keysort])"
]
}
],
"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
}