Skip to content

Instantly share code, notes, and snippets.

@soeque1
Last active July 29, 2017 16:36
Show Gist options
  • Save soeque1/98d1ff270c2e5d9ca9aef279660ba0ec to your computer and use it in GitHub Desktop.
Save soeque1/98d1ff270c2e5d9ca9aef279660ba0ec to your computer and use it in GitHub Desktop.
wiki.ko (pretrained data)에서 긍정 seed(좋다, 좋아) 및 부정 seed(나쁘다, 나빠) 유사어 추출
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### wiki.ko (pretrained data)에서 긍정 seed(좋다, 좋아) 및 부정 seed(나쁘다, 나빠) 유사어 추출"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### data source: https://github.com/facebookresearch/fastText/blob/master/pretrained-vectors.md"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from gensim.models.keyedvectors import KeyedVectors\n",
"import os\n",
"model=KeyedVectors.load_word2vec_format('/Volumes/Transcend/corpus/wiki.ko/wiki.ko.vec')"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"300"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model.vector_size"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from itertools import islice\n",
"def take(n, iterable):\n",
" \"Return first n items of the iterable as a list\"\n",
" return list(islice(iterable, n))"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['임브룰리아는',\n",
" '상동면에',\n",
" '곽병원',\n",
" '陳奣',\n",
" '징하선',\n",
" '혁명보다는',\n",
" '스피노자의',\n",
" '반조',\n",
" '사원수군의',\n",
" '티베트족이다']"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"take(10, model.vocab.keys())"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import pprint\n",
"import re"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'좋다': <gensim.models.keyedvectors.Vocab object at 0x147029828>,\n",
" '좋다고': <gensim.models.keyedvectors.Vocab object at 0x147172e10>,\n",
" '좋다고는': <gensim.models.keyedvectors.Vocab object at 0x1486b19b0>,\n",
" '좋다는': <gensim.models.keyedvectors.Vocab object at 0x147b521d0>,\n",
" '좋다며': <gensim.models.keyedvectors.Vocab object at 0x158c1e6d8>,\n",
" '좋다면': <gensim.models.keyedvectors.Vocab object at 0x14ef01cf8>,\n",
" '좋다에서': <gensim.models.keyedvectors.Vocab object at 0x163d6c470>,\n",
" '좋다의': <gensim.models.keyedvectors.Vocab object at 0x15b4e46a0>}\n"
]
}
],
"source": [
"pprint.pprint({k: v for k, v in model.vocab.items() if k.startswith('좋다')})"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 총 vocab 수"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"879129"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(model.vocab)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 영문자만"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"73907\n"
]
}
],
"source": [
"pprint.pprint (len([key for key, value in model.vocab.items() if re.match('^[A-Za-z]+', key)]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 한글만"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"773747\n"
]
}
],
"source": [
"pprint.pprint (len([key for key, value in model.vocab.items() if re.match('^[가-힣]+', key)]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 형태소분석기"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from konlpy.tag import Kkma, Twitter\n",
"import codecs\n",
"\n",
"tagger = Twitter()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def set_konlpy(text):\n",
" words = Twitter().pos(text, norm=True, stem=True)\n",
" check = ['Verb','Adjective']#,'Noun']\n",
" nn = [e[0] for e in words][0]\n",
" return ''.join(nn)"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"good_vec=model.most_similar(positive=['좋다','좋아'],topn=100)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"good_vec=[set_konlpy(r[0]) for r in good_vec]"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'괜찮다',\n",
" '나쁘다',\n",
" '너무',\n",
" '딱',\n",
" '맛있다',\n",
" '멋있다',\n",
" '밥',\n",
" '밥맛',\n",
" '시원하다',\n",
" '안',\n",
" '예쁘다',\n",
" '잘하다',\n",
" '좋다',\n",
" '좋아지다',\n",
" '좋아하다',\n",
" '편하다'}"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"set(good_vec)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"bad_vec=model.most_similar(positive=['나쁘다', '나빠'],topn=100)"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"bad_vec=[set_konlpy(r[0]) for r in bad_vec]"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'거치다',\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",
" '형편'}"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"set(bad_vec)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### http://bookworm.benschmidt.org/posts/2015-10-30-rejecting-the-gender-binary.html\n",
"### good_vectors"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"good_bad_vec=model.most_similar(positive=['좋다','좋아'],negative=['나쁘다', '나빠'],topn=len(model.vocab))"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"top_n = 100"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"good_vec=good_bad_vec[0:top_n]"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'가을',\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",
" '후속'}"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"set([set_konlpy(r[0]) for r in good_vec])"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"bad_vec=good_bad_vec[(len(good_bad_vec)-top_n):len(good_bad_vec)]"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'가하다',\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",
" '휩싸다'}"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"set([set_konlpy(r[0]) for r in bad_vec])"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [],
"source": [
"#export CC=/usr/local/bin/gcc-7;CXX=/usr/local/bin/g++-7;MPICXX=/usr/local/bin/mpicxx\n",
"#!pip3 install rpy2"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1]\n",
" \"ko_KR.UTF-8\"\n",
"\n",
"\n"
]
}
],
"source": [
"%load_ext rpy2.ipython"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"#sudo ln -s /usr/bin/gcc /usr/local/bin/gcc-4.2\n",
"#!pip3 install annoy"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [],
"source": [
"#from gensim.similarities.index import AnnoyIndexer"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [],
"source": [
"#annoy_index = AnnoyIndexer(model, 500)"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"range(0, 879129)"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"range(0, len(model.vocab))"
]
},
{
"cell_type": "code",
"execution_count": 150,
"metadata": {},
"outputs": [],
"source": [
"good_vec=model.most_similar(positive=['좋다','좋아'],negative=['싫다','싫어'],topn=100000000)"
]
},
{
"cell_type": "code",
"execution_count": 151,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[('양호하여', 0.36420542001724243),\n",
" ('양호한', 0.3419666886329651),\n",
" ('양호하나', 0.3339845538139343),\n",
" ('양호하므로', 0.3290649652481079),\n",
" ('생장할', 0.32386747002601624)]"
]
},
"execution_count": 151,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"good_vec[0:5]"
]
},
{
"cell_type": "code",
"execution_count": 152,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"gender_vec=model.most_similar(positive=[\"여자\", \"여성\"],negative=[\"남자\", \"남성\"],topn=100000000)"
]
},
{
"cell_type": "code",
"execution_count": 153,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[('재직하게', 0.24544139206409454),\n",
" ('재직했으며', 0.2446596622467041),\n",
" ('역임하였으며', 0.24272967875003815),\n",
" ('naca', 0.23936903476715088),\n",
" ('역임함', 0.23648929595947266)]"
]
},
"execution_count": 153,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"gender_vec[0:5]"
]
},
{
"cell_type": "code",
"execution_count": 383,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 422,
"metadata": {},
"outputs": [],
"source": [
"word_scores = pd.DataFrame(good_vec, columns=['words', 'goodness_score'])"
]
},
{
"cell_type": "code",
"execution_count": 423,
"metadata": {},
"outputs": [],
"source": [
"word_scores = pd.merge(word_scores, pd.DataFrame(gender_vec, columns=['words', 'gender_score']), how='left', on=['words'])"
]
},
{
"cell_type": "code",
"execution_count": 424,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"word_scores=word_scores.dropna(axis=0, how='any')"
]
},
{
"cell_type": "code",
"execution_count": 425,
"metadata": {},
"outputs": [],
"source": [
"word_scores.loc[:,'genderedness'] = np.where(word_scores['gender_score'] > 0, 'female', 'male')\n",
"word_scores.loc[:,'goodness'] = np.where(word_scores['goodness_score'] > 0, 'positive', 'negative')"
]
},
{
"cell_type": "code",
"execution_count": 426,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"word_scores_reduced=word_scores.iloc[np.array((-abs(word_scores['gender_score']*word_scores['goodness_score']))).argsort().argsort() <= (10000-1)]"
]
},
{
"cell_type": "code",
"execution_count": 430,
"metadata": {},
"outputs": [],
"source": [
"words_stem=[set_konlpy(r) for r in word_scores_reduced['words']]"
]
},
{
"cell_type": "code",
"execution_count": 431,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pandas/core/indexing.py:517: SettingWithCopyWarning: \n",
"A value is trying to be set on a copy of a slice from a DataFrame.\n",
"Try using .loc[row_indexer,col_indexer] = value instead\n",
"\n",
"See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n",
" self.obj[item] = s\n"
]
}
],
"source": [
"word_scores_reduced.loc[:,'word_stem'] = words_stem"
]
},
{
"cell_type": "code",
"execution_count": 434,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(10000, 6)\n"
]
},
{
"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>words</th>\n",
" <th>goodness_score</th>\n",
" <th>gender_score</th>\n",
" <th>genderedness</th>\n",
" <th>goodness</th>\n",
" <th>word_stem</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>완공예정이다</td>\n",
" <td>0.322061</td>\n",
" <td>0.092609</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>완공</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>고령토</td>\n",
" <td>0.310629</td>\n",
" <td>0.054626</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>고령토</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>풍부하여</td>\n",
" <td>0.304053</td>\n",
" <td>0.067789</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>풍부하다</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>우수하여</td>\n",
" <td>0.294744</td>\n",
" <td>0.087940</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>우수하다</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>풍부하며</td>\n",
" <td>0.292888</td>\n",
" <td>0.084924</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>풍부하다</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" words goodness_score gender_score genderedness goodness word_stem\n",
"6 완공예정이다 0.322061 0.092609 female positive 완공\n",
"12 고령토 0.310629 0.054626 female positive 고령토\n",
"17 풍부하여 0.304053 0.067789 female positive 풍부하다\n",
"24 우수하여 0.294744 0.087940 female positive 우수하다\n",
"26 풍부하며 0.292888 0.084924 female positive 풍부하다"
]
},
"execution_count": 434,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"print (np.shape(word_scores_reduced))\n",
"word_scores_reduced.head()"
]
},
{
"cell_type": "code",
"execution_count": 435,
"metadata": {},
"outputs": [],
"source": [
"word_scores_reduced=word_scores_reduced.groupby('word_stem').agg({\"goodness_score\": \"mean\", \"gender_score\": \"mean\", \"goodness\": \"max\", \"genderedness\": \"max\"})"
]
},
{
"cell_type": "code",
"execution_count": 436,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(4187, 4)"
]
},
"execution_count": 436,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.shape(word_scores_reduced)"
]
},
{
"cell_type": "code",
"execution_count": 437,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"word_scores_reduced['eval'] = 1+np.array(abs(word_scores_reduced['goodness_score'])/abs(word_scores_reduced['gender_score'])).argsort().argsort()"
]
},
{
"cell_type": "code",
"execution_count": 438,
"metadata": {},
"outputs": [],
"source": [
"word_scores_reduced=word_scores_reduced.sort_values('eval', ascending=True)"
]
},
{
"cell_type": "code",
"execution_count": 439,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(4187, 5)\n"
]
},
{
"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>gender_score</th>\n",
" <th>goodness_score</th>\n",
" <th>genderedness</th>\n",
" <th>goodness</th>\n",
" <th>eval</th>\n",
" </tr>\n",
" <tr>\n",
" <th>word_stem</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>이중</th>\n",
" <td>-0.125154</td>\n",
" <td>-0.002300</td>\n",
" <td>male</td>\n",
" <td>positive</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>리</th>\n",
" <td>0.128225</td>\n",
" <td>0.003129</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>국가</th>\n",
" <td>0.116063</td>\n",
" <td>0.004722</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>유일</th>\n",
" <td>0.146701</td>\n",
" <td>0.006011</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>한국</th>\n",
" <td>0.133119</td>\n",
" <td>0.007006</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>5</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" gender_score goodness_score genderedness goodness eval\n",
"word_stem \n",
"이중 -0.125154 -0.002300 male positive 1\n",
"리 0.128225 0.003129 female positive 2\n",
"국가 0.116063 0.004722 female positive 3\n",
"유일 0.146701 0.006011 female positive 4\n",
"한국 0.133119 0.007006 female positive 5"
]
},
"execution_count": 439,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"print (np.shape(word_scores_reduced))\n",
"word_scores_reduced.head()"
]
},
{
"cell_type": "code",
"execution_count": 440,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"word_scores_reduced=word_scores_reduced[0:35]"
]
},
{
"cell_type": "code",
"execution_count": 441,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(35, 5)\n"
]
},
{
"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>gender_score</th>\n",
" <th>goodness_score</th>\n",
" <th>genderedness</th>\n",
" <th>goodness</th>\n",
" <th>eval</th>\n",
" </tr>\n",
" <tr>\n",
" <th>word_stem</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>이중</th>\n",
" <td>-0.125154</td>\n",
" <td>-0.002300</td>\n",
" <td>male</td>\n",
" <td>positive</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>리</th>\n",
" <td>0.128225</td>\n",
" <td>0.003129</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>국가</th>\n",
" <td>0.116063</td>\n",
" <td>0.004722</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>유일</th>\n",
" <td>0.146701</td>\n",
" <td>0.006011</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>한국</th>\n",
" <td>0.133119</td>\n",
" <td>0.007006</td>\n",
" <td>female</td>\n",
" <td>positive</td>\n",
" <td>5</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" gender_score goodness_score genderedness goodness eval\n",
"word_stem \n",
"이중 -0.125154 -0.002300 male positive 1\n",
"리 0.128225 0.003129 female positive 2\n",
"국가 0.116063 0.004722 female positive 3\n",
"유일 0.146701 0.006011 female positive 4\n",
"한국 0.133119 0.007006 female positive 5"
]
},
"execution_count": 441,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"print (np.shape(word_scores_reduced))\n",
"word_scores_reduced.head()"
]
},
{
"cell_type": "code",
"execution_count": 442,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(35, 5)"
]
},
"execution_count": 442,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.shape(word_scores_reduced)"
]
},
{
"cell_type": "code",
"execution_count": 443,
"metadata": {},
"outputs": [],
"source": [
"word_scores=word_scores_reduced\n",
"word_scores.loc[:,'words']=list(word_scores_reduced.index)"
]
},
{
"cell_type": "code",
"execution_count": 444,
"metadata": {},
"outputs": [],
"source": [
"%R -i word_scores"
]
},
{
"cell_type": "code",
"execution_count": 445,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
" gender_score goodness_score genderedness goodness eval words\n",
"이중 -0.1251539 -0.002299555 male positive 1 이중\n",
"리 0.1282252 0.003128745 female positive 2 리\n",
"국가 0.1160633 0.004721962 female positive 3 국가\n",
"유일 0.1467010 0.006010905 female positive 4 유일\n",
"한국 0.1331187 0.007005833 female positive 5 한국\n",
"오다 -0.1223622 -0.007364109 male positive 6 오다\n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"%R print (head(word_scores))"
]
},
{
"cell_type": "code",
"execution_count": 446,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
" gender_score goodness_score genderedness goodness \n",
" Min. :-0.20995 Min. :-0.0999330 female:20 negative: 8 \n",
" 1st Qu.:-0.12461 1st Qu.:-0.0518482 male :15 positive:27 \n",
" Median : 0.11606 Median : 0.0047220 \n",
" Mean : 0.03492 Mean : 0.0004704 \n",
" 3rd Qu.: 0.19872 3rd Qu.: 0.0493220 \n",
" Max. : 0.23937 Max. : 0.0853002 \n",
" \n",
" eval words \n",
" Min. : 1.0 경계 : 1 \n",
" 1st Qu.: 9.5 교수 : 1 \n",
" Median :18.0 국가 : 1 \n",
" Mean :18.0 국교 : 1 \n",
" 3rd Qu.:26.5 내 : 1 \n",
" Max. :35.0 단순 : 1 \n",
" (Other):29 \n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"%R print (summary(word_scores))"
]
},
{
"cell_type": "code",
"execution_count": 447,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import matplotlib"
]
},
{
"cell_type": "code",
"execution_count": 448,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array(['ggplot2', 'tools', 'stats', 'graphics', 'grDevices', 'utils',\n",
" 'datasets', 'methods', 'base'], \n",
" dtype='<U9')"
]
},
"execution_count": 448,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"%R suppressPackageStartupMessages(library(ggplot2))"
]
},
{
"cell_type": "code",
"execution_count": 449,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAEDWlDQ1BJQ0MgUHJvZmlsZQAAOI2N\nVV1oHFUUPrtzZyMkzlNsNIV0qD8NJQ2TVjShtLp/3d02bpZJNtoi6GT27s6Yyc44M7v9oU9FUHwx\n6psUxL+3gCAo9Q/bPrQvlQol2tQgKD60+INQ6Ium65k7M5lpurHeZe58853vnnvuuWfvBei5qliW\nkRQBFpquLRcy4nOHj4g9K5CEh6AXBqFXUR0rXalMAjZPC3e1W99Dwntf2dXd/p+tt0YdFSBxH2Kz\n5qgLiI8B8KdVy3YBevqRHz/qWh72Yui3MUDEL3q44WPXw3M+fo1pZuQs4tOIBVVTaoiXEI/MxfhG\nDPsxsNZfoE1q66ro5aJim3XdoLFw72H+n23BaIXzbcOnz5mfPoTvYVz7KzUl5+FRxEuqkp9G/Aji\na219thzg25abkRE/BpDc3pqvphHvRFys2weqvp+krbWKIX7nhDbzLOItiM8358pTwdirqpPFnMF2\nxLc1WvLyOwTAibpbmvHHcvttU57y5+XqNZrLe3lE/Pq8eUj2fXKfOe3pfOjzhJYtB/yll5SDFcSD\niH+hRkH25+L+sdxKEAMZahrlSX8ukqMOWy/jXW2m6M9LDBc31B9LFuv6gVKg/0Szi3KAr1kGq1GM\njU/aLbnq6/lRxc4XfJ98hTargX++DbMJBSiYMIe9Ck1YAxFkKEAG3xbYaKmDDgYyFK0UGYpfoWYX\nG+fAPPI6tJnNwb7ClP7IyF+D+bjOtCpkhz6CFrIa/I6sFtNl8auFXGMTP34sNwI/JhkgEtmDz14y\nSfaRcTIBInmKPE32kxyyE2Tv+thKbEVePDfW/byMM1Kmm0XdObS7oGD/MypMXFPXrCwOtoYjyyn7\nBV29/MZfsVzpLDdRtuIZnbpXzvlf+ev8MvYr/Gqk4H/kV/G3csdazLuyTMPsbFhzd1UabQbjFvDR\nmcWJxR3zcfHkVw9GfpbJmeev9F08WW8uDkaslwX6avlWGU6NRKz0g/SHtCy9J30o/ca9zX3Kfc19\nzn3BXQKRO8ud477hLnAfc1/G9mrzGlrfexZ5GLdn6ZZrrEohI2wVHhZywjbhUWEy8icMCGNCUdiB\nlq3r+xafL549HQ5jH+an+1y+LlYBifuxAvRN/lVVVOlwlCkdVm9NOL5BE4wkQ2SMlDZU97hX86Ei\nlU/lUmkQUztTE6mx1EEPh7OmdqBtAvv8HdWpbrJS6tJj3n0CWdM6busNzRV3S9KTYhqvNiqWmuro\niKgYhshMjmhTh9ptWhsF7970j/SbMrsPE1suR5z7DMC+P/Hs+y7ijrQAlhyAgccjbhjPygfeBTjz\nhNqy28EdkUh8C+DU9+z2v/oyeH791OncxHOs5y2AtTc7nb/f73TWPkD/qwBnjX8BoJ98VVBg/m8A\nAEAASURBVHgB7N0HnCRF+f/xZ2Y2X8535MxxwAEHkpEoGSQYEAVRERSUJIgi+Q8oUUR+IqKIIKgo\nIEjOHOkIR845HXdcjhtnp//1raOH2dnZPLPbvfup12t3Uofqd/X01NNV1Z0IXDISAggggAACCCCA\nAAIIINALAsleWAerQAABBBBAAAEEEEAAAQS8AAEIOwICCCCAAAIIIIAAAgj0mgABSK9RsyIEEEAA\nAQQQQAABBBAgAGEfQAABBBBAAAEEEEAAgV4T6PUA5PXXX7dLLrmkzb9FixbZM888Y//973+LgqAx\n9nV1dUVZVhQWsmzZMp+NxYsXe8N0Ol30bF188cWmcuhpUl5V1o2Njb4MfvOb3/R0kZ2aP3e9nZqh\nhxPll0XuPvfss88WbV8Oy0VlI9dMJlMw59dee6299dZbBT/r7JtPPvmk3X333Z2dnOkQQAABBBBA\nAIFOC/R6ADJv3jybNm2a//vf//5nP/vZz0yVnfC9hoYGe+ihh+zqq6/u9Ea0N+Euu+xi06dPb2+S\n2Hz2hz/8wU499VSf3yVLltill15qxQ5AnnvuOdPfsGHDeuyiirnKV2VaXV1t7733nk2dOrXHy+1o\nAbnr7WjaYnyeXxa5+5z2vVtvvbXHq8ktF32H5NpW2V900UX2wgsv9GidG220kZ199tlWX1/fo+Uw\nMwIIIIAAAgggkC9Qlv9GqV9vu+22pj8lVUa33357u/HGGy2RSJRk1S+//HJJltsXC3311VetrGx5\nka244or20UcfFT0bJ554ol1++eVFX64W+Ktf/cq++c1v+oCzVOVdkox3sND8ssjd54488kjTX09T\nKculUN5qamrsa1/7ml122WX285//vNAkvIcAAggggAACCHRLoNdbQDqbS51VPvTQQ23EiBG2wQYb\n2F133ZWd9bXXXrOdd97Zn6WfOHGi/f3vf89+lvvk4IMPtvnz59u3v/1t+9e//uU/+uc//2l77rmn\nX+5OO+1kYWXxk08+sS233NLOP/98W3nllf06//SnP+UuLvtc026zzTamz9dcc00bM2aMHX/88dku\nMeoCdPTRR9uECRP8309+8hOrra3Nzq/uM+utt56p4qpuSZtuuql9+umn/vN77rnHNt98c79tK620\nkl+OznSrW80NN9xg1113nX3ve9/z02vb1bpw7LHH2oUXXphdvroAKbB79NFHraO8ZGdyT+677z6b\nO3euTZo0yb+tAOfLX/6yDxzGjh3rDTtanrZt3XXXtVVXXdX75C5f7yWTSbvlllty384+b2vbNYEq\nw3/96199GQ0dOtTUypAbgLW33uwK3JM///nPvqz2339/X25f+cpXWrQWvPjii/ajH/3Ixo0bZ/LV\nOsN055132vrrr29DhgyxyZMnZ7tWqezCssjf59SSp+WpG+DGG2+c3d+0TLVqbLHFFr4lo719Or9c\nwvxccMEFfv9affXVfaAQvh8+vv/++z5f4Ws96rvw73//27/VUVl+/etf9/vn0qVLcxfBcwQQQAAB\nBBBAoGcCrrLaZ+mRRx7RTRAD15e9RR5cEBC4impw5ZVXBnPmzAncGdhg9OjRfhoXmAQrrLBC8Itf\n/CJwleXAVab8Z67bVotl6IWrOPnPXF/2wI1DCFzwEYwaNSr4z3/+E8yaNSs47rjjAlfRDBYsWBC4\n7kE+L3vttVcwY8aM4P777/fTukpxq+VqWuXPnc0P3n777eDxxx8PBg0aFGg9Sj/4wQ8C18oTuBaL\n4KWXXgpcMBAcddRR/rN//OMfPv+uUunn3XXXXf16P/jgg+Czzz4LKisrA9ciFLgKa+BaiIKKiorA\ndVULXKARHH744YE7mx64imOg6WXnApvgpptuClwlNOvoAo/ABUV+m9vLi89Qzj/XQhG4YCb7jrYt\nlUoF3/jGNwIXAAYff/xxu9vmgrzABV3ezo31CVzw4vPoukRll6l1HHPMMdnX4ZP2tl3TbLbZZsFa\na60VPPjgg4Gr8HtfbZtSZ9brJ3T/tG/JzQVsgfJ15plnBqusskrgxlV4f+1nv/zlL/1zF/AFLtgJ\nXBeqoLm5ORg+fLjf31QWLhD0n8k/tyzy9zmtR/uU0kEHHRScdNJJ/rn+/fSnPw1++MMfBh3t0/nl\n8u677/ptcIF04IKM4LbbbvN5uf322/2yN9xwQ2/yxhtv+Olyv18ucA6uuuoqP11n9o111lkn0P5E\nQgABBBBAAAEEiiVgxVpQd5bTXgDizhZnF6mKryqNCjhUKVQQoUqoghP9uRaB4Dvf+U52+twnqoiH\nFShV9sNKq6Zx/dt94OBaF7IBSDitPleFUcvOT2GwospfmLbeeuvAjdHwy1SlXYFRmD93xj+oqqry\nAYIqowp8wqTASdumSqwCi+eff95/pLy5AczB2muvHfzxj3/07ymICSvvuZVeBVeqOD/22GN+uiOO\nOCJwLTId5iXMQ/i43377BW6gc/jSB0jK25tvvunfU57a2zbXqhC4s/3Z+bXdmj83AFFQ6VqvstOE\nTzradgUgCh7C9Nvf/jbYYYcd/MvOrDecT8tQkBQmbZPrbuQDLNc6ErgWt8C1OIUf+31g77339mWn\nYFUBoBvX4T+Xu1JuWeh17j6XG4AomHWtWj6YaWpq8tM98cQTHe7T+eUSBiCaN0wHHnigz6tedyYA\n6agsw+W6lqbs/he+xyMCCCCAAAIIINATgV4fA+IqpJ1K6n4UJnfm2T9VNxZX6ffdmVyFP/zYP7oK\naovXhV5oXnWRCZNrbbAvfelLpi5VSuXl5b6LT/i5ukLdfPPN4ctWj+PHj8++51pAzFUqzQVL5s6W\n+0HC6m4UJk3rAhJ75513WuRBXXDC8RDqd+/O8JsLpnwXqylTppi6v7R1taNw2cq35lFXNDloTI3G\n13SUF3Wryk2uYuu7OuW+p+eruq5TSh0tzwUqts8++/hp9S8c65N9wz2Rg9aTnzqz7bnegwcPzg7C\n7sx6c9e33XbbZV9qH9CAa101yrXCmPYrF2RlP9e06ralMnItDP4iAFtttZXvoqWxHa61JDttR0/U\nbUzLcYG37xo3cuRI07J00QV10Wtrny5ULq5lzHffCtep7oNdGezeUVmG+0Zb5RWul0cEEEAAAQQQ\nQKCrApENQMJKef4GqW++AhJV5MOKoiqO4eDs/OlzX2te18Jg3/3ud/3bChR0tSDXFca/VgDhuh35\n8Rl6Q330XQuE/6zQv0J5DCtuGrPhul752RQ4KY8aK6IxFU899VQ2CNFlWl0E6adzXansvPPOM9el\nxlcutX0aK9JRAKKZNS5EY1p23HFHPy7FnQU3XQ1Kqa28+A9z/mk8SxiM5bydde5o2zR/7tWXFBjk\nJy1f0+Wnzmx7vnfo1pn15q5Pg/nDpDLXOKDTTz/dBwfXXHNN+JF/1FWsXDckH+xo7IkuTavL4Ooy\n0a6lyRQkhmNmWsxY4IUCUu17rhueaYyTykypo326ULno0sYaexIG6tqvNaYoN4XfD9fa4a9Cps9c\n10M/SUdlGS5H5VUokAw/5xEBBBBAAAEEEOiqwBen6Ls6Zx9Nv9tuu/mKtS5Jq8HZbvyGP4vcVkuF\nBgyr8q9KvOum4gdAv/LKK76VwnVt8svQ2eMwXXHFFX5gt6bRoOivfvWr4UedegwHSOtSqLpcqtar\nAeqqrKoCrcHPqmw/8MADvjXHdQnKLleVUs2vlhdVHhWI6My8KptK2pbZs2f7vGdn+vyJBkWvttpq\n5sbG2GGHHebf7Sgv+ctQZdqNG8h/O/u6o+Xtu+++/iy8gjid0S80iF/L16D7/NTRtudPn/u6M+vN\nnV4BiAZ2K4Bx4yFMrVfaB1z3OF9mCkJUbgqm7rjjDtNAdQWRag3Ra12iWC09Kg+1PuWn3H0u/zOV\njVoqdFGFQw45xH/c0T7dVrmEwZIGzisw0hXGcpOCDOVP26qkvKsVUKmjsvQTuX9tlVf4OY8IIIAA\nAggggEBXBWIXgOiMr65k9etf/9qf8dUVsnRVKzdAu+C26zNdzefcc881XY1KlVVV6HSFqt/97ne+\nUuYGtWfn1RlfrUMtFSeccEKXAxAtSFc+UoVaV9PSn7rQhJXx3Xff3V+WVRVRXUlLgYOSutSoAukG\nWvt5dCUptVy4AeCmKyQp6cpfqrxusskm/nX+P51R11nx3G5m7eUlf34FBgq82kvtLU9loKtVqRuY\nG9htbtxLq0Vp+YUCkI62vdWCct7ozHpzJje1DrnxNL7lwY0l8aZqVVtjjTXs+uuv95ed1f4h7x//\n+Mfmxg35YOP3v/+9uUHkPtBTtzS1ZqjVKT/l7nP5n6k1Q61aKvtwv+tony5ULuqCphYmOStg1fYo\nuM1NCjL+3//7f75M1MqiS+oqb2Fqryw1jQJoXUVOXiQEEEAAAQQQQKBYAgkNICnWwnp7OepOorO8\nuWMtCuVBZ+PV1z/skqJL16obTdgNRfPozLAqoOquosuTqvLWmW5dhdYXvqcuUGr10BnxMKn7lSq7\nCjCU3FWyfIVdAYvyqLRw4UIfkGhcRH5Sq4+6DenGfl1JhfKSP79aWnSZWV2mVZeMbS+1tzz5yjH/\nZoZqGdE4CHeFLCu0bVpfe9veXn70WVvrzZ1Pl651g/V965Jak3L3gXA6fSVmzpzpx6sU2rc0lkdl\nWKj1I1xG/j4Xvt/RY6F9ur1yUYAgy0LBXriucJ92F28I32rx2FZZ6hLR+l64Cwe0mJ4XCCCAAAII\nIIBATwRiHYD0ZMPz580NQMJAIH+aYrx2l/f1Z9VVuVMFVo86wxyVSp5aWNTCpHEKxU7qhqaWJQ2Y\n76uUG4D0VR66s95Slkuh/Cho0eB8d1W4gkFaoXl4DwEEEEAAAQQQ6IxA7LpgdWajujONWinULSps\nJenOMjozj1oAzj77bH8GXl2svvWtb5nGs0QlacyLxkRobE0xk1qV1EKhG+H1ZVKwp65VcUulKpe2\nHHQVNXVBLNRC1NY8vI8AAggggAACCHRGgBaQzigxDQIIIIAAAggggAACCBRFgBaQojCyEAQQQAAB\nBBBAAAEEEOiMQL8NQNTl55JLLslewjYfQ58XI+n+C21dArgYy89fhu4bontQKD3zzDP+Ck7508Tt\ntbv7ur8oQO62aRs6W0bTpk2z//3vf36z85fRVYsnn3zSX9K2q/N1Z/qO9tHuLLOv5tFAdl16Wkk3\nxNSFBrqa1O1P39m2ksYmhVdp0xXJdDEAEgIIIIAAAgjET6DfBiCqEP3sZz/z4w7yi0WXL82990f+\n5115rUG64SV2uzJfd6fVjfE0IFlJ9xL561//2t1FRWI+3exRf7piVu62daWMdJ8LjadRyl1GdzZQ\nA681RkeDsEud2ttHS73uYi9fF1PQVeSUdGljlWlXk65Kpu9sWxfmu/zyy/1NPLXciRMn+nLq6jqY\nHgEEEEAAAQT6XqDfBiDt0eoSq3Pnzm1vksh+duSRR8Y+6MjFPfHEE+1Xv/qVfyt327pbRrnLyF1P\nZ5/rkra6l4numUHqnIDunaMg8IADDujcDEWYSjeH1I0idWlnEgIIIIAAAgjES6BPAhBd0Ud3gg7T\ndddd52/2Fr7+5S9/6W8Sp/sW7LHHHtm7N6vLytFHH+1vIqgbxenGgrrfQpjUfUP319BN4tpqlVC3\njUMPPdR339BZVN0PRPee0I0NdYUkLVc3n9N9OQolva8rOenqQLoBXNglJJxWZ+J1ozmd0dfVlnK7\norS1XZpX3Va+9KUv+XtP6AZ3qtQp6eZy2q7x48f7q3Tp5nE/+tGP/Gf6p24rusO77kuhVh11QQqT\nbmCoPCgv2lato1DSurbddlvTGWbdTV1nstXdRdPrxnm62eMNN9yQnbW95aryrlYZ5SW82/ZHH32U\nnTf3iSqtCgQnTZrk3w63rVAZKY9atm7ep23Vdr3zzju5i2uxjPCDtlzvvPNOf88TXf1MN4MMu7Vp\nPt24Umf0ly5dGi4m+6j7sJx55pm2zjrrmG4GqLzfeOON2c872v7O7KO6caXMw1aYJ554wpffhx9+\n6NejS0brZo/Nzc2mu6Brf9CNBlXGuS1iyovu9K79VN8lXQZZFXaVtfYnfZfC1ob2vlt//vOf7ZRT\nTvE3XtRytO1hK5wypBYj3eAzN6lbnL5Pml53fNf3LEzat3RDxBEjRvgbOb788svhRy0etd077LCD\nX4a+E7obfW5SwHP66afnvsVzBBBAAAEEEIiDgKuA9HpyFZPgX//6V3a97o7kgTuj6V/ffffdgbsz\ndOAqW4GrtATuMrX+Tx+6O1IHrvIUvPrqq4G7gV+w/fbbB+4O0H4+Lc8FD4G7z0bgKv2Bu9+EbrAY\nuG4u/vPwXyaTCW6//fbAVdj88vXaVeD9slxlLnBdeAJXeQ7cvSrCWVo8ukpd4CpPgasEBq7SGrhK\nVLDbbrv5aZR3VykN3HiEwFWig1/84heBu1N14IKkoL3tuueee/xy/vOf/wQuGPLb6e4M7pfpbggY\nuCAguOOOO4LHH388uPDCC4O99trLf+aCJr+NrrIcuO4rwcknnxyMGTMmcBXnwAVKgaus+zy4Sn7g\nbi4YjB49OnjooYf8vLn/3nvvvcDdMDFwd1APXMtDoOW6e6EE++yzT6DPXCXel4msOlquqxgH7m7u\nwYMPPhi4u7L78lK5FUqu5SM49thjsx+F21aojLR/uDu9B+7Gez5P2223XeAqtn5eVwEOVC5K4TL0\nvC1XV3EPXBDjTdylgQMXAAcuWPLlpPmUXCU7cN3rlr/I+e8q9IELcANXkff7zxlnnOHL3N0c0k/V\n3vZ3dh/VgrTfKP9KrvIfuJtiBi5A86/1fdE++9lnn/kydYGtf+6CRL8dLjjw0ykvLqD03xU3Vilw\nN6/0rx9++OHABTn+++Iq+X7a9r5b559/fuAuTx383//9n9/P3N3Vg5EjRwbhNsvK3dzRL0f/pkyZ\n4ve9e++9N3Bd6fw+4AII/7kLPgIXlATa191NF4PjjjvOfxddIB288cYbfn9W+eszF+QH2re1ndpG\nfZ9dMOSXo3+uBcRvQ/YNniCAAAIIIIBALAR0BrTXU3sBiCpHqsS7e2MEM2bM8JUcVUjc2WBfCVJF\nWpV7/d1yyy2BuwN0oM9dS0HgzgRnt0WfFQpANIEq4e4MsJ9WQY6mU4AQJjeo3FfI3Vnh8C3/6M7A\n+jy4sRfZ91VpDwMQ5UGBS5i/sIKoCmFb26UFHX744dkKtF6rMvbII4/oaaAA5JxzzvHP9S+3gq1A\nQcFamBToKHC46aabAlVGVdFTEBDmRxX4QoGVggwZqAKopHn0OtxOLVevNV1Hy1WlVxXWMLnxAIE7\nix2+bPG43377BW4Aeva93G3LLSNN4FqasgGja/nwZq4VxM/bVgDSlqv2FwWgrruWDzi1EHe3cb+s\n8J+7X0vwxz/+MXyZfVSAJgelefPmBapQy0aBkVJ729+VfdS17gVuPER2me4eNYFrefOvFYwpaFJl\nXAGwa5Xx7+vfQQcdFOy9997+tfKiYCFM22yzTYvviKZTWXX03dI0WlaY9L3UNmu/Cr8TrpUr/NgH\nIMcff3z2tYwqKip8PnfddVcfYIcfat3uvjOBazlsEYBoP1PArLJSUqCo6XIDEH1PlA+VAwkBBBBA\nAAEE4iPQJ12wXKWhRXJc2deuVcNcRdTfnM9Vrn13EQ22/vjjj32XEw1SVVcl/blKju9K4ipCpkHL\n6moSJnUz6UxylUlzZ//9esLp3dl13zXFVcTDt/yjplW3l7bW877rGuMCmWz+tthiC99Nx1VOra3t\n0oLVpWnrrbfOrktdjHTH8DC5M+7h01aPudvpznD7u1eru5Lyou5pWm7o5Sr12W49rRbk3pC3kpaj\nFHaNCu8Mr23vzHLVvSdM6qakbkuFkroaqetQZ5IMXcDiu+Ooy5lrAfNl0d68bbmqvF0rmH3wwQe2\n1VZbmWttMN0h3VV2s4vTNih/+cm1RNhZZ51lK6+8srcOu7XJJkxtbX9X9lF1aXItIOYq16auV66l\nwFR+6gKorkmuFcy0P6p8c2+eqX3XBQhhVrJlqjc0vkXdA8OkclXZdPTd0vS526QbVSq5FhCfN217\nfjnm7pfqjucCPN/tUfuP8hgm5UH7Z9jlMHz/rbfe8u+rrJRcANPie6f39D3R+3IgIYAAAggggEB8\nBPokAFGFKezfLirX3SIrpgqWOzNr6heuSohrAfB9/12XDz+NxlioEqM/VTBVKXPdjvxYBQ1KDZMq\ne51JqlgpAMqdV+MoVDFazY2HyE16rbznTpu7HlXCXNepbP6URwVP7qy0rzgW2i5VAN2ZXr+94bp0\ndaRLL73UV/D0Xm4FM5wmfAzHBei1Knmue5qvdCovqqBpnETopX757qx+OGurR1Wu20ty6sxyw0pj\nuKzcADN8T48aX5Jf8cz9PHyuQEpjBuT3gQsa5O9anXy5hdMUemzLVWMJND5FwaKuvORaCfw4BlX4\nw6R8KX/5SeOONI/rDucr7ho7pJS7jW1tv5bX1r6Tvx6NfVBgoABHwavGqaiir8vPqkKv8RPad3UZ\n6Nykq4BpjEaY2tt3wmnCu5239d3SdPnbFM6r4Fj7TX455u6XymN5ebn/nmr/yc2ztkkmGruVm/Kt\n9Fnud02vdeJB+3x49S29R0IAAQQQQACB6Av0SQCiM+1urIY/46zgw/UHz0q5rke+gqXB1W4sgbmu\nML7yooHUeq57DeissM5WqwVEA2tVOdIZYw2M1SBbVVjbGoSuFanyqQHG+lMlTmeRNQBbg9G1bFXS\nVenLr5DrDPJOO+1kV1xxhZ9XZ15zB+NqUKwG2GpgsJLrA2+bbLKJryi1tV3Ku87sq/LrukD5iqwu\nY+rGUPjt9gtq558qc1qfPJQv1yXN51EVdAUyriubP8stT53t7+k9S4q5XDdWwG9zoc3LLSMFqzrb\n7roQ+bLTFbJcF5027/ESLq8tVwV9OgvvxtX4AfpurItpMLoqyWFSWWy66abhy+yjTNUypFYTBR3h\nfStUEe4odWUfVV523313O++88/yAe+0nGnivwfHaLiW1gmh/veaaa3z5qyKvbdIVorqSZN3ed6u9\nZWl/U6uKvHKTG+/iB41rv9NAeLVaKRjSo+se6S/eoOBD3zWVh4Kq3KTvn76f119/vXfWQP/8Fkmt\nc/XVV7fw5ETu/DxHAAEEEEAAgegKtH/Ku0T5PvXUU/3VndRyoe4cblxC9upNOsutq2Stv/76vnuF\nzlb/7W9/85UXXSVJV9RR9xedAVZFUJUbJdff31eCXF91X5FURaettPbaa/urKanSqatU6SpcyoOW\nq0qSKkOqQBVKqvjqylQ686tKvyqB4SV9lQcFQOqipbPKCpoUCGm5+mtru3SFH7X46B4UMtF2dfYy\nsOrq4gbq++BJFWJV1NTyoT8FQwrQ3BgSH0wp38pjT5KCx2ItVxX82267rWB28stI+4z8wrP1btC0\nr/yr8tpWastV5a6WhJNOOslfCUqVeDkpuFTSa3X50lWc8pOuZKZpdeNDBUa6YpqunKbWuBVXXDF/\n8havu7KPakYFLNoPFRwo6VH7nxyUdOZfFXTlwV2AwFfkjznmmBZXlPMTduJfe9+tjmZXOarlTa1U\nYdI+rPzpZIA+D6/OpRYkdW1T8BnupwqadHWz3BYOfV+07bqssk406PP8IEXr1HJICCCAAAIIIBAv\ngYSrtH4xAKMX867VqvVDlbdCSZ+7Qdwt+p6H0+kstM4IqyKZn9xgVV8xVOW/o6TuXrnL0Nla9SkP\n+7i3N78qqDpznN9Konl0tl7LCivLuctpb7uUd10OtTtndNUqoNYcueQnOSsvyWRxG7x6uly1GijQ\ndBcW8F3t8vOt17llpGBD7oVcC80bvteeq7rxqCKc2/qhVgZ1W7vyyivDRbR67Mm2d2UfbbXiAm9o\nnwrLv6dl3N53q8Cq/Vvq2ucucOCDkNz1aztVfuoKl5/0mS7N25myVJe3QtMpsHED5LMBWv46eI0A\nAggggAAC0RToswAkmhzkqrcF1IVNLSr/+Mc/envVBdenVg21ROkO94UqvQVn4k1/bxy1OvbWzQh1\nDxl1m8ztAkkxIIAAAggggEA8BIp7Sjwe20wuIySg7kRqcVKLURTS1KlT7YQTTiD46GJhqCVCdr2V\ndHEHjQcjIYAAAggggED8BGgBiV+ZkWMEEEAAAQQQQAABBGIrQAtIbIuOjCOAAAIIIIAAAgggED8B\nApD4lRk5RgABBBBAAAEEEEAgtgIEILEtOjKOAAIIIIAAAggggED8BAhA4ldm5BgBBBBAAAEEEEAA\ngdgKEIDEtujIOAIIIIAAAggggAAC8RMgAIlfmZFjBBBAAAEEEEAAAQRiK0AAEtuiI+MIIIAAAggg\ngAACCMRPgAAkfmVGjhFAAAEEEEAAAQQQiK0AAUhsi46MI4AAAggggAACCCAQPwECkPiVGTlGAAEE\nEEAAAQQQQCC2AgQgsS06Mt6bAo899pg98sgjRVnlCy+8YI2NjUVZFgtBAAEEEOhbgQ8//NBmzZrV\nt5lg7QjETIAAJGYFRnZ7X+Dtt9+2X//61zZ48OCirPySSy6xRYsWFWVZLAQBBBBAoG8F7r77bps2\nbVrfZoK1IxAzgbKY5ZfsItDrAr///e+toaHBmpqabM6cOXb99ddbVVWVHXzwwTZ06FC79tprfUDx\n6aef2rHHHms33XST//wHP/iBzZ4926644gqbN2+e7bHHHv4v3ID6+nq75ZZb7L333rPvfOc7tuqq\nq4Yf8YgAAggg0EcC//jHP6ympsamTp1qhx56qH388cf20ksv2U9+8hN/zL/11lvtwQcftJEjR9ox\nxxyTzWUQBL6l/P7777d9993XNt988+xnPEEAgZYCtIC09OAVAq0Evv71r9vWW29tm222mQ8w9txz\nT5syZYqdccYZftoLLrjAttlmG1tnnXVM0+6///7+bNi7775rf/nLX2zvvfe20047zc466yzTD1SY\nLr30UquoqLBDDjnETj755PBtHhFAAAEE+lDgvvvu812qDj/8cNtrr71spZVWsrFjx5oCj5kzZ5q6\n5J533nk2atQofwIqzKreV2vI8ccfb3/+859NXbNICCBQWIAWkMIuvItAVqC8vNzKysp8K8err75q\nChyU3njjDR9QjB8/3gckiUTCttpqK1thhRVsrbXWshkzZtiBBx5of/vb32zBggW2ZMkS34oSLlg/\ncvqBeuCBB2zu3Ll+eRMnTgw/5hEBBBBAoI8Edt99d98qvd5669nGG29sS5cutUcffdR0vJ80aZI/\naaQW8Q033NC3eCubd955pz+m64TT/PnzfWuIWlBICCDQWoAApLUJ7yBQUGD48OG22mqr2R/+8AfL\nZDJ28803m4IOtWKEScFKbjrqqKPsqquu8vNtueWWlk6nsx+vvvrqvhVFP2h33XWXP8uW/ZAnCCCA\nAAJ9JlBZWenXnX9Mv+222/zJoosvvtj0XCelwrTGGmvYFltsYfvtt589//zzRRs3GC6fRwT6kwAB\nSH8qTbalpAKpVMq3aPz4xz/2gcR2223X4frUdeuyyy7zLSXV1dV+LEg40xFHHGGnnnqqDRkyxLRs\njREhIYAAAghEV2Dy5Ml29dVX+y61ixcv9iehJkyY4DOswEOtHw8//LAfL3jllVdGd0PIGQJ9LJBw\nfdK/6JTex5lh9QjEQaC5udkHFOqW1ZlUW1trCj7UWlIoaTC6BrWTEEAAAQSiL6BqU11dnR+oXii3\nHNMLqfAeAi0FCEBaevAKAQQQQAABBBBAAAEESijAVbBKiMuiEUAAAQQQQAABBBBAoKUAAUhLD14h\ngAACCCCAAAIIIIBACQViGYDohnBRH7qicQJRT7oiU9TzqXLWFaeinJQ/7ZNRT1Eva/nJMQ7lHYfj\nT+4V16K+b+bnLy7H+DjsB1H/3sswDnnkGJ//Le3eax2XOMZ3zy53LhnG+RivbYllAKJ7JkT9wL9s\n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\nlTZ8+HD/N3fuXHv22Wctmex6OFH0FpAGV3l9++23bb311rNUKtVXPqy3swIuiFBgYY2Nfo5giasI\nJxPWdM9dVr7rbpZ+7RUr23JL/1mje6/p/vuWL7mxwczthIP/70r/utkFH6lNpiz/zP1vfuN1t9yl\nLuoIsu+pkt384vNmDfXZ9/rbEx+sNTdbZv48Sz/1pDXvsOPyTXTfhdRaa/vnmU9nWGbevOympx9/\n1FLrTrTEsGHZacsmrZ/9nCcIIIAAAggggEAUBCZNmmT6C9MZZ5xhy1w9clhYhwk/6OCxqAGImmXu\nuOMOW3fdde26666z888/v4PV83GfC9x6izW89WY2G+nnn7OKPffOvs59UnnA10x/SnUXX2Cuvc2a\nP/zAvXBBjKt05ydVxoOc1o7g8yAnf7r+9LrxzjvMapeZ39ZMxhpvuWn55g0ebNU/OdY/T7/2qgvE\nXnBRmjNTkO6mSz821SyRMCsrs0RVlRGA9Ke9gm1BAAEEEECgfwg88cQT9uSTT/qNUaPDww8/bL/8\n5S+7vHFFDUBuuOEGO/30063KVaAmT55s6XTa1adariJwZ8Qbi1AR1UZ3p8mny0LdnEHbrjwmVKmM\naGp2FeDga9+wStfKkZn6iA8oknvuY82jRvkc117kggzXDaupKW3NblvC1PzIw5Z56UVLHX+i1d91\np9nMGWb1da68myzz+XQZV6lO6iz+ltuEs1li4QIz191L5Z/IWV52ggJPlMempiZvWeDjSLylstZ+\n7ffJI3/s8xR89pllzjrNks4oTPrcp+22t8T6G1r6N+dY2W8uMvvpjy1xyHct89Q0F8zVWvJr3yzJ\n9ob7ZJifKD6Gxwc9RjVpf1T+tI9HNams9d3J7nMlyqj6/OYf48Iy7Mkqw2VoG6Kawu9T1H+HVD6l\n3g96UkYq49CyJ8sp5bzKn/bJKDtq+6PuqDzquKljaP5xQ59FJSl/2i9V5lFNYR5LvU8WOsaPHz/e\nNtpoI0+jnk5HHHGEr/d31apldNDVufOmX7BggV144YX+S7r22mv7lpC8SfzOt8SNBehpWrp0aaR3\nYO282s4of8mUx8T8+Za66kprOvR7lpg1y8ouv9QafvZzq3IF1LjzLlb+73+5Bo46y6jM3PRl999r\nqUcesozrbhVc9UdrOvAbllEQc8av3HT1y6dz85atuZYlX3nZTH+5aZVVbWnSnfXv5D6gA4D+9GWL\n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\n29zBo/CBvmSqjEQ56aC/cOHCKGfR5037ZNTTokWLIh8oaX+MelCs77W+33FNCxYsiLxxXV1d5I/x\n+s4rn1FOCubj8DukfTLqKQ7H+MWLF0f+hJ2CpKgHc/odWrp0adR3yXbzF8sApN0t4kMEEEAAAQQQ\nQAABBBCIrAABSGSLhowhgAACCCCAAAIIIND/BAhA+l+ZskUIIIAAAggggAACCERWgAAkskVDxhBA\nAAEEEEAAAQQQ6H8CBCD9r0zZIgQQQAABBBBAAAEEIitAABLZoum7jC1pSts5r79p9e4KVD+c/oI9\n667+0dCcsafmL2j198Gy5VdWOtJN9+jcedlML3NXhnpg9hybOmeun1cfzHFXbfj6tGf8Y3ZCniCA\nAAJdFNAx6Wl3PCIhgAACCMRToCye2SbXxRL432dz7LJnnrOMu9+G0gErrmAHr7ySXf7u+/bjNVf3\nQcV+K4y38VUN9ouXX7XXlyy1DYcOtU/rl1/a8furrWpHu+kemzfPdh47xi/j07p62+fxaVafabbG\nTODmrbRbt97CatPNfnnz3CXuhpaVW2WK+NeD8Q8BBAoK3DJjpv3j408slUjYqjXVdtp669qgsjJ7\nd2mtpd0xa/ORIwrOx5sIIIAAAtEWoAYY7fIpee5eX7rMhrgf9D9N2dj/HbLKygXXuVJ1tf11syn+\ns/9s9SXbY/w422v8eBtTWWFfevARm9/4xU3PrnjvfRvt3n9hlx3tpa/s6FpSMvaX9z/MLneHRx63\n/Z98KvuaJwgggEC+wFvuGvc3zfjU/r75pvaPLTazbUePsvPeeCt/Ml4jgAACCMRQgAAkhoVW7CyP\nKC+3jYYPs8nDhtpYFzh0JW06fLgds9YaVp1KZWeb71o41hw8yMqTSf/+aoNqWgQoT+ywnd2+zZbZ\n6XmCAAII5Au8sniJb1WtcMcRpb3cSY8XFy3On4zXCCCAAAIxFCAAiWGhFTvLj7ixGxNuv9sm3HGP\n/frNt7OLP/6Fl01jOdpKDe4Otm+5FpQFOa0fmnafCePtzpmf2YVuWf/PjSV5Yt5828d14wrT/k8+\nbd979vnwJY8IIIBAK4GN3QkRjSPT+DOl/7jWkI2HDWs1HW8ggAACCMRPgDEg8Suzoud421EjfTcH\ntVior/XHtcvHd6jLw2MueFDSAPT9nljebWriPQ/46Ya7lpPnFi60u7fdyq798ONsvnZ3Zyr/OGUj\n+++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\n"
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"R object with classes: ('list',) mapped to:\n",
"<ListVector - Python:0x1a91122c8 / R:0x1938e5d10>\n",
"[ListVector, Environment, ListVector]\n",
"R object with classes: ('list',) mapped to:\n",
"<ListVector - Python:0x1a91122c8 / R:0x1938e5d10>\n",
"[ListVector, Environment, ListVector]\n",
" layout: <class 'rpy2.robjects.environments.Environment'>\n",
" R object with classes: ('Layout', 'ggproto') mapped to:\n",
"<Environment - Python:0x1a9112688 / R:0x184779e70>\n",
"R object with classes: ('list',) mapped to:\n",
"<ListVector - Python:0x1a91122c8 / R:0x1938e5d10>\n",
"[ListVector, Environment, ListVector]"
]
},
"execution_count": 449,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"%R -w 800 -h 600 print(ggplot(word_scores)+ geom_text(aes(x=eval %/% 12,y=eval%%12,label=words,fontface=ifelse(genderedness==\"female\",2,3),color=goodness),hjust=0, family='NanumGothic') + facet_grid(goodness~genderedness) + theme_minimal() + scale_x_continuous(\"\",lim=c(0,4.1)) + scale_y_continuous(\"\") + labs(title=\"The top negative (red) and positive(blue)\\nused to describe men (italics) and women(bold)\") + theme(legend.position=\"none\"))"
]
}
],
"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.5.3"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment