nlp-lab/Project/naive_approach/Emoji_Distance.ipynb
2018-06-07 15:34:12 +02:00

1280 lines
48 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"https://www.clarin.si/repository/xmlui/handle/11356/1048\n",
"https://github.com/words/emoji-emotion"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import pandas as pd\n",
"import math\n",
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Emoji</th>\n",
" <th>Unicode codepoint</th>\n",
" <th>Occurrences</th>\n",
" <th>Position</th>\n",
" <th>Negative</th>\n",
" <th>Neutral</th>\n",
" <th>Positive</th>\n",
" <th>Unicode name</th>\n",
" <th>Unicode block</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>😂</td>\n",
" <td>0x1f602</td>\n",
" <td>14622</td>\n",
" <td>0.805101</td>\n",
" <td>3614</td>\n",
" <td>4163</td>\n",
" <td>6845</td>\n",
" <td>FACE WITH TEARS OF JOY</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>❤</td>\n",
" <td>0x2764</td>\n",
" <td>8050</td>\n",
" <td>0.746943</td>\n",
" <td>355</td>\n",
" <td>1334</td>\n",
" <td>6361</td>\n",
" <td>HEAVY BLACK HEART</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>♥</td>\n",
" <td>0x2665</td>\n",
" <td>7144</td>\n",
" <td>0.753806</td>\n",
" <td>252</td>\n",
" <td>1942</td>\n",
" <td>4950</td>\n",
" <td>BLACK HEART SUIT</td>\n",
" <td>Miscellaneous Symbols</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>😍</td>\n",
" <td>0x1f60d</td>\n",
" <td>6359</td>\n",
" <td>0.765292</td>\n",
" <td>329</td>\n",
" <td>1390</td>\n",
" <td>4640</td>\n",
" <td>SMILING FACE WITH HEART-SHAPED EYES</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>😭</td>\n",
" <td>0x1f62d</td>\n",
" <td>5526</td>\n",
" <td>0.803352</td>\n",
" <td>2412</td>\n",
" <td>1218</td>\n",
" <td>1896</td>\n",
" <td>LOUDLY CRYING FACE</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>😘</td>\n",
" <td>0x1f618</td>\n",
" <td>3648</td>\n",
" <td>0.854480</td>\n",
" <td>193</td>\n",
" <td>702</td>\n",
" <td>2753</td>\n",
" <td>FACE THROWING A KISS</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>😊</td>\n",
" <td>0x1f60a</td>\n",
" <td>3186</td>\n",
" <td>0.813302</td>\n",
" <td>189</td>\n",
" <td>754</td>\n",
" <td>2243</td>\n",
" <td>SMILING FACE WITH SMILING EYES</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>👌</td>\n",
" <td>0x1f44c</td>\n",
" <td>2925</td>\n",
" <td>0.805223</td>\n",
" <td>274</td>\n",
" <td>728</td>\n",
" <td>1923</td>\n",
" <td>OK HAND SIGN</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>💕</td>\n",
" <td>0x1f495</td>\n",
" <td>2400</td>\n",
" <td>0.765726</td>\n",
" <td>99</td>\n",
" <td>683</td>\n",
" <td>1618</td>\n",
" <td>TWO HEARTS</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>👏</td>\n",
" <td>0x1f44f</td>\n",
" <td>2336</td>\n",
" <td>0.787130</td>\n",
" <td>243</td>\n",
" <td>634</td>\n",
" <td>1459</td>\n",
" <td>CLAPPING HANDS SIGN</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>😁</td>\n",
" <td>0x1f601</td>\n",
" <td>2189</td>\n",
" <td>0.796151</td>\n",
" <td>278</td>\n",
" <td>648</td>\n",
" <td>1263</td>\n",
" <td>GRINNING FACE WITH SMILING EYES</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>☺</td>\n",
" <td>0x263a</td>\n",
" <td>2062</td>\n",
" <td>0.798634</td>\n",
" <td>128</td>\n",
" <td>449</td>\n",
" <td>1485</td>\n",
" <td>WHITE SMILING FACE</td>\n",
" <td>Miscellaneous Symbols</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>♡</td>\n",
" <td>0x2661</td>\n",
" <td>1975</td>\n",
" <td>0.763695</td>\n",
" <td>102</td>\n",
" <td>448</td>\n",
" <td>1425</td>\n",
" <td>WHITE HEART SUIT</td>\n",
" <td>Miscellaneous Symbols</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>👍</td>\n",
" <td>0x1f44d</td>\n",
" <td>1854</td>\n",
" <td>0.812126</td>\n",
" <td>213</td>\n",
" <td>460</td>\n",
" <td>1181</td>\n",
" <td>THUMBS UP SIGN</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>😩</td>\n",
" <td>0x1f629</td>\n",
" <td>1808</td>\n",
" <td>0.826214</td>\n",
" <td>1069</td>\n",
" <td>336</td>\n",
" <td>403</td>\n",
" <td>WEARY FACE</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>🙏</td>\n",
" <td>0x1f64f</td>\n",
" <td>1539</td>\n",
" <td>0.793848</td>\n",
" <td>124</td>\n",
" <td>648</td>\n",
" <td>767</td>\n",
" <td>PERSON WITH FOLDED HANDS</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>✌</td>\n",
" <td>0x270c</td>\n",
" <td>1534</td>\n",
" <td>0.790480</td>\n",
" <td>173</td>\n",
" <td>476</td>\n",
" <td>885</td>\n",
" <td>VICTORY HAND</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>😏</td>\n",
" <td>0x1f60f</td>\n",
" <td>1522</td>\n",
" <td>0.764977</td>\n",
" <td>170</td>\n",
" <td>676</td>\n",
" <td>676</td>\n",
" <td>SMIRKING FACE</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>😉</td>\n",
" <td>0x1f609</td>\n",
" <td>1521</td>\n",
" <td>0.844833</td>\n",
" <td>151</td>\n",
" <td>513</td>\n",
" <td>857</td>\n",
" <td>WINKING FACE</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>🙌</td>\n",
" <td>0x1f64c</td>\n",
" <td>1506</td>\n",
" <td>0.790600</td>\n",
" <td>152</td>\n",
" <td>358</td>\n",
" <td>996</td>\n",
" <td>PERSON RAISING BOTH HANDS IN CELEBRATION</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>🙈</td>\n",
" <td>0x1f648</td>\n",
" <td>1456</td>\n",
" <td>0.738881</td>\n",
" <td>238</td>\n",
" <td>350</td>\n",
" <td>868</td>\n",
" <td>SEE-NO-EVIL MONKEY</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>💪</td>\n",
" <td>0x1f4aa</td>\n",
" <td>1409</td>\n",
" <td>0.806704</td>\n",
" <td>101</td>\n",
" <td>424</td>\n",
" <td>884</td>\n",
" <td>FLEXED BICEPS</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>😄</td>\n",
" <td>0x1f604</td>\n",
" <td>1398</td>\n",
" <td>0.794973</td>\n",
" <td>191</td>\n",
" <td>426</td>\n",
" <td>781</td>\n",
" <td>SMILING FACE WITH OPEN MOUTH AND SMILING EYES</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>😒</td>\n",
" <td>0x1f612</td>\n",
" <td>1385</td>\n",
" <td>0.857621</td>\n",
" <td>819</td>\n",
" <td>266</td>\n",
" <td>300</td>\n",
" <td>UNAMUSED FACE</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>💃</td>\n",
" <td>0x1f483</td>\n",
" <td>1344</td>\n",
" <td>0.852765</td>\n",
" <td>59</td>\n",
" <td>237</td>\n",
" <td>1048</td>\n",
" <td>DANCER</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>💖</td>\n",
" <td>0x1f496</td>\n",
" <td>1263</td>\n",
" <td>0.762239</td>\n",
" <td>54</td>\n",
" <td>254</td>\n",
" <td>955</td>\n",
" <td>SPARKLING HEART</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>😃</td>\n",
" <td>0x1f603</td>\n",
" <td>1206</td>\n",
" <td>0.734782</td>\n",
" <td>86</td>\n",
" <td>361</td>\n",
" <td>759</td>\n",
" <td>SMILING FACE WITH OPEN MOUTH</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>😔</td>\n",
" <td>0x1f614</td>\n",
" <td>1205</td>\n",
" <td>0.866146</td>\n",
" <td>559</td>\n",
" <td>263</td>\n",
" <td>383</td>\n",
" <td>PENSIVE FACE</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>😱</td>\n",
" <td>0x1f631</td>\n",
" <td>1130</td>\n",
" <td>0.773313</td>\n",
" <td>298</td>\n",
" <td>319</td>\n",
" <td>513</td>\n",
" <td>FACE SCREAMING IN FEAR</td>\n",
" <td>Emoticons</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>🎉</td>\n",
" <td>0x1f389</td>\n",
" <td>1125</td>\n",
" <td>0.743636</td>\n",
" <td>43</td>\n",
" <td>207</td>\n",
" <td>875</td>\n",
" <td>PARTY POPPER</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>939</th>\n",
" <td>🕥</td>\n",
" <td>0x1f565</td>\n",
" <td>1</td>\n",
" <td>0.811966</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>CLOCK FACE TEN-THIRTY</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>940</th>\n",
" <td>♙</td>\n",
" <td>0x2659</td>\n",
" <td>1</td>\n",
" <td>0.342857</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>WHITE CHESS PAWN</td>\n",
" <td>Miscellaneous Symbols</td>\n",
" </tr>\n",
" <tr>\n",
" <th>941</th>\n",
" <td>▿</td>\n",
" <td>0x25bf</td>\n",
" <td>1</td>\n",
" <td>0.432836</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>WHITE DOWN-POINTING SMALL TRIANGLE</td>\n",
" <td>Geometric Shapes</td>\n",
" </tr>\n",
" <tr>\n",
" <th>942</th>\n",
" <td>⚃</td>\n",
" <td>0x2683</td>\n",
" <td>1</td>\n",
" <td>0.918919</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>DIE FACE-4</td>\n",
" <td>Miscellaneous Symbols</td>\n",
" </tr>\n",
" <tr>\n",
" <th>943</th>\n",
" <td>✽</td>\n",
" <td>0x273d</td>\n",
" <td>1</td>\n",
" <td>0.992701</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>HEAVY TEARDROP-SPOKED ASTERISK</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>944</th>\n",
" <td>📼</td>\n",
" <td>0x1f4fc</td>\n",
" <td>1</td>\n",
" <td>1.000000</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>VIDEOCASSETTE</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>945</th>\n",
" <td>🕐</td>\n",
" <td>0x1f550</td>\n",
" <td>1</td>\n",
" <td>1.000000</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>CLOCK FACE ONE OCLOCK</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>946</th>\n",
" <td>🀄</td>\n",
" <td>0x1f004</td>\n",
" <td>1</td>\n",
" <td>1.000000</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>MAHJONG TILE RED DRAGON</td>\n",
" <td>Mahjong Tiles</td>\n",
" </tr>\n",
" <tr>\n",
" <th>947</th>\n",
" <td>✾</td>\n",
" <td>0x273e</td>\n",
" <td>1</td>\n",
" <td>0.023256</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>SIX PETALLED BLACK AND WHITE FLORETTE</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>948</th>\n",
" <td>✬</td>\n",
" <td>0x272c</td>\n",
" <td>1</td>\n",
" <td>0.955224</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>BLACK CENTRE WHITE STAR</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>949</th>\n",
" <td>🆑</td>\n",
" <td>0x1f191</td>\n",
" <td>1</td>\n",
" <td>0.983607</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>SQUARED CL</td>\n",
" <td>Enclosed Alphanumeric Supplement</td>\n",
" </tr>\n",
" <tr>\n",
" <th>950</th>\n",
" <td>✫</td>\n",
" <td>0x272b</td>\n",
" <td>1</td>\n",
" <td>0.923729</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>OPEN CENTRE BLACK STAR</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>951</th>\n",
" <td>🕔</td>\n",
" <td>0x1f554</td>\n",
" <td>1</td>\n",
" <td>0.742424</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>CLOCK FACE FIVE OCLOCK</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>952</th>\n",
" <td>❣</td>\n",
" <td>0x2763</td>\n",
" <td>1</td>\n",
" <td>0.471429</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>HEAVY HEART EXCLAMATION MARK ORNAMENT</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>953</th>\n",
" <td>➱</td>\n",
" <td>0x27b1</td>\n",
" <td>1</td>\n",
" <td>0.704348</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ...</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>954</th>\n",
" <td>🆕</td>\n",
" <td>0x1f195</td>\n",
" <td>1</td>\n",
" <td>0.669118</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>SQUARED NEW</td>\n",
" <td>Enclosed Alphanumeric Supplement</td>\n",
" </tr>\n",
" <tr>\n",
" <th>955</th>\n",
" <td>➢</td>\n",
" <td>0x27a2</td>\n",
" <td>1</td>\n",
" <td>0.242647</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>THREE-D TOP-LIGHTED RIGHTWARDS ARROWHEAD</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>956</th>\n",
" <td>↕</td>\n",
" <td>0x2195</td>\n",
" <td>1</td>\n",
" <td>0.735632</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>UP DOWN ARROW</td>\n",
" <td>Arrows</td>\n",
" </tr>\n",
" <tr>\n",
" <th>957</th>\n",
" <td>📫</td>\n",
" <td>0x1f4eb</td>\n",
" <td>1</td>\n",
" <td>0.384615</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>CLOSED MAILBOX WITH RAISED FLAG</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>958</th>\n",
" <td>🉐</td>\n",
" <td>0x1f250</td>\n",
" <td>1</td>\n",
" <td>0.031250</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>CIRCLED IDEOGRAPH ADVANTAGE</td>\n",
" <td>Enclosed Ideographic Supplement</td>\n",
" </tr>\n",
" <tr>\n",
" <th>959</th>\n",
" <td>♊</td>\n",
" <td>0x264a</td>\n",
" <td>1</td>\n",
" <td>0.327586</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>GEMINI</td>\n",
" <td>Miscellaneous Symbols</td>\n",
" </tr>\n",
" <tr>\n",
" <th>960</th>\n",
" <td>🈂</td>\n",
" <td>0x1f202</td>\n",
" <td>1</td>\n",
" <td>0.466667</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>SQUARED KATAKANA SA</td>\n",
" <td>Enclosed Ideographic Supplement</td>\n",
" </tr>\n",
" <tr>\n",
" <th>961</th>\n",
" <td>🎰</td>\n",
" <td>0x1f3b0</td>\n",
" <td>1</td>\n",
" <td>0.421687</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>SLOT MACHINE</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" <tr>\n",
" <th>962</th>\n",
" <td>҂</td>\n",
" <td>0x482</td>\n",
" <td>1</td>\n",
" <td>0.519231</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>CYRILLIC THOUSANDS SIGN</td>\n",
" <td>Cyrillic</td>\n",
" </tr>\n",
" <tr>\n",
" <th>963</th>\n",
" <td>╤</td>\n",
" <td>0x2564</td>\n",
" <td>1</td>\n",
" <td>0.634615</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE</td>\n",
" <td>Box Drawing</td>\n",
" </tr>\n",
" <tr>\n",
" <th>964</th>\n",
" <td>➛</td>\n",
" <td>0x279b</td>\n",
" <td>1</td>\n",
" <td>0.011628</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>DRAFTING POINT RIGHTWARDS ARROW</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>965</th>\n",
" <td>♝</td>\n",
" <td>0x265d</td>\n",
" <td>1</td>\n",
" <td>0.280000</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>BLACK CHESS BISHOP</td>\n",
" <td>Miscellaneous Symbols</td>\n",
" </tr>\n",
" <tr>\n",
" <th>966</th>\n",
" <td>❋</td>\n",
" <td>0x274b</td>\n",
" <td>1</td>\n",
" <td>0.888889</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>967</th>\n",
" <td>✆</td>\n",
" <td>0x2706</td>\n",
" <td>1</td>\n",
" <td>0.557252</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>TELEPHONE LOCATION SIGN</td>\n",
" <td>Dingbats</td>\n",
" </tr>\n",
" <tr>\n",
" <th>968</th>\n",
" <td>📔</td>\n",
" <td>0x1f4d4</td>\n",
" <td>1</td>\n",
" <td>0.814815</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>NOTEBOOK WITH DECORATIVE COVER</td>\n",
" <td>Miscellaneous Symbols and Pictographs</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>969 rows × 9 columns</p>\n",
"</div>"
],
"text/plain": [
" Emoji Unicode codepoint Occurrences Position Negative Neutral \\\n",
"0 😂 0x1f602 14622 0.805101 3614 4163 \n",
"1 ❤ 0x2764 8050 0.746943 355 1334 \n",
"2 ♥ 0x2665 7144 0.753806 252 1942 \n",
"3 😍 0x1f60d 6359 0.765292 329 1390 \n",
"4 😭 0x1f62d 5526 0.803352 2412 1218 \n",
"5 😘 0x1f618 3648 0.854480 193 702 \n",
"6 😊 0x1f60a 3186 0.813302 189 754 \n",
"7 👌 0x1f44c 2925 0.805223 274 728 \n",
"8 💕 0x1f495 2400 0.765726 99 683 \n",
"9 👏 0x1f44f 2336 0.787130 243 634 \n",
"10 😁 0x1f601 2189 0.796151 278 648 \n",
"11 ☺ 0x263a 2062 0.798634 128 449 \n",
"12 ♡ 0x2661 1975 0.763695 102 448 \n",
"13 👍 0x1f44d 1854 0.812126 213 460 \n",
"14 😩 0x1f629 1808 0.826214 1069 336 \n",
"15 🙏 0x1f64f 1539 0.793848 124 648 \n",
"16 ✌ 0x270c 1534 0.790480 173 476 \n",
"17 😏 0x1f60f 1522 0.764977 170 676 \n",
"18 😉 0x1f609 1521 0.844833 151 513 \n",
"19 🙌 0x1f64c 1506 0.790600 152 358 \n",
"20 🙈 0x1f648 1456 0.738881 238 350 \n",
"21 💪 0x1f4aa 1409 0.806704 101 424 \n",
"22 😄 0x1f604 1398 0.794973 191 426 \n",
"23 😒 0x1f612 1385 0.857621 819 266 \n",
"24 💃 0x1f483 1344 0.852765 59 237 \n",
"25 💖 0x1f496 1263 0.762239 54 254 \n",
"26 😃 0x1f603 1206 0.734782 86 361 \n",
"27 😔 0x1f614 1205 0.866146 559 263 \n",
"28 😱 0x1f631 1130 0.773313 298 319 \n",
"29 🎉 0x1f389 1125 0.743636 43 207 \n",
".. ... ... ... ... ... ... \n",
"939 🕥 0x1f565 1 0.811966 1 0 \n",
"940 ♙ 0x2659 1 0.342857 0 1 \n",
"941 ▿ 0x25bf 1 0.432836 0 1 \n",
"942 ⚃ 0x2683 1 0.918919 0 1 \n",
"943 ✽ 0x273d 1 0.992701 0 0 \n",
"944 📼 0x1f4fc 1 1.000000 0 0 \n",
"945 🕐 0x1f550 1 1.000000 1 0 \n",
"946 🀄 0x1f004 1 1.000000 0 0 \n",
"947 ✾ 0x273e 1 0.023256 0 1 \n",
"948 ✬ 0x272c 1 0.955224 0 0 \n",
"949 🆑 0x1f191 1 0.983607 0 1 \n",
"950 ✫ 0x272b 1 0.923729 0 0 \n",
"951 🕔 0x1f554 1 0.742424 1 0 \n",
"952 ❣ 0x2763 1 0.471429 0 0 \n",
"953 ➱ 0x27b1 1 0.704348 0 1 \n",
"954 🆕 0x1f195 1 0.669118 0 1 \n",
"955 ➢ 0x27a2 1 0.242647 0 1 \n",
"956 ↕ 0x2195 1 0.735632 0 1 \n",
"957 📫 0x1f4eb 1 0.384615 0 0 \n",
"958 🉐 0x1f250 1 0.031250 0 0 \n",
"959 ♊ 0x264a 1 0.327586 0 1 \n",
"960 🈂 0x1f202 1 0.466667 1 0 \n",
"961 🎰 0x1f3b0 1 0.421687 1 0 \n",
"962 ҂ 0x482 1 0.519231 1 0 \n",
"963 ╤ 0x2564 1 0.634615 1 0 \n",
"964 ➛ 0x279b 1 0.011628 0 1 \n",
"965 ♝ 0x265d 1 0.280000 0 1 \n",
"966 ❋ 0x274b 1 0.888889 0 1 \n",
"967 ✆ 0x2706 1 0.557252 0 1 \n",
"968 📔 0x1f4d4 1 0.814815 0 0 \n",
"\n",
" Positive Unicode name \\\n",
"0 6845 FACE WITH TEARS OF JOY \n",
"1 6361 HEAVY BLACK HEART \n",
"2 4950 BLACK HEART SUIT \n",
"3 4640 SMILING FACE WITH HEART-SHAPED EYES \n",
"4 1896 LOUDLY CRYING FACE \n",
"5 2753 FACE THROWING A KISS \n",
"6 2243 SMILING FACE WITH SMILING EYES \n",
"7 1923 OK HAND SIGN \n",
"8 1618 TWO HEARTS \n",
"9 1459 CLAPPING HANDS SIGN \n",
"10 1263 GRINNING FACE WITH SMILING EYES \n",
"11 1485 WHITE SMILING FACE \n",
"12 1425 WHITE HEART SUIT \n",
"13 1181 THUMBS UP SIGN \n",
"14 403 WEARY FACE \n",
"15 767 PERSON WITH FOLDED HANDS \n",
"16 885 VICTORY HAND \n",
"17 676 SMIRKING FACE \n",
"18 857 WINKING FACE \n",
"19 996 PERSON RAISING BOTH HANDS IN CELEBRATION \n",
"20 868 SEE-NO-EVIL MONKEY \n",
"21 884 FLEXED BICEPS \n",
"22 781 SMILING FACE WITH OPEN MOUTH AND SMILING EYES \n",
"23 300 UNAMUSED FACE \n",
"24 1048 DANCER \n",
"25 955 SPARKLING HEART \n",
"26 759 SMILING FACE WITH OPEN MOUTH \n",
"27 383 PENSIVE FACE \n",
"28 513 FACE SCREAMING IN FEAR \n",
"29 875 PARTY POPPER \n",
".. ... ... \n",
"939 0 CLOCK FACE TEN-THIRTY \n",
"940 0 WHITE CHESS PAWN \n",
"941 0 WHITE DOWN-POINTING SMALL TRIANGLE \n",
"942 0 DIE FACE-4 \n",
"943 1 HEAVY TEARDROP-SPOKED ASTERISK \n",
"944 1 VIDEOCASSETTE \n",
"945 0 CLOCK FACE ONE OCLOCK \n",
"946 1 MAHJONG TILE RED DRAGON \n",
"947 0 SIX PETALLED BLACK AND WHITE FLORETTE \n",
"948 1 BLACK CENTRE WHITE STAR \n",
"949 0 SQUARED CL \n",
"950 1 OPEN CENTRE BLACK STAR \n",
"951 0 CLOCK FACE FIVE OCLOCK \n",
"952 1 HEAVY HEART EXCLAMATION MARK ORNAMENT \n",
"953 0 NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ... \n",
"954 0 SQUARED NEW \n",
"955 0 THREE-D TOP-LIGHTED RIGHTWARDS ARROWHEAD \n",
"956 0 UP DOWN ARROW \n",
"957 1 CLOSED MAILBOX WITH RAISED FLAG \n",
"958 1 CIRCLED IDEOGRAPH ADVANTAGE \n",
"959 0 GEMINI \n",
"960 0 SQUARED KATAKANA SA \n",
"961 0 SLOT MACHINE \n",
"962 0 CYRILLIC THOUSANDS SIGN \n",
"963 0 BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE \n",
"964 0 DRAFTING POINT RIGHTWARDS ARROW \n",
"965 0 BLACK CHESS BISHOP \n",
"966 0 HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK \n",
"967 0 TELEPHONE LOCATION SIGN \n",
"968 1 NOTEBOOK WITH DECORATIVE COVER \n",
"\n",
" Unicode block \n",
"0 Emoticons \n",
"1 Dingbats \n",
"2 Miscellaneous Symbols \n",
"3 Emoticons \n",
"4 Emoticons \n",
"5 Emoticons \n",
"6 Emoticons \n",
"7 Miscellaneous Symbols and Pictographs \n",
"8 Miscellaneous Symbols and Pictographs \n",
"9 Miscellaneous Symbols and Pictographs \n",
"10 Emoticons \n",
"11 Miscellaneous Symbols \n",
"12 Miscellaneous Symbols \n",
"13 Miscellaneous Symbols and Pictographs \n",
"14 Emoticons \n",
"15 Emoticons \n",
"16 Dingbats \n",
"17 Emoticons \n",
"18 Emoticons \n",
"19 Emoticons \n",
"20 Emoticons \n",
"21 Miscellaneous Symbols and Pictographs \n",
"22 Emoticons \n",
"23 Emoticons \n",
"24 Miscellaneous Symbols and Pictographs \n",
"25 Miscellaneous Symbols and Pictographs \n",
"26 Emoticons \n",
"27 Emoticons \n",
"28 Emoticons \n",
"29 Miscellaneous Symbols and Pictographs \n",
".. ... \n",
"939 Miscellaneous Symbols and Pictographs \n",
"940 Miscellaneous Symbols \n",
"941 Geometric Shapes \n",
"942 Miscellaneous Symbols \n",
"943 Dingbats \n",
"944 Miscellaneous Symbols and Pictographs \n",
"945 Miscellaneous Symbols and Pictographs \n",
"946 Mahjong Tiles \n",
"947 Dingbats \n",
"948 Dingbats \n",
"949 Enclosed Alphanumeric Supplement \n",
"950 Dingbats \n",
"951 Miscellaneous Symbols and Pictographs \n",
"952 Dingbats \n",
"953 Dingbats \n",
"954 Enclosed Alphanumeric Supplement \n",
"955 Dingbats \n",
"956 Arrows \n",
"957 Miscellaneous Symbols and Pictographs \n",
"958 Enclosed Ideographic Supplement \n",
"959 Miscellaneous Symbols \n",
"960 Enclosed Ideographic Supplement \n",
"961 Miscellaneous Symbols and Pictographs \n",
"962 Cyrillic \n",
"963 Box Drawing \n",
"964 Dingbats \n",
"965 Miscellaneous Symbols \n",
"966 Dingbats \n",
"967 Dingbats \n",
"968 Miscellaneous Symbols and Pictographs \n",
"\n",
"[969 rows x 9 columns]"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = pd.read_csv(\"/Users/Carsten/GitRepos/NLP-LAB/Project/Tools/Emoji_Sentiment_Data_v1.0.csv\", delimiter=\";\")\n",
"df#.head()"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"df_filtered = df[df[\"Unicode block\"]==\"Emoticons\"]"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array(['😂', '😍', '😭', '😘', '😊', '😁', '😩', '🙏', '😏', '😉', '🙌', '🙈', '😄',\n",
" '😒', '😃', '😔', '😱', '😜', '😳', '😡', '😎', '😢', '😋', '🙊', '😴', '😌',\n",
" '😞', '😆', '😝', '😪', '😫', '😅', '😀', '😚', '😻', '😥', '😕', '😤', '😈',\n",
" '😰', '😑', '😹', '😠', '😓', '😣', '😐', '😨', '😖', '😷', '🙋', '😛', '😬',\n",
" '😙', '🙆', '🙅', '🙉', '😇', '😿', '😲', '😶', '😵', '😸', '😧', '😮', '😽',\n",
" '🙀', '🙇', '😟', '😯', '😦', '🙍', '😺', '😾', '😼', '🙎', '😗'], dtype=object)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_filtered['Emoji'].values"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"def sentiment_vector_dist(v1,v2):\n",
" pos_v1 = v1[0]\n",
" neg_v1 = v1[1]\n",
" neu_v1 = v1[2]\n",
" \n",
" pos_v2 = v2[0]\n",
" neg_v2 = v2[1]\n",
" neu_v2 = v2[2]\n",
" \n",
" #tmp_dist = float(np.abs(pos_v1-pos_v2))+float(np.abs(neg_v1-neg_v2))+float(np.abs(neu_v1-neu_v2))\n",
"\n",
"\n",
" \n",
" tmp_dist = np.linalg.norm(np.array(v1)-np.array(v2))\n",
" \n",
" return tmp_dist\n",
" \n",
"#sentiment_vector_dist([0.2,.9,.01],[0.3,0.3,0.4])"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[ 0.46813021],\n",
" [ 0.24716181],\n",
" [ 0.28470797]])"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def emoji_to_sentiment_vector(e):\n",
" tmp = df[df[\"Emoji\"]==e]\n",
" \n",
" #display(\"tmp\", tmp[\"Positive\"])\n",
" \n",
" pos = tmp[\"Positive\"].values/tmp[\"Occurrences\"].values\n",
" neg = tmp[\"Negative\"].values/tmp[\"Occurrences\"].values\n",
" neu = tmp[\"Neutral\"].values/tmp[\"Occurrences\"].values\n",
" \n",
" return np.array([pos,neg,neu])\n",
"\n",
"emoji_to_sentiment_vector(\"😂\")"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def emoji_distance(e1,e2):\n",
" sent_v1 = emoji_to_sentiment_vector(e1)\n",
" sent_v2 = emoji_to_sentiment_vector(e2)\n",
" #display(sent_v1, sent_v2)\n",
" d = sentiment_vector_dist(sent_v1,sent_v2)\n",
" return d"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"all_smilies = list(df_filtered[\"Emoji\"])\n",
"#all_smilies = list(df[\"Emoji\"])\n",
"\n",
"\n",
"d_m = np.zeros(shape=(len(all_smilies),len(all_smilies)))\n",
"#c1,c2 = 0\n",
"for c1 in range(len(all_smilies)):\n",
" for c2 in range(len(all_smilies)):\n",
" e1 = all_smilies[c1]\n",
" e2 = all_smilies[c2]\n",
" \n",
" d = emoji_distance(e1,e2)\n",
" d_m[c1,c2] = d\n",
" \n",
" #print(e1,e2,d)\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"😂: 😂😱😬🙇😈😹😅😥🙉😵\n",
"😍: 😍😊😘😚😻😛😋😇🙌😀\n",
"😭: 😭😪😓😴😔😷😖😫😢😨\n",
"😘: 😘😚😍😙😊😗😛😻😽😋\n",
"😊: 😊😻😛😍😇😋😀🙌😘😚\n",
"😁: 😁😄😝😎🙊😜😆🙆😉🙋\n",
"😩: 😩😒😕🙍😿😾😠😦😐😑\n",
"🙏: 🙏😏😸😉🙀😮😜😝😄🙉\n",
"😏: 😏🙏😮🙀😸😈🙉😉😜😝\n",
"😉: 😉😜😸😝🙆😄😁😎😆🙊\n",
"🙌: 🙌😀😛😻😇🙋😌😊😋😃\n",
"🙈: 🙈😼😌🙊🙋😆😁😄😺😎\n",
"😄: 😄😝😁😆😜🙊😉😎😸🙉\n",
"😒: 😒😩😕😿🙍😾😠😦😐😑\n",
"😃: 😃🙆😎😀😇😋🙋🙌😁🙊\n",
"😔: 😔😷😭😖😪😓😴😫😤😨\n",
"😱: 😱😬😂🙇😹😅😥😵😈😯\n",
"😜: 😜😉😝😁😄🙆😎😸😆🙊\n",
"😳: 😳😲😧😵😯🙇😹😶😢😥\n",
"😡: 😡😣😞🙎😫😖😰😠😔😷\n",
"😎: 😎🙆😁🙊😜😃😄😝🙋😉\n",
"😢: 😢😟😪😓😴😭😵😥😧😰\n",
"😋: 😋😇😻😀😊😃😛🙌😍🙆\n",
"🙊: 🙊🙋😁😆😎🙈😌😄😼😝\n",
"😴: 😴😭😪😓😔😧😨😢😷😲\n",
"😌: 😌🙋🙈🙊🙌😼😀😎😆😁\n",
"😞: 😞😫😖🙎😰😓😔😡😪😭\n",
"😆: 😆😄😁🙊😝😼🙈😜😎🙉\n",
"😝: 😝😄😜😁😆😉😸😎🙊🙆\n",
"😪: 😪😓😭😴😔😢😷😖😫😞\n",
"😫: 😫😖😞😔😷😭😓😪😣😡\n",
"😅: 😅😹😥😬🙇😱😂😟😵😢\n",
"😀: 😀😇🙌😻😛😋😃🙋😊😌\n",
"😚: 😚😘😍😙😗😊😛😻😽😋\n",
"😻: 😻😊😛😇😀😋🙌😍😘😃\n",
"😥: 😥😹😟😅😵🙇😬😱😢😂\n",
"😕: 😕😒😩😿🙍😾😠😦😐😑\n",
"😤: 😤🙅😷😨😔😶😑😖😭😴\n",
"😈: 😈😮🙉🙀😂😱😬😯🙇😄\n",
"😰: 😰🙎😞😫😓😢😪😭😖😟\n",
"😑: 😑😦😐🙅😤😿😶😒😨😕\n",
"😹: 😹🙇😥😬😅😵😱😂😟😢\n",
"😠: 😠🙍😾😩😒😕😿😣😖😫\n",
"😓: 😓😪😭😴😔😢😷😖😫😞\n",
"😣: 😣😡😫😞😠😖🙍😾🙎😷\n",
"😐: 😐😦😑😿😕😒😩🙅😤🙍\n",
"😨: 😨😶🙅😤😧😲😴😔😷😭\n",
"😖: 😖😫😔😷😞😭😓😪😣😴\n",
"😷: 😷😔😖😤😭😫😪😓😨😴\n",
"🙋: 🙋😌🙊🙈😎🙌😀😁😆😼\n",
"😛: 😛😻😊🙌😀😇😍😋😘😽\n",
"😬: 😬😱😂🙇😹😅😥😵😈😟\n",
"😙: 😙😚😘😗😍😊😛😻😽😋\n",
"🙆: 🙆😎😜😃😉😁😝😄🙊😸\n",
"🙅: 🙅😤😶😨😑😷😔😲😧😴\n",
"🙉: 🙉🙀😈😄😝😆😸😮😁😜\n",
"😇: 😇😀😋😻🙌😊😛😃🙋😍\n",
"😿: 😿😒😕😩🙍😦😠😐😾😑\n",
"😲: 😲😧😶😨😴😳😭😪😓🙅\n",
"😶: 😶😨🙅😲😧😤😴😔😷😭\n",
"😵: 😵🙇😹😥😟😱😬😅😢😳\n",
"😸: 😸😉😜😝😄🙀😁🙉🙆😎\n",
"😧: 😧😲😨😴😶😭😪😳😓😢\n",
"😮: 😮😈🙀🙉😏😸😯😂🙏😱\n",
"😽: 😽😛😘😍😚🙌😊😻😗😺\n",
"🙀: 🙀🙉😮😈😸😝😄😜😉😆\n",
"🙇: 🙇😹😱😬😵😥😂😅😟😯\n",
"😟: 😟😥😢😵😹😅🙇😬😱😓\n",
"😯: 😯😳🙇😱😈😵😮😂😬😹\n",
"😦: 😦😐😑😿😕😒😩🙅😤🙍\n",
"🙍: 🙍😾😩😠😒😕😿😣😖😡\n",
"😺: 😺🙈😌😼🙋😽🙊🙌😆😛\n",
"😾: 😾🙍😩😠😒😕😿😣😡😖\n",
"😼: 😼🙈😆🙊😌😁🙋😄😝🙉\n",
"🙎: 🙎😰😞😡😫😖😣😓😪😭\n",
"😗: 😗😙😚😘😽😍😊😛😻🙌\n"
]
}
],
"source": [
"for c in range(len(d_m[0])):\n",
" emoji = all_smilies[c]\n",
" row = d_m[c]\n",
" row_sorted = np.argsort(row)\n",
" #closest 5\n",
" r = row_sorted[0:10]\n",
" #print()\n",
" closest = \"\"\n",
" for i in r:\n",
" closest+=all_smilies[i]\n",
" print(emoji+\": \"+closest)\n",
" "
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"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.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}