{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# HW2: VECTORIZATION (Pandas style!)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## STEP 1: Import ALL the things\n", "### Import libraries " ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "##########################################\n", "# NOTE: I'm toying with the idea of requiring the library just above \n", "# when I use it so it makes more sense in context\n", "##########################################\n", "# import os\n", "# import pandas as pd\n", "# from nltk.tokenize import word_tokenize, sent_tokenize\n", "# from nltk.sentiment import SentimentAnalyzer\n", "# from nltk.sentiment.util import *\n", "# from nltk.probability import FreqDist\n", "# from nltk.sentiment.vader import SentimentIntensityAnalyzer\n", "# sid = SentimentIntensityAnalyzer()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Import data from files" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import os\n", "def get_data_from_files(path):\n", " directory = os.listdir(path)\n", " results = []\n", " for file in directory:\n", " f=open(path+file)\n", " results.append(f.read())\n", " f.close()\n", " return results\n", "\n", "neg = get_data_from_files('../NEG_JK/')\n", "pos = get_data_from_files('../POS_JK/')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## STEP 2: Prep Data\n", "### STEP 2a: Turn that fresh text into a pandas DF" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "neg_df = pd.DataFrame(neg)\n", "pos_df = pd.DataFrame(pos)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### STEP 2b: Label it" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "pos_df['PoN'] = 'P'\n", "neg_df['PoN'] = 'N'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### STEP 2c: Combine the dfs" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "all_df = neg_df.append(pos_df)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", "
0PoN
0Missed Opportunity\\nI had been very excited t...N
15/5 for Phoenix's acting..\\nI don't think the...N
2Everyone praised an overrated movie.\\nOverrat...N
3What idiotic FIlm\\nI can say that Phoenix is ...N
4Terrible\\nThe only thing good about this movi...N
.........
118Nerve-wracking, but in very uncomfortable way...P
119Solid film but there are glaring problems\\nOk...P
120Joker > Endgame\\nNeed I say more? Everything ...P
121Absolutely not a 10\\nStrong fanboy and hype r...P
122Overhyped, but it's alright\\nIt's a good film...P
\n", "

246 rows × 2 columns

\n", "
" ], "text/plain": [ " 0 PoN\n", "0 Missed Opportunity\\nI had been very excited t... N\n", "1 5/5 for Phoenix's acting..\\nI don't think the... N\n", "2 Everyone praised an overrated movie.\\nOverrat... N\n", "3 What idiotic FIlm\\nI can say that Phoenix is ... N\n", "4 Terrible\\nThe only thing good about this movi... N\n", ".. ... ..\n", "118 Nerve-wracking, but in very uncomfortable way... P\n", "119 Solid film but there are glaring problems\\nOk... P\n", "120 Joker > Endgame\\nNeed I say more? Everything ... P\n", "121 Absolutely not a 10\\nStrong fanboy and hype r... P\n", "122 Overhyped, but it's alright\\nIt's a good film... P\n", "\n", "[246 rows x 2 columns]" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## STEP 3: TOKENIZE (and clean)!!" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "from nltk.tokenize import word_tokenize, sent_tokenize\n", "from nltk.sentiment import SentimentAnalyzer\n", "from nltk.sentiment.util import *" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "## Came back and added sentences for tokinization for \"Summary experiment\"\n", "def get_sentence_tokens(review):\n", " return sent_tokenize(review)\n", " \n", "all_df['sentences'] = all_df.apply(lambda x: get_sentence_tokens(x[0]), axis=1)\n", "all_df['num_sentences'] = all_df.apply(lambda x: len(x['sentences']), axis=1)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "def get_tokens(sentence):\n", " tokens = word_tokenize(sentence)\n", " clean_tokens = [word.lower() for word in tokens if word.isalpha()]\n", " return clean_tokens\n", "\n", "all_df['tokens'] = all_df.apply(lambda x: get_tokens(x[0]), axis=1)\n", "all_df['num_tokens'] = all_df.apply(lambda x: len(x['tokens']), axis=1)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokens
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26
3What idiotic FIlm\\nI can say that Phoenix is ...N[ What idiotic FIlm\\nI can say that Phoenix is...4[what, idiotic, film, i, can, say, that, phoen...66
4Terrible\\nThe only thing good about this movi...N[ Terrible\\nThe only thing good about this mov...9[terrible, the, only, thing, good, about, this...124
.....................
118Nerve-wracking, but in very uncomfortable way...P[ Nerve-wracking, but in very uncomfortable wa...8[but, in, very, uncomfortable, way, why, every...57
119Solid film but there are glaring problems\\nOk...P[ Solid film but there are glaring problems\\nO...13[solid, film, but, there, are, glaring, proble...628
120Joker > Endgame\\nNeed I say more? Everything ...P[ Joker > Endgame\\nNeed I say more?, Everythin...5[joker, endgame, need, i, say, more, everythin...83
121Absolutely not a 10\\nStrong fanboy and hype r...P[ Absolutely not a 10\\nStrong fanboy and hype ...5[absolutely, not, a, strong, fanboy, and, hype...81
122Overhyped, but it's alright\\nIt's a good film...P[ Overhyped, but it's alright\\nIt's a good fil...3[overhyped, but, it, alright, it, a, good, fil...60
\n", "

246 rows × 6 columns

\n", "
" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "3 What idiotic FIlm\\nI can say that Phoenix is ... N \n", "4 Terrible\\nThe only thing good about this movi... N \n", ".. ... .. \n", "118 Nerve-wracking, but in very uncomfortable way... P \n", "119 Solid film but there are glaring problems\\nOk... P \n", "120 Joker > Endgame\\nNeed I say more? Everything ... P \n", "121 Absolutely not a 10\\nStrong fanboy and hype r... P \n", "122 Overhyped, but it's alright\\nIt's a good film... P \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "3 [ What idiotic FIlm\\nI can say that Phoenix is... 4 \n", "4 [ Terrible\\nThe only thing good about this mov... 9 \n", ".. ... ... \n", "118 [ Nerve-wracking, but in very uncomfortable wa... 8 \n", "119 [ Solid film but there are glaring problems\\nO... 13 \n", "120 [ Joker > Endgame\\nNeed I say more?, Everythin... 5 \n", "121 [ Absolutely not a 10\\nStrong fanboy and hype ... 5 \n", "122 [ Overhyped, but it's alright\\nIt's a good fil... 3 \n", "\n", " tokens num_tokens \n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "3 [what, idiotic, film, i, can, say, that, phoen... 66 \n", "4 [terrible, the, only, thing, good, about, this... 124 \n", ".. ... ... \n", "118 [but, in, very, uncomfortable, way, why, every... 57 \n", "119 [solid, film, but, there, are, glaring, proble... 628 \n", "120 [joker, endgame, need, i, say, more, everythin... 83 \n", "121 [absolutely, not, a, strong, fanboy, and, hype... 81 \n", "122 [overhyped, but, it, alright, it, a, good, fil... 60 \n", "\n", "[246 rows x 6 columns]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## STEP 4: Remove Stopwords" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "from nltk.corpus import stopwords\n", "stop_words = set(stopwords.words(\"english\"))\n", "def remove_stopwords(sentence):\n", " filtered_text = []\n", " for word in sentence:\n", " if word not in stop_words:\n", " filtered_text.append(word)\n", " return filtered_text\n", "all_df['no_sw'] = all_df.apply(lambda x: remove_stopwords(x['tokens']),axis=1)\n", "all_df['num_no_sw'] = all_df.apply(lambda x: len(x['no_sw']),axis=1)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokensno_swnum_no_sw
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306[missed, opportunity, excited, see, movie, eve...140
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59[phoenix, think, need, super, dark, film, tbh,...25
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26[everyone, praised, overrated, movie, overrate...13
3What idiotic FIlm\\nI can say that Phoenix is ...N[ What idiotic FIlm\\nI can say that Phoenix is...4[what, idiotic, film, i, can, say, that, phoen...66[idiotic, film, say, phoenix, master, actor, b...36
4Terrible\\nThe only thing good about this movi...N[ Terrible\\nThe only thing good about this mov...9[terrible, the, only, thing, good, about, this...124[terrible, thing, good, movie, phoenixs, actin...65
...........................
118Nerve-wracking, but in very uncomfortable way...P[ Nerve-wracking, but in very uncomfortable wa...8[but, in, very, uncomfortable, way, why, every...57[uncomfortable, way, everybody, keep, saying, ...33
119Solid film but there are glaring problems\\nOk...P[ Solid film but there are glaring problems\\nO...13[solid, film, but, there, are, glaring, proble...628[solid, film, glaring, problems, okay, first, ...292
120Joker > Endgame\\nNeed I say more? Everything ...P[ Joker > Endgame\\nNeed I say more?, Everythin...5[joker, endgame, need, i, say, more, everythin...83[joker, endgame, need, say, everything, movie,...53
121Absolutely not a 10\\nStrong fanboy and hype r...P[ Absolutely not a 10\\nStrong fanboy and hype ...5[absolutely, not, a, strong, fanboy, and, hype...81[absolutely, strong, fanboy, hype, rush, going...36
122Overhyped, but it's alright\\nIt's a good film...P[ Overhyped, but it's alright\\nIt's a good fil...3[overhyped, but, it, alright, it, a, good, fil...60[overhyped, alright, good, film, see, like, ma...31
\n", "

246 rows × 8 columns

\n", "
" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "3 What idiotic FIlm\\nI can say that Phoenix is ... N \n", "4 Terrible\\nThe only thing good about this movi... N \n", ".. ... .. \n", "118 Nerve-wracking, but in very uncomfortable way... P \n", "119 Solid film but there are glaring problems\\nOk... P \n", "120 Joker > Endgame\\nNeed I say more? Everything ... P \n", "121 Absolutely not a 10\\nStrong fanboy and hype r... P \n", "122 Overhyped, but it's alright\\nIt's a good film... P \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "3 [ What idiotic FIlm\\nI can say that Phoenix is... 4 \n", "4 [ Terrible\\nThe only thing good about this mov... 9 \n", ".. ... ... \n", "118 [ Nerve-wracking, but in very uncomfortable wa... 8 \n", "119 [ Solid film but there are glaring problems\\nO... 13 \n", "120 [ Joker > Endgame\\nNeed I say more?, Everythin... 5 \n", "121 [ Absolutely not a 10\\nStrong fanboy and hype ... 5 \n", "122 [ Overhyped, but it's alright\\nIt's a good fil... 3 \n", "\n", " tokens num_tokens \\\n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "3 [what, idiotic, film, i, can, say, that, phoen... 66 \n", "4 [terrible, the, only, thing, good, about, this... 124 \n", ".. ... ... \n", "118 [but, in, very, uncomfortable, way, why, every... 57 \n", "119 [solid, film, but, there, are, glaring, proble... 628 \n", "120 [joker, endgame, need, i, say, more, everythin... 83 \n", "121 [absolutely, not, a, strong, fanboy, and, hype... 81 \n", "122 [overhyped, but, it, alright, it, a, good, fil... 60 \n", "\n", " no_sw num_no_sw \n", "0 [missed, opportunity, excited, see, movie, eve... 140 \n", "1 [phoenix, think, need, super, dark, film, tbh,... 25 \n", "2 [everyone, praised, overrated, movie, overrate... 13 \n", "3 [idiotic, film, say, phoenix, master, actor, b... 36 \n", "4 [terrible, thing, good, movie, phoenixs, actin... 65 \n", ".. ... ... \n", "118 [uncomfortable, way, everybody, keep, saying, ... 33 \n", "119 [solid, film, glaring, problems, okay, first, ... 292 \n", "120 [joker, endgame, need, say, everything, movie,... 53 \n", "121 [absolutely, strong, fanboy, hype, rush, going... 36 \n", "122 [overhyped, alright, good, film, see, like, ma... 31 \n", "\n", "[246 rows x 8 columns]" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## STEP 5: Create a Frequency Distribution" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "from nltk.probability import FreqDist\n", "def get_most_common(tokens):\n", " fdist = FreqDist(tokens)\n", " return fdist.most_common(12)\n", "all_df['topwords_unfil'] = all_df.apply(lambda x: get_most_common(x['tokens']),axis=1)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "scrolled": true }, "outputs": [], "source": [ "def get_most_common(tokens):\n", " fdist = FreqDist(tokens)\n", " return fdist.most_common(12)\n", "all_df['topwords_fil'] = all_df.apply(lambda x: get_most_common(x['no_sw']),axis=1)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "def get_fdist(tokens):\n", " return (FreqDist(tokens))\n", " \n", "all_df['freq_dist'] = all_df.apply(lambda x: get_fdist(x['no_sw']),axis=1)\n", "all_df['freq_dist_unfil'] = all_df.apply(lambda x: get_fdist(x['tokens']),axis=1)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokensno_swnum_no_swtopwords_unfiltopwords_filfreq_distfreq_dist_unfil
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306[missed, opportunity, excited, see, movie, eve...140[(of, 13), (i, 12), (the, 12), (that, 10), (it...[(movie, 3), (said, 3), (many, 3), (times, 3),...{'missed': 2, 'opportunity': 2, 'excited': 1, ...{'missed': 2, 'opportunity': 2, 'i': 12, 'had'...
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59[phoenix, think, need, super, dark, film, tbh,...25[(was, 4), (a, 3), (that, 3), (for, 2), (there...[(dark, 2), (phoenix, 1), (think, 1), (need, 1...{'phoenix': 1, 'think': 1, 'need': 1, 'super':...{'for': 2, 'phoenix': 1, 'i': 1, 'do': 1, 'thi...
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26[everyone, praised, overrated, movie, overrate...13[(overrated, 2), (movie, 2), (everyone, 1), (p...[(overrated, 2), (movie, 2), (everyone, 1), (p...{'everyone': 1, 'praised': 1, 'overrated': 2, ...{'everyone': 1, 'praised': 1, 'an': 1, 'overra...
3What idiotic FIlm\\nI can say that Phoenix is ...N[ What idiotic FIlm\\nI can say that Phoenix is...4[what, idiotic, film, i, can, say, that, phoen...66[idiotic, film, say, phoenix, master, actor, b...36[(and, 4), (is, 2), (make, 2), (movie, 2), (to...[(make, 2), (movie, 2), (idiotic, 1), (film, 1...{'idiotic': 1, 'film': 1, 'say': 1, 'phoenix':...{'what': 1, 'idiotic': 1, 'film': 1, 'i': 1, '...
4Terrible\\nThe only thing good about this movi...N[ Terrible\\nThe only thing good about this mov...9[terrible, the, only, thing, good, about, this...124[terrible, thing, good, movie, phoenixs, actin...65[(the, 5), (this, 4), (movie, 4), (it, 4), (to...[(movie, 4), (terrible, 3), (acting, 3), (good...{'terrible': 3, 'thing': 1, 'good': 2, 'movie'...{'terrible': 3, 'the': 5, 'only': 1, 'thing': ...
.......................................
118Nerve-wracking, but in very uncomfortable way...P[ Nerve-wracking, but in very uncomfortable wa...8[but, in, very, uncomfortable, way, why, every...57[uncomfortable, way, everybody, keep, saying, ...33[(it, 4), (a, 4), (movie, 3), (in, 2), (keep, ...[(movie, 3), (keep, 2), (saying, 2), (psycho, ...{'uncomfortable': 1, 'way': 1, 'everybody': 1,...{'but': 1, 'in': 2, 'very': 1, 'uncomfortable'...
119Solid film but there are glaring problems\\nOk...P[ Solid film but there are glaring problems\\nO...13[solid, film, but, there, are, glaring, proble...628[solid, film, glaring, problems, okay, first, ...292[(the, 35), (to, 22), (it, 16), (and, 16), (i,...[(joker, 6), (movie, 5), (film, 4), (like, 4),...{'solid': 1, 'film': 4, 'glaring': 1, 'problem...{'solid': 1, 'film': 4, 'but': 5, 'there': 3, ...
120Joker > Endgame\\nNeed I say more? Everything ...P[ Joker > Endgame\\nNeed I say more?, Everythin...5[joker, endgame, need, i, say, more, everythin...83[joker, endgame, need, say, everything, movie,...53[(joker, 3), (movie, 3), (in, 3), (it, 3), (th...[(joker, 3), (movie, 3), (masterful, 2), (awes...{'joker': 3, 'endgame': 1, 'need': 1, 'say': 1...{'joker': 3, 'endgame': 1, 'need': 1, 'i': 1, ...
121Absolutely not a 10\\nStrong fanboy and hype r...P[ Absolutely not a 10\\nStrong fanboy and hype ...5[absolutely, not, a, strong, fanboy, and, hype...81[absolutely, strong, fanboy, hype, rush, going...36[(the, 7), (is, 6), (a, 4), (fanboy, 2), (and,...[(fanboy, 2), (movie, 2), (absolutely, 1), (st...{'absolutely': 1, 'strong': 1, 'fanboy': 2, 'h...{'absolutely': 1, 'not': 1, 'a': 4, 'strong': ...
122Overhyped, but it's alright\\nIt's a good film...P[ Overhyped, but it's alright\\nIt's a good fil...3[overhyped, but, it, alright, it, a, good, fil...60[overhyped, alright, good, film, see, like, ma...31[(it, 4), (but, 3), (a, 3), (good, 2), (do, 2)...[(good, 2), (overhyped, 1), (alright, 1), (fil...{'overhyped': 1, 'alright': 1, 'good': 2, 'fil...{'overhyped': 1, 'but': 3, 'it': 4, 'alright':...
\n", "

246 rows × 12 columns

\n", "
" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "3 What idiotic FIlm\\nI can say that Phoenix is ... N \n", "4 Terrible\\nThe only thing good about this movi... N \n", ".. ... .. \n", "118 Nerve-wracking, but in very uncomfortable way... P \n", "119 Solid film but there are glaring problems\\nOk... P \n", "120 Joker > Endgame\\nNeed I say more? Everything ... P \n", "121 Absolutely not a 10\\nStrong fanboy and hype r... P \n", "122 Overhyped, but it's alright\\nIt's a good film... P \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "3 [ What idiotic FIlm\\nI can say that Phoenix is... 4 \n", "4 [ Terrible\\nThe only thing good about this mov... 9 \n", ".. ... ... \n", "118 [ Nerve-wracking, but in very uncomfortable wa... 8 \n", "119 [ Solid film but there are glaring problems\\nO... 13 \n", "120 [ Joker > Endgame\\nNeed I say more?, Everythin... 5 \n", "121 [ Absolutely not a 10\\nStrong fanboy and hype ... 5 \n", "122 [ Overhyped, but it's alright\\nIt's a good fil... 3 \n", "\n", " tokens num_tokens \\\n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "3 [what, idiotic, film, i, can, say, that, phoen... 66 \n", "4 [terrible, the, only, thing, good, about, this... 124 \n", ".. ... ... \n", "118 [but, in, very, uncomfortable, way, why, every... 57 \n", "119 [solid, film, but, there, are, glaring, proble... 628 \n", "120 [joker, endgame, need, i, say, more, everythin... 83 \n", "121 [absolutely, not, a, strong, fanboy, and, hype... 81 \n", "122 [overhyped, but, it, alright, it, a, good, fil... 60 \n", "\n", " no_sw num_no_sw \\\n", "0 [missed, opportunity, excited, see, movie, eve... 140 \n", "1 [phoenix, think, need, super, dark, film, tbh,... 25 \n", "2 [everyone, praised, overrated, movie, overrate... 13 \n", "3 [idiotic, film, say, phoenix, master, actor, b... 36 \n", "4 [terrible, thing, good, movie, phoenixs, actin... 65 \n", ".. ... ... \n", "118 [uncomfortable, way, everybody, keep, saying, ... 33 \n", "119 [solid, film, glaring, problems, okay, first, ... 292 \n", "120 [joker, endgame, need, say, everything, movie,... 53 \n", "121 [absolutely, strong, fanboy, hype, rush, going... 36 \n", "122 [overhyped, alright, good, film, see, like, ma... 31 \n", "\n", " topwords_unfil \\\n", "0 [(of, 13), (i, 12), (the, 12), (that, 10), (it... \n", "1 [(was, 4), (a, 3), (that, 3), (for, 2), (there... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "3 [(and, 4), (is, 2), (make, 2), (movie, 2), (to... \n", "4 [(the, 5), (this, 4), (movie, 4), (it, 4), (to... \n", ".. ... \n", "118 [(it, 4), (a, 4), (movie, 3), (in, 2), (keep, ... \n", "119 [(the, 35), (to, 22), (it, 16), (and, 16), (i,... \n", "120 [(joker, 3), (movie, 3), (in, 3), (it, 3), (th... \n", "121 [(the, 7), (is, 6), (a, 4), (fanboy, 2), (and,... \n", "122 [(it, 4), (but, 3), (a, 3), (good, 2), (do, 2)... \n", "\n", " topwords_fil \\\n", "0 [(movie, 3), (said, 3), (many, 3), (times, 3),... \n", "1 [(dark, 2), (phoenix, 1), (think, 1), (need, 1... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "3 [(make, 2), (movie, 2), (idiotic, 1), (film, 1... \n", "4 [(movie, 4), (terrible, 3), (acting, 3), (good... \n", ".. ... \n", "118 [(movie, 3), (keep, 2), (saying, 2), (psycho, ... \n", "119 [(joker, 6), (movie, 5), (film, 4), (like, 4),... \n", "120 [(joker, 3), (movie, 3), (masterful, 2), (awes... \n", "121 [(fanboy, 2), (movie, 2), (absolutely, 1), (st... \n", "122 [(good, 2), (overhyped, 1), (alright, 1), (fil... \n", "\n", " freq_dist \\\n", "0 {'missed': 2, 'opportunity': 2, 'excited': 1, ... \n", "1 {'phoenix': 1, 'think': 1, 'need': 1, 'super':... \n", "2 {'everyone': 1, 'praised': 1, 'overrated': 2, ... \n", "3 {'idiotic': 1, 'film': 1, 'say': 1, 'phoenix':... \n", "4 {'terrible': 3, 'thing': 1, 'good': 2, 'movie'... \n", ".. ... \n", "118 {'uncomfortable': 1, 'way': 1, 'everybody': 1,... \n", "119 {'solid': 1, 'film': 4, 'glaring': 1, 'problem... \n", "120 {'joker': 3, 'endgame': 1, 'need': 1, 'say': 1... \n", "121 {'absolutely': 1, 'strong': 1, 'fanboy': 2, 'h... \n", "122 {'overhyped': 1, 'alright': 1, 'good': 2, 'fil... \n", "\n", " freq_dist_unfil \n", "0 {'missed': 2, 'opportunity': 2, 'i': 12, 'had'... \n", "1 {'for': 2, 'phoenix': 1, 'i': 1, 'do': 1, 'thi... \n", "2 {'everyone': 1, 'praised': 1, 'an': 1, 'overra... \n", "3 {'what': 1, 'idiotic': 1, 'film': 1, 'i': 1, '... \n", "4 {'terrible': 3, 'the': 5, 'only': 1, 'thing': ... \n", ".. ... \n", "118 {'but': 1, 'in': 2, 'very': 1, 'uncomfortable'... \n", "119 {'solid': 1, 'film': 4, 'but': 5, 'there': 3, ... \n", "120 {'joker': 3, 'endgame': 1, 'need': 1, 'i': 1, ... \n", "121 {'absolutely': 1, 'not': 1, 'a': 4, 'strong': ... \n", "122 {'overhyped': 1, 'but': 3, 'it': 4, 'alright':... \n", "\n", "[246 rows x 12 columns]" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## STEP 6: Try Different Sentiment Analysis Tools" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### VADER" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "from nltk.sentiment.vader import SentimentIntensityAnalyzer\n", "sid = SentimentIntensityAnalyzer()\n", "def get_vader_score(review):\n", " return sid.polarity_scores(review)\n", "\n", "all_df['vader_all'] = all_df.apply(lambda x: get_vader_score(x[0]),axis=1)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "def separate_vader_score(vader_score, key):\n", " return vader_score[key]\n", "\n", "all_df['v_compound'] = all_df.apply(lambda x: separate_vader_score(x['vader_all'], 'compound'),axis=1)\n", "all_df['v_neg'] = all_df.apply(lambda x: separate_vader_score(x['vader_all'], 'neg'),axis=1)\n", "all_df['v_neu'] = all_df.apply(lambda x: separate_vader_score(x['vader_all'], 'neu'),axis=1)\n", "all_df['v_pos'] = all_df.apply(lambda x: separate_vader_score(x['vader_all'], 'pos'),axis=1)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokensno_swnum_no_swtopwords_unfiltopwords_filfreq_distfreq_dist_unfilvader_allv_compoundv_negv_neuv_pos
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306[missed, opportunity, excited, see, movie, eve...140[(of, 13), (i, 12), (the, 12), (that, 10), (it...[(movie, 3), (said, 3), (many, 3), (times, 3),...{'missed': 2, 'opportunity': 2, 'excited': 1, ...{'missed': 2, 'opportunity': 2, 'i': 12, 'had'...{'neg': 0.068, 'neu': 0.836, 'pos': 0.096, 'co...0.75010.0680.8360.096
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59[phoenix, think, need, super, dark, film, tbh,...25[(was, 4), (a, 3), (that, 3), (for, 2), (there...[(dark, 2), (phoenix, 1), (think, 1), (need, 1...{'phoenix': 1, 'think': 1, 'need': 1, 'super':...{'for': 2, 'phoenix': 1, 'i': 1, 'do': 1, 'thi...{'neg': 0.069, 'neu': 0.77, 'pos': 0.16, 'comp...0.71840.0690.7700.160
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26[everyone, praised, overrated, movie, overrate...13[(overrated, 2), (movie, 2), (everyone, 1), (p...[(overrated, 2), (movie, 2), (everyone, 1), (p...{'everyone': 1, 'praised': 1, 'overrated': 2, ...{'everyone': 1, 'praised': 1, 'an': 1, 'overra...{'neg': 0.0, 'neu': 0.79, 'pos': 0.21, 'compou...0.72690.0000.7900.210
3What idiotic FIlm\\nI can say that Phoenix is ...N[ What idiotic FIlm\\nI can say that Phoenix is...4[what, idiotic, film, i, can, say, that, phoen...66[idiotic, film, say, phoenix, master, actor, b...36[(and, 4), (is, 2), (make, 2), (movie, 2), (to...[(make, 2), (movie, 2), (idiotic, 1), (film, 1...{'idiotic': 1, 'film': 1, 'say': 1, 'phoenix':...{'what': 1, 'idiotic': 1, 'film': 1, 'i': 1, '...{'neg': 0.138, 'neu': 0.77, 'pos': 0.092, 'com...-0.66980.1380.7700.092
4Terrible\\nThe only thing good about this movi...N[ Terrible\\nThe only thing good about this mov...9[terrible, the, only, thing, good, about, this...124[terrible, thing, good, movie, phoenixs, actin...65[(the, 5), (this, 4), (movie, 4), (it, 4), (to...[(movie, 4), (terrible, 3), (acting, 3), (good...{'terrible': 3, 'thing': 1, 'good': 2, 'movie'...{'terrible': 3, 'the': 5, 'only': 1, 'thing': ...{'neg': 0.086, 'neu': 0.778, 'pos': 0.136, 'co...0.71840.0860.7780.136
\n", "
" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "3 What idiotic FIlm\\nI can say that Phoenix is ... N \n", "4 Terrible\\nThe only thing good about this movi... N \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "3 [ What idiotic FIlm\\nI can say that Phoenix is... 4 \n", "4 [ Terrible\\nThe only thing good about this mov... 9 \n", "\n", " tokens num_tokens \\\n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "3 [what, idiotic, film, i, can, say, that, phoen... 66 \n", "4 [terrible, the, only, thing, good, about, this... 124 \n", "\n", " no_sw num_no_sw \\\n", "0 [missed, opportunity, excited, see, movie, eve... 140 \n", "1 [phoenix, think, need, super, dark, film, tbh,... 25 \n", "2 [everyone, praised, overrated, movie, overrate... 13 \n", "3 [idiotic, film, say, phoenix, master, actor, b... 36 \n", "4 [terrible, thing, good, movie, phoenixs, actin... 65 \n", "\n", " topwords_unfil \\\n", "0 [(of, 13), (i, 12), (the, 12), (that, 10), (it... \n", "1 [(was, 4), (a, 3), (that, 3), (for, 2), (there... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "3 [(and, 4), (is, 2), (make, 2), (movie, 2), (to... \n", "4 [(the, 5), (this, 4), (movie, 4), (it, 4), (to... \n", "\n", " topwords_fil \\\n", "0 [(movie, 3), (said, 3), (many, 3), (times, 3),... \n", "1 [(dark, 2), (phoenix, 1), (think, 1), (need, 1... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "3 [(make, 2), (movie, 2), (idiotic, 1), (film, 1... \n", "4 [(movie, 4), (terrible, 3), (acting, 3), (good... \n", "\n", " freq_dist \\\n", "0 {'missed': 2, 'opportunity': 2, 'excited': 1, ... \n", "1 {'phoenix': 1, 'think': 1, 'need': 1, 'super':... \n", "2 {'everyone': 1, 'praised': 1, 'overrated': 2, ... \n", "3 {'idiotic': 1, 'film': 1, 'say': 1, 'phoenix':... \n", "4 {'terrible': 3, 'thing': 1, 'good': 2, 'movie'... \n", "\n", " freq_dist_unfil \\\n", "0 {'missed': 2, 'opportunity': 2, 'i': 12, 'had'... \n", "1 {'for': 2, 'phoenix': 1, 'i': 1, 'do': 1, 'thi... \n", "2 {'everyone': 1, 'praised': 1, 'an': 1, 'overra... \n", "3 {'what': 1, 'idiotic': 1, 'film': 1, 'i': 1, '... \n", "4 {'terrible': 3, 'the': 5, 'only': 1, 'thing': ... \n", "\n", " vader_all v_compound v_neg \\\n", "0 {'neg': 0.068, 'neu': 0.836, 'pos': 0.096, 'co... 0.7501 0.068 \n", "1 {'neg': 0.069, 'neu': 0.77, 'pos': 0.16, 'comp... 0.7184 0.069 \n", "2 {'neg': 0.0, 'neu': 0.79, 'pos': 0.21, 'compou... 0.7269 0.000 \n", "3 {'neg': 0.138, 'neu': 0.77, 'pos': 0.092, 'com... -0.6698 0.138 \n", "4 {'neg': 0.086, 'neu': 0.778, 'pos': 0.136, 'co... 0.7184 0.086 \n", "\n", " v_neu v_pos \n", "0 0.836 0.096 \n", "1 0.770 0.160 \n", "2 0.790 0.210 \n", "3 0.770 0.092 \n", "4 0.778 0.136 " ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df[:5]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### DIY SUMMARY" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "def get_weighted_freq_dist(review, freq_dist):\n", " max_freq = max(freq_dist.values())\n", " for word in freq_dist.keys():\n", " freq_dist[word] = (freq_dist[word]/max_freq)\n", " return freq_dist\n", "\n", "all_df['weighted_freq_dist'] = all_df.apply(lambda x: get_weighted_freq_dist(x['sentences'], x['freq_dist']),axis=1)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "def get_sentence_score(review, freq_dist):\n", " sentence_scores = {}\n", " for sent in review:\n", " for word in nltk.word_tokenize(sent.lower()):\n", " if word in freq_dist.keys():\n", " if len(sent.split(' ')) < 30:\n", " if sent not in sentence_scores.keys():\n", " sentence_scores[sent] = freq_dist[word]\n", " else:\n", " sentence_scores[sent] += freq_dist[word]\n", " return sentence_scores\n", "\n", "all_df['sentence_scores'] = all_df.apply(lambda x: get_sentence_score(x['sentences'], x['freq_dist']),axis=1)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "def get_summary_sentences(sentence_scores):\n", " sorted_sentences = sorted(sentence_scores.items(), key=lambda kv: kv[1], reverse=True)\n", " return ''.join(sent[0] for sent in sorted_sentences[:5])\n", "\n", "all_df['summary_sentences'] = all_df.apply(lambda x: get_summary_sentences(x['sentence_scores']), axis=1)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [], "source": [ "summaries = all_df['summary_sentences'].tolist()" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'Todd Philips should maybe read some comics and don;t copy movies like taxi driver or similar.Bt this does still not make a great movie. What idiotic FIlm\\nI can say that Phoenix is master actor.'" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "summaries[3]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Doing VADER on the Summary Section" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "all_df['vader_sum_all'] = all_df.apply(lambda x: get_vader_score(x['summary_sentences']),axis=1)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "all_df['v_compound_sum'] = all_df.apply(lambda x: separate_vader_score(x['vader_sum_all'], 'compound'),axis=1)\n", "all_df['v_neg_sum'] = all_df.apply(lambda x: separate_vader_score(x['vader_sum_all'], 'neg'),axis=1)\n", "all_df['v_neu_sum'] = all_df.apply(lambda x: separate_vader_score(x['vader_sum_all'], 'neu'),axis=1)\n", "all_df['v_pos_sum'] = all_df.apply(lambda x: separate_vader_score(x['vader_sum_all'], 'pos'),axis=1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Doing VADER on the Most Frequent Words" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "def get_freq_words(freq_dist):\n", " sorted_words = sorted(freq_dist.items(), key=lambda kv: kv[1], reverse=True)\n", " return ' '.join(word[0] for word in sorted_words[:50])\n", "\n", "all_df['v_freq_words'] = all_df.apply(lambda x: get_freq_words(x['freq_dist']), axis=1)\n", "\n", "all_df['vader_fq_all'] = all_df.apply(lambda x: get_vader_score(x['v_freq_words']),axis=1)\n", "all_df['v_compound_fd'] = all_df.apply(lambda x: separate_vader_score(x['vader_fq_all'], 'compound'),axis=1)\n", "all_df['v_neg_fd'] = all_df.apply(lambda x: separate_vader_score(x['vader_fq_all'], 'neg'),axis=1)\n", "all_df['v_neu_fd'] = all_df.apply(lambda x: separate_vader_score(x['vader_fq_all'], 'neu'),axis=1)\n", "all_df['v_pos_fd'] = all_df.apply(lambda x: separate_vader_score(x['vader_fq_all'], 'pos'),axis=1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## STEP 7: Test `Step 6` with Machine Learning!!\n", "### Naive Bayes" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "from sklearn.naive_bayes import GaussianNB\n", "\n", "def get_NB(small_df, labels):\n", " x_train, x_test, y_train, y_test = train_test_split(small_df.values, labels, test_size=0.3, random_state = 109)\n", "\n", " gnb = GaussianNB()\n", " gnb.fit(x_train, y_train)\n", " y_pred = gnb.predict(x_test)\n", " from sklearn import metrics\n", " print(\"Accuracy:\", metrics.accuracy_score(y_test, y_pred))" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokensno_swnum_no_swtopwords_unfiltopwords_fil...v_compound_sumv_neg_sumv_neu_sumv_pos_sumv_freq_wordsvader_fq_allv_compound_fdv_neg_fdv_neu_fdv_pos_fd
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306[missed, opportunity, excited, see, movie, eve...140[(of, 13), (i, 12), (the, 12), (that, 10), (it...[(movie, 3), (said, 3), (many, 3), (times, 3),......0.00000.0000.0000.000movie said many times missed opportunity see t...{'neg': 0.181, 'neu': 0.633, 'pos': 0.187, 'co...-0.15310.1810.6330.187
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59[phoenix, think, need, super, dark, film, tbh,...25[(was, 4), (a, 3), (that, 3), (for, 2), (there...[(dark, 2), (phoenix, 1), (think, 1), (need, 1......0.40190.0660.7850.148dark phoenix think need super film tbh dc comi...{'neg': 0.075, 'neu': 0.594, 'pos': 0.331, 'co...0.80200.0750.5940.331
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26[everyone, praised, overrated, movie, overrate...13[(overrated, 2), (movie, 2), (everyone, 1), (p...[(overrated, 2), (movie, 2), (everyone, 1), (p......0.72690.0000.7900.210overrated movie everyone praised time reviews ...{'neg': 0.0, 'neu': 0.596, 'pos': 0.404, 'comp...0.72690.0000.5960.404
3What idiotic FIlm\\nI can say that Phoenix is ...N[ What idiotic FIlm\\nI can say that Phoenix is...4[what, idiotic, film, i, can, say, that, phoen...66[idiotic, film, say, phoenix, master, actor, b...36[(and, 4), (is, 2), (make, 2), (movie, 2), (to...[(make, 2), (movie, 2), (idiotic, 1), (film, 1......-0.65910.1750.7620.063make movie idiotic film say phoenix master act...{'neg': 0.184, 'neu': 0.609, 'pos': 0.207, 'co...0.25700.1840.6090.207
4Terrible\\nThe only thing good about this movi...N[ Terrible\\nThe only thing good about this mov...9[terrible, the, only, thing, good, about, this...124[terrible, thing, good, movie, phoenixs, actin...65[(the, 5), (this, 4), (movie, 4), (it, 4), (to...[(movie, 4), (terrible, 3), (acting, 3), (good......0.73110.0710.7790.150movie terrible acting good dont movies plot ma...{'neg': 0.193, 'neu': 0.58, 'pos': 0.227, 'com...0.32610.1930.5800.227
\n", "

5 rows × 31 columns

\n", "
" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "3 What idiotic FIlm\\nI can say that Phoenix is ... N \n", "4 Terrible\\nThe only thing good about this movi... N \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "3 [ What idiotic FIlm\\nI can say that Phoenix is... 4 \n", "4 [ Terrible\\nThe only thing good about this mov... 9 \n", "\n", " tokens num_tokens \\\n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "3 [what, idiotic, film, i, can, say, that, phoen... 66 \n", "4 [terrible, the, only, thing, good, about, this... 124 \n", "\n", " no_sw num_no_sw \\\n", "0 [missed, opportunity, excited, see, movie, eve... 140 \n", "1 [phoenix, think, need, super, dark, film, tbh,... 25 \n", "2 [everyone, praised, overrated, movie, overrate... 13 \n", "3 [idiotic, film, say, phoenix, master, actor, b... 36 \n", "4 [terrible, thing, good, movie, phoenixs, actin... 65 \n", "\n", " topwords_unfil \\\n", "0 [(of, 13), (i, 12), (the, 12), (that, 10), (it... \n", "1 [(was, 4), (a, 3), (that, 3), (for, 2), (there... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "3 [(and, 4), (is, 2), (make, 2), (movie, 2), (to... \n", "4 [(the, 5), (this, 4), (movie, 4), (it, 4), (to... \n", "\n", " topwords_fil ... v_compound_sum \\\n", "0 [(movie, 3), (said, 3), (many, 3), (times, 3),... ... 0.0000 \n", "1 [(dark, 2), (phoenix, 1), (think, 1), (need, 1... ... 0.4019 \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... ... 0.7269 \n", "3 [(make, 2), (movie, 2), (idiotic, 1), (film, 1... ... -0.6591 \n", "4 [(movie, 4), (terrible, 3), (acting, 3), (good... ... 0.7311 \n", "\n", " v_neg_sum v_neu_sum v_pos_sum \\\n", "0 0.000 0.000 0.000 \n", "1 0.066 0.785 0.148 \n", "2 0.000 0.790 0.210 \n", "3 0.175 0.762 0.063 \n", "4 0.071 0.779 0.150 \n", "\n", " v_freq_words \\\n", "0 movie said many times missed opportunity see t... \n", "1 dark phoenix think need super film tbh dc comi... \n", "2 overrated movie everyone praised time reviews ... \n", "3 make movie idiotic film say phoenix master act... \n", "4 movie terrible acting good dont movies plot ma... \n", "\n", " vader_fq_all v_compound_fd v_neg_fd \\\n", "0 {'neg': 0.181, 'neu': 0.633, 'pos': 0.187, 'co... -0.1531 0.181 \n", "1 {'neg': 0.075, 'neu': 0.594, 'pos': 0.331, 'co... 0.8020 0.075 \n", "2 {'neg': 0.0, 'neu': 0.596, 'pos': 0.404, 'comp... 0.7269 0.000 \n", "3 {'neg': 0.184, 'neu': 0.609, 'pos': 0.207, 'co... 0.2570 0.184 \n", "4 {'neg': 0.193, 'neu': 0.58, 'pos': 0.227, 'com... 0.3261 0.193 \n", "\n", " v_neu_fd v_pos_fd \n", "0 0.633 0.187 \n", "1 0.594 0.331 \n", "2 0.596 0.404 \n", "3 0.609 0.207 \n", "4 0.580 0.227 \n", "\n", "[5 rows x 31 columns]" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df[:5]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### TEST 1: Vader Scores (Original)" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.6621621621621622\n" ] } ], "source": [ "small_df = all_df.filter(['v_compound','v_pos', 'v_neg', 'v_neu']) # 0.645\n", "get_NB(small_df, all_df['PoN'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### TEST 2: Vader Scores (from Summary)" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7027027027027027\n" ] } ], "source": [ "small_df = all_df.filter(['v_compound_sum','v_pos_sum', 'v_neg_sum', 'v_neu_sum']) # 0.59\n", "get_NB(small_df, all_df['PoN'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### TEST 3: Vader Scores (original) AND Vader Scores (summary)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.6891891891891891\n" ] } ], "source": [ "small_df = all_df.filter(['v_compound_sum','v_pos_sum', 'v_neg_sum', 'v_neu_sum', \n", " 'v_compound','v_pos', 'v_neg', 'v_neu']) # 0.618\n", "get_NB(small_df, all_df['PoN'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### TEST 4: Vader Scores (50 most frequent -- filtered -- words)" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7297297297297297\n" ] } ], "source": [ "small_df = all_df.filter(['v_compound_fd','v_pos_fd', 'v_neu_fd', 'v_neg_fd']) # 0.598\n", "get_NB(small_df, all_df['PoN'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### TEST 5: All `compound` Vader Scores" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7027027027027027\n" ] } ], "source": [ "small_df = all_df.filter(['v_compound_fd','v_compound_sum', 'v_compound']) # 0.615\n", "get_NB(small_df, all_df['PoN'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### TEST 6: ALL THE NUMBERS!!" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7027027027027027\n" ] } ], "source": [ "small_df = all_df.filter(['v_compound_sum','v_pos_sum', 'v_neg_sum', 'v_neu_sum', \n", " 'v_compound_fd','v_pos_fd', 'v_neg_fd', 'v_neu_fd', \n", " 'v_compound','v_pos', 'v_neg', 'v_neu']) # 0.613\n", "get_NB(small_df, all_df['PoN'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### TEST 7: Test UNFILTERED most frequent words" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "def get_freq_words(freq_dist):\n", " sorted_words = sorted(freq_dist.items(), key=lambda kv: kv[1], reverse=True)\n", " return ' '.join(word[0] for word in sorted_words[:50])\n", "\n", "all_df['v_freq_words_unfil'] = all_df.apply(lambda x: get_freq_words(x['freq_dist_unfil']), axis=1)\n", "\n", "all_df['vader_fd_all_unfil'] = all_df.apply(lambda x: get_vader_score(x['v_freq_words_unfil']),axis=1)\n", "\n", "all_df['v_compound_fd_uf'] = all_df.apply(lambda x: separate_vader_score(x['vader_fd_all_unfil'], 'compound'),axis=1)\n", "all_df['v_neg_fd_uf'] = all_df.apply(lambda x: separate_vader_score(x['vader_fd_all_unfil'], 'neg'),axis=1)\n", "all_df['v_neu_fd_uf'] = all_df.apply(lambda x: separate_vader_score(x['vader_fd_all_unfil'], 'neu'),axis=1)\n", "all_df['v_pos_fd_uf'] = all_df.apply(lambda x: separate_vader_score(x['vader_fd_all_unfil'], 'pos'),axis=1)" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7297297297297297\n" ] } ], "source": [ "small_df = all_df.filter(['v_compound_sum','v_pos_sum', 'v_neg_sum', 'v_neu_sum', \n", " 'v_compound_fd','v_pos_fd', 'v_neg_fd', 'v_neu_fd', \n", " 'v_compound_fd_uf','v_pos_fd_uf', 'v_neg_fd_uf', 'v_neu_fd_uf',\n", " 'v_compound','v_pos', 'v_neg', 'v_neu']) # 0.618\n", "get_NB(small_df, all_df['PoN'])" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7162162162162162\n" ] } ], "source": [ "small_df = all_df.filter(['v_compound_fd_uf','v_pos_fd_uf', 'v_neg_fd_uf', 'v_neu_fd_uf']) # 0.603\n", "get_NB(small_df, all_df['PoN'])" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [], "source": [ "summaries_pos = all_df[all_df['PoN'] == 'P']\n", "summaries_neg = all_df[all_df['PoN'] == 'N']" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [], "source": [ "summaries_pos_list = summaries_pos['summary_sentences'].tolist()\n", "summaries_neg_list = summaries_neg['summary_sentences'].tolist()" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['Just don\\'t expect any \"real\" Batman references.Director Phillips delivers a film that looks and feels and sounds much different than other comic book movies.Cinematographer Lawrence Sher is a frequent Phillips collaborator (all 3 Hangover movies) and the dark look and gritty feel are present in most every shot.We are informed Arthur suffers from Pseudobulbar Affect, also known as emotional incontinence, which causes that creepy laughter to pop up at some inappropriate times.The \"Smile\" song is especially relevant as its origins can be traced by to Charlie Chaplin\\'s MODERN TIMES, a silent movie classic featured in this film.This is not one for the younger kids, no matter how much they enjoy THE AVENGERS or WONDER WOMAN (or any other DC or Marvel film).']" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "summaries_pos_list[:1]" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['']" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "summaries_neg_list[:1]" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['']" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "summaries_neg_list[:1]" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokensno_swnum_no_swtopwords_unfiltopwords_fil...v_freq_words_unfilvader_fd_all_unfilv_compound_fd_ufv_neg_fd_ufv_neu_fd_ufv_pos_fd_ufnltk_negsunigram_featsbigram_featsbigram_feats_neg
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306[missed, opportunity, excited, see, movie, eve...140[(of, 13), (i, 12), (the, 12), (that, 10), (it...[(movie, 3), (said, 3), (many, 3), (times, 3),......of i the that it a and to was had been very mo...{'neg': 0.041, 'neu': 0.816, 'pos': 0.143, 'co...0.67050.0410.8160.143[missed, opportunity, i, had, been, very, exci...[of, i, the, that, it, a, and, to, was, had, b...[missed_opportunity, opportunity_i, i_had, had...[missed_opportunity, opportunity_i, i_had, had...
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59[phoenix, think, need, super, dark, film, tbh,...25[(was, 4), (a, 3), (that, 3), (for, 2), (there...[(dark, 2), (phoenix, 1), (think, 1), (need, 1......was a that for there dark in it phoenix i do t...{'neg': 0.097, 'neu': 0.732, 'pos': 0.171, 'co...0.44270.0970.7320.171[for, phoenix, i, do, think, there, was, a, ne...[a, for, was, dark, was_NEG, that_NEG, phoenix...[for_phoenix, phoenix_i, i_do, do_think, think...[for_phoenix, phoenix_i, i_do, do_think, think...
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26[everyone, praised, overrated, movie, overrate...13[(overrated, 2), (movie, 2), (everyone, 1), (p...[(overrated, 2), (movie, 2), (everyone, 1), (p......overrated movie everyone praised an of all tim...{'neg': 0.0, 'neu': 0.783, 'pos': 0.217, 'comp...0.72690.0000.7830.217[everyone, praised, an, overrated, movie, over...[overrated, movie, everyone, praised, an, of, ...[everyone_praised, praised_an, an_overrated, o...[everyone_praised, praised_an, an_overrated, o...
3What idiotic FIlm\\nI can say that Phoenix is ...N[ What idiotic FIlm\\nI can say that Phoenix is...4[what, idiotic, film, i, can, say, that, phoen...66[idiotic, film, say, phoenix, master, actor, b...36[(and, 4), (is, 2), (make, 2), (movie, 2), (to...[(make, 2), (movie, 2), (idiotic, 1), (film, 1......and is make movie to with the what idiotic fil...{'neg': 0.208, 'neu': 0.741, 'pos': 0.051, 'co...-0.83440.2080.7410.051[what, idiotic, film, i, can, say, that, phoen...[and_NEG, make_NEG, movie_NEG, to_NEG, with_NE...[what_idiotic, idiotic_film, film_i, i_can, ca...[what_idiotic, idiotic_film, film_i, i_can, ca...
4Terrible\\nThe only thing good about this movi...N[ Terrible\\nThe only thing good about this mov...9[terrible, the, only, thing, good, about, this...124[terrible, thing, good, movie, phoenixs, actin...65[(the, 5), (this, 4), (movie, 4), (it, 4), (to...[(movie, 4), (terrible, 3), (acting, 3), (good......the this movie it to terrible acting but and f...{'neg': 0.181, 'neu': 0.703, 'pos': 0.116, 'co...-0.58530.1810.7030.116[terrible, the, only, thing, good, about, this...[it_NEG, the_NEG, to_NEG, and_NEG, for_NEG, th...[terrible_the, the_only, only_thing, thing_goo...[terrible_the, the_only, only_thing, thing_goo...
\n", "

5 rows × 41 columns

\n", "
" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "3 What idiotic FIlm\\nI can say that Phoenix is ... N \n", "4 Terrible\\nThe only thing good about this movi... N \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "3 [ What idiotic FIlm\\nI can say that Phoenix is... 4 \n", "4 [ Terrible\\nThe only thing good about this mov... 9 \n", "\n", " tokens num_tokens \\\n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "3 [what, idiotic, film, i, can, say, that, phoen... 66 \n", "4 [terrible, the, only, thing, good, about, this... 124 \n", "\n", " no_sw num_no_sw \\\n", "0 [missed, opportunity, excited, see, movie, eve... 140 \n", "1 [phoenix, think, need, super, dark, film, tbh,... 25 \n", "2 [everyone, praised, overrated, movie, overrate... 13 \n", "3 [idiotic, film, say, phoenix, master, actor, b... 36 \n", "4 [terrible, thing, good, movie, phoenixs, actin... 65 \n", "\n", " topwords_unfil \\\n", "0 [(of, 13), (i, 12), (the, 12), (that, 10), (it... \n", "1 [(was, 4), (a, 3), (that, 3), (for, 2), (there... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "3 [(and, 4), (is, 2), (make, 2), (movie, 2), (to... \n", "4 [(the, 5), (this, 4), (movie, 4), (it, 4), (to... \n", "\n", " topwords_fil ... \\\n", "0 [(movie, 3), (said, 3), (many, 3), (times, 3),... ... \n", "1 [(dark, 2), (phoenix, 1), (think, 1), (need, 1... ... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... ... \n", "3 [(make, 2), (movie, 2), (idiotic, 1), (film, 1... ... \n", "4 [(movie, 4), (terrible, 3), (acting, 3), (good... ... \n", "\n", " v_freq_words_unfil \\\n", "0 of i the that it a and to was had been very mo... \n", "1 was a that for there dark in it phoenix i do t... \n", "2 overrated movie everyone praised an of all tim... \n", "3 and is make movie to with the what idiotic fil... \n", "4 the this movie it to terrible acting but and f... \n", "\n", " vader_fd_all_unfil v_compound_fd_uf \\\n", "0 {'neg': 0.041, 'neu': 0.816, 'pos': 0.143, 'co... 0.6705 \n", "1 {'neg': 0.097, 'neu': 0.732, 'pos': 0.171, 'co... 0.4427 \n", "2 {'neg': 0.0, 'neu': 0.783, 'pos': 0.217, 'comp... 0.7269 \n", "3 {'neg': 0.208, 'neu': 0.741, 'pos': 0.051, 'co... -0.8344 \n", "4 {'neg': 0.181, 'neu': 0.703, 'pos': 0.116, 'co... -0.5853 \n", "\n", " v_neg_fd_uf v_neu_fd_uf v_pos_fd_uf \\\n", "0 0.041 0.816 0.143 \n", "1 0.097 0.732 0.171 \n", "2 0.000 0.783 0.217 \n", "3 0.208 0.741 0.051 \n", "4 0.181 0.703 0.116 \n", "\n", " nltk_negs \\\n", "0 [missed, opportunity, i, had, been, very, exci... \n", "1 [for, phoenix, i, do, think, there, was, a, ne... \n", "2 [everyone, praised, an, overrated, movie, over... \n", "3 [what, idiotic, film, i, can, say, that, phoen... \n", "4 [terrible, the, only, thing, good, about, this... \n", "\n", " unigram_feats \\\n", "0 [of, i, the, that, it, a, and, to, was, had, b... \n", "1 [a, for, was, dark, was_NEG, that_NEG, phoenix... \n", "2 [overrated, movie, everyone, praised, an, of, ... \n", "3 [and_NEG, make_NEG, movie_NEG, to_NEG, with_NE... \n", "4 [it_NEG, the_NEG, to_NEG, and_NEG, for_NEG, th... \n", "\n", " bigram_feats \\\n", "0 [missed_opportunity, opportunity_i, i_had, had... \n", "1 [for_phoenix, phoenix_i, i_do, do_think, think... \n", "2 [everyone_praised, praised_an, an_overrated, o... \n", "3 [what_idiotic, idiotic_film, film_i, i_can, ca... \n", "4 [terrible_the, the_only, only_thing, thing_goo... \n", "\n", " bigram_feats_neg \n", "0 [missed_opportunity, opportunity_i, i_had, had... \n", "1 [for_phoenix, phoenix_i, i_do, do_think, think... \n", "2 [everyone_praised, praised_an, an_overrated, o... \n", "3 [what_idiotic, idiotic_film, film_i, i_can, ca... \n", "4 [terrible_the, the_only, only_thing, thing_goo... \n", "\n", "[5 rows x 41 columns]" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "### VERSION 1\n", "# all_words_neg = sentim_analyzer.all_words([mark_negation(doc) for doc in training_docs])\n", "# unigram_feats = sentim_analyzer.unigram_word_feats(all_words_neg)\n", "# sentim_analyzer.add_feat_extractor(extract_unigram_feats, unigrams=unigram_feats)\n", "# training_set = sentim_analyzer.apply_features(training_docs)\n", "# test_set = sentim_analyzer.apply_features(testing_docs)\n", "sentim_analyzer = SentimentAnalyzer()\n", "\n", "def get_nltk_negs(tokens):\n", " all_words_neg = sentim_analyzer.all_words([mark_negation(tokens)])\n", " return all_words_neg\n", "\n", "def get_unigram_feats(neg_tokens):\n", " unigram_feats = sentim_analyzer.unigram_word_feats(neg_tokens)\n", " return unigram_feats\n", " \n", "def get_bigram_feats(tokens):\n", " ngrams = zip(*[tokens[i:] for i in range(2)])\n", " return [\"_\".join(ngram) for ngram in ngrams]\n", "\n", "all_df['nltk_negs'] = all_df.apply(lambda x: get_nltk_negs(x['tokens']), axis=1)\n", "all_df['unigram_feats'] = all_df.apply(lambda x: get_unigram_feats(x['nltk_negs']), axis=1)\n", "all_df['bigram_feats'] = all_df.apply(lambda x: get_bigram_feats(x['tokens']), axis=1)\n", "all_df['bigram_feats_neg'] = all_df.apply(lambda x: get_bigram_feats(x['nltk_negs']), axis=1)\n", "all_df[:5]\n", "# all_df['nltk_unfil'] = all_df.apply(lambda x: get_nltk_data(x['tokens']), axis=1)" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [], "source": [ "### VERSION 2\n", "# all_words_neg = sentim_analyzer.all_words([mark_negation(doc) for doc in training_docs])\n", "# unigram_feats = sentim_analyzer.unigram_word_feats(all_words_neg)\n", "# sentim_analyzer.add_feat_extractor(extract_unigram_feats, unigrams=unigram_feats)\n", "# training_set = sentim_analyzer.apply_features(training_docs)\n", "# test_set = sentim_analyzer.apply_features(testing_docs)\n", "sentim_analyzer = SentimentAnalyzer()\n", "\n", "def get_nltk_data(tokens):\n", " neg_tokens = sentim_analyzer.all_words([mark_negation(tokens)])\n", " unigram_feats = sentim_analyzer.unigram_word_feats(neg_tokens)\n", " sentim_analyzer.add_feat_extractor(extract_unigram_feats, unigrams=unigram_feats)\n", " return sentim_analyzer.apply_features(tokens)\n", "\n", "\n", "# def get_unigram_feats(neg_tokens):\n", " \n", "# return unigram_feats\n", "nltk_df = pd.DataFrame()\n", "nltk_df['nltk_data'] = all_df.apply(lambda x: get_nltk_data(x['tokens']), axis=1)\n", "\n", "# all_df['nltk']\n", "# all_df['unigram_feats'] = all_df.apply(lambda x: get_unigram_feats(x['nltk_negs']), axis=1)\n", "# all_df['nltk_unfil'] = all_df.apply(lambda x: get_nltk_data(x['tokens']), axis=1)" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [], "source": [ "all_df['nltk_all'] = 0" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0 0\n", "1 0\n", "2 0\n", "3 0\n", "4 0\n", " ..\n", "118 0\n", "119 0\n", "120 0\n", "121 0\n", "122 0\n", "Name: nltk_all, Length: 246, dtype: int64" ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df['nltk_all']" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokensno_swnum_no_swtopwords_unfiltopwords_fil...vader_fd_all_unfilv_compound_fd_ufv_neg_fd_ufv_neu_fd_ufv_pos_fd_ufnltk_negsunigram_featsbigram_featsbigram_feats_negnltk_all
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306[missed, opportunity, excited, see, movie, eve...140[(of, 13), (i, 12), (the, 12), (that, 10), (it...[(movie, 3), (said, 3), (many, 3), (times, 3),......{'neg': 0.041, 'neu': 0.816, 'pos': 0.143, 'co...0.67050.0410.8160.143[missed, opportunity, i, had, been, very, exci...[of, i, the, that, it, a, and, to, was, had, b...[missed_opportunity, opportunity_i, i_had, had...[missed_opportunity, opportunity_i, i_had, had...0
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59[phoenix, think, need, super, dark, film, tbh,...25[(was, 4), (a, 3), (that, 3), (for, 2), (there...[(dark, 2), (phoenix, 1), (think, 1), (need, 1......{'neg': 0.097, 'neu': 0.732, 'pos': 0.171, 'co...0.44270.0970.7320.171[for, phoenix, i, do, think, there, was, a, ne...[a, for, was, dark, was_NEG, that_NEG, phoenix...[for_phoenix, phoenix_i, i_do, do_think, think...[for_phoenix, phoenix_i, i_do, do_think, think...0
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26[everyone, praised, overrated, movie, overrate...13[(overrated, 2), (movie, 2), (everyone, 1), (p...[(overrated, 2), (movie, 2), (everyone, 1), (p......{'neg': 0.0, 'neu': 0.783, 'pos': 0.217, 'comp...0.72690.0000.7830.217[everyone, praised, an, overrated, movie, over...[overrated, movie, everyone, praised, an, of, ...[everyone_praised, praised_an, an_overrated, o...[everyone_praised, praised_an, an_overrated, o...0
\n", "

3 rows × 42 columns

\n", "
" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "\n", " tokens num_tokens \\\n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "\n", " no_sw num_no_sw \\\n", "0 [missed, opportunity, excited, see, movie, eve... 140 \n", "1 [phoenix, think, need, super, dark, film, tbh,... 25 \n", "2 [everyone, praised, overrated, movie, overrate... 13 \n", "\n", " topwords_unfil \\\n", "0 [(of, 13), (i, 12), (the, 12), (that, 10), (it... \n", "1 [(was, 4), (a, 3), (that, 3), (for, 2), (there... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "\n", " topwords_fil ... \\\n", "0 [(movie, 3), (said, 3), (many, 3), (times, 3),... ... \n", "1 [(dark, 2), (phoenix, 1), (think, 1), (need, 1... ... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... ... \n", "\n", " vader_fd_all_unfil v_compound_fd_uf \\\n", "0 {'neg': 0.041, 'neu': 0.816, 'pos': 0.143, 'co... 0.6705 \n", "1 {'neg': 0.097, 'neu': 0.732, 'pos': 0.171, 'co... 0.4427 \n", "2 {'neg': 0.0, 'neu': 0.783, 'pos': 0.217, 'comp... 0.7269 \n", "\n", " v_neg_fd_uf v_neu_fd_uf v_pos_fd_uf \\\n", "0 0.041 0.816 0.143 \n", "1 0.097 0.732 0.171 \n", "2 0.000 0.783 0.217 \n", "\n", " nltk_negs \\\n", "0 [missed, opportunity, i, had, been, very, exci... \n", "1 [for, phoenix, i, do, think, there, was, a, ne... \n", "2 [everyone, praised, an, overrated, movie, over... \n", "\n", " unigram_feats \\\n", "0 [of, i, the, that, it, a, and, to, was, had, b... \n", "1 [a, for, was, dark, was_NEG, that_NEG, phoenix... \n", "2 [overrated, movie, everyone, praised, an, of, ... \n", "\n", " bigram_feats \\\n", "0 [missed_opportunity, opportunity_i, i_had, had... \n", "1 [for_phoenix, phoenix_i, i_do, do_think, think... \n", "2 [everyone_praised, praised_an, an_overrated, o... \n", "\n", " bigram_feats_neg nltk_all \n", "0 [missed_opportunity, opportunity_i, i_had, had... 0 \n", "1 [for_phoenix, phoenix_i, i_do, do_think, think... 0 \n", "2 [everyone_praised, praised_an, an_overrated, o... 0 \n", "\n", "[3 rows x 42 columns]" ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df[:3]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## STEP 8: Add Bag of Words to Machine Learning models" ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [], "source": [ "from nltk.tokenize import casual_tokenize\n", "from collections import Counter\n", "all_df['bow_nosw'] = all_df.apply(lambda x: Counter(casual_tokenize(x[0])), axis=1)" ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokensno_swnum_no_swtopwords_unfiltopwords_fil...v_compound_fd_ufv_neg_fd_ufv_neu_fd_ufv_pos_fd_ufnltk_negsunigram_featsbigram_featsbigram_feats_negnltk_allbow_nosw
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306[missed, opportunity, excited, see, movie, eve...140[(of, 13), (i, 12), (the, 12), (that, 10), (it...[(movie, 3), (said, 3), (many, 3), (times, 3),......0.67050.0410.8160.143[missed, opportunity, i, had, been, very, exci...[of, i, the, that, it, a, and, to, was, had, b...[missed_opportunity, opportunity_i, i_had, had...[missed_opportunity, opportunity_i, i_had, had...0{'Missed': 1, 'Opportunity': 1, 'I': 14, 'had'...
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59[phoenix, think, need, super, dark, film, tbh,...25[(was, 4), (a, 3), (that, 3), (for, 2), (there...[(dark, 2), (phoenix, 1), (think, 1), (need, 1......0.44270.0970.7320.171[for, phoenix, i, do, think, there, was, a, ne...[a, for, was, dark, was_NEG, that_NEG, phoenix...[for_phoenix, phoenix_i, i_do, do_think, think...[for_phoenix, phoenix_i, i_do, do_think, think...0{'5/5': 1, 'for': 2, 'Phoenix's': 1, 'acting':...
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26[everyone, praised, overrated, movie, overrate...13[(overrated, 2), (movie, 2), (everyone, 1), (p...[(overrated, 2), (movie, 2), (everyone, 1), (p......0.72690.0000.7830.217[everyone, praised, an, overrated, movie, over...[overrated, movie, everyone, praised, an, of, ...[everyone_praised, praised_an, an_overrated, o...[everyone_praised, praised_an, an_overrated, o...0{'Everyone': 1, 'praised': 1, 'an': 1, 'overra...
\n", "

3 rows × 43 columns

\n", "
" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "\n", " tokens num_tokens \\\n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "\n", " no_sw num_no_sw \\\n", "0 [missed, opportunity, excited, see, movie, eve... 140 \n", "1 [phoenix, think, need, super, dark, film, tbh,... 25 \n", "2 [everyone, praised, overrated, movie, overrate... 13 \n", "\n", " topwords_unfil \\\n", "0 [(of, 13), (i, 12), (the, 12), (that, 10), (it... \n", "1 [(was, 4), (a, 3), (that, 3), (for, 2), (there... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "\n", " topwords_fil ... v_compound_fd_uf \\\n", "0 [(movie, 3), (said, 3), (many, 3), (times, 3),... ... 0.6705 \n", "1 [(dark, 2), (phoenix, 1), (think, 1), (need, 1... ... 0.4427 \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... ... 0.7269 \n", "\n", " v_neg_fd_uf v_neu_fd_uf v_pos_fd_uf \\\n", "0 0.041 0.816 0.143 \n", "1 0.097 0.732 0.171 \n", "2 0.000 0.783 0.217 \n", "\n", " nltk_negs \\\n", "0 [missed, opportunity, i, had, been, very, exci... \n", "1 [for, phoenix, i, do, think, there, was, a, ne... \n", "2 [everyone, praised, an, overrated, movie, over... \n", "\n", " unigram_feats \\\n", "0 [of, i, the, that, it, a, and, to, was, had, b... \n", "1 [a, for, was, dark, was_NEG, that_NEG, phoenix... \n", "2 [overrated, movie, everyone, praised, an, of, ... \n", "\n", " bigram_feats \\\n", "0 [missed_opportunity, opportunity_i, i_had, had... \n", "1 [for_phoenix, phoenix_i, i_do, do_think, think... \n", "2 [everyone_praised, praised_an, an_overrated, o... \n", "\n", " bigram_feats_neg nltk_all \\\n", "0 [missed_opportunity, opportunity_i, i_had, had... 0 \n", "1 [for_phoenix, phoenix_i, i_do, do_think, think... 0 \n", "2 [everyone_praised, praised_an, an_overrated, o... 0 \n", "\n", " bow_nosw \n", "0 {'Missed': 1, 'Opportunity': 1, 'I': 14, 'had'... \n", "1 {'5/5': 1, 'for': 2, 'Phoenix's': 1, 'acting':... \n", "2 {'Everyone': 1, 'praised': 1, 'an': 1, 'overra... \n", "\n", "[3 rows x 43 columns]" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df[:3]" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [], "source": [ "# Keeping punctuation\n", "# def diy_cleaner(review):\n", "# both = review.split('\\n')\n", "# title = both[0]\n", "# review = both[1]\n", "# cleaned = title + '.' + title + '.' + review\n", "# return cleaned.lower()\n", "\n", "# Removing punctuation\n", "\n", "# def diy_cleaner(review):\n", "# both = review.split('\\n')\n", "# title = both[0]\n", "# review = both[1]\n", "# review = review.replace(\"\\'\",'')\n", "# review = review.replace(\"'\",'')\n", "# review = review.replace(\",\",'')\n", "# cleaned = title + ' ' + title + ' ' + ' '.join(review.split('.'))\n", "# return cleaned.lower()\n", "\n", "import re, string\n", "\n", "def diy_cleaner(review):\n", " both = review.split('\\n')\n", " title = both[0]\n", " review = both[1]\n", " review = review.replace(\"'\",\"\")\n", " pattern = re.compile('[\\W_]+')\n", " review = pattern.sub(' ', review)\n", " cleaned = title + ' ' + title + ' ' + review\n", " return cleaned.lower()\n", "\n", "all_df['diy_cleaner'] = all_df.apply(lambda x: diy_cleaner(x[0]), axis=1)" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[' missed opportunity missed opportunity i had been very excited to see this movie ever since i had 1st heard about it and was anticipating its release but when it started getting the type of hype and press that it was i became a bit apprehensive as the things that were being said about it which seemed outrageous mostly were things that were said about other moves i had been looking forward to seeing and that had ended letting me down the joker sadly turned out to be one of those movies for me now as i know it has been said many times before phoenixs portrayal of man with mental health depression was very very good convincing but the story and the plot seemed like a big missed opportunity to deliver an anti hero origin story of one of the most coveted villains in comic book lore i liked the quasi mirroring of a failed system whose middle lower class revolt against the rich in a sort of if we burn you burn with us type of way that has been done many times before im sure people can see glimpses of that today in our us culture and who knows maybe the studio execs got their fingers involved and are the ones that watered it down a bit too much maybe there will be a directors cut that is darker than the theatrical release i certainly hope so because for all the reviews i have read that speak of people walking out of theaters because of the dark feel and psychological overtones being too much for them to stomach all i felt was a sense of wanting it to be bigger and grander than what i was seeing i would recommend seeing this movie so that you can formulate your own opinion but i gave it a low rating because when it was over i walked out feeling like i just saw a movie ive already seen many times before ',\n", " ' funny like a clown funny like a clown greetings again from the darkness the first thing to know is that this is not a superhero movie in fact there are no heroes in the movie unless you would like to apply the label to a single mom who lives down the hall from arthur fleck mr fleck lives at home with his invalid mother in a grungy run down apartment he works as a clown for hire dreams of becoming a stand up comedian and depends on social services to supply the 7 medications he takes since being released from arkham state hospital its a bleak existence at a bleak time in a bleak city gotham is in the midst of a garbage workers strike only the super rats are happy political upheaval and a growing chasm between the classes and then it gets worse for arthur the second thing to know is that this is a standalone joker film and one mostly unrelated or not connected to previous projects featuring the colorful clown prince character played and voiced by such memorable actors as cesar romero jack nicholson heath ledger mark hamill jared leto and even zach galifianakis director todd phillips who co wrote the script with scott silver is best known for such extreme comedies as the hangover franchise and old school so hes a bit outside of his usual wheelhouse phillips and silver seem to embrace not just the history of the character but also the look texture and tone of filmmaking from an earlier era the gritty and outcast feel of scorceses taxi driver and the king of comedy is present and so are numerous tributes to familiar joker moments of days gone by three time oscar nominee joaquin phoenix plays arthur fleck and he delivers arthurs slow descent into madness or shall we say further descent its clear from the beginning that arthur views himself as ignored by society while all he wants to do is bring joy and laughter to others and be noticed his daydreams or visions of himself in a better world send a strong message phoenix shows us what full commitment to a role looks like he lost 50 pounds leaving a frame that contorts moves and dances in a manner unlike what weve seen before in fact its a toss up on which shows up more frequently his dances moves or his maniacal pained laughter we are informed arthur suffers from pseudobulbar affect also known as emotional incontinence which causes that creepy laughter to pop up at some inappropriate times of course the comparisons to heath ledgers oscar winning turn in the dark knight are inevitable the roles and films are written quite differently and its safe to say both actors were all in action sequences and special visual effects are both noticeably absent but the violence is sure to shock this is not one for the younger kids no matter how much they enjoy the avengers or wonder woman or any other dc or marvel film this gritty visceral approach is often a tough watch and is much more a character study of mental illness than a costume drama although arthurs clothes and make up are front and center when arthur states i have nothing but bad thoughts we believe him and the sympathetic back story explains a great deal and will likely prove quite controversial phoenix dominates the film as he should and supporting work is provided by robert de niro as murray franklin a tv talk show host in the johnny carson mode zazie beetz deadpool 2 as the single mom neighbor sophie dumond frances conroy as penny fleck arthurs mother brett cullen as a not so empathetic thomas wayne and shea whigham and bill camp as police detectives ill hesitantly mention that dante pereira olson makes a couple of brief appearances as an adolescent bruce wayne and just for fun we get a shot of the young man honing the batpole skills he will use later in life just dont expect any real batman references director phillips delivers a film that looks and feels and sounds much different than other comic book movies cinematographer lawrence sher is a frequent phillips collaborator all 3 hangover movies and the dark look and gritty feel are present in most every shot hildur guonadottir this years emmy winner for chernobyl serves up a foreboding score one that never overwhelms and one that contrasts perfectly with the more traditional songs utilized throughout stephen sondheims send in the clowns jimmy durante singing smile creams white room thats life by frank sinatra and gary glitters familiar rock and roll part 1 and 2 the smile song is especially relevant as its origins can be traced by to charlie chaplins modern times a silent movie classic featured in this film phillips even uses the saul bass designed warner bros logo to open the credits making sure we understand the time period no cell phones etc the film traces arthurs slide into crime a transition that he wasnt seeking and one that he believes was forced upon him his rise as a savior to the working class is secondary to his own journey and the chaos is handled on the perimeters of the film preventing this from becoming a super villain movie keep in mind joker played at venice telluride and toronto three prestigious festivals this is just another thing that sets it apart from others in the genre despite the 1981 time stamp the consistent anti rich message and class disparity is prevalent throughout this appears to be phillips way of including a contemporary theme in a decades old setting and its a cautionary tale that there should be no clown left behind ']" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df['diy_cleaner'][0].tolist()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create BOW using (1) `casual_tokenize` and (2) `Counter`" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [], "source": [ "all_df['bow_v2'] = all_df.apply(lambda x: Counter(casual_tokenize(x['diy_cleaner'])), axis=1)" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokensno_swnum_no_swtopwords_unfiltopwords_fil...v_neu_fd_ufv_pos_fd_ufnltk_negsunigram_featsbigram_featsbigram_feats_negnltk_allbow_noswdiy_cleanerbow_v2
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306[missed, opportunity, excited, see, movie, eve...140[(of, 13), (i, 12), (the, 12), (that, 10), (it...[(movie, 3), (said, 3), (many, 3), (times, 3),......0.8160.143[missed, opportunity, i, had, been, very, exci...[of, i, the, that, it, a, and, to, was, had, b...[missed_opportunity, opportunity_i, i_had, had...[missed_opportunity, opportunity_i, i_had, had...0{'Missed': 1, 'Opportunity': 1, 'I': 14, 'had'...missed opportunity missed opportunity i had ...{'missed': 3, 'opportunity': 3, 'i': 14, 'had'...
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59[phoenix, think, need, super, dark, film, tbh,...25[(was, 4), (a, 3), (that, 3), (for, 2), (there...[(dark, 2), (phoenix, 1), (think, 1), (need, 1......0.7320.171[for, phoenix, i, do, think, there, was, a, ne...[a, for, was, dark, was_NEG, that_NEG, phoenix...[for_phoenix, phoenix_i, i_do, do_think, think...[for_phoenix, phoenix_i, i_do, do_think, think...0{'5/5': 1, 'for': 2, 'Phoenix's': 1, 'acting':...5/5 for phoenix's acting.. 5/5 for phoenix's...{'5/5': 2, 'for': 3, 'phoenix's': 2, 'acting':...
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26[everyone, praised, overrated, movie, overrate...13[(overrated, 2), (movie, 2), (everyone, 1), (p...[(overrated, 2), (movie, 2), (everyone, 1), (p......0.7830.217[everyone, praised, an, overrated, movie, over...[overrated, movie, everyone, praised, an, of, ...[everyone_praised, praised_an, an_overrated, o...[everyone_praised, praised_an, an_overrated, o...0{'Everyone': 1, 'praised': 1, 'an': 1, 'overra...everyone praised an overrated movie. everyon...{'everyone': 2, 'praised': 2, 'an': 2, 'overra...
\n", "

3 rows × 45 columns

\n", "
" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "\n", " tokens num_tokens \\\n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "\n", " no_sw num_no_sw \\\n", "0 [missed, opportunity, excited, see, movie, eve... 140 \n", "1 [phoenix, think, need, super, dark, film, tbh,... 25 \n", "2 [everyone, praised, overrated, movie, overrate... 13 \n", "\n", " topwords_unfil \\\n", "0 [(of, 13), (i, 12), (the, 12), (that, 10), (it... \n", "1 [(was, 4), (a, 3), (that, 3), (for, 2), (there... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "\n", " topwords_fil ... v_neu_fd_uf \\\n", "0 [(movie, 3), (said, 3), (many, 3), (times, 3),... ... 0.816 \n", "1 [(dark, 2), (phoenix, 1), (think, 1), (need, 1... ... 0.732 \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... ... 0.783 \n", "\n", " v_pos_fd_uf nltk_negs \\\n", "0 0.143 [missed, opportunity, i, had, been, very, exci... \n", "1 0.171 [for, phoenix, i, do, think, there, was, a, ne... \n", "2 0.217 [everyone, praised, an, overrated, movie, over... \n", "\n", " unigram_feats \\\n", "0 [of, i, the, that, it, a, and, to, was, had, b... \n", "1 [a, for, was, dark, was_NEG, that_NEG, phoenix... \n", "2 [overrated, movie, everyone, praised, an, of, ... \n", "\n", " bigram_feats \\\n", "0 [missed_opportunity, opportunity_i, i_had, had... \n", "1 [for_phoenix, phoenix_i, i_do, do_think, think... \n", "2 [everyone_praised, praised_an, an_overrated, o... \n", "\n", " bigram_feats_neg nltk_all \\\n", "0 [missed_opportunity, opportunity_i, i_had, had... 0 \n", "1 [for_phoenix, phoenix_i, i_do, do_think, think... 0 \n", "2 [everyone_praised, praised_an, an_overrated, o... 0 \n", "\n", " bow_nosw \\\n", "0 {'Missed': 1, 'Opportunity': 1, 'I': 14, 'had'... \n", "1 {'5/5': 1, 'for': 2, 'Phoenix's': 1, 'acting':... \n", "2 {'Everyone': 1, 'praised': 1, 'an': 1, 'overra... \n", "\n", " diy_cleaner \\\n", "0 missed opportunity missed opportunity i had ... \n", "1 5/5 for phoenix's acting.. 5/5 for phoenix's... \n", "2 everyone praised an overrated movie. everyon... \n", "\n", " bow_v2 \n", "0 {'missed': 3, 'opportunity': 3, 'i': 14, 'had'... \n", "1 {'5/5': 2, 'for': 3, 'phoenix's': 2, 'acting':... \n", "2 {'everyone': 2, 'praised': 2, 'an': 2, 'overra... \n", "\n", "[3 rows x 45 columns]" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df[:3]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Get a Bag of Words from a column (for wordclouds etc!)" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [], "source": [ "def get_bow_from_column(df, column):\n", " all_column_data = ' '.join(df[column].tolist())\n", " all_column_fd = Counter(all_column_data.split())\n", " return all_column_fd\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Get BOW for all, BOW for positive, BOW for negative" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [], "source": [ "big_bow = get_bow_from_column(all_df, 'diy_cleaner')\n", "big_bow_n = get_bow_from_column(all_df[all_df['PoN'] == 'N'], 'diy_cleaner')\n", "big_bow_p = get_bow_from_column(all_df[all_df['PoN'] == 'P'], 'diy_cleaner')" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[('the', 908),\n", " ('a', 466),\n", " ('and', 428),\n", " ('to', 398),\n", " ('of', 375),\n", " ('is', 342),\n", " ('i', 277),\n", " ('it', 268),\n", " ('movie', 256),\n", " ('this', 250)]" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "big_bow_n.most_common(10)" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[('the', 1161),\n", " ('a', 649),\n", " ('and', 586),\n", " ('of', 522),\n", " ('to', 474),\n", " ('is', 449),\n", " ('it', 325),\n", " ('that', 280),\n", " ('in', 273),\n", " ('this', 272)]" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "big_bow_p.most_common(10)" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [], "source": [ "# Wow this is unhelpful. Removing words < 3 characters like Professor Gates does!" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [], "source": [ "def pruner(review):\n", " clean_review = ' '.join([word for word in review.split() if len(word) > 3])\n", " return clean_review\n", "\n", "all_df['pruned'] = all_df.apply(lambda x: pruner(x['diy_cleaner']), axis=1)" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [], "source": [ "big_bow = get_bow_from_column(all_df, 'pruned')\n", "big_bow_n = get_bow_from_column(all_df[all_df['PoN'] == 'N'], 'pruned')\n", "big_bow_p = get_bow_from_column(all_df[all_df['PoN'] == 'P'], 'pruned')" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[('this', 522),\n", " ('movie', 508),\n", " ('that', 493),\n", " ('joker', 440),\n", " ('film', 283),\n", " ('with', 249),\n", " ('from', 176),\n", " ('just', 169),\n", " ('phoenix', 159),\n", " ('character', 153)]" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "big_bow.most_common(10)" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[('movie', 256),\n", " ('this', 250),\n", " ('that', 213),\n", " ('joker', 197),\n", " ('with', 103),\n", " ('just', 97),\n", " ('film', 79),\n", " ('from', 77),\n", " ('about', 75),\n", " ('character', 66)]" ] }, "execution_count": 64, "metadata": {}, "output_type": "execute_result" } ], "source": [ "big_bow_n.most_common(10)" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[('that', 280),\n", " ('this', 272),\n", " ('movie', 252),\n", " ('joker', 243),\n", " ('film', 204),\n", " ('with', 146),\n", " ('phoenix', 108),\n", " ('from', 99),\n", " ('character', 87),\n", " ('joaquin', 80)]" ] }, "execution_count": 65, "metadata": {}, "output_type": "execute_result" } ], "source": [ "big_bow_p.most_common(10)" ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0 missed opportunity missed opportunity been ver...\n", "1 phoenix's acting.. phoenix's acting.. dont thi...\n", "2 everyone praised overrated movie. everyone pra...\n", "3 what idiotic film what idiotic film that phoen...\n", "4 terrible terrible only thing good about this m...\n", " ... \n", "118 nerve-wracking, very uncomfortable nerve-wrack...\n", "119 solid film there glaring problems solid film t...\n", "120 joker endgame joker endgame need more everythi...\n", "121 absolutely absolutely strong fanboy hype rush ...\n", "122 overhyped, it's alright overhyped, it's alrigh...\n", "Name: pruned, Length: 246, dtype: object" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# bow_df = all_df['pruned']\n", "# get_NB(small_df, all_df['PoN'])\n", "all_df['pruned']" ] }, { "cell_type": "code", "execution_count": 67, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
missedopportunitybeenveryexcitedthismovieeversinceheard...informationfollowsstressoverlookofferseasyanswersalikecompanyacceptable
PoN
N3343123111...0000000000
N0010010000...0000000000
N0000013000...0000000000
N0000022000...0000000000
N0000044000...0000000000
\n", "

5 rows × 4249 columns

\n", "
" ], "text/plain": [ " missed opportunity been very excited this movie ever since \\\n", "PoN \n", "N 3 3 4 3 1 2 3 1 1 \n", "N 0 0 1 0 0 1 0 0 0 \n", "N 0 0 0 0 0 1 3 0 0 \n", "N 0 0 0 0 0 2 2 0 0 \n", "N 0 0 0 0 0 4 4 0 0 \n", "\n", " heard ... information follows stress overlook offers easy \\\n", "PoN ... \n", "N 1 ... 0 0 0 0 0 0 \n", "N 0 ... 0 0 0 0 0 0 \n", "N 0 ... 0 0 0 0 0 0 \n", "N 0 ... 0 0 0 0 0 0 \n", "N 0 ... 0 0 0 0 0 0 \n", "\n", " answers alike company acceptable \n", "PoN \n", "N 0 0 0 0 \n", "N 0 0 0 0 \n", "N 0 0 0 0 \n", "N 0 0 0 0 \n", "N 0 0 0 0 \n", "\n", "[5 rows x 4249 columns]" ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df['bow_v3'] = all_df.apply(lambda x: Counter(casual_tokenize(x['pruned'])), axis=1)\n", "new_df = pd.DataFrame(all_df['bow_v3'].tolist(), all_df['PoN'])\n", "new_df = new_df.fillna(0).astype(int)\n", "new_df[:5]" ] }, { "cell_type": "code", "execution_count": 68, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.6486486486486487\n" ] } ], "source": [ "get_NB(new_df, new_df.index)" ] }, { "cell_type": "code", "execution_count": 69, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
missedopportunityihadbeenveryexcitedtoseethis...stressoverlook>offerseasyanswersalikecompanytilacceptable
PoN
N33144431622...0000000000
N0010100111...0000000000
N0000000101...0000000000
N0010000202...0000000000
N0020000404...0000000000
\n", "

5 rows × 4530 columns

\n", "
" ], "text/plain": [ " missed opportunity i had been very excited to see this ... \\\n", "PoN ... \n", "N 3 3 14 4 4 3 1 6 2 2 ... \n", "N 0 0 1 0 1 0 0 1 1 1 ... \n", "N 0 0 0 0 0 0 0 1 0 1 ... \n", "N 0 0 1 0 0 0 0 2 0 2 ... \n", "N 0 0 2 0 0 0 0 4 0 4 ... \n", "\n", " stress overlook > offers easy answers alike company til \\\n", "PoN \n", "N 0 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 0 \n", "\n", " acceptable \n", "PoN \n", "N 0 \n", "N 0 \n", "N 0 \n", "N 0 \n", "N 0 \n", "\n", "[5 rows x 4530 columns]" ] }, "execution_count": 69, "metadata": {}, "output_type": "execute_result" } ], "source": [ "new_df = pd.DataFrame(all_df['bow_v2'].tolist(), all_df['PoN'])\n", "new_df = new_df.fillna(0).astype(int)\n", "new_df[:5]" ] }, { "cell_type": "code", "execution_count": 70, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.6486486486486487\n" ] } ], "source": [ "get_NB(new_df, new_df.index)" ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
MissedOpportunityIhadbeenveryexcitedtoseethis...StrongiqDeffcomparableknightcompensatecompanyup.Movietilacceptable
PoN
N11144431622...0000000000
N0010100111...0000000000
N0000000101...0000000000
N0010000201...0000000000
N0010000404...0000000000
\n", "

5 rows × 6168 columns

\n", "
" ], "text/plain": [ " Missed Opportunity I had been very excited to see this ... \\\n", "PoN ... \n", "N 1 1 14 4 4 3 1 6 2 2 ... \n", "N 0 0 1 0 1 0 0 1 1 1 ... \n", "N 0 0 0 0 0 0 0 1 0 1 ... \n", "N 0 0 1 0 0 0 0 2 0 1 ... \n", "N 0 0 1 0 0 0 0 4 0 4 ... \n", "\n", " Strong iq Deff comparable knight compensate company up.Movie til \\\n", "PoN \n", "N 0 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 0 \n", "\n", " acceptable \n", "PoN \n", "N 0 \n", "N 0 \n", "N 0 \n", "N 0 \n", "N 0 \n", "\n", "[5 rows x 6168 columns]" ] }, "execution_count": 71, "metadata": {}, "output_type": "execute_result" } ], "source": [ "new_df = pd.DataFrame(all_df['bow_nosw'].tolist(), all_df['PoN'])\n", "new_df = new_df.fillna(0).astype(int)\n", "new_df[:5]" ] }, { "cell_type": "code", "execution_count": 72, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.6756756756756757\n" ] } ], "source": [ "get_NB(new_df, new_df.index)" ] }, { "cell_type": "code", "execution_count": 73, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
missedopportunityihadbeenveryexcitedtoseethis...paced_NEGannoying_NEGdeff_NEGcomparable_NEGcompensate_NEGmarketingcompanyclimaxstrangeacceptable
PoN
N22124431622...0000000000
N0010100101...0000000000
N0000000101...0000000000
N0010000001...0000000000
N0010000001...0000000000
\n", "

5 rows × 6406 columns

\n", "
" ], "text/plain": [ " missed opportunity i had been very excited to see this ... \\\n", "PoN ... \n", "N 2 2 12 4 4 3 1 6 2 2 ... \n", "N 0 0 1 0 1 0 0 1 0 1 ... \n", "N 0 0 0 0 0 0 0 1 0 1 ... \n", "N 0 0 1 0 0 0 0 0 0 1 ... \n", "N 0 0 1 0 0 0 0 0 0 1 ... \n", "\n", " paced_NEG annoying_NEG deff_NEG comparable_NEG compensate_NEG \\\n", "PoN \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "\n", " marketing company climax strange acceptable \n", "PoN \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "\n", "[5 rows x 6406 columns]" ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df['bow_v4'] = all_df.apply(lambda x: Counter(casual_tokenize(' '.join(x['nltk_negs']))), axis=1)\n", "new_df = pd.DataFrame(all_df['bow_v4'].tolist(), all_df['PoN'])\n", "new_df = new_df.fillna(0).astype(int)\n", "new_df[:5]" ] }, { "cell_type": "code", "execution_count": 74, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.6351351351351351\n" ] } ], "source": [ "get_NB(new_df, new_df.index)" ] }, { "cell_type": "code", "execution_count": 75, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
missed_opportunityopportunity_ii_hadhad_beenbeen_veryvery_excitedexcited_toto_seesee_thisthis_movie...slow_dohappen_themiddle_andclimax_cinematographyjoker_actingfine_ifforced_atjust_strangestrange_butbut_acceptable
PoN
N2132111112...0000000000
N0000000000...0000000000
N0000000000...0000000000
N0000000000...0000000000
N0000000004...0000000000
\n", "

5 rows × 24658 columns

\n", "
" ], "text/plain": [ " missed_opportunity opportunity_i i_had had_been been_very \\\n", "PoN \n", "N 2 1 3 2 1 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "\n", " very_excited excited_to to_see see_this this_movie ... slow_do \\\n", "PoN ... \n", "N 1 1 1 1 2 ... 0 \n", "N 0 0 0 0 0 ... 0 \n", "N 0 0 0 0 0 ... 0 \n", "N 0 0 0 0 0 ... 0 \n", "N 0 0 0 0 4 ... 0 \n", "\n", " happen_the middle_and climax_cinematography joker_acting fine_if \\\n", "PoN \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "N 0 0 0 0 0 \n", "\n", " forced_at just_strange strange_but but_acceptable \n", "PoN \n", "N 0 0 0 0 \n", "N 0 0 0 0 \n", "N 0 0 0 0 \n", "N 0 0 0 0 \n", "N 0 0 0 0 \n", "\n", "[5 rows x 24658 columns]" ] }, "execution_count": 75, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df['bow_v5'] = all_df.apply(lambda x: Counter(casual_tokenize(' '.join(x['bigram_feats']))), axis=1)\n", "new_df = pd.DataFrame(all_df['bow_v5'].tolist(), all_df['PoN'])\n", "new_df = new_df.fillna(0).astype(int)\n", "new_df[:5]" ] }, { "cell_type": "code", "execution_count": 76, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.581081081081081\n" ] } ], "source": [ "get_NB(new_df, new_df.index)" ] }, { "cell_type": "code", "execution_count": 77, "metadata": {}, "outputs": [], "source": [ "all_bigrams = []\n", "for review in all_df['bigram_feats']:\n", " for bigram in review:\n", " all_bigrams.append(bigram)" ] }, { "cell_type": "code", "execution_count": 78, "metadata": {}, "outputs": [], "source": [ "bigram_count = Counter(all_bigrams)" ] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[('of_the', 286),\n", " ('the_joker', 217),\n", " ('this_movie', 162),\n", " ('in_the', 157),\n", " ('the_movie', 154),\n", " ('the_film', 129),\n", " ('is_a', 124),\n", " ('to_be', 116),\n", " ('to_the', 113),\n", " ('joker_is', 98)]" ] }, "execution_count": 79, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bigram_count.most_common(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Returning to Most Frequent Words\n", "What can we learn from the intersection of \"positive\" and \"negative\" words? \n", "Essentially creating a new \"stopword\" list of \"words that frequently occur in both lists" ] }, { "cell_type": "code", "execution_count": 80, "metadata": {}, "outputs": [], "source": [ "big_bow = get_bow_from_column(all_df, 'pruned')\n", "big_bow_n = get_bow_from_column(all_df[all_df['PoN'] == 'N'], 'pruned')\n", "big_bow_p = get_bow_from_column(all_df[all_df['PoN'] == 'P'], 'pruned')" ] }, { "cell_type": "code", "execution_count": 81, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['movie',\n", " 'this',\n", " 'that',\n", " 'joker',\n", " 'with',\n", " 'just',\n", " 'film',\n", " 'from',\n", " 'about',\n", " 'character']" ] }, "execution_count": 81, "metadata": {}, "output_type": "execute_result" } ], "source": [ "most_common_neg = [word[0] for word in big_bow_n.most_common(100)]\n", "most_common_neg[:10]" ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['that',\n", " 'this',\n", " 'movie',\n", " 'joker',\n", " 'film',\n", " 'with',\n", " 'phoenix',\n", " 'from',\n", " 'character',\n", " 'joaquin']" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" } ], "source": [ "most_common_pos = [word[0] for word in big_bow_p.most_common(100)]\n", "most_common_pos[:10]" ] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Unique values in array1 that are not in array2:\n" ] }, { "data": { "text/plain": [ "array(['after', 'before', 'boring', 'characters', 'didnt', 'different',\n", " 'down', 'everyone', 'felt', 'give', 'hype', 'interesting', 'look',\n", " 'love', 'never', 'over', 'overrated', 'part', 'phoenixs',\n", " 'reviews', 'same', 'their', 'them', 'then', 'things', 'want',\n", " 'where', 'without'], dtype='\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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokensno_swnum_no_swtopwords_unfiltopwords_fil...bigram_feats_negnltk_allbow_noswdiy_cleanerbow_v2prunedbow_v3bow_v4bow_v5no_shared_words
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306[missed, opportunity, excited, see, movie, eve...140[(of, 13), (i, 12), (the, 12), (that, 10), (it...[(movie, 3), (said, 3), (many, 3), (times, 3),......[missed_opportunity, opportunity_i, i_had, had...0{'Missed': 1, 'Opportunity': 1, 'I': 14, 'had'...missed opportunity missed opportunity i had ...{'missed': 3, 'opportunity': 3, 'i': 14, 'had'...missed opportunity missed opportunity been ver...{'missed': 3, 'opportunity': 3, 'been': 4, 've...{'missed': 2, 'opportunity': 2, 'i': 12, 'had'...{'missed_opportunity': 2, 'opportunity_i': 1, ...[missed, opportunity, i, had, excited, to, see...
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59[phoenix, think, need, super, dark, film, tbh,...25[(was, 4), (a, 3), (that, 3), (for, 2), (there...[(dark, 2), (phoenix, 1), (think, 1), (need, 1......[for_phoenix, phoenix_i, i_do, do_think, think...0{'5/5': 1, 'for': 2, 'Phoenix's': 1, 'acting':...5/5 for phoenix's acting.. 5/5 for phoenix's...{'5/5': 2, 'for': 3, 'phoenix's': 2, 'acting':...phoenix's acting.. phoenix's acting.. dont thi...{'phoenix's': 2, 'acting': 2, '..': 2, 'dont':...{'for': 2, 'phoenix': 1, 'i': 1, 'do': 1, 'thi...{'for_phoenix': 1, 'phoenix_i': 1, 'i_do': 1, ...[for, i, do, was, a, for, a, tbh, is, a, dc, h...
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26[everyone, praised, overrated, movie, overrate...13[(overrated, 2), (movie, 2), (everyone, 1), (p...[(overrated, 2), (movie, 2), (everyone, 1), (p......[everyone_praised, praised_an, an_overrated, o...0{'Everyone': 1, 'praised': 1, 'an': 1, 'overra...everyone praised an overrated movie. everyon...{'everyone': 2, 'praised': 2, 'an': 2, 'overra...everyone praised overrated movie. everyone pra...{'everyone': 2, 'praised': 2, 'overrated': 3, ...{'everyone': 1, 'praised': 1, 'an': 1, 'overra...{'everyone_praised': 1, 'praised_an': 1, 'an_o...[praised, an, of, all, the, are, out, to, be, ...
3What idiotic FIlm\\nI can say that Phoenix is ...N[ What idiotic FIlm\\nI can say that Phoenix is...4[what, idiotic, film, i, can, say, that, phoen...66[idiotic, film, say, phoenix, master, actor, b...36[(and, 4), (is, 2), (make, 2), (movie, 2), (to...[(make, 2), (movie, 2), (idiotic, 1), (film, 1......[what_idiotic, idiotic_film, film_i, i_can, ca...0{'What': 1, 'idiotic': 1, 'FIlm': 1, 'I': 1, '...what idiotic film what idiotic film i can sa...{'what': 2, 'idiotic': 2, 'film': 2, 'i': 1, '...what idiotic film what idiotic film that phoen...{'what': 2, 'idiotic': 2, 'film': 2, 'that': 1...{'what': 1, 'idiotic': 1, 'film': 1, 'i': 1, '...{'what_idiotic': 1, 'idiotic_film': 1, 'film_i...[idiotic, i, can, say, is, master, bt, not, a,...
4Terrible\\nThe only thing good about this movi...N[ Terrible\\nThe only thing good about this mov...9[terrible, the, only, thing, good, about, this...124[terrible, thing, good, movie, phoenixs, actin...65[(the, 5), (this, 4), (movie, 4), (it, 4), (to...[(movie, 4), (terrible, 3), (acting, 3), (good......[terrible_the, the_only, only_thing, thing_goo...0{'Terrible': 1, 'The': 2, 'only': 1, 'thing': ...terrible terrible the only thing good about ...{'terrible': 4, 'the': 5, 'only': 1, 'thing': ...terrible terrible only thing good about this m...{'terrible': 4, 'only': 1, 'thing': 1, 'good':...{'terrible': 1, 'the': 1, 'only': 1, 'thing': ...{'terrible_the': 1, 'the_only': 1, 'only_thing...[terrible, the, is, but, i, and, for, entertai...
\n", "

5 rows × 50 columns

\n", "" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "3 What idiotic FIlm\\nI can say that Phoenix is ... N \n", "4 Terrible\\nThe only thing good about this movi... N \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "3 [ What idiotic FIlm\\nI can say that Phoenix is... 4 \n", "4 [ Terrible\\nThe only thing good about this mov... 9 \n", "\n", " tokens num_tokens \\\n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "3 [what, idiotic, film, i, can, say, that, phoen... 66 \n", "4 [terrible, the, only, thing, good, about, this... 124 \n", "\n", " no_sw num_no_sw \\\n", "0 [missed, opportunity, excited, see, movie, eve... 140 \n", "1 [phoenix, think, need, super, dark, film, tbh,... 25 \n", "2 [everyone, praised, overrated, movie, overrate... 13 \n", "3 [idiotic, film, say, phoenix, master, actor, b... 36 \n", "4 [terrible, thing, good, movie, phoenixs, actin... 65 \n", "\n", " topwords_unfil \\\n", "0 [(of, 13), (i, 12), (the, 12), (that, 10), (it... \n", "1 [(was, 4), (a, 3), (that, 3), (for, 2), (there... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "3 [(and, 4), (is, 2), (make, 2), (movie, 2), (to... \n", "4 [(the, 5), (this, 4), (movie, 4), (it, 4), (to... \n", "\n", " topwords_fil ... \\\n", "0 [(movie, 3), (said, 3), (many, 3), (times, 3),... ... \n", "1 [(dark, 2), (phoenix, 1), (think, 1), (need, 1... ... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... ... \n", "3 [(make, 2), (movie, 2), (idiotic, 1), (film, 1... ... \n", "4 [(movie, 4), (terrible, 3), (acting, 3), (good... ... \n", "\n", " bigram_feats_neg nltk_all \\\n", "0 [missed_opportunity, opportunity_i, i_had, had... 0 \n", "1 [for_phoenix, phoenix_i, i_do, do_think, think... 0 \n", "2 [everyone_praised, praised_an, an_overrated, o... 0 \n", "3 [what_idiotic, idiotic_film, film_i, i_can, ca... 0 \n", "4 [terrible_the, the_only, only_thing, thing_goo... 0 \n", "\n", " bow_nosw \\\n", "0 {'Missed': 1, 'Opportunity': 1, 'I': 14, 'had'... \n", "1 {'5/5': 1, 'for': 2, 'Phoenix's': 1, 'acting':... \n", "2 {'Everyone': 1, 'praised': 1, 'an': 1, 'overra... \n", "3 {'What': 1, 'idiotic': 1, 'FIlm': 1, 'I': 1, '... \n", "4 {'Terrible': 1, 'The': 2, 'only': 1, 'thing': ... \n", "\n", " diy_cleaner \\\n", "0 missed opportunity missed opportunity i had ... \n", "1 5/5 for phoenix's acting.. 5/5 for phoenix's... \n", "2 everyone praised an overrated movie. everyon... \n", "3 what idiotic film what idiotic film i can sa... \n", "4 terrible terrible the only thing good about ... \n", "\n", " bow_v2 \\\n", "0 {'missed': 3, 'opportunity': 3, 'i': 14, 'had'... \n", "1 {'5/5': 2, 'for': 3, 'phoenix's': 2, 'acting':... \n", "2 {'everyone': 2, 'praised': 2, 'an': 2, 'overra... \n", "3 {'what': 2, 'idiotic': 2, 'film': 2, 'i': 1, '... \n", "4 {'terrible': 4, 'the': 5, 'only': 1, 'thing': ... \n", "\n", " pruned \\\n", "0 missed opportunity missed opportunity been ver... \n", "1 phoenix's acting.. phoenix's acting.. dont thi... \n", "2 everyone praised overrated movie. everyone pra... \n", "3 what idiotic film what idiotic film that phoen... \n", "4 terrible terrible only thing good about this m... \n", "\n", " bow_v3 \\\n", "0 {'missed': 3, 'opportunity': 3, 'been': 4, 've... \n", "1 {'phoenix's': 2, 'acting': 2, '..': 2, 'dont':... \n", "2 {'everyone': 2, 'praised': 2, 'overrated': 3, ... \n", "3 {'what': 2, 'idiotic': 2, 'film': 2, 'that': 1... \n", "4 {'terrible': 4, 'only': 1, 'thing': 1, 'good':... \n", "\n", " bow_v4 \\\n", "0 {'missed': 2, 'opportunity': 2, 'i': 12, 'had'... \n", "1 {'for': 2, 'phoenix': 1, 'i': 1, 'do': 1, 'thi... \n", "2 {'everyone': 1, 'praised': 1, 'an': 1, 'overra... \n", "3 {'what': 1, 'idiotic': 1, 'film': 1, 'i': 1, '... \n", "4 {'terrible': 1, 'the': 1, 'only': 1, 'thing': ... \n", "\n", " bow_v5 \\\n", "0 {'missed_opportunity': 2, 'opportunity_i': 1, ... \n", "1 {'for_phoenix': 1, 'phoenix_i': 1, 'i_do': 1, ... \n", "2 {'everyone_praised': 1, 'praised_an': 1, 'an_o... \n", "3 {'what_idiotic': 1, 'idiotic_film': 1, 'film_i... \n", "4 {'terrible_the': 1, 'the_only': 1, 'only_thing... \n", "\n", " no_shared_words \n", "0 [missed, opportunity, i, had, excited, to, see... \n", "1 [for, i, do, was, a, for, a, tbh, is, a, dc, h... \n", "2 [praised, an, of, all, the, are, out, to, be, ... \n", "3 [idiotic, i, can, say, is, master, bt, not, a,... \n", "4 [terrible, the, is, but, i, and, for, entertai... \n", "\n", "[5 rows x 50 columns]" ] }, "execution_count": 93, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df[:5]" ] }, { "cell_type": "code", "execution_count": 94, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
missedopportunityihadexcitedtoseehearditand...overlookeasyanswersalikeiqdeffcomparablecompensatecompanyacceptable
PoN
N22124162197...0000000000
N0010011021...0000000000
N0000010010...0000000000
N0010020004...0000000000
N0020040043...0000000000
\n", "

5 rows × 4506 columns

\n", "
" ], "text/plain": [ " missed opportunity i had excited to see heard it and ... \\\n", "PoN ... \n", "N 2 2 12 4 1 6 2 1 9 7 ... \n", "N 0 0 1 0 0 1 1 0 2 1 ... \n", "N 0 0 0 0 0 1 0 0 1 0 ... \n", "N 0 0 1 0 0 2 0 0 0 4 ... \n", "N 0 0 2 0 0 4 0 0 4 3 ... \n", "\n", " overlook easy answers alike iq deff comparable compensate \\\n", "PoN \n", "N 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 \n", "\n", " company acceptable \n", "PoN \n", "N 0 0 \n", "N 0 0 \n", "N 0 0 \n", "N 0 0 \n", "N 0 0 \n", "\n", "[5 rows x 4506 columns]" ] }, "execution_count": 94, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df['bow_v6'] = all_df.apply(lambda x: Counter(casual_tokenize(' '.join(x['no_shared_words']))), axis=1)\n", "new_df = pd.DataFrame(all_df['bow_v6'].tolist(), all_df['PoN'])\n", "new_df = new_df.fillna(0).astype(int)\n", "new_df[:5]" ] }, { "cell_type": "code", "execution_count": 95, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.7027027027027027\n" ] } ], "source": [ "get_NB(new_df, new_df.index)" ] }, { "cell_type": "code", "execution_count": 96, "metadata": {}, "outputs": [], "source": [ "def get_only_polarized_v2(tokens):\n", "# return [token for token in tokens if token in common_1000[5]] # 54\n", "# return [token for token in tokens if token not in common_1000[5]] # 59\n", "# return [token for token in tokens if token not in common_1000[6]] # 60\n", " return [token for token in tokens if token not in common_1000[6]] # 60\n", "\n", "all_df['no_neg_words'] = all_df.apply(lambda x: get_only_polarized_v2(x['tokens']), axis=1)" ] }, { "cell_type": "code", "execution_count": 97, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
missedopportunityihadbeenveryexcitedtoseethis...overlookeasyanswersalikeiqdeffcomparablecompensatecompanyacceptable
PoN
N22124431622...0000000000
N0010100111...0000000000
N0000000101...0000000000
N0010000201...0000000000
N0020000404...0000000000
\n", "

5 rows × 4388 columns

\n", "
" ], "text/plain": [ " missed opportunity i had been very excited to see this ... \\\n", "PoN ... \n", "N 2 2 12 4 4 3 1 6 2 2 ... \n", "N 0 0 1 0 1 0 0 1 1 1 ... \n", "N 0 0 0 0 0 0 0 1 0 1 ... \n", "N 0 0 1 0 0 0 0 2 0 1 ... \n", "N 0 0 2 0 0 0 0 4 0 4 ... \n", "\n", " overlook easy answers alike iq deff comparable compensate \\\n", "PoN \n", "N 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 \n", "N 0 0 0 0 0 0 0 0 \n", "\n", " company acceptable \n", "PoN \n", "N 0 0 \n", "N 0 0 \n", "N 0 0 \n", "N 0 0 \n", "N 0 0 \n", "\n", "[5 rows x 4388 columns]" ] }, "execution_count": 97, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df['bow_v7'] = all_df.apply(lambda x: Counter(casual_tokenize(' '.join(x['no_neg_words']))), axis=1)\n", "new_df = pd.DataFrame(all_df['bow_v7'].tolist(), all_df['PoN'])\n", "new_df = new_df.fillna(0).astype(int)\n", "new_df[:5]" ] }, { "cell_type": "code", "execution_count": 98, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.6081081081081081\n" ] } ], "source": [ "get_NB(new_df, new_df.index)" ] }, { "cell_type": "code", "execution_count": 99, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\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", " \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", " \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", " \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", "
0PoNsentencesnum_sentencestokensnum_tokensno_swnum_no_swtopwords_unfiltopwords_fil...diy_cleanerbow_v2prunedbow_v3bow_v4bow_v5no_shared_wordsbow_v6no_neg_wordsbow_v7
0Missed Opportunity\\nI had been very excited t...N[ Missed Opportunity\\nI had been very excited ...1[missed, opportunity, i, had, been, very, exci...306[missed, opportunity, excited, see, movie, eve...140[(of, 13), (i, 12), (the, 12), (that, 10), (it...[(movie, 3), (said, 3), (many, 3), (times, 3),......missed opportunity missed opportunity i had ...{'missed': 3, 'opportunity': 3, 'i': 14, 'had'...missed opportunity missed opportunity been ver...{'missed': 3, 'opportunity': 3, 'been': 4, 've...{'missed': 2, 'opportunity': 2, 'i': 12, 'had'...{'missed_opportunity': 2, 'opportunity_i': 1, ...[missed, opportunity, i, had, excited, to, see...{'missed': 2, 'opportunity': 2, 'i': 12, 'had'...[missed, opportunity, i, had, been, very, exci...{'missed': 2, 'opportunity': 2, 'i': 12, 'had'...
15/5 for Phoenix's acting..\\nI don't think the...N[ 5/5 for Phoenix's acting.., I don't think th...5[for, phoenix, i, do, think, there, was, a, ne...59[phoenix, think, need, super, dark, film, tbh,...25[(was, 4), (a, 3), (that, 3), (for, 2), (there...[(dark, 2), (phoenix, 1), (think, 1), (need, 1......5/5 for phoenix's acting.. 5/5 for phoenix's...{'5/5': 2, 'for': 3, 'phoenix's': 2, 'acting':...phoenix's acting.. phoenix's acting.. dont thi...{'phoenix's': 2, 'acting': 2, '..': 2, 'dont':...{'for': 2, 'phoenix': 1, 'i': 1, 'do': 1, 'thi...{'for_phoenix': 1, 'phoenix_i': 1, 'i_do': 1, ...[for, i, do, was, a, for, a, tbh, is, a, dc, h...{'for': 2, 'i': 1, 'do': 1, 'was': 4, 'a': 3, ...[for, phoenix, i, do, think, there, was, a, ne...{'for': 2, 'phoenix': 1, 'i': 1, 'do': 1, 'thi...
2Everyone praised an overrated movie.\\nOverrat...N[ Everyone praised an overrated movie., Overra...2[everyone, praised, an, overrated, movie, over...26[everyone, praised, overrated, movie, overrate...13[(overrated, 2), (movie, 2), (everyone, 1), (p...[(overrated, 2), (movie, 2), (everyone, 1), (p......everyone praised an overrated movie. everyon...{'everyone': 2, 'praised': 2, 'an': 2, 'overra...everyone praised overrated movie. everyone pra...{'everyone': 2, 'praised': 2, 'overrated': 3, ...{'everyone': 1, 'praised': 1, 'an': 1, 'overra...{'everyone_praised': 1, 'praised_an': 1, 'an_o...[praised, an, of, all, the, are, out, to, be, ...{'praised': 1, 'an': 1, 'of': 1, 'all': 1, 'th...[everyone, praised, an, overrated, movie, over...{'everyone': 1, 'praised': 1, 'an': 1, 'overra...
3What idiotic FIlm\\nI can say that Phoenix is ...N[ What idiotic FIlm\\nI can say that Phoenix is...4[what, idiotic, film, i, can, say, that, phoen...66[idiotic, film, say, phoenix, master, actor, b...36[(and, 4), (is, 2), (make, 2), (movie, 2), (to...[(make, 2), (movie, 2), (idiotic, 1), (film, 1......what idiotic film what idiotic film i can sa...{'what': 2, 'idiotic': 2, 'film': 2, 'i': 1, '...what idiotic film what idiotic film that phoen...{'what': 2, 'idiotic': 2, 'film': 2, 'that': 1...{'what': 1, 'idiotic': 1, 'film': 1, 'i': 1, '...{'what_idiotic': 1, 'idiotic_film': 1, 'film_i...[idiotic, i, can, say, is, master, bt, not, a,...{'idiotic': 1, 'i': 1, 'can': 1, 'say': 1, 'is...[what, idiotic, film, i, can, say, that, phoen...{'what': 1, 'idiotic': 1, 'film': 1, 'i': 1, '...
4Terrible\\nThe only thing good about this movi...N[ Terrible\\nThe only thing good about this mov...9[terrible, the, only, thing, good, about, this...124[terrible, thing, good, movie, phoenixs, actin...65[(the, 5), (this, 4), (movie, 4), (it, 4), (to...[(movie, 4), (terrible, 3), (acting, 3), (good......terrible terrible the only thing good about ...{'terrible': 4, 'the': 5, 'only': 1, 'thing': ...terrible terrible only thing good about this m...{'terrible': 4, 'only': 1, 'thing': 1, 'good':...{'terrible': 1, 'the': 1, 'only': 1, 'thing': ...{'terrible_the': 1, 'the_only': 1, 'only_thing...[terrible, the, is, but, i, and, for, entertai...{'terrible': 3, 'the': 5, 'is': 2, 'but': 3, '...[terrible, the, only, thing, good, about, this...{'terrible': 3, 'the': 5, 'only': 1, 'thing': ...
..................................................................
118Nerve-wracking, but in very uncomfortable way...P[ Nerve-wracking, but in very uncomfortable wa...8[but, in, very, uncomfortable, way, why, every...57[uncomfortable, way, everybody, keep, saying, ...33[(it, 4), (a, 4), (movie, 3), (in, 2), (keep, ...[(movie, 3), (keep, 2), (saying, 2), (psycho, ......nerve-wracking, but in very uncomfortable way...{'nerve-wracking': 2, ',': 2, 'but': 2, 'in': ...nerve-wracking, very uncomfortable nerve-wrack...{'nerve-wracking': 2, ',': 2, 'very': 2, 'unco...{'but': 1, 'in': 1, 'very': 1, 'uncomfortable'...{'but_in': 1, 'in_very': 1, 'very_uncomfortabl...[but, in, way, why, everybody, keep, it, a, it...{'but': 1, 'in': 2, 'way': 1, 'why': 1, 'every...[but, in, very, uncomfortable, way, why, every...{'but': 1, 'in': 2, 'very': 1, 'uncomfortable'...
119Solid film but there are glaring problems\\nOk...P[ Solid film but there are glaring problems\\nO...13[solid, film, but, there, are, glaring, proble...628[solid, film, glaring, problems, okay, first, ...292[(the, 35), (to, 22), (it, 16), (and, 16), (i,...[(joker, 6), (movie, 5), (film, 4), (like, 4),......solid film but there are glaring problems so...{'solid': 2, 'film': 5, 'but': 6, 'there': 4, ...solid film there glaring problems solid film t...{'solid': 2, 'film': 5, 'there': 4, 'glaring':...{'solid': 1, 'film': 3, 'but': 4, 'there': 2, ...{'solid_film': 1, 'film_but': 1, 'but_there': ...[solid, but, are, glaring, problems, okay, i, ...{'solid': 1, 'but': 5, 'are': 4, 'glaring': 1,...[film, but, there, are, glaring, problems, oka...{'film': 4, 'but': 5, 'there': 3, 'are': 4, 'g...
120Joker > Endgame\\nNeed I say more? Everything ...P[ Joker > Endgame\\nNeed I say more?, Everythin...5[joker, endgame, need, i, say, more, everythin...83[joker, endgame, need, say, everything, movie,...53[(joker, 3), (movie, 3), (in, 3), (it, 3), (th...[(joker, 3), (movie, 3), (masterful, 2), (awes......joker > endgame joker > endgame need i say m...{'joker': 4, '>': 2, 'endgame': 2, 'need': 1, ...joker endgame joker endgame need more everythi...{'joker': 4, 'endgame': 2, 'need': 1, 'more': ...{'joker': 2, 'endgame': 1, 'need': 1, 'i': 1, ...{'joker_endgame': 1, 'endgame_need': 1, 'need_...[endgame, i, say, is, masterful, in, single, w...{'endgame': 1, 'i': 1, 'say': 1, 'is': 2, 'mas...[joker, need, i, say, more, everything, about,...{'joker': 3, 'need': 1, 'i': 1, 'say': 1, 'mor...
121Absolutely not a 10\\nStrong fanboy and hype r...P[ Absolutely not a 10\\nStrong fanboy and hype ...5[absolutely, not, a, strong, fanboy, and, hype...81[absolutely, strong, fanboy, hype, rush, going...36[(the, 7), (is, 6), (a, 4), (fanboy, 2), (and,...[(fanboy, 2), (movie, 2), (absolutely, 1), (st......absolutely not a 10 absolutely not a 10 stro...{'absolutely': 2, 'not': 2, 'a': 2, '10': 2, '...absolutely absolutely strong fanboy hype rush ...{'absolutely': 2, 'strong': 1, 'fanboy': 1, 'h...{'absolutely': 1, 'not': 1, 'a_NEG': 4, 'stron...{'absolutely_not': 1, 'not_a': 1, 'a_strong': ...[not, a, strong, fanboy, and, rush, on, the, i...{'not': 1, 'a': 4, 'strong': 1, 'fanboy': 2, '...[absolutely, not, a, fanboy, and, hype, rush, ...{'absolutely': 1, 'not': 1, 'a': 4, 'fanboy': ...
122Overhyped, but it's alright\\nIt's a good film...P[ Overhyped, but it's alright\\nIt's a good fil...3[overhyped, but, it, alright, it, a, good, fil...60[overhyped, alright, good, film, see, like, ma...31[(it, 4), (but, 3), (a, 3), (good, 2), (do, 2)...[(good, 2), (overhyped, 1), (alright, 1), (fil......overhyped, but it's alright overhyped, but i...{'overhyped': 2, ',': 2, 'but': 4, 'it's': 2, ...overhyped, it's alright overhyped, it's alrigh...{'overhyped': 2, ',': 2, 'it's': 2, 'alright':...{'overhyped': 1, 'but': 3, 'it': 4, 'alright':...{'overhyped_but': 1, 'but_it': 1, 'it_alright'...[but, it, alright, it, a, but, i, do, see, as,...{'but': 3, 'it': 4, 'alright': 1, 'a': 3, 'i':...[overhyped, but, it, alright, it, a, good, fil...{'overhyped': 1, 'but': 3, 'it': 4, 'alright':...
\n", "

246 rows × 53 columns

\n", "
" ], "text/plain": [ " 0 PoN \\\n", "0 Missed Opportunity\\nI had been very excited t... N \n", "1 5/5 for Phoenix's acting..\\nI don't think the... N \n", "2 Everyone praised an overrated movie.\\nOverrat... N \n", "3 What idiotic FIlm\\nI can say that Phoenix is ... N \n", "4 Terrible\\nThe only thing good about this movi... N \n", ".. ... .. \n", "118 Nerve-wracking, but in very uncomfortable way... P \n", "119 Solid film but there are glaring problems\\nOk... P \n", "120 Joker > Endgame\\nNeed I say more? Everything ... P \n", "121 Absolutely not a 10\\nStrong fanboy and hype r... P \n", "122 Overhyped, but it's alright\\nIt's a good film... P \n", "\n", " sentences num_sentences \\\n", "0 [ Missed Opportunity\\nI had been very excited ... 1 \n", "1 [ 5/5 for Phoenix's acting.., I don't think th... 5 \n", "2 [ Everyone praised an overrated movie., Overra... 2 \n", "3 [ What idiotic FIlm\\nI can say that Phoenix is... 4 \n", "4 [ Terrible\\nThe only thing good about this mov... 9 \n", ".. ... ... \n", "118 [ Nerve-wracking, but in very uncomfortable wa... 8 \n", "119 [ Solid film but there are glaring problems\\nO... 13 \n", "120 [ Joker > Endgame\\nNeed I say more?, Everythin... 5 \n", "121 [ Absolutely not a 10\\nStrong fanboy and hype ... 5 \n", "122 [ Overhyped, but it's alright\\nIt's a good fil... 3 \n", "\n", " tokens num_tokens \\\n", "0 [missed, opportunity, i, had, been, very, exci... 306 \n", "1 [for, phoenix, i, do, think, there, was, a, ne... 59 \n", "2 [everyone, praised, an, overrated, movie, over... 26 \n", "3 [what, idiotic, film, i, can, say, that, phoen... 66 \n", "4 [terrible, the, only, thing, good, about, this... 124 \n", ".. ... ... \n", "118 [but, in, very, uncomfortable, way, why, every... 57 \n", "119 [solid, film, but, there, are, glaring, proble... 628 \n", "120 [joker, endgame, need, i, say, more, everythin... 83 \n", "121 [absolutely, not, a, strong, fanboy, and, hype... 81 \n", "122 [overhyped, but, it, alright, it, a, good, fil... 60 \n", "\n", " no_sw num_no_sw \\\n", "0 [missed, opportunity, excited, see, movie, eve... 140 \n", "1 [phoenix, think, need, super, dark, film, tbh,... 25 \n", "2 [everyone, praised, overrated, movie, overrate... 13 \n", "3 [idiotic, film, say, phoenix, master, actor, b... 36 \n", "4 [terrible, thing, good, movie, phoenixs, actin... 65 \n", ".. ... ... \n", "118 [uncomfortable, way, everybody, keep, saying, ... 33 \n", "119 [solid, film, glaring, problems, okay, first, ... 292 \n", "120 [joker, endgame, need, say, everything, movie,... 53 \n", "121 [absolutely, strong, fanboy, hype, rush, going... 36 \n", "122 [overhyped, alright, good, film, see, like, ma... 31 \n", "\n", " topwords_unfil \\\n", "0 [(of, 13), (i, 12), (the, 12), (that, 10), (it... \n", "1 [(was, 4), (a, 3), (that, 3), (for, 2), (there... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... \n", "3 [(and, 4), (is, 2), (make, 2), (movie, 2), (to... \n", "4 [(the, 5), (this, 4), (movie, 4), (it, 4), (to... \n", ".. ... \n", "118 [(it, 4), (a, 4), (movie, 3), (in, 2), (keep, ... \n", "119 [(the, 35), (to, 22), (it, 16), (and, 16), (i,... \n", "120 [(joker, 3), (movie, 3), (in, 3), (it, 3), (th... \n", "121 [(the, 7), (is, 6), (a, 4), (fanboy, 2), (and,... \n", "122 [(it, 4), (but, 3), (a, 3), (good, 2), (do, 2)... \n", "\n", " topwords_fil ... \\\n", "0 [(movie, 3), (said, 3), (many, 3), (times, 3),... ... \n", "1 [(dark, 2), (phoenix, 1), (think, 1), (need, 1... ... \n", "2 [(overrated, 2), (movie, 2), (everyone, 1), (p... ... \n", "3 [(make, 2), (movie, 2), (idiotic, 1), (film, 1... ... \n", "4 [(movie, 4), (terrible, 3), (acting, 3), (good... ... \n", ".. ... ... \n", "118 [(movie, 3), (keep, 2), (saying, 2), (psycho, ... ... \n", "119 [(joker, 6), (movie, 5), (film, 4), (like, 4),... ... \n", "120 [(joker, 3), (movie, 3), (masterful, 2), (awes... ... \n", "121 [(fanboy, 2), (movie, 2), (absolutely, 1), (st... ... \n", "122 [(good, 2), (overhyped, 1), (alright, 1), (fil... ... \n", "\n", " diy_cleaner \\\n", "0 missed opportunity missed opportunity i had ... \n", "1 5/5 for phoenix's acting.. 5/5 for phoenix's... \n", "2 everyone praised an overrated movie. everyon... \n", "3 what idiotic film what idiotic film i can sa... \n", "4 terrible terrible the only thing good about ... \n", ".. ... \n", "118 nerve-wracking, but in very uncomfortable way... \n", "119 solid film but there are glaring problems so... \n", "120 joker > endgame joker > endgame need i say m... \n", "121 absolutely not a 10 absolutely not a 10 stro... \n", "122 overhyped, but it's alright overhyped, but i... \n", "\n", " bow_v2 \\\n", "0 {'missed': 3, 'opportunity': 3, 'i': 14, 'had'... \n", "1 {'5/5': 2, 'for': 3, 'phoenix's': 2, 'acting':... \n", "2 {'everyone': 2, 'praised': 2, 'an': 2, 'overra... \n", "3 {'what': 2, 'idiotic': 2, 'film': 2, 'i': 1, '... \n", "4 {'terrible': 4, 'the': 5, 'only': 1, 'thing': ... \n", ".. ... \n", "118 {'nerve-wracking': 2, ',': 2, 'but': 2, 'in': ... \n", "119 {'solid': 2, 'film': 5, 'but': 6, 'there': 4, ... \n", "120 {'joker': 4, '>': 2, 'endgame': 2, 'need': 1, ... \n", "121 {'absolutely': 2, 'not': 2, 'a': 2, '10': 2, '... \n", "122 {'overhyped': 2, ',': 2, 'but': 4, 'it's': 2, ... \n", "\n", " pruned \\\n", "0 missed opportunity missed opportunity been ver... \n", "1 phoenix's acting.. phoenix's acting.. dont thi... \n", "2 everyone praised overrated movie. everyone pra... \n", "3 what idiotic film what idiotic film that phoen... \n", "4 terrible terrible only thing good about this m... \n", ".. ... \n", "118 nerve-wracking, very uncomfortable nerve-wrack... \n", "119 solid film there glaring problems solid film t... \n", "120 joker endgame joker endgame need more everythi... \n", "121 absolutely absolutely strong fanboy hype rush ... \n", "122 overhyped, it's alright overhyped, it's alrigh... \n", "\n", " bow_v3 \\\n", "0 {'missed': 3, 'opportunity': 3, 'been': 4, 've... \n", "1 {'phoenix's': 2, 'acting': 2, '..': 2, 'dont':... \n", "2 {'everyone': 2, 'praised': 2, 'overrated': 3, ... \n", "3 {'what': 2, 'idiotic': 2, 'film': 2, 'that': 1... \n", "4 {'terrible': 4, 'only': 1, 'thing': 1, 'good':... \n", ".. ... \n", "118 {'nerve-wracking': 2, ',': 2, 'very': 2, 'unco... \n", "119 {'solid': 2, 'film': 5, 'there': 4, 'glaring':... \n", "120 {'joker': 4, 'endgame': 2, 'need': 1, 'more': ... \n", "121 {'absolutely': 2, 'strong': 1, 'fanboy': 1, 'h... \n", "122 {'overhyped': 2, ',': 2, 'it's': 2, 'alright':... \n", "\n", " bow_v4 \\\n", "0 {'missed': 2, 'opportunity': 2, 'i': 12, 'had'... \n", "1 {'for': 2, 'phoenix': 1, 'i': 1, 'do': 1, 'thi... \n", "2 {'everyone': 1, 'praised': 1, 'an': 1, 'overra... \n", "3 {'what': 1, 'idiotic': 1, 'film': 1, 'i': 1, '... \n", "4 {'terrible': 1, 'the': 1, 'only': 1, 'thing': ... \n", ".. ... \n", "118 {'but': 1, 'in': 1, 'very': 1, 'uncomfortable'... \n", "119 {'solid': 1, 'film': 3, 'but': 4, 'there': 2, ... \n", "120 {'joker': 2, 'endgame': 1, 'need': 1, 'i': 1, ... \n", "121 {'absolutely': 1, 'not': 1, 'a_NEG': 4, 'stron... \n", "122 {'overhyped': 1, 'but': 3, 'it': 4, 'alright':... \n", "\n", " bow_v5 \\\n", "0 {'missed_opportunity': 2, 'opportunity_i': 1, ... \n", "1 {'for_phoenix': 1, 'phoenix_i': 1, 'i_do': 1, ... \n", "2 {'everyone_praised': 1, 'praised_an': 1, 'an_o... \n", "3 {'what_idiotic': 1, 'idiotic_film': 1, 'film_i... \n", "4 {'terrible_the': 1, 'the_only': 1, 'only_thing... \n", ".. ... \n", "118 {'but_in': 1, 'in_very': 1, 'very_uncomfortabl... \n", "119 {'solid_film': 1, 'film_but': 1, 'but_there': ... \n", "120 {'joker_endgame': 1, 'endgame_need': 1, 'need_... \n", "121 {'absolutely_not': 1, 'not_a': 1, 'a_strong': ... \n", "122 {'overhyped_but': 1, 'but_it': 1, 'it_alright'... \n", "\n", " no_shared_words \\\n", "0 [missed, opportunity, i, had, excited, to, see... \n", "1 [for, i, do, was, a, for, a, tbh, is, a, dc, h... \n", "2 [praised, an, of, all, the, are, out, to, be, ... \n", "3 [idiotic, i, can, say, is, master, bt, not, a,... \n", "4 [terrible, the, is, but, i, and, for, entertai... \n", ".. ... \n", "118 [but, in, way, why, everybody, keep, it, a, it... \n", "119 [solid, but, are, glaring, problems, okay, i, ... \n", "120 [endgame, i, say, is, masterful, in, single, w... \n", "121 [not, a, strong, fanboy, and, rush, on, the, i... \n", "122 [but, it, alright, it, a, but, i, do, see, as,... \n", "\n", " bow_v6 \\\n", "0 {'missed': 2, 'opportunity': 2, 'i': 12, 'had'... \n", "1 {'for': 2, 'i': 1, 'do': 1, 'was': 4, 'a': 3, ... \n", "2 {'praised': 1, 'an': 1, 'of': 1, 'all': 1, 'th... \n", "3 {'idiotic': 1, 'i': 1, 'can': 1, 'say': 1, 'is... \n", "4 {'terrible': 3, 'the': 5, 'is': 2, 'but': 3, '... \n", ".. ... \n", "118 {'but': 1, 'in': 2, 'way': 1, 'why': 1, 'every... \n", "119 {'solid': 1, 'but': 5, 'are': 4, 'glaring': 1,... \n", "120 {'endgame': 1, 'i': 1, 'say': 1, 'is': 2, 'mas... \n", "121 {'not': 1, 'a': 4, 'strong': 1, 'fanboy': 2, '... \n", "122 {'but': 3, 'it': 4, 'alright': 1, 'a': 3, 'i':... \n", "\n", " no_neg_words \\\n", "0 [missed, opportunity, i, had, been, very, exci... \n", "1 [for, phoenix, i, do, think, there, was, a, ne... \n", "2 [everyone, praised, an, overrated, movie, over... \n", "3 [what, idiotic, film, i, can, say, that, phoen... \n", "4 [terrible, the, only, thing, good, about, this... \n", ".. ... \n", "118 [but, in, very, uncomfortable, way, why, every... \n", "119 [film, but, there, are, glaring, problems, oka... \n", "120 [joker, need, i, say, more, everything, about,... \n", "121 [absolutely, not, a, fanboy, and, hype, rush, ... \n", "122 [overhyped, but, it, alright, it, a, good, fil... \n", "\n", " bow_v7 \n", "0 {'missed': 2, 'opportunity': 2, 'i': 12, 'had'... \n", "1 {'for': 2, 'phoenix': 1, 'i': 1, 'do': 1, 'thi... \n", "2 {'everyone': 1, 'praised': 1, 'an': 1, 'overra... \n", "3 {'what': 1, 'idiotic': 1, 'film': 1, 'i': 1, '... \n", "4 {'terrible': 3, 'the': 5, 'only': 1, 'thing': ... \n", ".. ... \n", "118 {'but': 1, 'in': 2, 'very': 1, 'uncomfortable'... \n", "119 {'film': 4, 'but': 5, 'there': 3, 'are': 4, 'g... \n", "120 {'joker': 3, 'need': 1, 'i': 1, 'say': 1, 'mor... \n", "121 {'absolutely': 1, 'not': 1, 'a': 4, 'fanboy': ... \n", "122 {'overhyped': 1, 'but': 3, 'it': 4, 'alright':... \n", "\n", "[246 rows x 53 columns]" ] }, "execution_count": 99, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df" ] }, { "cell_type": "code", "execution_count": 100, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dict_keys(['missed', 'opportunity', 'been', 'very', 'excited', 'this', 'movie', 'ever', 'since', 'heard', 'about', 'anticipating', 'release', 'when', 'started', 'getting', 'type', 'hype', 'press', 'that', 'became', 'apprehensive', 'things', 'were', 'being', 'said', 'which', 'seemed', 'outrageous', 'mostly', 'other', 'moves', 'looking', 'forward', 'seeing', 'ended', 'letting', 'down', 'joker', 'sadly', 'turned', 'those', 'movies', 'know', 'many', 'times', 'before', 'phoenixs', 'portrayal', 'with', 'mental', 'health', 'depression', 'good', 'convincing', 'story', 'plot', 'like', 'deliver', 'anti', 'hero', 'origin', 'most', 'coveted', 'villains', 'comic', 'book', 'lore', 'liked', 'quasi', 'mirroring', 'failed', 'system', 'whose', 'middle', 'lower', 'class', 'revolt', 'against', 'rich', 'sort', 'burn', 'done', 'sure', 'people', 'glimpses', 'today', 'culture', 'knows', 'maybe', 'studio', 'execs', 'their', 'fingers', 'involved', 'ones', 'watered', 'much', 'there', 'will', 'directors', 'darker', 'than', 'theatrical', 'certainly', 'hope', 'because', 'reviews', 'have', 'read', 'speak', 'walking', 'theaters', 'dark', 'feel', 'psychological', 'overtones', 'them', 'stomach', 'felt', 'sense', 'wanting', 'bigger', 'grander', 'what', 'would', 'recommend', 'formulate', 'your', 'opinion', 'gave', 'rating', 'over', 'walked', 'feeling', 'just', 'already', 'seen', \"phoenix's\", 'acting..', 'dont', 'think', 'need', 'super', 'film', 'comics', 'character', 'dramatized', 'effort', 'knight', 'unfortunately', 'captivating', 'inspiration', 'made', 'stuff', 'enough', 'real', 'world', 'everyone', 'praised', 'overrated', 'movie.', 'time', 'here', 'making', 'better', 'actually', 'idiotic', 'phoenix', 'master', 'actor', 'does', 'still', 'make', 'great', 'thsi', 'lives', 'from', 'blabla', 'every', 'medium', 'nothing', 'only', 'thing', 'behind', 'money', 'media', 'todd', 'philips', 'should', 'some', 'copy', 'taxi', 'driver', 'similar', 'terrible', 'acting', 'watch', 'alone', 'doesnt', 'interesting', 'entertaining', 'give', 'script', 'barely', 'development', 'characters', 'matter', 'outside', 'last', 'minutes', 'best', 'part', 'force', 'through', 'first', 'hours', 'garbage', 'punishment', 'even', 'they', 'couldve', 'condensed', 'into', 'minute', 'special', 'cant', 'believe', 'then', 'again', 'written', 'primarily', 'oscars', 'usually', 'instead', 'poor', 'attempt', 'books', 'sell', 'strays', 'smacks', 'trying', 'hard', 'awards', 'relevance', 'names', 'gotham', 'tries', 'nominations', 'criticism', 'actors', 'thought', 'given', 'wasnt', 'dragged', 'longer', 'versions', 'learned', 'thing.', 'borrows', 'elements', 'strive', 'award', 'well', 'except', 'writing', 'shamelessly', 'theatre', 'edgy', 'scary', 'brain', 'damaged', 'sissy', 'dances', 'while', 'annoying', 'rude', 'expects', 'society', 'pedestal', 'hell', 'hate', 'complete', 'crap', 'really', 'understand', 'watching', 'couldnt', 'till', 'boring', 'myself', 'extremely', 'zero', 'connection', 'joaquin', 'heath', 'ledger', 'needed', 'asking', 'these', 'freaking', 'normal', 'same', 'sentence', 'joaquins', 'never', 'isnt', 'disaster', 'slow', 'could', 'keep', 'falling', 'asleep', 'theater', 'imagine', 'future', 'films', 'alright', 'film...', 'ruined', 'masterpiece', 'raving', 'predictable', 'samey', 'theres', 'creativity', 'king', 'comedy', 'copying', 'almost', 'pointless', 'waste', 'disappointing', 'long', 'possibly', 'take', 'tell', 'audience', 'mentally', 'unwell', 'surprising', 'mother', 'imaginative', 'white', 'sock', \"don't\", 'review', 'movies,', 'one...', 'watched', 'site', 'absolutely', 'little', 'else', 'found', 'longish', 'fall', 'mean', 'entertain', 'yourself', 'washing', 'machine', 'going', 'straight', 'anyone', 'butt!', 'claiming', 'ridiculous', 'walk', 'happens', 'predict', 'advance', 'rather', 'relies', 'fascinated', 'antics', 'psychotic', 'nutcase', 'whilst', 'convince', 'somehow', 'heroic', 'highly', 'nice', 'excellent', 'suffers', 'three', 'uninteresting', 'dialog', 'pace', 'lengthy', 'number', 'ideas', 'combined', 'more', 'destroy', 'look', 'left', 'beside', 'genre', 'supposed', 'thriller', 'addition', 'crime', 'drama', 'cannot', 'exaggerated', 'high', 'ratings', 'want', 'fair', 'although', 'stars', 'definitely', 'worth', 'consequently', 'skip', '10/10', 'actual', 'unbiased', 'review.', 'titles', 'says', 'marvel', 'hardcore', 'check', 'profiles', 'where', 'fans', 'opposite', 'pure', 'simple', 'truth', 'horrible', 'worst', 'pretty', 'remake', 'shots', 'exactly', 'ripping', 'aside', 'illness', 'psychology', 'slapped', 'title', 'draw', 'expect', 'hoping', 'wrong', 'agree', 'portraying', 'issues', 'though', 'call', 'oscar', 'worthy', 'stretch', 'notice', 'critics', 'saying', 'different', 'perspective', 'each', 'goes', 'audio', 'music', 'certain', 'aspects', 'shot', 'camera', 'words', 'enjoy', 'critic', 'cinema', 'aspect', 'viewers', 'disappointed', 'unlike', 'fascination', 'version', 'term', 'lightly', 'indeed', 'fact', 'gone', 'kids', 'knowing', 'rated', 'graphic', 'also', 'promotes', 'violence', 'guns', 'uncomfortable', 'country', 'rent', 'lastly', 'enjoyed', 'picture', 'past', 'course', 'lets', '2001', 'kings', 'speech', 'bought', 'likely', 'probably', 'forgot', 'soon', 'after', 'list', 'didnt', 'included', 'inception', 'true', 'grit', 'once', 'raved', 'case', 'forget', 'week', 'labeled', 'labeling', 'attention', 'cheap', 'tactic', 'overhyped', 'slowwwwww', 'gladly', 'half', 'until', 'usual', 'must', 'gore', 'disney', 'hear', 'thumbs', 'question', 'below', 'reviewing', 'performance', 'storyline', 'played', 'literally', 'hats', 'discrediting', 'whatsoever', 'reason', 'drawn', 'winded', 'kept', 'agreeing', 'jumping', 'band', 'wagon', 'easily', 'create', 'within', 'hour', 'push', 'ything', 'villian', 'based', 'superhero', 'aware', 'however', 'halloween', 'meets', 'physcotic', 'escapee', 'decides', 'kill', 'sounds', 'michael', 'myers', 'proud', 'brilliant', 'love', 'pheonixs', 'ought', 'please', 'process', 'receive', 'sheep', 'write', 'compelled', 'thoughts', 'head', 'apparently', 'quite', 'peoples', 'heads', 'comes', 'perception', 'order', 'mine', 'anybody', 'elses', 'critique', 'following', 'dissapointing', 'boring!!!', 'wonderful', 'role', 'orgin', 'buffalo', 'bill', 'silence', 'lambs', 'depressing', 'limp', 'wristed', 'whith', 'feminine', 'dancing', 'masculinity', 'remember', 'dark,', 'depressing,', 'slow,', 'heavy,', 'kudos', 'tough', 'backstory', 'sorry', 'genres', 'simply', 'stay', 'heavy', 'spoon', 'point', 'depressed', 'ready', 'react', 'keith', 'comments', 'perhaps', 'paid', 'ledgers', 'inventive', 'charismatic', 'maniacal', 'creepy', 'batman', 'ecosystem', 'fills', 'relationship', 'cathartic', 'moment', 'catalyze', 'reaction', 'paced', 'told', 'choice', 'evening', 'gambling', 'addicted', 'director', 'scorsese', 'overlong', 'dull', 'feed', 'network', 'basic', 'carbon', 'plots', 'lifted', 'find', 'become', 'psyco', 'coudnt', 'entertainment', 'cinematic', 'experience', 'fantastic', 'ways', 'awful', 'blank', 'slate', 'study', 'crazy', 'over-hyped,', 'overacted', 'proper', 'millennial', 'absolute', 'disappointment', 'believed', 'fool', 'person', 'stupid', 'cringe', 'happening', 'smoking', 'around', 'action', 'substance', 'humor', 'everything', 'disturbing', 'respected', 'refer', 'powerful', 'illustration', 'loners', 'dangerous', 'themselves', 'others', 'theyre', 'untreated', 'educated', 'standpoint', 'millions', 'goers', 'cause', 'worry', 'impact', 'kind', 'societys', 'problems', 'goodness', 'driven', 'further', 'fearful', 'repercussions', 'stigmatisation', 'prejudice', 'bullying', 'right', 'seem', 'care', 'such', 'content', 'less', 'cinematography', 'otherwise', 'rehash', 'thats', 'exploitation', 'misrepresentation', 'pathologies', 'unforgiveable', 'fanboys', 'forgotten?', 'throughout', 'history', 'always', 'replaced', 'nature', 'paganism', 'translated', 'devil', 'roman', 'catholicism', 'bring', 'social', 'coherence', 'figure', 'represent', 'meticulous', 'forgotten', 'hurts', 'favorite', 'broke', 'golden', 'rule', 'laid', 'robert', 'downey', 'tropic', 'thunder', 'full', 'planning', 'cunning', 'depth', 'chaotic', 'narcissism', 'excellently', 'depicted', 'eternal', 'opening', 'scene', 'waiting', 'keyser', 'souse', 'control', 'display', 'black', 'mirror', 'pulling', 'strings', 'along', 'came', 'sorrowful', 'victim', 'threw', 'tantrum', 'lost', 'empowered', 'taking', 'becoming', 'anarchistic', 'commentator', 'forest', 'gump', 'rain', 'robot', 'depictions', 'suffering', 'writers', 'remembered', 'level', 'ingenuity', 'leaves', 'understanding', 'cognitive', 'approach', 'phillips', 'displayed', 'cruel', 'fist', 'banished', 'vulgar', 'insult', 'narrative', 'intriguing', 'dualistic', 'decades', 'meet', 'universe', 'sequel', 'jokers', 'lord', 'life', 'grudge', 'match', 'between', 'christian', 'bales', 'machinist', 'malnutritioned', 'clown', 'prince', 'threatening', 'forever', 'joaquim', 'mark', 'sorely', 'rewatch', 'something', 'extended', 'trailer', 'exposed', 'revelations', 'challenged', 'presented', 'basically', 'superlatives', 'explanations', 'adorning', 'without', 'incredible', 'shadowed', 'truly', 'went', 'night', 'positive', 'honestly', 'totally', 'bored', 'thinking', 'start', 'gruesome', 'makes', 'leave', 'short', 'leaving', 'realy', 'whit', 'happy', 'grave', 'bad...', 'whole', 'apperently', 'completely', 'acted', 'trash', 'weak', 'face', 'paint', 'drug', 'addict', 'loser', 'blames', 'everybody', 'failings', 'mediocre', 'offensive', 'ultra', 'liberal', 'preaching', 'millennials', 'reinforces', 'school', 'college', 'teachings', 'fault', 'parents', 'boss', 'government', 'neighbors', 'cops', 'imdb', 'superior', 'godfather', 'generation', 'pathetic', 'hopes', 'werent', 'amazing', 'tedious', 'experienced', 'childhood', 'trauma', 'spend', 'asylum', 'seven', 'medication', 'effect', 'metro', 'incident', 'breaking', 'chain', 'free', 'himself', 'change', 'evolve', 'beginning', 'seventy', 'percent', 'screen', 'dedicated', 'arthur', 'fleck', 'support', 'lack', 'soul', 'deniero', 'disappoints', 'aura', 'somewhere', 'nineties', 'wait', 'anything', 'espaically', 'repeated', 'space', 'alot', 'nothings', 'drag', 'suspense', 'work', 'begin', 'turns', 'unbelievable', 'smart', 'using', 'intuition', 'batmans', 'greatest', 'embarrassing', 'stand', 'unrelated', 'series', 'appreciated', 'main', 'decent', 'strictly', 'come', 'childcare', 'arrangements', 'wish', 'home', 'repeating', 'subject', 'missing', 'deserve', 'pursuing', 'career', 'talent', 'beaten', 'ridiculed', 'standard', 'rated.', 'makeup', 'reviewers', 'guess', 'disturbed', 'guys', 'demise', 'proviked', 'societal', 'fecay', 'consequential', 'violent', 'joachin', 'effeminate', 'weird', 'dance', 'demonstrate', 'evolved', 'self', 'overhyped.', 'borders', 'irritating', 'aimlessly', 'behavior', 'laughter', 'repetitious', 'wrote', 'star', 'family', 'friends', 'worked', 'years!!!', 'seriously', 'amateur', 'loved', 'outstanding', 'decided', 'leading', 'impressed', 'soundtrack', 'ending', 'phenomenal', 'deserves', 'hands', 'years', 'decaprio', 'revenant', 'next', 'weeknd', 'havent', 'flaw', 'edit', 'oscar.', 'holy', 'fine', 'pheonix', 'hair', 'winning', 'gotta', 'okay', 'intelligent', 'insane', 'holds', 'deep', 'conversations', 'prominent', 'capable', 'complicated', 'bank', 'robbery', 'step', 'ahead', 'police', 'intelligence', 'strong', 'personality', 'emotionality', 'laughed', 'controllably', \"'triumph\", \"will'\", 'nihilists', 'sick', 'disgusting', 'evil', 'total', 'piece', 'scheisse', 'affect', 'emotionally', 'troubled', 'young', 'pulled', 'suicide', 'addictive', 'behaviors', 'hopelessness', 'triumph', 'defer', 'voting', 'video', 'majorly', 'screwed', 'dude', 'alien', 'body', 'naked', 'waist', 'disquieting', 'taut', 'skin', 'stretched', 'tightly', 'bone', 'structure', 'bones', 'stick', 'angles', 'places', 'exoskeleton', 'medical', 'experiment', 'single', 'pleasant', 'beauty', 'happiness', 'catharsis', 'misery', 'churning', 'emptiness', 'fifty', 'circle', 'despair', 'humanity', 'showing', 'sane', 'live', 'gets', 'vanilla.', 'blah.', 'wasted', 'giving', 'terrible-not', 'recall', 'accurate', 'hoped', 'pitiful', 'took', 'enjoyment', 'worse', \"didn't\", 'screening', 'honest', 'fuss', 'expecting', 'multi', 'layered', 'descent', 'dimensional', 'means', 'bait', 'pretentious,', 'takes', 'itself', 'wants', 'smarter', 'enjoying', 'rest', 'achieve', 'toker', 'awkward', 'loner', 'stoner', 'schtick', 'surely', 'academy', 'sheer', 'scrawnyer', 'gargantuan', 'artistic', 'achievement', 'forcibly', 'sucking', 'stomack', 'reads', 'wrong.', 'travis', 'bickle', 'product', 'actions', 'justified', 'rendered', 'aspirational', 'either', 'aesthetics', 'rupert', 'pupkin', 'scorseses', 'another', 'heavily', 'insight', 'divide', 'neurological', 'glitter', 'thrown', 'disguise', 'shallow', 'adds', 'confusion', 'ends', 'none', 'poser', 'familiar', 'feels', 'fresh', 'knocks', 'socks', 'laugh', 'haunting', 'singular', 'commits', 'third', 'murder', 'obviously', 'defense', 'beta', 'ghus', 'gaye', 'ghhade', 'yahan', 'impossible', 'nikalna', 'fears', 'humorless', 'digging', 'hated', 'hbos', 'succession', 'notes', 'protagonists', 'humanize', 'maintain', 'necessary', 'ironic', 'distance', 'movie?', 'serial', 'killer', 'abused', 'child', 'attacked', 'street', 'subway', 'mass', 'murderer', 'jokes', 'famous', 'funny', 'careful', 'prevent', 'private', 'someone', 'official', 'background', 'checks', 'messed', 'logical', 'response', 'wacked', 'maniac', 'murdering', 'enjoyable', 'swimming', 'sewage', 'succeeded', 'collapses', 'putrid', 'mess', 'ultimately', 'thanks', 'lacking', 'focus', 'journey', 'constant', 'musical', 'score', 'dramatic', 'detracted', 'performed', 'entertained', 'taken', 'partner', 'finished', 'devoured', 'previous', 'horribly', 'derivative', 'repugnant', 'dramatically', 'flawed', 'excruciatingly', 'telescoped', 'lens', 'vilifies', 'points', 'consistency', 'theyd', 'guts', 'struggle', 'sexuality', 'might', 'help', 'mind', 'declared', 'profound', 'strokes', 'specifically', 'preclude', 'manifestation', 'explained', 'willed', 'seat', 'acrid', 'stinky', 'seventies', 'references', 'dessert', 'duration', 'eventually', 'slopped', 'riddle', 'promise', 'remarkably', 'banal', 'serves', 'illuminate', 'gluttonous', 'exploitative', 'villainy', 'corporations', 'production', 'values', 'comparing', 'exquisitely', 'stark', 'visions', 'nolan', 'hype!', 'wonder', 'licensed', 'brand', 'creates', 'chaos', 'manipulation', 'threat', 'explosions', 'gunpowders', 'borrowing', 'costume', 'signature', 'iconic', 'argue', 'early', 'stages', 'transforming', 'supervillain', 'whats', 'psychopath', 'patient', 'bullied', 'disregarded', 'turn', 'villain', 'justice', 'independent', 'unnecessary', 'legendary', 'inhuman', 'terrorising', 'morally', 'dislike', 'depiction', 'disturbances', 'relating', 'filmographically', 'terrorise', 'spectator', 'strip', 'narative', 'madness', 'yeah', 'driving', 'puts', 'political', 'message', 'rehashed', 'junk', 'hollywood', 'nowadays', 'twice', 'needs', 'zimmer', 'howard', 'combo', 'unpopular', 'opinion:', 'account', 'hearing', 'tons', 'praises', 'terribly', 'living', 'regards', 'climate', 'hint', 'overacting', 'galore', 'underwhelmed', 'friendly', 'surprised', 'magic', 'looong', 'imho', 'gives', 'damn', 'darth', 'vaders', 'centuries', 'boogeyman', 'overpaid', 'lalaland', 'schmocks', 'wont', 'jump', 'prequel', 'explains', 'train', 'least', 'solid', 'filmmaking', 'finesse', 'build', 'surprises', 'load', 'layman', 'olds', 'roll', 'eyes', 'cacophony', 'scenes', 'cheesy', 'moments', 'massive', 'subtle', 'sinister', 'second', 'elevator', 'joke', 'miss', 'having', 'student', 'throw', 'bunch', 'cinematographer', 'gratuitous', 'senseless', 'drool', 'dudes', 'brought', 'road', 'trip', 'hangover', 'clichés', 'hardly', 'suspenseful', 'building', 'serious?', 'imitation', 'cynical', 'taste', 'mouth', 'essential', 'viewing', 'reinvention', 'doesent', 'clever', 'banter', 'known', 'villians', 'snooze', 'fest', 'plays', 'leeway', 'mannerisms', 'spot', 'demeanor', 'capsized', 'killings', 'bland', 'desperately', 'element', 'towards', 'death', 'rebirth', 'smartest', 'dissappointment', 'billboard', 'signs', 'london', 'underground', 'learning', 'approved', 'masses', 'appeared', 'arthouse', 'interpretation', 'firstly', 'source', 'material', 'psychiatrist', 'describes', 'supersane', 'sees', 'irony', 'works', 'comedian', 'alan', 'moore', 'watchmen', 'settling', 'treats', 'conform', 'follow', 'rules', 'regulations', 'edge', 'tragedies', 'snaps', 'contrary', 'ruthless', 'daring', 'sadistic', 'twisted', 'conforming', 'societies', 'norms', 'innovative', 'somewhat', 'dissapointed', 'portrayed', 'recognition', 'stop', 'suggest', 'compromised', 'both', 'laughing', 'condition', 'uncontrollably', 'nervous', 'anxious', 'dumbs', 'origins', 'subsequently', 'pity', 'mobbed', 'refused', 'treatment', 'funding', 'cuts', 'treated', 'colleagues', 'elderly', 'issue', 'unrequited', 'neighbour', 'subsequent', 'humiliation', 'niros', 'mothers', 'leads', 'bloody', 'brutal', 'finale', 'arthurs', 'transformation', 'brutality', 'harshness', 'whether', 'caring', 'physically', 'disabled', 'shows', 'sympathy', 'dwarf', 'strongly', 'suggests', 'antithesis', 'infact', 'successfully', 'standing', 'result', 'poorly', 'redeeming', 'several', 'earlier', 'flashback', 'events', 'place', 'figment', 'imagination', 'sergio', 'leones', 'upon', 'america', 'dreamed', 'state', 'killing', 'prefers', 'multiple', 'valid', 'hypothesis', 'ponder', 'considered', 'cannon', 'prefer', 'glad', 'standalone', 'inspired', 'numerous', 'includes', 'clockwork', 'orange', 'forgives', 'drive', 'personally', 'effectiveness', 'panache', 'recently', 'indian', 'readers', 'called', 'wajood', 'starring', 'nana', 'patekar', 'franchise', 'associated', 'acting....', 'happen', 'nose,', 'silly', 'forced', 'described', 'realistic', 'despite', 'show', 'finalized', 'sustain', 'flecks', 'downfall', 'organic', 'explored', 'sufficiently', 'amalgamation', 'masterpieces', 'deal', 'matters', 'thoughtful', 'mature', \"haven't\", 'entire', 'movie!', '2019', 'year', 'astra', 'hellboy', 'slowness', 'accompanied', 'stringed', 'instruments', 'impression', 'carry', 'weight', 'importance', 'clearly', 'playing', 'elevates', 'compelling', 'majority', 'active', 'choices', 'context', 'running', 'beat', 'theme', 'vaguely', 'referenced', 'confusing', 'useless', 'shouldnt', 'opposed', 'whered', 'bernadette', 'important', 'useful', 'during', 'services', 'consequences', 'killed', 'imaginary', 'anarchy', 'winds', 'starting', 'movement', 'kills', 'wayne', 'enterprises', 'employees', 'interaction', 'crowd', 'seems', 'pleased', 'general', 'displeasure', 'wealthy', 'whenever', 'asked', 'keeps', 'politics', 'coming', 'across', 'confused', 'refusal', 'pick', 'side', 'surface', 'touching', 'subjects', 'determine', 'commentary', 'thinks', 'looks', 'lose', 'bargain', 'matinee', 'ripped', 'comfy', 'chairs', 'priced', 'snacks', 'lacks', 'thing-', 'value', 'albeit', 'plain', 'generally', 'criminal', 'genius', 'mastermind', 'masterful', 'comprehension', 'trickery', 'chemicals', 'delusional', 'intellect', 'diary', 'flat', 'jack', 'nicholson', 'raised', 'reached', 'respect', 'portrays', 'brazen', 'craziness', 'sake', 'locked', 'institution', 'arest', 'dtotal', 'csome', 'fake', 'hype!!!!!!!', 'wrenching', 'cried', 'kinda', 'cool', 'expectations.', 'potential', 'badly', 'directed', 'miserable', 'unpleasant', 'slog', 'news', 'clowns', 'back', 'pranksters', 'mimicking', 'pennywise', 'scare', 'viral', 'memes', 'incels', 'chooses', 'date', 'dour', 'demented', 'featured', 'nolans', 'marvelously', 'doubt', 'skinny', 'lonely', 'drugged', 'psychos', 'rushing', 'hail', 'manipulaitve', 'consumed', 'infectious', 'sometimes', 'charming', 'confidence', 'dumb', 'insecure', 'controls', 'spiral', 'pieces', 'optimism', 'starts', 'seemingly', 'theyve', 'name', 'eliminate', 'youd', 'closest', 'resemble', 'plenty', 'individuals', 'gritty', 'neither', 'word', '\"masterpiece\"', 'attached', 'coordinated', 'especially', 'channeling', 'confess', 'reminded', 'burrell', 'phil', 'dunphy', 'modern', 'harmless', 'regardless', 'impressive', 'unreliable', 'narrator', 'necessarily', 'showcase', 'line', 'serious', 'afterward', 'disconnected', 'overall', 'fairly', 'bubble', 'glorified', 'fiction', 'begs', 'anyway', 'urge', 'cents', \"''joker\", 'culture.', 'instead,', \"it's\", 'prime', 'example', \"it''\", 'stole', 'hits', 'nail', 'impulse', 'stories', 'constantly', 'repeat', 'chance', 'rejected', 'angry', 'fails', 'becomes', 'plus', 'various', 'cartoons', 'subtly', 'dialogues', 'league', 'claim', 'fully', 'reflects', 'successful', 'cast', 'spell', 'reality', 'meaning', 'exist', 'tried', 'chose', 'form', 'inside', 'lines', 'russian', 'babushka', 'empty', 'open', 'layers', 'doll', 'technical', 'exercise', 'quote', 'exposing', 'shallowness', 'pseudo', 'scott', 'silver', 'gifs', 'strung', 'together', 'fired', 'struts', 'clock', 'deadpans', 'punch', 'dangles', 'wall', 'note', 'youll', 'twitter', 'facebook', 'feeds', 'cracks', 'practically', 'stuffed', 'phony', 'philosophy', 'stupidly', 'adolescent', 'imparting', 'cultural', 'wisdom', 'tirades', 'muses', 'screams', 'nobodys', 'civil', 'anymore', 'observation', 'truisms', 'slides', 'aims', 'able', 'combine', 'features', 'commercial', 'mainstream', 'authentic', 'accusation', 'haters', 'often', 'pretentious', 'trilogy', 'whereas', 'philiphs', 'quintessence', 'pretentiousness', 'collection', 'fanfiction', 'quotes', 'poured', 'sauce', 'tricks', 'battered', 'twists', 'creation', 'goodbye', 'stable', 'ceased', 'popular', 'darkness', 'father', 'bale', 'showed', 'masterfully', 'ambivalence', 'fascinating', 'wounded', 'nihilist', '...:', 'psycho', 'saves', 'marketing', 'illnesses...', 'lead', 'torturing', 'children', 'relation', 'somebody', 'scared', 'underwhelming', 'frankly', 'unbelivably', 'breathtaking', 'divisive', 'initial', 'excitement', 'rate', 'disappoint', 'film.', 'nearly', 'expected', 'apart', 'whos', 'dealing', 'bipolar', 'disorder', 'including', 'negative', 'passing', 'popularity', 'centered', 'heaths', 'alleged', 'confirmed', 'gossip', 'queen', 'regain', 'therefore', 'slowly', 'began', 'offbeat', 'rogue', 'allowed', 'profit', 'cooked', 'close', 'moaning', 'ordinary', 'spread', 'naturally', 'capitalize', 'zooming', 'unstable', 'viewesr', 'decide', 'hand', 'unexplainable', 'holes', 'recommended', 'adversary', 'wicked', 'notch', 'brillance', 'ability', 'compete', 'equal', 'power', 'pychopath', 'embarressment', 'blaiming', 'thomas', 'bullies', 'sleezeball', 'stock', 'trader', 'types', 'deserved', 'defence', 'hunted', 'away', 'horror', 'clownface', 'upset', 'mobs', 'tired', 'trump', 'preachy', 'tired,', 'tragic', 'turkey', 'miss!', 'jokerwords', 'fail', 'alcoholic', 'judy', 'lunatic', 'informed', 'utter', 'cobblers', 'void', 'ultimate', 'columbus', 'purported', 'extraordinaire', 'zilch', 'henchmen', 'chase', 'arch', 'nemesis', 'small', 'contemporaries', 'incoherent', 'nonsense', 'dominated', 'unfocused', 'struggling', 'problem', 'revolting', 'characterisation', 'rested', 'physicality', 'contorted', 'inference', 'duped', 'obvious', 'trick', 'raging', 'bull', 'dallas', 'buyers', 'club', 'wanted', 'pass', 'raise', 'funds', 'shirt', 'wear', 'method', 'style', 'largely', 'improvised', 'fill', 'behaviour', 'meaningless', 'unsurprisingly', 'pathos', 'unremittingly', 'morose', 'nicholsons', 'captured', 'absent', 'instantly', 'forgettable', 'lacked', 'stream', 'sold', 'poke', 'aladdin', 'misleading', 'lite', 'edition', 'postmodern', 'fight', 'lifts', 'reactions', 'herd', 'mentality', 'play', 'groundbreaking', 'pulls', 'seriousness', 'posturing', 'backbone', 'consistent', 'themes', 'essentially', 'hollow', 'description', 'timid', 'pretends', 'proto', 'dozen', 'suitable', 'untalented', 'smoker', 'ratcatcher', 'calendar', 'weaker', 'foes', 'named', 'otis', 'flannegan', 'julian', 'credit', 'dare', 'impostor', 'afterthought', 'irrelevant', 'genuinely', 'overly', 'eager', 'proclaim', 'manages', 'weakest', 'direction', 'average', 'describe', 'subtlety', 'nuance', 'wouldnt', 'cared', 'characterization', 'addressed', 'group', 'happened', 'lyrics', 'song', 'repertoire', 'limitations', 'wherein', 'liberties', 'filled', 'brim', 'convenience', 'move', 'particular', 'manner', 'unnatural', 'telling', 'lazy', 'shoe', 'horn', 'figured', 'pretended', 'inflated', 'estimation', 'mentioned', 'lining', 'earn', 'nomination', 'roles', 'effortless', 'strain', 'natural', 'extent', 'owing', 'physical', 'whoever', 'ageing', 'later', 'cbms', 'logan', 'alright,', 'directing', 'clothes', 'unwatchable', 'talking', 'twenty', 'hitler', 'heroes', 'fictional', 'vader', 'episodes', 'wars', 'galaxys', 'terrorized', 'mercy', 'human', 'endeavor', 'understood', 'circumstances', 'stayed', 'acts', 'reviled', 'spoiler', 'alert', 'gratified', 'redemption', \"let's\", 'math', 'afraid', 'clouded', 'everyones', 'judgement', 'flaws', 'original', 'pull', 'bringing', 'major', 'glowing', 'talk', 'uneven', 'jumpy', 'beyond', 'tiny', 'comics?', 'idea', 'liking', 'norm', 'automatically', 'praise', 'shake', 'expectations', 'peak', 'crying', 'existence', 'thousand', 'struggled', 'personal', 'common', 'betray', 'attitude', 'kidding', 'horse', 'filth', 'flaming', 'shooter', 'severely', 'insanely', 'immature', 'stops', 'hitting', 'ugly', 'unique', 'memorable', 'faulting', 'terrific', 'screw', 'considering', 'harder', 'recent', 'memory', 'born', 'languorous', 'psychopathic', 'intent', 'failure', 'providing', 'shoddy', 'construct', 'vision', 'nihilistic', 'nowhere', 'meant', 'empathize', 'disgruntled', 'easier', 'motivations', 'disgruntlement', 'propped', 'relevant', 'novel', 'hasnt', 'million', 'focused', 'sequences', 'gary', 'bombastic', 'incongruent', 'deadweight', 'lambast', 'embrace', 'amorality', 'biting', 'satire', 'motivation', 'superficial', 'dreck', 'trade', 'reigns', 'knock', 'shoved', 'assed', 'unintelligent', 'unnecessarily', 'aggressively', 'steals', 'handle', 'influences', 'worries', 'overblown', 'mainly', 'view', 'exploration', 'occasionally', 'rumblings', 'weve', 'niro', 'slightest', 'esque', 'woman', 'finds', 'boyfriend', 'neighbor', 'rarely', 'logic', 'conservative', 'protests', 'remotely', 'convoluted', 'mile', 'huge', 'buildup', 'relationships', 'unearned', 'mere', 'pawns', 'machinations', 'arent', 'retard', 'encourages', 'knew', 'questionable', 'image', 'convinced', 'commit', 'tyler', 'durden', 'boredom', 'patrick', 'bateman', 'american', 'plan', 'inseparably', 'connected', 'symbol', 'hide', 'judiciary', 'requires', 'implied', 'broken', 'deeply', 'hurt', 'inspire', 'imitators', 'generous', 'flawless', 'board', 'boasts', 'mirely', 'handed', 'choppy', 'flow', 'decisions', 'wildly', 'highlghts', 'illnesses', 'handled', 'sprinkle', 'light', 'hearted', 'remind', 'strained', 'angle', 'difficult', 'introspection', 'youre', 'danger', 'poses', 'blunder', 'handling', 'harm', 'existential', 'pandering', 'categorize', 'consider', \"wasn't\", 'joker!', 'avoid', 'beloved', 'tactician', 'conscience', 'enjoys', 'game', 'tortured', 'inconsistencies', 'bruce', 'shown', 'qualities', 'compassion', 'fringe', 'changed', 'alert!', 'rotten', 'lenient', 'brings', 'validity', 'unreasonable', 'gloomy', 'treat', 'difficulty', 'protest', 'senator', 'candidate', 'president', 'position', 'highligts', 'biased', 'disorders', 'drops', 'hustlers', 'haah', 'haaah', 'haaaah', 'haaaaah', 'haaaaaah', 'what?', 'berate', 'bspw', 'borat', 'blend', 'normally', 'manchilds', 'favored', 'exception', 'category', 'advise', 'difference', 'nonetheless', 'haaaaaaah', 'used', 'sccenes', 'cringed', 'cheaply', 'express', 'girlfriend', 'added', 'manage', 'squeezed', 'noble', 'effort,', 'substance.', 'unusual', 'remains', 'cipher', 'loves', 'enlightening', 'traumatic', 'injury', 'delusions', 'schizophrenia', 'ourselves', 'sorta', 'douglas', 'shades', 'touches', 'earned', 'soliloquy', 'awareness', 'developed', 'cooky', 'spectacular', 'hints', 'displeased', 'annoyed', 'waynes', 'deaths', 'situation', 'indirectly', 'created', 'unhappy', 'serious,', 'tense...', 'bad!', 'darkest', 'highest', 'thrilling', 'instructions', 'flipped', 'boundaries', 'audiences', 'clear', 'fundemental', 'formula', 'blow', 'intense', 'perfect', 'dropping', 'mega', 'bore', 'imbd', 'assumed', 'murdered', 'moved', 'mill', 'granddaughter', 'great,', \"can't\", 'rest.', 'lackluster', 'color', 'random', 'center', 'creams', 'room', 'masculine', 'spent', 'masterclass', 'avid', 'goer', 'parts.', 'extraordinary', 'grasp', 'tells', 'haaaaaaah!', 'bullsheiße'])" ] }, "execution_count": 100, "metadata": {}, "output_type": "execute_result" } ], "source": [ "big_bow_n.keys()" ] }, { "cell_type": "code", "execution_count": 101, "metadata": {}, "outputs": [], "source": [ "import wordcloud\n", "from wordcloud import WordCloud, ImageColorGenerator\n", "from PIL import Image\n", "import seaborn as sns\n", "import matplotlib.pyplot as plt \n", "def create_word_cloud_with_mask(path_of_mask_image, dictionary, \n", " max_num_words, title):\n", " mask = np.array(Image.open(path_of_mask_image))\n", " #creating the word cloud \n", " word_cloud = WordCloud(background_color = \"white\", \n", " max_words = max_num_words, \n", " mask = mask, max_font_size = 125, \n", " random_state = 1006)\n", " word_cloud.generate_from_frequencies(dictionary)\n", " #creating the coloring for the word cloud \n", " image_colors = ImageColorGenerator(mask)\n", " plt.figure(figsize = [8,8])\n", " plt.imshow(word_cloud.recolor(color_func = image_colors), \n", " interpolation = \"bilinear\")\n", " plt.title(title)\n", " sns.set_context(\"poster\")\n", " plt.axis(\"off\")\n", " return plt" ] }, { "cell_type": "code", "execution_count": 102, "metadata": {}, "outputs": [], "source": [ "# import sys\n", "# print(sys.executable)" ] }, { "cell_type": "code", "execution_count": 103, "metadata": {}, "outputs": [], "source": [ "# mask = np.array(Image.open('../questionmark.png'))\n", "# mask" ] }, { "cell_type": "code", "execution_count": 104, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 104, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "create_word_cloud_with_mask('thumbup.png', big_bow_n, 750, \"Pre-clean\")" ] }, { "cell_type": "code", "execution_count": 105, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Counter({'missed': 5,\n", " 'opportunity': 4,\n", " 'been': 35,\n", " 'very': 27,\n", " 'excited': 5,\n", " 'this': 250,\n", " 'movie': 256,\n", " 'ever': 6,\n", " 'since': 6,\n", " 'heard': 2,\n", " 'about': 75,\n", " 'anticipating': 1,\n", " 'release': 2,\n", " 'when': 25,\n", " 'started': 4,\n", " 'getting': 7,\n", " 'type': 5,\n", " 'hype': 21,\n", " 'press': 1,\n", " 'that': 213,\n", " 'became': 8,\n", " 'apprehensive': 1,\n", " 'things': 14,\n", " 'were': 26,\n", " 'being': 26,\n", " 'said': 12,\n", " 'which': 32,\n", " 'seemed': 3,\n", " 'outrageous': 1,\n", " 'mostly': 1,\n", " 'other': 21,\n", " 'moves': 3,\n", " 'looking': 6,\n", " 'forward': 4,\n", " 'seeing': 11,\n", " 'ended': 1,\n", " 'letting': 3,\n", " 'down': 14,\n", " 'joker': 197,\n", " 'sadly': 6,\n", " 'turned': 2,\n", " 'those': 11,\n", " 'movies': 38,\n", " 'know': 22,\n", " 'many': 22,\n", " 'times': 22,\n", " 'before': 18,\n", " 'phoenixs': 14,\n", " 'portrayal': 13,\n", " 'with': 103,\n", " 'mental': 30,\n", " 'health': 9,\n", " 'depression': 2,\n", " 'good': 52,\n", " 'convincing': 2,\n", " 'story': 59,\n", " 'plot': 18,\n", " 'like': 54,\n", " 'deliver': 1,\n", " 'anti': 2,\n", " 'hero': 6,\n", " 'origin': 15,\n", " 'most': 15,\n", " 'coveted': 1,\n", " 'villains': 6,\n", " 'comic': 13,\n", " 'book': 9,\n", " 'lore': 2,\n", " 'liked': 2,\n", " 'quasi': 1,\n", " 'mirroring': 1,\n", " 'failed': 8,\n", " 'system': 3,\n", " 'whose': 2,\n", " 'middle': 3,\n", " 'lower': 2,\n", " 'class': 4,\n", " 'revolt': 1,\n", " 'against': 2,\n", " 'rich': 4,\n", " 'sort': 4,\n", " 'burn': 3,\n", " 'done': 8,\n", " 'sure': 7,\n", " 'people': 49,\n", " 'glimpses': 1,\n", " 'today': 2,\n", " 'culture': 4,\n", " 'knows': 2,\n", " 'maybe': 13,\n", " 'studio': 1,\n", " 'execs': 1,\n", " 'their': 20,\n", " 'fingers': 1,\n", " 'involved': 3,\n", " 'ones': 2,\n", " 'watered': 1,\n", " 'much': 51,\n", " 'there': 47,\n", " 'will': 26,\n", " 'directors': 1,\n", " 'darker': 1,\n", " 'than': 26,\n", " 'theatrical': 1,\n", " 'certainly': 4,\n", " 'hope': 5,\n", " 'because': 48,\n", " 'reviews': 21,\n", " 'have': 62,\n", " 'read': 10,\n", " 'speak': 2,\n", " 'walking': 3,\n", " 'theaters': 1,\n", " 'dark': 30,\n", " 'feel': 17,\n", " 'psychological': 5,\n", " 'overtones': 1,\n", " 'them': 14,\n", " 'stomach': 3,\n", " 'felt': 18,\n", " 'sense': 7,\n", " 'wanting': 1,\n", " 'bigger': 1,\n", " 'grander': 1,\n", " 'what': 62,\n", " 'would': 40,\n", " 'recommend': 4,\n", " 'formulate': 1,\n", " 'your': 11,\n", " 'opinion': 6,\n", " 'gave': 4,\n", " 'rating': 9,\n", " 'over': 19,\n", " 'walked': 1,\n", " 'feeling': 6,\n", " 'just': 97,\n", " 'already': 7,\n", " 'seen': 29,\n", " \"phoenix's\": 2,\n", " 'acting..': 2,\n", " 'dont': 27,\n", " 'think': 27,\n", " 'need': 9,\n", " 'super': 4,\n", " 'film': 79,\n", " 'comics': 10,\n", " 'character': 66,\n", " 'dramatized': 1,\n", " 'effort': 7,\n", " 'knight': 11,\n", " 'unfortunately': 6,\n", " 'captivating': 1,\n", " 'inspiration': 2,\n", " 'made': 20,\n", " 'stuff': 5,\n", " 'enough': 14,\n", " 'real': 11,\n", " 'world': 12,\n", " 'everyone': 16,\n", " 'praised': 2,\n", " 'overrated': 16,\n", " 'movie.': 2,\n", " 'time': 31,\n", " 'here': 13,\n", " 'making': 6,\n", " 'better': 31,\n", " 'actually': 13,\n", " 'idiotic': 2,\n", " 'phoenix': 51,\n", " 'master': 4,\n", " 'actor': 11,\n", " 'does': 28,\n", " 'still': 8,\n", " 'make': 21,\n", " 'great': 28,\n", " 'thsi': 1,\n", " 'lives': 1,\n", " 'from': 77,\n", " 'blabla': 1,\n", " 'every': 7,\n", " 'medium': 1,\n", " 'nothing': 32,\n", " 'only': 26,\n", " 'thing': 14,\n", " 'behind': 5,\n", " 'money': 10,\n", " 'media': 1,\n", " 'todd': 9,\n", " 'philips': 2,\n", " 'should': 13,\n", " 'some': 24,\n", " 'copy': 3,\n", " 'taxi': 27,\n", " 'driver': 26,\n", " 'similar': 4,\n", " 'terrible': 10,\n", " 'acting': 45,\n", " 'watch': 29,\n", " 'alone': 3,\n", " 'doesnt': 21,\n", " 'interesting': 19,\n", " 'entertaining': 7,\n", " 'give': 15,\n", " 'script': 10,\n", " 'barely': 3,\n", " 'development': 2,\n", " 'characters': 17,\n", " 'matter': 6,\n", " 'outside': 2,\n", " 'last': 6,\n", " 'minutes': 9,\n", " 'best': 13,\n", " 'part': 16,\n", " 'force': 3,\n", " 'through': 8,\n", " 'first': 17,\n", " 'hours': 8,\n", " 'garbage': 1,\n", " 'punishment': 1,\n", " 'even': 34,\n", " 'they': 45,\n", " 'couldve': 2,\n", " 'condensed': 1,\n", " 'into': 17,\n", " 'minute': 4,\n", " 'special': 7,\n", " 'cant': 10,\n", " 'believe': 9,\n", " 'then': 18,\n", " 'again': 11,\n", " 'written': 7,\n", " 'primarily': 1,\n", " 'oscars': 2,\n", " 'usually': 4,\n", " 'instead': 13,\n", " 'poor': 14,\n", " 'attempt': 3,\n", " 'books': 3,\n", " 'sell': 1,\n", " 'strays': 1,\n", " 'smacks': 1,\n", " 'trying': 8,\n", " 'hard': 6,\n", " 'awards': 3,\n", " 'relevance': 1,\n", " 'names': 3,\n", " 'gotham': 1,\n", " 'tries': 10,\n", " 'nominations': 1,\n", " 'criticism': 2,\n", " 'actors': 6,\n", " 'thought': 12,\n", " 'given': 6,\n", " 'wasnt': 10,\n", " 'dragged': 3,\n", " 'longer': 2,\n", " 'versions': 1,\n", " 'learned': 3,\n", " 'thing.': 2,\n", " 'borrows': 2,\n", " 'elements': 2,\n", " 'strive': 1,\n", " 'award': 5,\n", " 'well': 31,\n", " 'except': 5,\n", " 'writing': 6,\n", " 'shamelessly': 1,\n", " 'theatre': 4,\n", " 'edgy': 2,\n", " 'scary': 1,\n", " 'brain': 3,\n", " 'damaged': 3,\n", " 'sissy': 1,\n", " 'dances': 1,\n", " 'while': 9,\n", " 'annoying': 3,\n", " 'rude': 1,\n", " 'expects': 1,\n", " 'society': 19,\n", " 'pedestal': 1,\n", " 'hell': 6,\n", " 'hate': 2,\n", " 'complete': 4,\n", " 'crap': 4,\n", " 'really': 55,\n", " 'understand': 10,\n", " 'watching': 10,\n", " 'couldnt': 7,\n", " 'till': 3,\n", " 'boring': 47,\n", " 'myself': 7,\n", " 'extremely': 9,\n", " 'zero': 1,\n", " 'connection': 2,\n", " 'joaquin': 42,\n", " 'heath': 15,\n", " 'ledger': 11,\n", " 'needed': 5,\n", " 'asking': 2,\n", " 'these': 12,\n", " 'freaking': 1,\n", " 'normal': 3,\n", " 'same': 16,\n", " 'sentence': 1,\n", " 'joaquins': 3,\n", " 'never': 17,\n", " 'isnt': 7,\n", " 'disaster': 1,\n", " 'slow': 8,\n", " 'could': 11,\n", " 'keep': 2,\n", " 'falling': 4,\n", " 'asleep': 3,\n", " 'theater': 2,\n", " 'imagine': 2,\n", " 'future': 1,\n", " 'films': 13,\n", " 'alright': 2,\n", " 'film...': 2,\n", " 'ruined': 3,\n", " 'masterpiece': 16,\n", " 'raving': 1,\n", " 'predictable': 7,\n", " 'samey': 1,\n", " 'theres': 11,\n", " 'creativity': 1,\n", " 'king': 12,\n", " 'comedy': 12,\n", " 'copying': 1,\n", " 'almost': 8,\n", " 'pointless': 6,\n", " 'waste': 7,\n", " 'disappointing': 5,\n", " 'long': 13,\n", " 'possibly': 2,\n", " 'take': 9,\n", " 'tell': 5,\n", " 'audience': 9,\n", " 'mentally': 13,\n", " 'unwell': 1,\n", " 'surprising': 1,\n", " 'mother': 8,\n", " 'imaginative': 1,\n", " 'white': 3,\n", " 'sock': 1,\n", " \"don't\": 12,\n", " 'review': 12,\n", " 'movies,': 2,\n", " 'one...': 2,\n", " 'watched': 3,\n", " 'site': 1,\n", " 'absolutely': 6,\n", " 'little': 13,\n", " 'else': 7,\n", " 'found': 6,\n", " 'longish': 1,\n", " 'fall': 5,\n", " 'mean': 10,\n", " 'entertain': 3,\n", " 'yourself': 1,\n", " 'washing': 1,\n", " 'machine': 1,\n", " 'going': 11,\n", " 'straight': 1,\n", " 'anyone': 4,\n", " 'butt!': 2,\n", " 'claiming': 1,\n", " 'ridiculous': 3,\n", " 'walk': 6,\n", " 'happens': 10,\n", " 'predict': 1,\n", " 'advance': 1,\n", " 'rather': 7,\n", " 'relies': 1,\n", " 'fascinated': 3,\n", " 'antics': 3,\n", " 'psychotic': 3,\n", " 'nutcase': 1,\n", " 'whilst': 1,\n", " 'convince': 1,\n", " 'somehow': 3,\n", " 'heroic': 1,\n", " 'highly': 8,\n", " 'nice': 3,\n", " 'excellent': 5,\n", " 'suffers': 1,\n", " 'three': 4,\n", " 'uninteresting': 3,\n", " 'dialog': 1,\n", " 'pace': 2,\n", " 'lengthy': 1,\n", " 'number': 1,\n", " 'ideas': 5,\n", " 'combined': 2,\n", " 'more': 45,\n", " 'destroy': 1,\n", " 'look': 17,\n", " 'left': 12,\n", " 'beside': 1,\n", " 'genre': 1,\n", " 'supposed': 4,\n", " 'thriller': 3,\n", " 'addition': 1,\n", " 'crime': 3,\n", " 'drama': 2,\n", " 'cannot': 4,\n", " 'exaggerated': 3,\n", " 'high': 9,\n", " 'ratings': 4,\n", " 'want': 23,\n", " 'fair': 1,\n", " 'although': 7,\n", " 'stars': 7,\n", " 'definitely': 4,\n", " 'worth': 6,\n", " 'consequently': 1,\n", " 'skip': 3,\n", " '10/10': 2,\n", " 'actual': 9,\n", " 'unbiased': 2,\n", " 'review.': 2,\n", " 'titles': 2,\n", " 'says': 6,\n", " 'marvel': 2,\n", " 'hardcore': 1,\n", " 'check': 1,\n", " 'profiles': 1,\n", " 'where': 15,\n", " 'fans': 2,\n", " 'opposite': 1,\n", " 'pure': 3,\n", " 'simple': 3,\n", " 'truth': 1,\n", " 'horrible': 6,\n", " 'worst': 4,\n", " 'pretty': 5,\n", " 'remake': 2,\n", " 'shots': 3,\n", " 'exactly': 1,\n", " 'ripping': 1,\n", " 'aside': 1,\n", " 'illness': 14,\n", " 'psychology': 2,\n", " 'slapped': 2,\n", " 'title': 8,\n", " 'draw': 2,\n", " 'expect': 2,\n", " 'hoping': 3,\n", " 'wrong': 10,\n", " 'agree': 3,\n", " 'portraying': 1,\n", " 'issues': 5,\n", " 'though': 10,\n", " 'call': 1,\n", " 'oscar': 12,\n", " 'worthy': 8,\n", " 'stretch': 1,\n", " 'notice': 3,\n", " 'critics': 5,\n", " 'saying': 11,\n", " 'different': 21,\n", " 'perspective': 3,\n", " 'each': 5,\n", " 'goes': 6,\n", " 'audio': 1,\n", " 'music': 1,\n", " 'certain': 3,\n", " 'aspects': 1,\n", " 'shot': 5,\n", " 'camera': 3,\n", " 'words': 2,\n", " 'enjoy': 2,\n", " 'critic': 3,\n", " 'cinema': 7,\n", " 'aspect': 3,\n", " 'viewers': 4,\n", " 'disappointed': 12,\n", " 'unlike': 1,\n", " 'fascination': 1,\n", " 'version': 11,\n", " 'term': 2,\n", " 'lightly': 2,\n", " 'indeed': 4,\n", " 'fact': 8,\n", " 'gone': 4,\n", " 'kids': 3,\n", " 'knowing': 1,\n", " 'rated': 2,\n", " 'graphic': 3,\n", " 'also': 20,\n", " 'promotes': 1,\n", " 'violence': 13,\n", " 'guns': 2,\n", " 'uncomfortable': 4,\n", " 'country': 1,\n", " 'rent': 2,\n", " 'lastly': 1,\n", " 'enjoyed': 2,\n", " 'picture': 1,\n", " 'past': 3,\n", " 'course': 4,\n", " 'lets': 3,\n", " '2001': 1,\n", " 'kings': 3,\n", " 'speech': 2,\n", " 'bought': 1,\n", " 'likely': 2,\n", " 'probably': 7,\n", " 'forgot': 2,\n", " 'soon': 1,\n", " 'after': 15,\n", " 'list': 1,\n", " 'didnt': 17,\n", " 'included': 2,\n", " 'inception': 2,\n", " 'true': 9,\n", " 'grit': 1,\n", " 'once': 5,\n", " 'raved': 1,\n", " 'case': 3,\n", " 'forget': 1,\n", " 'week': 1,\n", " 'labeled': 1,\n", " 'labeling': 1,\n", " 'attention': 3,\n", " 'cheap': 3,\n", " 'tactic': 2,\n", " 'overhyped': 10,\n", " 'slowwwwww': 1,\n", " 'gladly': 1,\n", " 'half': 13,\n", " 'until': 5,\n", " 'usual': 6,\n", " 'must': 6,\n", " 'gore': 1,\n", " 'disney': 1,\n", " 'hear': 2,\n", " 'thumbs': 2,\n", " 'question': 6,\n", " 'below': 1,\n", " 'reviewing': 1,\n", " 'performance': 37,\n", " 'storyline': 12,\n", " 'played': 2,\n", " 'literally': 2,\n", " 'hats': 1,\n", " 'discrediting': 1,\n", " 'whatsoever': 1,\n", " 'reason': 10,\n", " 'drawn': 3,\n", " 'winded': 2,\n", " 'kept': 3,\n", " 'agreeing': 1,\n", " 'jumping': 1,\n", " 'band': 1,\n", " 'wagon': 1,\n", " 'easily': 4,\n", " 'create': 1,\n", " 'within': 2,\n", " 'hour': 7,\n", " 'push': 1,\n", " 'ything': 1,\n", " 'villian': 1,\n", " 'based': 7,\n", " 'superhero': 6,\n", " 'aware': 3,\n", " 'however': 11,\n", " 'halloween': 1,\n", " 'meets': 1,\n", " 'physcotic': 1,\n", " 'escapee': 1,\n", " 'decides': 2,\n", " 'kill': 8,\n", " 'sounds': 1,\n", " 'michael': 3,\n", " 'myers': 2,\n", " 'proud': 1,\n", " 'brilliant': 9,\n", " 'love': 15,\n", " 'pheonixs': 1,\n", " 'ought': 1,\n", " 'please': 2,\n", " 'process': 2,\n", " 'receive': 1,\n", " 'sheep': 2,\n", " 'write': 2,\n", " 'compelled': 1,\n", " 'thoughts': 3,\n", " 'head': 2,\n", " 'apparently': 2,\n", " 'quite': 6,\n", " 'peoples': 1,\n", " 'heads': 1,\n", " 'comes': 1,\n", " 'perception': 2,\n", " 'order': 3,\n", " 'mine': 1,\n", " 'anybody': 1,\n", " 'elses': 1,\n", " 'critique': 1,\n", " 'following': 1,\n", " 'dissapointing': 4,\n", " 'boring!!!': 2,\n", " 'wonderful': 2,\n", " 'role': 12,\n", " 'orgin': 2,\n", " 'buffalo': 2,\n", " 'bill': 2,\n", " 'silence': 2,\n", " 'lambs': 2,\n", " 'depressing': 8,\n", " 'limp': 2,\n", " 'wristed': 2,\n", " 'whith': 1,\n", " 'feminine': 2,\n", " 'dancing': 7,\n", " 'masculinity': 1,\n", " 'remember': 1,\n", " 'dark,': 6,\n", " 'depressing,': 2,\n", " 'slow,': 2,\n", " 'heavy,': 2,\n", " 'kudos': 1,\n", " 'tough': 1,\n", " 'backstory': 1,\n", " 'sorry': 6,\n", " 'genres': 2,\n", " 'simply': 8,\n", " 'stay': 2,\n", " 'heavy': 4,\n", " 'spoon': 2,\n", " 'point': 14,\n", " 'depressed': 5,\n", " 'ready': 1,\n", " 'react': 1,\n", " 'keith': 2,\n", " 'comments': 1,\n", " 'perhaps': 5,\n", " 'paid': 1,\n", " 'ledgers': 11,\n", " 'inventive': 1,\n", " 'charismatic': 2,\n", " 'maniacal': 2,\n", " 'creepy': 1,\n", " 'batman': 26,\n", " 'ecosystem': 1,\n", " 'fills': 1,\n", " 'relationship': 3,\n", " 'cathartic': 1,\n", " 'moment': 11,\n", " 'catalyze': 1,\n", " 'reaction': 3,\n", " 'paced': 3,\n", " 'told': 6,\n", " 'choice': 2,\n", " 'evening': 1,\n", " 'gambling': 2,\n", " 'addicted': 2,\n", " 'director': 7,\n", " 'scorsese': 6,\n", " 'overlong': 1,\n", " 'dull': 3,\n", " 'feed': 1,\n", " 'network': 3,\n", " 'basic': 1,\n", " 'carbon': 1,\n", " 'plots': 1,\n", " 'lifted': 1,\n", " 'find': 6,\n", " 'become': 7,\n", " 'psyco': 1,\n", " 'coudnt': 1,\n", " 'entertainment': 9,\n", " 'cinematic': 2,\n", " 'experience': 2,\n", " 'fantastic': 3,\n", " 'ways': 4,\n", " 'awful': 3,\n", " 'blank': 2,\n", " 'slate': 1,\n", " 'study': 6,\n", " 'crazy': 10,\n", " 'over-hyped,': 2,\n", " 'overacted': 3,\n", " 'proper': 5,\n", " 'millennial': 2,\n", " 'absolute': 5,\n", " 'disappointment': 2,\n", " 'believed': 1,\n", " 'fool': 1,\n", " 'person': 14,\n", " 'stupid': 3,\n", " 'cringe': 4,\n", " 'happening': 1,\n", " 'smoking': 2,\n", " 'around': 10,\n", " 'action': 2,\n", " 'substance': 3,\n", " 'humor': 2,\n", " 'everything': 9,\n", " 'disturbing': 2,\n", " 'respected': 1,\n", " 'refer': 1,\n", " 'powerful': 2,\n", " 'illustration': 1,\n", " 'loners': 1,\n", " 'dangerous': 1,\n", " 'themselves': 4,\n", " 'others': 1,\n", " 'theyre': 4,\n", " 'untreated': 1,\n", " 'educated': 2,\n", " 'standpoint': 1,\n", " 'millions': 1,\n", " 'goers': 1,\n", " 'cause': 2,\n", " 'worry': 1,\n", " 'impact': 3,\n", " 'kind': 4,\n", " 'societys': 1,\n", " 'problems': 2,\n", " 'goodness': 1,\n", " 'driven': 3,\n", " 'further': 3,\n", " 'fearful': 1,\n", " 'repercussions': 1,\n", " 'stigmatisation': 1,\n", " 'prejudice': 1,\n", " 'bullying': 1,\n", " 'right': 2,\n", " 'seem': 9,\n", " 'care': 3,\n", " 'such': 12,\n", " 'content': 2,\n", " 'less': 5,\n", " 'cinematography': 7,\n", " 'otherwise': 5,\n", " 'rehash': 2,\n", " 'thats': 16,\n", " 'exploitation': 1,\n", " 'misrepresentation': 1,\n", " 'pathologies': 1,\n", " 'unforgiveable': 1,\n", " 'fanboys': 2,\n", " 'forgotten?': 2,\n", " 'throughout': 3,\n", " 'history': 3,\n", " 'always': 10,\n", " 'replaced': 1,\n", " 'nature': 4,\n", " 'paganism': 1,\n", " 'translated': 1,\n", " 'devil': 2,\n", " 'roman': 1,\n", " 'catholicism': 1,\n", " 'bring': 3,\n", " 'social': 3,\n", " 'coherence': 1,\n", " 'figure': 1,\n", " 'represent': 3,\n", " 'meticulous': 2,\n", " 'forgotten': 3,\n", " 'hurts': 1,\n", " 'favorite': 2,\n", " 'broke': 1,\n", " 'golden': 1,\n", " 'rule': 1,\n", " 'laid': 1,\n", " 'robert': 4,\n", " 'downey': 1,\n", " 'tropic': 1,\n", " 'thunder': 1,\n", " 'full': 5,\n", " 'planning': 2,\n", " 'cunning': 2,\n", " 'depth': 6,\n", " 'chaotic': 1,\n", " 'narcissism': 2,\n", " 'excellently': 2,\n", " 'depicted': 1,\n", " 'eternal': 1,\n", " 'opening': 1,\n", " 'scene': 8,\n", " 'waiting': 6,\n", " 'keyser': 1,\n", " 'souse': 1,\n", " 'control': 5,\n", " 'display': 2,\n", " 'black': 1,\n", " 'mirror': 2,\n", " 'pulling': 1,\n", " 'strings': 1,\n", " 'along': 3,\n", " 'came': 3,\n", " 'sorrowful': 1,\n", " 'victim': 2,\n", " 'threw': 2,\n", " 'tantrum': 1,\n", " 'lost': 5,\n", " 'empowered': 1,\n", " 'taking': 3,\n", " 'becoming': 4,\n", " 'anarchistic': 1,\n", " 'commentator': 1,\n", " 'forest': 1,\n", " 'gump': 1,\n", " 'rain': 1,\n", " 'robot': 1,\n", " 'depictions': 1,\n", " 'suffering': 1,\n", " 'writers': 1,\n", " 'remembered': 3,\n", " 'level': 5,\n", " 'ingenuity': 1,\n", " 'leaves': 3,\n", " 'understanding': 2,\n", " 'cognitive': 1,\n", " 'approach': 1,\n", " 'phillips': 7,\n", " 'displayed': 2,\n", " 'cruel': 1,\n", " 'fist': 1,\n", " 'banished': 1,\n", " 'vulgar': 1,\n", " 'insult': 1,\n", " 'narrative': 3,\n", " 'intriguing': 3,\n", " 'dualistic': 1,\n", " 'decades': 3,\n", " 'meet': 1,\n", " 'universe': 8,\n", " 'sequel': 1,\n", " 'jokers': 7,\n", " 'lord': 1,\n", " 'life': 9,\n", " 'grudge': 1,\n", " 'match': 1,\n", " 'between': 6,\n", " 'christian': 1,\n", " 'bales': 1,\n", " 'machinist': 1,\n", " 'malnutritioned': 1,\n", " 'clown': 14,\n", " 'prince': 1,\n", " 'threatening': 2,\n", " 'forever': 1,\n", " 'joaquim': 1,\n", " 'mark': 1,\n", " 'sorely': 1,\n", " 'rewatch': 2,\n", " 'something': 5,\n", " 'extended': 1,\n", " 'trailer': 6,\n", " 'exposed': 1,\n", " 'revelations': 1,\n", " 'challenged': 6,\n", " 'presented': 1,\n", " 'basically': 7,\n", " 'superlatives': 1,\n", " 'explanations': 1,\n", " 'adorning': 1,\n", " 'without': 16,\n", " 'incredible': 2,\n", " 'shadowed': 1,\n", " 'truly': 2,\n", " 'went': 3,\n", " 'night': 4,\n", " 'positive': 2,\n", " 'honestly': 4,\n", " 'totally': 9,\n", " 'bored': 7,\n", " 'thinking': 2,\n", " 'start': 3,\n", " 'gruesome': 1,\n", " 'makes': 13,\n", " 'leave': 3,\n", " 'short': 5,\n", " 'leaving': 1,\n", " 'realy': 3,\n", " 'whit': 1,\n", " 'happy': 4,\n", " 'grave': 2,\n", " 'bad...': 2,\n", " 'whole': 8,\n", " 'apperently': 1,\n", " 'completely': 5,\n", " 'acted': 6,\n", " 'trash': 3,\n", " 'weak': 2,\n", " 'face': 7,\n", " 'paint': 1,\n", " 'drug': 1,\n", " 'addict': 1,\n", " 'loser': 3,\n", " 'blames': 1,\n", " 'everybody': 2,\n", " 'failings': 1,\n", " 'mediocre': 3,\n", " 'offensive': 2,\n", " 'ultra': 2,\n", " 'liberal': 2,\n", " 'preaching': 1,\n", " 'millennials': 2,\n", " 'reinforces': 1,\n", " 'school': 1,\n", " 'college': 1,\n", " 'teachings': 1,\n", " 'fault': 1,\n", " 'parents': 1,\n", " 'boss': 2,\n", " 'government': 1,\n", " 'neighbors': 1,\n", " 'cops': 1,\n", " 'imdb': 2,\n", " 'superior': 2,\n", " 'godfather': 1,\n", " 'generation': 5,\n", " 'pathetic': 3,\n", " 'hopes': 4,\n", " 'werent': 1,\n", " 'amazing': 2,\n", " 'tedious': 3,\n", " 'experienced': 1,\n", " 'childhood': 3,\n", " 'trauma': 2,\n", " 'spend': 1,\n", " 'asylum': 1,\n", " 'seven': 1,\n", " 'medication': 1,\n", " 'effect': 4,\n", " 'metro': 1,\n", " 'incident': 1,\n", " 'breaking': 4,\n", " 'chain': 1,\n", " 'free': 2,\n", " 'himself': 5,\n", " 'change': 2,\n", " 'evolve': 1,\n", " 'beginning': 4,\n", " 'seventy': 1,\n", " 'percent': 1,\n", " 'screen': 4,\n", " 'dedicated': 1,\n", " 'arthur': 13,\n", " 'fleck': 9,\n", " 'support': 1,\n", " 'lack': 4,\n", " 'soul': 2,\n", " 'deniero': 1,\n", " 'disappoints': 1,\n", " 'aura': 2,\n", " 'somewhere': 3,\n", " 'nineties': 1,\n", " 'wait': 4,\n", " 'anything': 8,\n", " 'espaically': 1,\n", " 'repeated': 2,\n", " 'space': 1,\n", " 'alot': 1,\n", " 'nothings': 1,\n", " 'drag': 1,\n", " 'suspense': 1,\n", " 'work': 7,\n", " 'begin': 2,\n", " 'turns': 2,\n", " 'unbelievable': 1,\n", " 'smart': 4,\n", " 'using': 2,\n", " 'intuition': 1,\n", " 'batmans': 2,\n", " 'greatest': 1,\n", " 'embarrassing': 1,\n", " 'stand': 2,\n", " 'unrelated': 2,\n", " 'series': 3,\n", " 'appreciated': 1,\n", " 'main': 7,\n", " 'decent': 8,\n", " 'strictly': 1,\n", " 'come': 5,\n", " 'childcare': 1,\n", " 'arrangements': 1,\n", " 'wish': 1,\n", " 'home': 2,\n", " 'repeating': 1,\n", " 'subject': 2,\n", " 'missing': 3,\n", " 'deserve': 3,\n", " 'pursuing': 1,\n", " 'career': 1,\n", " 'talent': 1,\n", " 'beaten': 1,\n", " 'ridiculed': 1,\n", " 'standard': 1,\n", " 'rated.': 2,\n", " 'makeup': 6,\n", " 'reviewers': 3,\n", " 'guess': 2,\n", " 'disturbed': 7,\n", " 'guys': 1,\n", " ...})" ] }, "execution_count": 105, "metadata": {}, "output_type": "execute_result" } ], "source": [ "big_bow_n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "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.7.3" } }, "nbformat": 4, "nbformat_minor": 2 }