{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "sources:\n", "\n", "* https://github.com/explosion/spacy-notebooks/blob/master/notebooks/conference_notebooks/modern_nlp_in_python.ipynb\n", "* https://spacy.io/usage/\n", "* https://github.com/explosion/spacy-notebooks/blob/master/notebooks/conference_notebooks/advanced_text_analysis.ipynb\n", "\n", "\n", "\n", "spaCy is an industrial-strength natural language processing (NLP) library for Python. spaCy's goal is to take recent advancements in natural language processing out of research papers and put them in the hands of users to build production software.\n", "\n", "spaCy handles many tasks commonly associated with building an end-to-end natural language processing pipeline:\n", "\n", "* Tokenization\n", "* Text normalization, such as lowercasing, stemming/lemmatization\n", "* Part-of-speech tagging\n", "* Syntactic dependency parsing\n", "* Sentence boundary detection\n", "* Named entity recognition and annotation\n", " \n", "In the \"batteries included\" Python tradition, spaCy contains built-in data and models which you can use out-of-the-box for processing general-purpose English language text:\n", "\n", "* Large English vocabulary, including stopword lists\n", "* Token \"probabilities\"\n", "* Word vectors\n", " \n", "spaCy is written in optimized Cython, which means it's fast. According to a few independent sources, it's the fastest syntactic parser available in any language. Key pieces of the spaCy parsing pipeline are written in pure C, enabling efficient multithreading (i.e., spaCy can release the GIL)." ] }, { "cell_type": "code", "execution_count": 399, "metadata": {}, "outputs": [], "source": [ "import spacy\n", "from spacy import displacy\n", "from itertools import islice\n", "%run script.py\n", "%matplotlib inline\n", "import numpy as np\n", "\n", "nlp = spacy.load('en')" ] }, { "cell_type": "code", "execution_count": 400, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Sure, we all wish that Trump treated Justin Trudeau or Angela Merkel with the respect that he now shows Kim Jong-un. Yes, it seems that Trump has been played by Kim. Yet another way of putting it is that Trump is finally investing in the kind of diplomatic engagement that he used to denounce, and that we should all applaud.\n", "\n", "Trump’s newfound pragmatism is infinitely preferable to the threat of nuclear war that used to hang over all of us, so it’s mystifying to see Democrats carping about any possible North Korea deal." ] }, "execution_count": 400, "metadata": {}, "output_type": "execute_result" } ], "source": [ "nyt = nlp(\"\"\"Sure, we all wish that Trump treated Justin Trudeau or Angela Merkel with the respect that he now shows Kim Jong-un. Yes, it seems that Trump has been played by Kim. Yet another way of putting it is that Trump is finally investing in the kind of diplomatic engagement that he used to denounce, and that we should all applaud.\n", "\n", "Trump’s newfound pragmatism is infinitely preferable to the threat of nuclear war that used to hang over all of us, so it’s mystifying to see Democrats carping about any possible North Korea deal.\"\"\")\n", "nyt" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "# tokenization\n", "\n", "nlp.Defaults.tokenizer_exceptions" ] }, { "cell_type": "code", "execution_count": 401, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 Sure\n", "\n", "1 ,\n", "\n", "2 we\n", "\n", "3 all\n", "\n", "4 wish\n", "\n", "5 that\n", "\n", "6 Trump\n", "\n", "7 treated\n", "\n", "8 Justin\n", "\n", "9 Trudeau\n", "\n" ] } ], "source": [ "for i, s in islice(enumerate(nyt), 10):\n", " print(i, s)\n", " print()" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "# sentence segmentation" ] }, { "cell_type": "code", "execution_count": 402, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 Sure, we all wish that Trump treated Justin Trudeau or Angela Merkel with the respect that he now shows Kim Jong-un.\n", "\n", "1 Yes, it seems that Trump has been played by Kim.\n", "\n", "2 Yet another way of putting it is that Trump is finally investing in the kind of diplomatic engagement that he used to denounce, and that we should all applaud.\n", "\n", "\n", "\n", "3 Trump’s newfound pragmatism is infinitely preferable to the threat of nuclear war that used to hang over all of us, so it’s mystifying to see Democrats carping about any possible North Korea deal.\n", "\n" ] } ], "source": [ "for i, s in islice(enumerate(nyt.sents), 5):\n", " print(i, s)\n", " print()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# noun chunks" ] }, { "cell_type": "code", "execution_count": 403, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 we\n", "\n", "1 Trump\n", "\n", "2 Justin Trudeau\n", "\n", "3 Angela Merkel\n", "\n", "4 the respect\n", "\n" ] } ], "source": [ "for i, s in islice(enumerate(nyt.noun_chunks), 5):\n", " print(i, s)\n", " print()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Part Of Speech\n", "\n", "word function inside a sentence" ] }, { "cell_type": "code", "execution_count": 404, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Trudeau" ] }, "execution_count": 404, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trudeau = nyt[9]\n", "trudeau" ] }, { "cell_type": "code", "execution_count": 405, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('PROPN', 'proper noun')" ] }, "execution_count": 405, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trudeau.pos_, POS_TAGS[trudeau.pos_]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# dependency relation" ] }, { "cell_type": "code", "execution_count": 406, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('dobj', 'Direct Object')" ] }, "execution_count": 406, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trudeau.dep_, DEP_TAGS[trudeau.dep_]" ] }, { "cell_type": "code", "execution_count": 407, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", " Sure,\n", " INTJ\n", "\n", "\n", "\n", " we\n", " PRON\n", "\n", "\n", "\n", " all\n", " DET\n", "\n", "\n", "\n", " wish\n", " VERB\n", "\n", "\n", "\n", " that\n", " ADP\n", "\n", "\n", "\n", " Trump\n", " PROPN\n", "\n", "\n", "\n", " treated\n", " VERB\n", "\n", "\n", "\n", " Justin\n", " PROPN\n", "\n", "\n", "\n", " Trudeau\n", " PROPN\n", "\n", "\n", "\n", " or\n", " CCONJ\n", "\n", "\n", "\n", " Angela\n", " PROPN\n", "\n", "\n", "\n", " Merkel\n", " PROPN\n", "\n", "\n", "\n", " with\n", " ADP\n", "\n", "\n", "\n", " the\n", " DET\n", "\n", "\n", "\n", " respect\n", " NOUN\n", "\n", "\n", "\n", " that\n", " ADJ\n", "\n", "\n", "\n", " he\n", " PRON\n", "\n", "\n", "\n", " now\n", " ADV\n", "\n", "\n", "\n", " shows\n", " VERB\n", "\n", "\n", "\n", " Kim\n", " PROPN\n", "\n", "\n", "\n", " Jong-\n", " PROPN\n", "\n", "\n", "\n", " un.\n", " PROPN\n", "\n", "\n", "\n", " \n", " \n", " intj\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " nsubj\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " appos\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " mark\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " nsubj\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " ccomp\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " compound\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " dobj\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " cc\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " compound\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " conj\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " prep\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " det\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " pobj\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " mark\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " nsubj\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " advmod\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " acl\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " compound\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " compound\n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " dobj\n", " \n", " \n", "\n", "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sen1_as_doc = next(nyt.sents).as_doc()\n", "\n", "displacy.render(sen1_as_doc, style='dep', jupyter=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# lemmatization" ] }, { "cell_type": "code", "execution_count": 408, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "treated" ] }, "execution_count": 408, "metadata": {}, "output_type": "execute_result" } ], "source": [ "treated = nyt[7]\n", "treated" ] }, { "cell_type": "code", "execution_count": 409, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'treat'" ] }, "execution_count": 409, "metadata": {}, "output_type": "execute_result" } ], "source": [ "treated.lemma_" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# shape" ] }, { "cell_type": "code", "execution_count": 410, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'Xxxxx'" ] }, "execution_count": 410, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trudeau.shape_" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# is alpha" ] }, { "cell_type": "code", "execution_count": 411, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 411, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trudeau.is_alpha" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# stopword\n", "\n", "very frequent words that carry only a tiny part of sentence's information\n", "\n", "nlp.Defaults.stop_words" ] }, { "cell_type": "code", "execution_count": 412, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(False, True)" ] }, "execution_count": 412, "metadata": {}, "output_type": "execute_result" } ], "source": [ "that = nyt[5]\n", "trudeau.is_stop, that.is_stop" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# named entity recognition" ] }, { "cell_type": "code", "execution_count": 413, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 Trump\n", "\n", "1 Justin Trudeau\n", "\n", "2 Angela Merkel\n", "\n", "3 Kim Jong-un\n", "\n", "4 Trump\n", "\n", "5 Kim\n", "\n", "6 Trump\n", "\n", "7 Trump’s\n", "\n", "8 Democrats\n", "\n", "9 North Korea\n", "\n" ] } ], "source": [ "for i, s in enumerate(nyt.ents):\n", " print(i, s)\n", " print()" ] }, { "cell_type": "code", "execution_count": 414, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
Sure, we all wish that \n", "\n", " Trump\n", " ORG\n", "\n", " treated \n", "\n", " Justin Trudeau\n", " PERSON\n", "\n", " or \n", "\n", " Angela Merkel\n", " PERSON\n", "\n", " with the respect that he now shows \n", "\n", " Kim Jong-un\n", " PERSON\n", "\n", ". Yes, it seems that \n", "\n", " Trump\n", " ORG\n", "\n", " has been played by \n", "\n", " Kim\n", " PERSON\n", "\n", ". Yet another way of putting it is that \n", "\n", " Trump\n", " PERSON\n", "\n", " is finally investing in the kind of diplomatic engagement that he used to denounce, and that we should all applaud.

\n", "\n", " Trump’s\n", " ORG\n", "\n", " newfound pragmatism is infinitely preferable to the threat of nuclear war that used to hang over all of us, so it’s mystifying to see \n", "\n", " Democrats\n", " NORP\n", "\n", " carping about any possible \n", "\n", " North Korea\n", " GPE\n", "\n", " deal.
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "displacy.render(nyt, style='ent', jupyter=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# to DataFrame" ] }, { "cell_type": "code", "execution_count": 415, "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", "
TextPOSDepTagShapeAlphaStopHeadLeftRightEntityEntIOBLemma
0SureinterjectionintjUHXxxxX--wishSureSureOsure
1,punctuationpunct,,----wish,,O,
2wepronounnsubjPRPxxXXwishweallO-PRON-
3alldeterminerapposDTxxxXXweallallOall
4wishverbROOTVBPxxxxX--wishSure.Owish
5thatadpositionmarkINxxxxXXtreatedthatthatOthat
6Trumpproper nounnsubjNNPXxxxxX--treatedTrumpTrumpORGBtrump
7treatedverbccompVBDxxxxX--wishthatunOtreat
8Justinproper nouncompoundNNPXxxxxX--TrudeauJustinJustinPERSONBjustin
9Trudeauproper noundobjNNPXxxxxX--treatedJustinMerkelPERSONItrudeau
\n", "
" ], "text/plain": [ " Text POS Dep Tag Shape Alpha Stop Head Left \\\n", "0 Sure interjection intj UH Xxxx X -- wish Sure \n", "1 , punctuation punct , , -- -- wish , \n", "2 we pronoun nsubj PRP xx X X wish we \n", "3 all determiner appos DT xxx X X we all \n", "4 wish verb ROOT VBP xxxx X -- wish Sure \n", "5 that adposition mark IN xxxx X X treated that \n", "6 Trump proper noun nsubj NNP Xxxxx X -- treated Trump \n", "7 treated verb ccomp VBD xxxx X -- wish that \n", "8 Justin proper noun compound NNP Xxxxx X -- Trudeau Justin \n", "9 Trudeau proper noun dobj NNP Xxxxx X -- treated Justin \n", "\n", " Right Entity EntIOB Lemma \n", "0 Sure O sure \n", "1 , O , \n", "2 all O -PRON- \n", "3 all O all \n", "4 . O wish \n", "5 that O that \n", "6 Trump ORG B trump \n", "7 un O treat \n", "8 Justin PERSON B justin \n", "9 Merkel PERSON I trudeau " ] }, "execution_count": 415, "metadata": {}, "output_type": "execute_result" } ], "source": [ "doc_to_df(nyt).head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# word vector" ] }, { "cell_type": "code", "execution_count": 416, "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", "
ParisBrazilmangoapple
Paris1.0000000.4366250.2760510.062527
Brazil0.4366251.0000000.315326-0.039096
mango0.2760510.3153261.0000000.400696
apple0.062527-0.0390960.4006961.000000
\n", "
" ], "text/plain": [ " Paris Brazil mango apple\n", "Paris 1.000000 0.436625 0.276051 0.062527\n", "Brazil 0.436625 1.000000 0.315326 -0.039096\n", "mango 0.276051 0.315326 1.000000 0.400696\n", "apple 0.062527 -0.039096 0.400696 1.000000" ] }, "execution_count": 416, "metadata": {}, "output_type": "execute_result" } ], "source": [ "doc = nlp('Paris Brazil mango apple')\n", "\n", "from itertools import product\n", "import numpy as np\n", "\n", "pd.DataFrame(np.array([w1.similarity(w2) for w1, w2 in product(doc, doc)]).reshape((4, 4)), index=doc, columns=doc)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# example" ] }, { "cell_type": "code", "execution_count": 417, "metadata": {}, "outputs": [], "source": [ "nlp = spacy.load('en_core_web_lg')" ] }, { "cell_type": "code", "execution_count": 418, "metadata": {}, "outputs": [], "source": [ "with open('data/pg50133 - cleaned.txt') as f:\n", " \n", " # https://chartbeat-labs.github.io/textacy/api_reference.html#textacy.preprocess.normalize_whitespace\n", " hp = nlp(f.read().replace('\\n', ' '))" ] }, { "cell_type": "code", "execution_count": 419, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\"Gorgons, and Hydras, and Chimeras,dire stories of Celæno and the Harpies,may reproduce themselves in the brain of superstition, but they were there before. They are transcripts, types, the archetypes are in us, and eternal. How else should the recital of that which we know in a waking sense to be false come to affect us at all? Is it that we naturally conceive terror from such objects, considered in their capacity of being able to inflict upon us bodily injury? Oh, least of all" ] }, "execution_count": 419, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hp[:100]" ] }, { "cell_type": "code", "execution_count": 420, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 \"Gorgons, and Hydras, and Chimeras,dire stories of Celæno and the Harpies,may reproduce themselves in the brain of superstition, but they were there before.\n", "\n", "1 They are transcripts, types, the archetypes are in us, and eternal.\n", "\n", "2 How else should the recital of that which we know in a waking sense to be false come to affect us at all?\n", "\n", "3 Is it that we naturally conceive terror from such objects, considered in their capacity of being able to inflict upon us bodily injury?\n", "\n", "4 Oh, least of all!\n", "\n" ] } ], "source": [ "for i, s in enumerate(islice(hp.sents, 5)):\n", " print(i, s)\n", " print()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# sentence len statistics" ] }, { "cell_type": "code", "execution_count": 421, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 421, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "pd.Series((len(sent.string) for sent in hp.sents)).plot.hist(bins=40, figsize=(10, 5))" ] }, { "cell_type": "code", "execution_count": 422, "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", "
TextPOSDepTagShapeAlphaStopHeadLeftRightEntityEntIOBLemma
0\"GorgonsnounnsubjNNS\"Xxxxx----reproduce\"Gorgons,O\"gorgon
1,punctuationpunct,,----\"Gorgons,,O,
2andcoordinating conjunctionccCCxxxX--\"GorgonsandandOand
3Hydrasproper nounconjNNPSXxxxxX--\"GorgonsHydras,ORGBhydras
4,punctuationpunct,,----Hydras,,O,
5andcoordinating conjunctionccCCxxxX--HydrasandandOand
6Chimerasproper nounconjNNPSXxxxxX--HydrasChimeras,PRODUCTBchimeras
7,punctuationpunct,,----Chimeras,,O,
8direadjectiveamodJJxxxxX--storiesdiredireOdire
9storiesnounapposNNSxxxxX--ChimerasdireHarpiesOstory
\n", "
" ], "text/plain": [ " Text POS Dep Tag Shape Alpha Stop \\\n", "0 \"Gorgons noun nsubj NNS \"Xxxxx -- -- \n", "1 , punctuation punct , , -- -- \n", "2 and coordinating conjunction cc CC xxx X -- \n", "3 Hydras proper noun conj NNPS Xxxxx X -- \n", "4 , punctuation punct , , -- -- \n", "5 and coordinating conjunction cc CC xxx X -- \n", "6 Chimeras proper noun conj NNPS Xxxxx X -- \n", "7 , punctuation punct , , -- -- \n", "8 dire adjective amod JJ xxxx X -- \n", "9 stories noun appos NNS xxxx X -- \n", "\n", " Head Left Right Entity EntIOB Lemma \n", "0 reproduce \"Gorgons , O \"gorgon \n", "1 \"Gorgons , , O , \n", "2 \"Gorgons and and O and \n", "3 \"Gorgons Hydras , ORG B hydras \n", "4 Hydras , , O , \n", "5 Hydras and and O and \n", "6 Hydras Chimeras , PRODUCT B chimeras \n", "7 Chimeras , , O , \n", "8 stories dire dire O dire \n", "9 Chimeras dire Harpies O story " ] }, "execution_count": 422, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hp_df = doc_to_df(hp)\n", "hp_df.head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# most frequent entities" ] }, { "cell_type": "code", "execution_count": 423, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Whateley 73\n", "Armitage 52\n", "Wilbur 48\n", "the 40\n", "Dunwich 36\n", "Name: Text, dtype: int64" ] }, "execution_count": 423, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hp_df[hp_df.Entity != ''].Text.value_counts().head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# example of sentence annotated with entities" ] }, { "cell_type": "code", "execution_count": 424, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\"Gorgons, and \n", "\n", " Hydras\n", " ORG\n", "\n", ", and \n", "\n", " Chimeras\n", " PRODUCT\n", "\n", ",dire stories of \n", "\n", " Celæno\n", " ORG\n", "\n", " and the Harpies,may reproduce themselves in the brain of superstition, but they were there before.
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "displacy.render(next(hp.sents).as_doc(), style='ent', jupyter=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# frequency per POS" ] }, { "cell_type": "code", "execution_count": 425, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 425, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "hp_df.POS.value_counts().plot.barh(figsize=(12, 5))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# top 3 frequent lemmas per POS" ] }, { "cell_type": "code", "execution_count": 426, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "POS \n", "adjective -PRON- 246\n", " which 87\n", " that 62\n", " old 37\n", " great 35\n", "adposition of 616\n", " in 277\n", " to 146\n", " as 121\n", " with 117\n", "adverb not 98\n", " when 61\n", " there 55\n", " only 53\n", " then 37\n", "coordinating conjunction and 608\n", " but 97\n", " or 71\n", " yet 11\n", " nor 11\n", "determiner the 1298\n", " a 402\n", " an 137\n", " that 58\n", " no 57\n", "interjection oh 7\n", " gawd 5\n", " whar 4\n", " ef 3\n", " well 2\n", " ... \n", "other kin 2\n", " keerful 1\n", " haff 1\n", "particle to 227\n", " 's 107\n", " up 45\n", " out 27\n", " down 16\n", "pronoun -PRON- 810\n", " ye 23\n", " one 11\n", " yew 1\n", " hisself 1\n", "proper noun whateley 74\n", " armitage 52\n", " wilbur 48\n", " dunwich 37\n", " dr. 27\n", "punctuation , 1082\n", " . 642\n", " ' 223\n", " - 188\n", " \" 106\n", "space 146\n", " 1\n", "verb be 565\n", " have 213\n", " come 65\n", " seem 52\n", " see 51\n", "Name: Lemma, Length: 72, dtype: int64" ] }, "execution_count": 426, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hp_df.groupby('POS').apply(lambda g: g.Lemma.value_counts().nlargest(5))" ] }, { "cell_type": "code", "execution_count": 427, "metadata": {}, "outputs": [], "source": [ "# https://github.com/explosion/spacy-notebooks/blob/master/notebooks/conference_notebooks/advanced_text_analysis.ipynb\n", "# adapted\n", "def locations(test_condition, haystack): \n", " \"\"\" \n", " Make a list of locations, bin those into a histogram, \n", " and finally put it into a Pandas Series object so that we\n", " can later make it into a DataFrame. \n", " \"\"\"\n", " return pd.Series(np.histogram(\n", " [word.i for word in haystack \n", " if test_condition(word)], bins=30)[0])" ] }, { "cell_type": "code", "execution_count": 428, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([,\n", " ,\n", " ,\n", " ],\n", " dtype=object)" ] }, "execution_count": 428, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "pd.DataFrame(\n", " {lemma: locations(lambda word: word.lemma_ == lemma, hp) \n", " for lemma in ['old', 'great', 'whateley', 'cthulhu']}\n", ").plot(subplots=True, figsize=(12, 8), sharey=True)" ] }, { "cell_type": "code", "execution_count": 429, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 429, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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TmH4+cMZ2HkgccRx9/d302N0DyavmsyxFk33Zu4lbX1akVpFBiXJIiIiIkWGc44u9brw8YUf81iHx9i2bxv9x/XnujHXMWv9rBy/Z/b62ezN3Fuk6pFBSbKIiIhIkRMfF88FDS/gi4u/4MGTHyR9ezrXjbmOm8bexILNC/5y36lrppIQl0Bq9VwrFAoVJckiIiIiRVSx+GJ0b9KdLy/9kjtb38n8TfPpMboHd068k9/++A2wTXutqrUqEqOoD5fgdwAiIiIi4q/EhET6NO/D5Y0vZ9jCYQxbMIxxK8dxTv1zWLJ1CQNSBvgdYsRpJVlEREREAChbvCy3JN/C15d9zTVNr2Hc7+OAotX6LZtawImIiIhIjtbtXMfiLYvpXKez36GETF5bwKncQkRERERyVKN0DWqUruF3GL5QuYWIiIiISAAlySIiIiIiAYJKkp1zf3fOLXDOzXfODXfOlXTOJTnnpjvnfnXOfeic0+gsEREREYkpBU6SnXO1gNuBVM/zmgPxQA/gSeB5z/MaAVuBfqEIVEREREQkUoItt0gAEp1zCUApYC1wBjAy6+tDgYuDfAwRERERkYgqcJLsed5q4BlgJZYc/wnMAv7wPC8j626rgFo5fb9z7kbnXJpzLm3jxo0FDUNEREREJOSCKbeoCFwEJAHHAaWBc3O4a46NmD3Pe8PzvFTP81KrVq1a0DBEREREREIumHKLM4Hlnudt9DxvP/AJcApQIav8AqA2sCbIGEVEREREIiqYJHkl0M45V8o554AuwEJgAnB51n16A58FF6KIiIiISGQFU5M8HdugNxv4OetYbwD3AXc655YClYHBIYhTRERERCRighpL7XneQ8BDATf/BrQN5rgiIiIiIn7SxD0RERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCSAkmQRERERkQBKkkVEREREAihJFhEREREJoCRZRERERCRAUEmyc66Cc26kc26xc26Rc669c66Sc+4759yvWR8rhipYEREREZFICHYl+QVgjOd5TYCWwCLgfmCc53mNgHFZn4uIiIiIxIwCJ8nOuXLAacBgAM/z9nme9wdwETA0625DgYuDDVJiwIEDMP112LXF70hEREREghbMSnIDYCPwtnNujnPuLedcaaC653lrAbI+Vsvpm51zNzrn0pxzaRs3bgwiDIkK6dPg63th9B1+RyIiIiIStGCS5AQgBXjV87xWwE7yUVrhed4bnuelep6XWrVq1SDCkKiwcpp9XPgZLP7K31hEREREghRMkrwKWOV53vSsz0diSfN651xNgKyPG4ILUWJC+nSo1ACqN4cv74I92/yOSERERKTACpwke563Dkh3zp2QdVMXYCHwOdA767bewGdBRSjR78ABS5LrnQIXDILta2Hcf/yOSkRERKTAEoL8/tuA951zxYHfgD5Y4v2Rc64fsBK4IsjHkGi3eSns3gp1TobareHkm2D6a3DSFVD3ZL+jExEREcm3oJJkz/PmAqk5fKlLMMeVGJOeVY9cp519PONBWDwavrgd/jYJEkr4F5uIiIhIAWjingRv5XRIrARVGtnnJcrA+c/BxsUwZaC/sYmIiIgUgJJkCV76NCu1cO7QbY3PhuaXweRnYOMS/2ITERERKQAlyRKcnZutJrlO2yO/1vUJKFYKvhhgm/tEREREYoSSZAlOelYHwLrtjvxamWpwzqOwcirMfieiYYmIiIgEQ0myBCd9GsQVg+Na5fz15Ksh6TT47iHYtjaysYmIiIgUkJJkCU76DKjZEool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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "pd.DataFrame(\n", " {pos: locations(lambda word: word.pos_ == pos, hp) \n", " for pos in ['NOUN', 'ADV', 'VERB']}\n", ").plot(figsize=(12, 8), sharey=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# adjectives frequency per dependency head" ] }, { "cell_type": "code", "execution_count": 430, "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", "
Lemma-PRON-ableabnormalaboutabsurdaccurateaccursedacousticactualacute...worriedworthywrongwun'twustyellowyellowishyoungyoungishyouthful
Head
're0.00.00.00.00.00.00.00.00.00.0...0.00.00.00.00.00.00.00.00.00.0
's0.00.00.00.00.00.00.00.00.00.0...0.00.00.00.00.00.00.00.00.00.0
-0.00.00.00.00.00.00.00.00.00.0...0.00.00.00.00.00.00.00.00.00.0
;0.00.00.00.00.00.00.00.00.00.0...0.00.00.00.00.00.00.00.00.00.0
Alhazred0.00.00.00.00.00.00.00.00.00.0...0.00.00.00.00.00.00.00.00.00.0
Armitage0.00.00.00.00.00.00.00.00.00.0...0.00.00.00.00.00.00.00.00.00.0
August0.00.00.00.00.00.00.00.00.00.0...0.00.00.00.00.00.00.00.00.00.0
Bishop0.00.00.00.00.00.00.00.00.00.0...0.00.00.00.00.00.00.00.00.00.0
Bishops0.00.00.00.00.00.00.00.00.00.0...0.00.00.00.00.00.00.00.00.00.0
Cthulhu0.00.00.00.00.00.00.00.00.00.0...0.00.00.00.00.00.00.00.00.00.0
\n", "

10 rows × 728 columns

\n", "
" ], "text/plain": [ "Lemma -PRON- able abnormal about absurd accurate accursed acoustic \\\n", "Head \n", "'re 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", "'s 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", "- 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", "; 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", "Alhazred 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", "Armitage 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", "August 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", "Bishop 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", "Bishops 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", "Cthulhu 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", "\n", "Lemma actual acute ... worried worthy wrong wun't wust \\\n", "Head ... \n", "'re 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0 \n", "'s 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0 \n", "- 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0 \n", "; 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0 \n", "Alhazred 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0 \n", "Armitage 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0 \n", "August 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0 \n", "Bishop 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0 \n", "Bishops 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0 \n", "Cthulhu 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0 \n", "\n", "Lemma yellow yellowish young youngish youthful \n", "Head \n", "'re 0.0 0.0 0.0 0.0 0.0 \n", "'s 0.0 0.0 0.0 0.0 0.0 \n", "- 0.0 0.0 0.0 0.0 0.0 \n", "; 0.0 0.0 0.0 0.0 0.0 \n", "Alhazred 0.0 0.0 0.0 0.0 0.0 \n", "Armitage 0.0 0.0 0.0 0.0 0.0 \n", "August 0.0 0.0 0.0 0.0 0.0 \n", "Bishop 0.0 0.0 0.0 0.0 0.0 \n", "Bishops 0.0 0.0 0.0 0.0 0.0 \n", "Cthulhu 0.0 0.0 0.0 0.0 0.0 \n", "\n", "[10 rows x 728 columns]" ] }, "execution_count": 430, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# normalmente a palavra a qual o adjetivo se refere aparece como head na dependency tree\n", "head_of_adj = hp_df[hp_df.POS == 'adjective'].groupby('Head').Lemma.value_counts().unstack().fillna(0)\n", "head_of_adj.head(10)" ] }, { "cell_type": "code", "execution_count": 431, "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", "
HeadbookseyesfaceWhateley
Lemma
-PRON-1.03.01.00.0
all1.00.00.00.0
ancient2.00.00.00.0
bearded0.00.01.00.0
black0.01.00.01.0
chinless0.00.01.00.0
dark0.01.00.00.0
dim0.00.00.01.0
goatish0.00.02.00.0
gray0.01.00.00.0
great1.01.00.00.0
large0.01.00.00.0
late0.00.00.01.0
latin0.01.00.00.0
odorous1.00.00.00.0
old1.00.00.03.0
other0.00.01.00.0
poor0.00.00.02.0
rare1.00.00.00.0
red0.01.00.00.0
strange4.00.00.00.0
that0.00.03.00.0
unfortified0.01.00.00.0
yellow0.00.01.00.0
young0.00.00.01.0
\n", "
" ], "text/plain": [ "Head books eyes face Whateley\n", "Lemma \n", "-PRON- 1.0 3.0 1.0 0.0\n", "all 1.0 0.0 0.0 0.0\n", "ancient 2.0 0.0 0.0 0.0\n", "bearded 0.0 0.0 1.0 0.0\n", "black 0.0 1.0 0.0 1.0\n", "chinless 0.0 0.0 1.0 0.0\n", "dark 0.0 1.0 0.0 0.0\n", "dim 0.0 0.0 0.0 1.0\n", "goatish 0.0 0.0 2.0 0.0\n", "gray 0.0 1.0 0.0 0.0\n", "great 1.0 1.0 0.0 0.0\n", "large 0.0 1.0 0.0 0.0\n", "late 0.0 0.0 0.0 1.0\n", "latin 0.0 1.0 0.0 0.0\n", "odorous 1.0 0.0 0.0 0.0\n", "old 1.0 0.0 0.0 3.0\n", "other 0.0 0.0 1.0 0.0\n", "poor 0.0 0.0 0.0 2.0\n", "rare 1.0 0.0 0.0 0.0\n", "red 0.0 1.0 0.0 0.0\n", "strange 4.0 0.0 0.0 0.0\n", "that 0.0 0.0 3.0 0.0\n", "unfortified 0.0 1.0 0.0 0.0\n", "yellow 0.0 0.0 1.0 0.0\n", "young 0.0 0.0 0.0 1.0" ] }, "execution_count": 431, "metadata": {}, "output_type": "execute_result" } ], "source": [ "m_w = head_of_adj.loc[['books', 'eyes', 'face', 'Whateley']].T\n", "m_w[m_w.sum(axis=1) > 0]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Textacy\n", "\n", "https://chartbeat-labs.github.io/textacy/index.html" ] }, { "cell_type": "code", "execution_count": 432, "metadata": {}, "outputs": [], "source": [ "import textacy" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## preprocess_text\n", "\n", "Warning! These changes may negatively affect subsequent NLP analysis performed on the text, so choose carefully, and preprocess at your own risk!" ] }, { "cell_type": "code", "execution_count": 433, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'A UFC, Universidade Federal do Ceará, receberá inscrições, no perÃ\\xadodo de 29 de junho a 8 de julho, através do site da Coordenadoria de Concursos (CCV)(http://www.ccv.ufc.br/), para a seleção ao semestre I dos cursos de idiomas das Casas de Cultura Estrangeira. Para mais informações: ccv@ufc.br'" ] }, "execution_count": 433, "metadata": {}, "output_type": "execute_result" } ], "source": [ "s = \"\"\"A UFC, Universidade Federal do Ceará, receberá inscrições, no período de 29 de junho a 8 de julho, através do site da Coordenadoria de Concursos (CCV)(http://www.ccv.ufc.br/), para a seleção ao semestre I dos cursos de idiomas das Casas de Cultura Estrangeira. Para mais informações: ccv@ufc.br\"\"\"\n", "ss = s.encode('utf-8').decode('iso-8859-1', errors='replace')\n", "ss" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## fix_unicode\n", "\n", "if True, fix “broken” unicode such as mojibake and garbled HTML entities" ] }, { "cell_type": "code", "execution_count": 434, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'A UFC, Universidade Federal do Ceará, receberá inscrições, no período de 29 de junho a 8 de julho, através do site da Coordenadoria de Concursos (CCV)(http://www.ccv.ufc.br/), para a seleção ao semestre I dos cursos de idiomas das Casas de Cultura Estrangeira. Para mais informações: ccv@ufc.br'" ] }, "execution_count": 434, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.preprocess_text(ss,\n", " fix_unicode=True, \n", " lowercase=False, \n", " transliterate=False, \n", " no_urls=False, \n", " no_emails=False, \n", " no_phone_numbers=False, \n", " no_numbers=False, \n", " no_currency_symbols=False, \n", " no_punct=False, \n", " no_contractions=False, \n", " no_accents=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## lowercase\n", "\n", "if True, all text is lower-cased" ] }, { "cell_type": "code", "execution_count": 435, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'a ufc, universidade federal do ceará, receberá inscrições, no período de 29 de junho a 8 de julho, através do site da coordenadoria de concursos (ccv)(http://www.ccv.ufc.br/), para a seleção ao semestre i dos cursos de idiomas das casas de cultura estrangeira. para mais informações: ccv@ufc.br'" ] }, "execution_count": 435, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.preprocess_text(ss,\n", " fix_unicode=True, \n", " lowercase=True, \n", " transliterate=False, \n", " no_urls=False, \n", " no_emails=False, \n", " no_phone_numbers=False, \n", " no_numbers=False, \n", " no_currency_symbols=False, \n", " no_punct=False, \n", " no_contractions=False, \n", " no_accents=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## transliterate\n", "\n", "if True, convert non-ascii characters into their closest ascii equivalents" ] }, { "cell_type": "code", "execution_count": 436, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'a ufc, universidade federal do ceara, recebera inscricoes, no periodo de 29 de junho a 8 de julho, atraves do site da coordenadoria de concursos (ccv)(http://www.ccv.ufc.br/), para a selecao ao semestre i dos cursos de idiomas das casas de cultura estrangeira. para mais informacoes: ccv@ufc.br'" ] }, "execution_count": 436, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.preprocess_text(ss,\n", " fix_unicode=True, \n", " lowercase=True, \n", " transliterate=True, \n", " no_urls=False, \n", " no_emails=False, \n", " no_phone_numbers=False, \n", " no_numbers=False, \n", " no_currency_symbols=False, \n", " no_punct=False, \n", " no_contractions=False, \n", " no_accents=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## no_urls, no_emails, no_punct etc" ] }, { "cell_type": "code", "execution_count": 437, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'a ufc universidade federal do ceara recebera inscricoes no periodo de 29 de junho a 8 de julho atraves do site da coordenadoria de concursos ccv url para a selecao ao semestre i dos cursos de idiomas das casas de cultura estrangeira para mais informacoes email'" ] }, "execution_count": 437, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.preprocess_text(ss,\n", " fix_unicode=True, \n", " lowercase=True, \n", " transliterate=True, \n", " no_urls=True, \n", " no_emails=True, \n", " no_phone_numbers=True, \n", " no_numbers=False, \n", " no_currency_symbols=True, \n", " no_punct=True, \n", " no_contractions=False, \n", " no_accents=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Doc" ] }, { "cell_type": "code", "execution_count": 438, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Doc(55 tokens; \"A UFC, Universidade Federal do Ceará, receberá ...\")" ] }, "execution_count": 438, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# autodetect language\n", "doc = textacy.Doc(s)\n", "doc" ] }, { "cell_type": "code", "execution_count": 439, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'pt'" ] }, "execution_count": 439, "metadata": {}, "output_type": "execute_result" } ], "source": [ "doc.lang" ] }, { "cell_type": "code", "execution_count": 440, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('en', 'pt')" ] }, "execution_count": 440, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.text_utils.detect_language(\"I'm brazilian\"),\\\n", "textacy.text_utils.detect_language(\"Eu sou brasileiro\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# bag_of_words, bag_of_terms" ] }, { "cell_type": "code", "execution_count": 441, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'UFC': 0.01818181818181818,\n", " 'Universidade Federal do Ceará': 0.01818181818181818,\n", " 'Coordenadoria de Concursos': 0.01818181818181818,\n", " 'I': 0.01818181818181818,\n", " 'Casas de Cultura Estrangeira': 0.01818181818181818,\n", " 'A': 0.01818181818181818,\n", " 'Universidade': 0.01818181818181818,\n", " 'Federal': 0.01818181818181818,\n", " 'Ceará': 0.01818181818181818,\n", " 'receber': 0.01818181818181818,\n", " 'inscrição': 0.01818181818181818,\n", " 'período': 0.01818181818181818,\n", " '29': 0.01818181818181818,\n", " 'junho': 0.01818181818181818,\n", " 'o': 0.07272727272727272,\n", " '8': 0.01818181818181818,\n", " 'julho': 0.01818181818181818,\n", " 'site': 0.01818181818181818,\n", " 'Coordenadoria': 0.01818181818181818,\n", " 'Concursos': 0.01818181818181818,\n", " 'CCV)(http://www.ccv.ufc.br/': 0.01818181818181818,\n", " 'seleção': 0.01818181818181818,\n", " 'semestre': 0.01818181818181818,\n", " 'curso': 0.01818181818181818,\n", " 'idioma': 0.01818181818181818,\n", " 'Casas': 0.01818181818181818,\n", " 'Cultura': 0.01818181818181818,\n", " 'Estrangeira': 0.01818181818181818,\n", " 'Para': 0.01818181818181818,\n", " 'informação': 0.01818181818181818,\n", " 'ccv@ufc.br': 0.01818181818181818,\n", " 'A UFC': 0.01818181818181818,\n", " 'Universidade Federal': 0.01818181818181818,\n", " 'receber inscrição': 0.01818181818181818,\n", " 'junho o': 0.01818181818181818,\n", " 'o 8': 0.01818181818181818,\n", " 'o seleção': 0.01818181818181818,\n", " 'seleção o': 0.01818181818181818,\n", " 'o o': 0.01818181818181818,\n", " 'o semestre': 0.01818181818181818,\n", " 'semestre I': 0.01818181818181818,\n", " 'Cultura Estrangeira': 0.01818181818181818}" ] }, "execution_count": 441, "metadata": {}, "output_type": "execute_result" } ], "source": [ "doc.to_bag_of_terms(as_strings=True, normalize='lemma', ngrams=(1, 2), weighting='freq')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## acronyms_and_definitions" ] }, { "cell_type": "code", "execution_count": 442, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "A UFC, Universidade Federal do Ceará, receberá inscrições, no período de 29" ] }, "execution_count": 442, "metadata": {}, "output_type": "execute_result" } ], "source": [ "doc[:15]" ] }, { "cell_type": "code", "execution_count": 443, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'UFC': 'Universidade Federal do Ceará'}" ] }, "execution_count": 443, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.extract.acronyms_and_definitions(doc)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## ngrams" ] }, { "cell_type": "code", "execution_count": 444, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[A UFC,\n", " Universidade Federal,\n", " receberá inscrições,\n", " junho a,\n", " a seleção,\n", " seleção a,\n", " ao,\n", " o semestre,\n", " semestre I,\n", " Cultura Estrangeira]" ] }, "execution_count": 444, "metadata": {}, "output_type": "execute_result" } ], "source": [ "list(textacy.extract.ngrams(doc, 2, filter_stops=True, filter_nums=True, filter_punct=True))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Subject Verb Object triples" ] }, { "cell_type": "code", "execution_count": 445, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[(I, am, student), (I, am, IT analyst)]" ] }, "execution_count": 445, "metadata": {}, "output_type": "execute_result" } ], "source": [ "list(textacy.extract.subject_verb_object_triples(textacy.Doc('I am a student. I am a IT analyst')))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# keywords in context" ] }, { "cell_type": "code", "execution_count": 446, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " A UFC , Universidade Federal do Ceará, receber\n", "doria de Concursos (CCV)(http://www.ccv. ufc .br/), para a seleção ao semestre I dos \n", "Estrangeira. Para mais informações: ccv@ ufc .br \n" ] } ], "source": [ "textacy.text_utils.keyword_in_context(text=s, keyword='UFC', window_width=40)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# main verb" ] }, { "cell_type": "code", "execution_count": 447, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[reading]" ] }, "execution_count": 447, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.spacy_utils.get_main_verbs_of_sent(nlp('I was reading a book'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# objects of a verb" ] }, { "cell_type": "code", "execution_count": 448, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[wine, vodkas]" ] }, "execution_count": 448, "metadata": {}, "output_type": "execute_result" } ], "source": [ "doc = nlp('I have not been drinking wine and vodkas')\n", "drinking = doc[4]\n", "\n", "textacy.spacy_utils.get_objects_of_verb(drinking)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# span for verb auxiliares" ] }, { "cell_type": "code", "execution_count": 449, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "have not been" ] }, "execution_count": 449, "metadata": {}, "output_type": "execute_result" } ], "source": [ "doc[slice(*textacy.spacy_utils.get_span_for_verb_auxiliaries(drinking))]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## subject of verb" ] }, { "cell_type": "code", "execution_count": 450, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[I]" ] }, "execution_count": 450, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.spacy_utils.get_subjects_of_verb(drinking)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# is negated verb" ] }, { "cell_type": "code", "execution_count": 451, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 451, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.spacy_utils.is_negated_verb(drinking)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## is plural noun" ] }, { "cell_type": "code", "execution_count": 452, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 452, "metadata": {}, "output_type": "execute_result" } ], "source": [ "vodka = doc[-1]\n", "\n", "textacy.spacy_utils.is_plural_noun(vodka)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## hamming distance\n", "\n", "(...) which simply gives the number of characters in the strings that are different i.e. the number of substitution edits needed to change one string into the other." ] }, { "cell_type": "code", "execution_count": 453, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.625, 0.0, 1.0)" ] }, "execution_count": 453, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.similarity.hamming('Abelardo', 'Aberlado'),\\\n", "textacy.similarity.hamming('Abelardo', 'Odraleba'),\\\n", "textacy.similarity.hamming('Abelardo', 'Abelardo')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# jaccard similarity\n", "\n", "Measure the semantic similarity between two strings or sequences of strings using Jaccard distance, with optional fuzzy matching of not-identical pairs when obj1 and obj2 are sequences of strings." ] }, { "cell_type": "code", "execution_count": 454, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.6" ] }, "execution_count": 454, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 3(Abelardo, Aberlado, Vieira)/5(all words)\n", "textacy.similarity.jaccard(['Abelardo', 'Vieira', 'Mota'], ['Aberlado', 'Vieira', 'Lovecraft'], \n", " fuzzy_match=True, match_threshold=0.8)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# jaro winkler similarity\n", "\n", "Measure the similarity between two strings using Jaro-Winkler similarity metric, a modification of Jaro metric giving more weight to a shared prefix." ] }, { "cell_type": "code", "execution_count": 455, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.95625, 0.5, 1.0)" ] }, "execution_count": 455, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.similarity.jaro_winkler('Abelardo', 'Aberlado'),\\\n", "textacy.similarity.jaro_winkler('Abelardo', 'Odraleba'),\\\n", "textacy.similarity.jaro_winkler('Abelardo', 'Abelardo')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## levenshtein\n", "\n", "minimum number of character insertions, deletions, and substitutions needed to change one string into the other." ] }, { "cell_type": "code", "execution_count": 456, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.75, 0.0, 1.0)" ] }, "execution_count": 456, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.similarity.levenshtein('Abelardo', 'Aberlado'),\\\n", "textacy.similarity.levenshtein('Abelardo', 'Odraleba'),\\\n", "textacy.similarity.levenshtein('Abelardo', 'Abelardo')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## word2vec" ] }, { "cell_type": "code", "execution_count": 457, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.15116550765673847" ] }, "execution_count": 457, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.similarity.word2vec(nlp('Paris'), nlp('banana'))" ] }, { "cell_type": "code", "execution_count": 458, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.48549856305475964" ] }, "execution_count": 458, "metadata": {}, "output_type": "execute_result" } ], "source": [ "textacy.similarity.word2vec(nlp('Paris'), nlp('Brazil'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Text statistics" ] }, { "cell_type": "code", "execution_count": 459, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'n_sents': 740,\n", " 'n_words': 17785,\n", " 'n_chars': 80586,\n", " 'n_syllables': 24030,\n", " 'n_unique_words': 3965,\n", " 'n_long_words': 3406,\n", " 'n_monosyllable_words': 13260,\n", " 'n_polysyllable_words': 1288}" ] }, "execution_count": 459, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hp_stats = textacy.text_stats.TextStats(hp)\n", "\n", "hp_stats.basic_counts" ] }, { "cell_type": "code", "execution_count": 460, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'flesch_kincaid_grade_level': 9.726611155012197,\n", " 'flesch_reading_ease': 68.1343839042163,\n", " 'smog_index': 10.66590028888882,\n", " 'gunning_fog_index': 12.510336679102494,\n", " 'coleman_liau_index': 9.610446238178241,\n", " 'automated_readability_index': 11.928475248653207,\n", " 'lix': 43.184753702254405,\n", " 'gulpease_index': 56.17121169524881,\n", " 'wiener_sachtextformel': 4.590646849379601}" ] }, "execution_count": 460, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hp_stats.readability_stats" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.5" } }, "nbformat": 4, "nbformat_minor": 2 }