{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "33df9d15",
   "metadata": {
    "hideCode": false,
    "hidePrompt": false,
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "# Data Structure Selection\n",
    "#### CS 65: Introduction to Computer Science I"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1971c5c2",
   "metadata": {
    "hideCode": false,
    "hidePrompt": false,
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "## What is a data structure?\n",
    "\n",
    "A __data structure__ is the _data types_, _collections_, and _relationships_ used for organizing data for a particular programming tasks along with the specific _operations_ that you utilize for that task"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2aa0df43",
   "metadata": {
    "hideCode": false,
    "hidePrompt": false,
    "slideshow": {
     "slide_type": "fragment"
    }
   },
   "source": [
    "Core Python data structures\n",
    "* List\n",
    "* Tuple\n",
    "* Dictionary"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "77ea40da",
   "metadata": {
    "hideCode": false,
    "hideOutput": true,
    "hidePrompt": false,
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "We've also see than you can combine these in many ways for more complex data\n",
    "\n",
    "* CSV files: 2D list of lists\n",
    "* images: 2D stucture of tuples\n",
    "* Zipcode dataset: dictionary of dictionaries (which had lists inside of them!)\n",
    "\n",
    "And you could think of more options like lists of dictionaries, 3D lists, etc.\n",
    "\n",
    "There are also many more canonical data structures (covered in Intro to CS II) like stacks, queues, heaps, trees, and graphs that can be built or imported from modules."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5b17bc17",
   "metadata": {
    "hideCode": false,
    "hidePrompt": false,
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "## How do you know which data structure to use for your problem?\n",
    "\n",
    "Consider:\n",
    "1. What are the characteristics of the data I need to organize?\n",
    "2. What relationships exist in the data?\n",
    "    * Is it ordered?\n",
    "    * Are the mappings like key-value pairs?\n",
    "3. What computational tasks do I need to be able to execute with this data?"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1e54a48e",
   "metadata": {
    "hideCode": false,
    "hidePrompt": false,
    "slideshow": {
     "slide_type": "fragment"
    }
   },
   "source": [
    "Think about:\n",
    "1. One way you could do it\n",
    "2. Additional ways you could do it"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8daaa920",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    }
   },
   "source": [
    "Decide which is best based on one or more of the following:\n",
    "* Which is easiest for you, the programmer, to implement\n",
    "    - are there built-in types, modules, file formats available (e.g., csv and json)? \n",
    "    - do you understand one way to do it more than the other?\n",
    "    - will one of the ways take you longer to program?\n",
    "* Analyze how many operations will be needed for your task as the size of the data grows \n",
    "    - Insert sort - nested loops, if you have $n$ elements, you hit each of them on the order of $n^2$ times\n",
    "    - Find max - only visit each element once\n",
    "    - Doing it formally: Intro to CS II and beyond\n",
    "    - You can still think about it informally\n",
    "* __Benchmarking__ - implement both methods and test how long each takes for your tasks"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ea397e90",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "## Example problem: word frequencies\n",
    "\n",
    "Take a large piece of text, and count how many times each word is used\n",
    "* Used in several kinds of text analysis problems like sentiment analysis and author detection\n",
    "\n",
    "\n",
    "Consider:\n",
    "* I need each word paired with its frequency (there is a mapping between the word and the frequency)\n",
    "* There is a potential order based alphabetically on the word or numerically on the frequency\n",
    "* I may want to display high-frequency words, look up the frequency of a specific word, compare word fequency between books\n",
    "\n",
    "Ways I can think of to do it:\n",
    "* A dictionary where the word is the key and the frequency is the value\n",
    "* A list of tuples where the second entry in the tuple is the word and the first is the frequency\n",
    "* A 2D list - same as above but inner list instead of tuple"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "69ed74a5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'CHAPTER': 12,\n",
       " 'I.': 1,\n",
       " 'Down': 1,\n",
       " 'the': 1513,\n",
       " 'Rabbit-Hole': 1,\n",
       " 'Alice': 221,\n",
       " 'was': 327,\n",
       " 'beginning': 11,\n",
       " 'to': 706,\n",
       " 'get': 43,\n",
       " 'very': 125,\n",
       " 'tired': 7,\n",
       " 'of': 492,\n",
       " 'sitting': 10,\n",
       " 'by': 53,\n",
       " 'her': 204,\n",
       " 'sister': 5,\n",
       " 'on': 138,\n",
       " 'bank,': 2,\n",
       " 'and': 715,\n",
       " 'having': 10,\n",
       " 'nothing': 22,\n",
       " 'do:': 1,\n",
       " 'once': 18,\n",
       " 'or': 68,\n",
       " 'twice': 1,\n",
       " 'she': 485,\n",
       " 'had': 176,\n",
       " 'peeped': 3,\n",
       " 'into': 67,\n",
       " 'book': 3,\n",
       " 'reading,': 1,\n",
       " 'but': 101,\n",
       " 'it': 347,\n",
       " 'no': 64,\n",
       " 'pictures': 4,\n",
       " 'conversations': 1,\n",
       " 'in': 344,\n",
       " 'it,': 38,\n",
       " '“and': 38,\n",
       " 'what': 85,\n",
       " 'is': 63,\n",
       " 'use': 16,\n",
       " 'a': 608,\n",
       " 'book,”': 2,\n",
       " 'thought': 63,\n",
       " '“without': 1,\n",
       " 'conversations?”': 1,\n",
       " 'So': 23,\n",
       " 'considering': 3,\n",
       " 'own': 9,\n",
       " 'mind': 4,\n",
       " '(as': 2,\n",
       " 'well': 27,\n",
       " 'as': 237,\n",
       " 'could,': 7,\n",
       " 'for': 125,\n",
       " 'hot': 4,\n",
       " 'day': 11,\n",
       " 'made': 29,\n",
       " 'feel': 8,\n",
       " 'sleepy': 3,\n",
       " 'stupid),': 1,\n",
       " 'whether': 11,\n",
       " 'pleasure': 2,\n",
       " 'making': 8,\n",
       " 'daisy-chain': 1,\n",
       " 'would': 68,\n",
       " 'be': 137,\n",
       " 'worth': 4,\n",
       " 'trouble': 4,\n",
       " 'getting': 21,\n",
       " 'up': 81,\n",
       " 'picking': 2,\n",
       " 'daisies,': 1,\n",
       " 'when': 66,\n",
       " 'suddenly': 9,\n",
       " 'White': 22,\n",
       " 'Rabbit': 29,\n",
       " 'with': 168,\n",
       " 'pink': 1,\n",
       " 'eyes': 18,\n",
       " 'ran': 13,\n",
       " 'close': 12,\n",
       " 'her.': 13,\n",
       " 'There': 19,\n",
       " 'so': 103,\n",
       " '_very_': 13,\n",
       " 'remarkable': 2,\n",
       " 'that;': 1,\n",
       " 'nor': 2,\n",
       " 'did': 50,\n",
       " 'think': 36,\n",
       " 'much': 40,\n",
       " 'out': 97,\n",
       " 'way': 37,\n",
       " 'hear': 14,\n",
       " 'say': 35,\n",
       " 'itself,': 4,\n",
       " '“Oh': 2,\n",
       " 'dear!': 9,\n",
       " 'Oh': 5,\n",
       " 'I': 249,\n",
       " 'shall': 21,\n",
       " 'late!”': 1,\n",
       " '(when': 1,\n",
       " 'over': 31,\n",
       " 'afterwards,': 1,\n",
       " 'occurred': 2,\n",
       " 'that': 213,\n",
       " 'ought': 13,\n",
       " 'have': 73,\n",
       " 'wondered': 1,\n",
       " 'at': 196,\n",
       " 'this,': 17,\n",
       " 'time': 46,\n",
       " 'all': 151,\n",
       " 'seemed': 27,\n",
       " 'quite': 53,\n",
       " 'natural);': 1,\n",
       " 'actually': 1,\n",
       " '_took': 1,\n",
       " 'watch': 6,\n",
       " 'its': 57,\n",
       " 'waistcoat-pocket_,': 1,\n",
       " 'looked': 45,\n",
       " 'then': 50,\n",
       " 'hurried': 11,\n",
       " 'on,': 27,\n",
       " 'started': 2,\n",
       " 'feet,': 6,\n",
       " 'flashed': 1,\n",
       " 'across': 5,\n",
       " 'never': 37,\n",
       " 'before': 19,\n",
       " 'seen': 12,\n",
       " 'rabbit': 1,\n",
       " 'either': 5,\n",
       " 'waistcoat-pocket,': 1,\n",
       " 'take': 18,\n",
       " 'burning': 1,\n",
       " 'curiosity,': 2,\n",
       " 'field': 1,\n",
       " 'after': 35,\n",
       " 'fortunately': 1,\n",
       " 'just': 43,\n",
       " 'see': 47,\n",
       " 'pop': 1,\n",
       " 'down': 77,\n",
       " 'large': 32,\n",
       " 'rabbit-hole': 2,\n",
       " 'under': 16,\n",
       " 'hedge.': 1,\n",
       " 'In': 5,\n",
       " 'another': 21,\n",
       " 'moment': 21,\n",
       " 'went': 79,\n",
       " 'how': 37,\n",
       " 'world': 6,\n",
       " 'again.': 16,\n",
       " 'The': 89,\n",
       " 'straight': 2,\n",
       " 'like': 74,\n",
       " 'tunnel': 1,\n",
       " 'some': 47,\n",
       " 'way,': 7,\n",
       " 'dipped': 2,\n",
       " 'down,': 12,\n",
       " 'not': 103,\n",
       " 'about': 84,\n",
       " 'stopping': 1,\n",
       " 'herself': 40,\n",
       " 'found': 28,\n",
       " 'falling': 2,\n",
       " 'deep': 5,\n",
       " 'well.': 2,\n",
       " 'Either': 1,\n",
       " 'deep,': 2,\n",
       " 'fell': 6,\n",
       " 'slowly,': 2,\n",
       " 'plenty': 1,\n",
       " 'look': 25,\n",
       " 'wonder': 15,\n",
       " 'going': 26,\n",
       " 'happen': 5,\n",
       " 'next.': 3,\n",
       " 'First,': 4,\n",
       " 'tried': 18,\n",
       " 'make': 26,\n",
       " 'coming': 5,\n",
       " 'to,': 3,\n",
       " 'too': 21,\n",
       " 'dark': 3,\n",
       " 'anything;': 2,\n",
       " 'sides': 4,\n",
       " 'well,': 1,\n",
       " 'noticed': 7,\n",
       " 'they': 108,\n",
       " 'were': 82,\n",
       " 'filled': 3,\n",
       " 'cupboards': 2,\n",
       " 'book-shelves;': 1,\n",
       " 'here': 14,\n",
       " 'there': 44,\n",
       " 'saw': 13,\n",
       " 'maps': 1,\n",
       " 'hung': 1,\n",
       " 'upon': 26,\n",
       " 'pegs.': 1,\n",
       " 'She': 33,\n",
       " 'took': 23,\n",
       " 'jar': 2,\n",
       " 'from': 32,\n",
       " 'one': 77,\n",
       " 'shelves': 1,\n",
       " 'passed;': 1,\n",
       " 'labelled': 1,\n",
       " '“ORANGE': 1,\n",
       " 'MARMALADE”,': 1,\n",
       " 'great': 39,\n",
       " 'disappointment': 1,\n",
       " 'empty:': 1,\n",
       " 'drop': 1,\n",
       " 'fear': 4,\n",
       " 'killing': 1,\n",
       " 'somebody': 4,\n",
       " 'underneath,': 1,\n",
       " 'managed': 3,\n",
       " 'put': 31,\n",
       " 'past': 1,\n",
       " 'it.': 15,\n",
       " '“Well!”': 1,\n",
       " 'herself,': 31,\n",
       " '“after': 1,\n",
       " 'such': 40,\n",
       " 'fall': 6,\n",
       " 'tumbling': 2,\n",
       " 'stairs!': 1,\n",
       " 'How': 9,\n",
       " 'brave': 1,\n",
       " 'they’ll': 4,\n",
       " 'me': 46,\n",
       " 'home!': 1,\n",
       " 'Why,': 7,\n",
       " 'wouldn’t': 12,\n",
       " 'anything': 14,\n",
       " 'even': 17,\n",
       " 'if': 69,\n",
       " 'off': 38,\n",
       " 'top': 8,\n",
       " 'house!”': 1,\n",
       " '(Which': 2,\n",
       " 'likely': 4,\n",
       " 'true.)': 1,\n",
       " 'Down,': 2,\n",
       " 'down.': 2,\n",
       " 'Would': 3,\n",
       " '_never_': 2,\n",
       " 'come': 22,\n",
       " 'an': 52,\n",
       " 'end?': 1,\n",
       " '“I': 119,\n",
       " 'many': 12,\n",
       " 'miles': 3,\n",
       " 'I’ve': 20,\n",
       " 'fallen': 4,\n",
       " 'this': 86,\n",
       " 'time?”': 1,\n",
       " 'said': 416,\n",
       " 'aloud.': 3,\n",
       " 'must': 39,\n",
       " 'somewhere': 1,\n",
       " 'near': 14,\n",
       " 'centre': 1,\n",
       " 'earth.': 2,\n",
       " 'Let': 6,\n",
       " 'see:': 3,\n",
       " 'four': 6,\n",
       " 'thousand': 2,\n",
       " 'think—”': 3,\n",
       " '(for,': 1,\n",
       " 'you': 251,\n",
       " 'see,': 11,\n",
       " 'learnt': 2,\n",
       " 'several': 4,\n",
       " 'things': 19,\n",
       " 'sort': 17,\n",
       " 'lessons': 4,\n",
       " 'schoolroom,': 1,\n",
       " 'though': 6,\n",
       " 'good': 23,\n",
       " 'opportunity': 8,\n",
       " 'showing': 2,\n",
       " 'knowledge,': 1,\n",
       " 'listen': 4,\n",
       " 'her,': 18,\n",
       " 'still': 12,\n",
       " 'practice': 1,\n",
       " 'over)': 1,\n",
       " '“—yes,': 1,\n",
       " 'that’s': 13,\n",
       " 'right': 20,\n",
       " 'distance—but': 1,\n",
       " 'Latitude': 2,\n",
       " 'Longitude': 2,\n",
       " 'got': 45,\n",
       " 'to?”': 3,\n",
       " '(Alice': 4,\n",
       " 'idea': 14,\n",
       " 'was,': 14,\n",
       " 'either,': 2,\n",
       " 'nice': 5,\n",
       " 'grand': 2,\n",
       " 'words': 14,\n",
       " 'say.)': 1,\n",
       " 'Presently': 2,\n",
       " 'began': 46,\n",
       " '_through_': 1,\n",
       " 'earth!': 1,\n",
       " 'funny': 3,\n",
       " 'it’ll': 6,\n",
       " 'seem': 7,\n",
       " 'among': 12,\n",
       " 'people': 10,\n",
       " 'walk': 4,\n",
       " 'their': 50,\n",
       " 'heads': 7,\n",
       " 'downward!': 1,\n",
       " 'Antipathies,': 1,\n",
       " '(she': 9,\n",
       " 'rather': 25,\n",
       " 'glad': 11,\n",
       " '_was_': 5,\n",
       " 'listening,': 2,\n",
       " 'time,': 6,\n",
       " 'didn’t': 11,\n",
       " 'sound': 3,\n",
       " 'word)': 1,\n",
       " '“—but': 1,\n",
       " 'ask': 7,\n",
       " 'them': 49,\n",
       " 'name': 8,\n",
       " 'country': 1,\n",
       " 'is,': 16,\n",
       " 'know.': 8,\n",
       " 'Please,': 1,\n",
       " 'Ma’am,': 1,\n",
       " 'New': 1,\n",
       " 'Zealand': 1,\n",
       " 'Australia?”': 1,\n",
       " '(and': 1,\n",
       " 'curtsey': 1,\n",
       " 'spoke—fancy': 1,\n",
       " '_curtseying_': 1,\n",
       " 'you’re': 15,\n",
       " 'through': 12,\n",
       " 'air!': 1,\n",
       " 'Do': 5,\n",
       " 'could': 63,\n",
       " 'manage': 6,\n",
       " 'it?)': 1,\n",
       " '“And': 17,\n",
       " 'ignorant': 1,\n",
       " 'little': 118,\n",
       " 'girl': 3,\n",
       " 'she’ll': 2,\n",
       " 'asking!': 1,\n",
       " 'No,': 4,\n",
       " 'do': 46,\n",
       " 'ask:': 1,\n",
       " 'perhaps': 12,\n",
       " 'written': 6,\n",
       " 'somewhere.”': 1,\n",
       " 'else': 8,\n",
       " 'do,': 8,\n",
       " 'soon': 23,\n",
       " 'talking': 12,\n",
       " '“Dinah’ll': 1,\n",
       " 'miss': 1,\n",
       " 'to-night,': 1,\n",
       " 'should': 27,\n",
       " 'think!”': 1,\n",
       " '(Dinah': 1,\n",
       " 'cat.)': 1,\n",
       " 'hope': 3,\n",
       " 'remember': 12,\n",
       " 'saucer': 1,\n",
       " 'milk': 1,\n",
       " 'tea-time.': 1,\n",
       " 'Dinah': 4,\n",
       " 'my': 55,\n",
       " 'wish': 21,\n",
       " 'me!': 3,\n",
       " 'are': 37,\n",
       " 'mice': 3,\n",
       " 'air,': 5,\n",
       " 'I’m': 35,\n",
       " 'afraid,': 2,\n",
       " 'might': 27,\n",
       " 'catch': 3,\n",
       " 'bat,': 1,\n",
       " 'mouse,': 3,\n",
       " 'But': 15,\n",
       " 'cats': 9,\n",
       " 'eat': 16,\n",
       " 'bats,': 1,\n",
       " 'wonder?”': 3,\n",
       " 'And': 49,\n",
       " 'sleepy,': 1,\n",
       " 'saying': 11,\n",
       " 'dreamy': 1,\n",
       " '“Do': 8,\n",
       " 'bats?': 1,\n",
       " 'bats?”': 1,\n",
       " 'sometimes,': 1,\n",
       " 'bats': 1,\n",
       " 'cats?”': 1,\n",
       " 'for,': 2,\n",
       " 'couldn’t': 9,\n",
       " 'answer': 6,\n",
       " 'question,': 4,\n",
       " 'matter': 8,\n",
       " 'which': 37,\n",
       " 'felt': 23,\n",
       " 'dozing': 1,\n",
       " 'off,': 14,\n",
       " 'begun': 6,\n",
       " 'dream': 3,\n",
       " 'walking': 5,\n",
       " 'hand': 11,\n",
       " 'Dinah,': 3,\n",
       " 'earnestly,': 1,\n",
       " '“Now,': 4,\n",
       " 'tell': 26,\n",
       " 'truth:': 1,\n",
       " 'ever': 16,\n",
       " 'bat?”': 1,\n",
       " 'suddenly,': 1,\n",
       " 'thump!': 2,\n",
       " 'came': 38,\n",
       " 'heap': 1,\n",
       " 'sticks': 1,\n",
       " 'dry': 7,\n",
       " 'leaves,': 2,\n",
       " 'over.': 2,\n",
       " 'bit': 8,\n",
       " 'hurt,': 1,\n",
       " 'jumped': 5,\n",
       " 'feet': 11,\n",
       " 'moment:': 1,\n",
       " 'up,': 9,\n",
       " 'overhead;': 1,\n",
       " 'long': 29,\n",
       " 'passage,': 2,\n",
       " 'sight,': 4,\n",
       " 'hurrying': 1,\n",
       " 'lost:': 1,\n",
       " 'away': 15,\n",
       " 'wind,': 2,\n",
       " 'say,': 5,\n",
       " 'turned': 16,\n",
       " 'corner,': 2,\n",
       " 'ears': 4,\n",
       " 'whiskers,': 1,\n",
       " 'late': 3,\n",
       " 'it’s': 25,\n",
       " 'getting!”': 1,\n",
       " 'behind': 12,\n",
       " 'longer': 2,\n",
       " 'seen:': 1,\n",
       " 'long,': 1,\n",
       " 'low': 7,\n",
       " 'hall,': 5,\n",
       " 'lit': 1,\n",
       " 'row': 2,\n",
       " 'lamps': 1,\n",
       " 'hanging': 3,\n",
       " 'roof.': 1,\n",
       " 'doors': 2,\n",
       " 'round': 30,\n",
       " 'locked;': 1,\n",
       " 'been': 36,\n",
       " 'side': 12,\n",
       " 'other,': 5,\n",
       " 'trying': 11,\n",
       " 'every': 12,\n",
       " 'door,': 9,\n",
       " 'walked': 10,\n",
       " 'sadly': 2,\n",
       " 'middle,': 3,\n",
       " 'wondering': 7,\n",
       " 'Suddenly': 1,\n",
       " 'three-legged': 2,\n",
       " 'table,': 5,\n",
       " 'solid': 1,\n",
       " 'glass;': 1,\n",
       " 'except': 4,\n",
       " 'tiny': 4,\n",
       " 'golden': 7,\n",
       " 'key,': 3,\n",
       " 'Alice’s': 9,\n",
       " 'first': 28,\n",
       " 'belong': 1,\n",
       " 'hall;': 1,\n",
       " 'but,': 6,\n",
       " 'alas!': 2,\n",
       " 'locks': 1,\n",
       " 'large,': 1,\n",
       " 'key': 5,\n",
       " 'small,': 1,\n",
       " 'any': 36,\n",
       " 'rate': 4,\n",
       " 'open': 6,\n",
       " 'them.': 2,\n",
       " 'However,': 13,\n",
       " 'second': 4,\n",
       " 'round,': 7,\n",
       " 'curtain': 1,\n",
       " 'before,': 11,\n",
       " 'door': 15,\n",
       " 'fifteen': 1,\n",
       " 'inches': 6,\n",
       " 'high:': 3,\n",
       " 'lock,': 1,\n",
       " 'delight': 1,\n",
       " 'fitted!': 1,\n",
       " 'opened': 9,\n",
       " 'led': 4,\n",
       " 'small': 8,\n",
       " 'larger': 3,\n",
       " 'than': 23,\n",
       " 'rat-hole:': 1,\n",
       " 'knelt': 1,\n",
       " 'along': 5,\n",
       " 'passage': 1,\n",
       " 'loveliest': 1,\n",
       " 'garden': 4,\n",
       " 'saw.': 1,\n",
       " 'longed': 2,\n",
       " 'wander': 1,\n",
       " 'those': 9,\n",
       " 'beds': 1,\n",
       " 'bright': 7,\n",
       " 'flowers': 2,\n",
       " 'cool': 2,\n",
       " 'fountains,': 1,\n",
       " 'head': 29,\n",
       " 'doorway;': 1,\n",
       " 'go': 38,\n",
       " 'through,”': 1,\n",
       " 'poor': 25,\n",
       " 'Alice,': 76,\n",
       " '“it': 5,\n",
       " 'without': 24,\n",
       " 'shoulders.': 1,\n",
       " 'Oh,': 3,\n",
       " 'shut': 4,\n",
       " 'telescope!': 1,\n",
       " 'only': 43,\n",
       " 'knew': 13,\n",
       " 'begin.”': 3,\n",
       " 'For,': 1,\n",
       " 'out-of-the-way': 3,\n",
       " 'happened': 3,\n",
       " 'lately,': 1,\n",
       " 'few': 9,\n",
       " 'indeed': 3,\n",
       " 'really': 9,\n",
       " 'impossible.': 1,\n",
       " 'waiting': 7,\n",
       " 'back': 29,\n",
       " 'half': 21,\n",
       " 'hoping': 3,\n",
       " 'find': 20,\n",
       " 'rules': 3,\n",
       " 'shutting': 2,\n",
       " 'telescopes:': 1,\n",
       " 'bottle': 7,\n",
       " '(“which': 1,\n",
       " 'certainly': 8,\n",
       " 'before,”': 3,\n",
       " 'Alice,)': 2,\n",
       " 'neck': 6,\n",
       " 'paper': 3,\n",
       " 'label,': 1,\n",
       " '“DRINK': 2,\n",
       " 'ME,”': 2,\n",
       " 'beautifully': 2,\n",
       " 'printed': 1,\n",
       " 'letters.': 1,\n",
       " 'It': 15,\n",
       " '“Drink': 1,\n",
       " 'me,”': 5,\n",
       " 'wise': 2,\n",
       " '_that_': 6,\n",
       " 'hurry.': 3,\n",
       " '“No,': 9,\n",
       " 'I’ll': 23,\n",
       " 'first,”': 2,\n",
       " 'said,': 26,\n",
       " 'marked': 5,\n",
       " '‘_poison_’': 1,\n",
       " 'not”;': 1,\n",
       " 'read': 9,\n",
       " 'histories': 1,\n",
       " 'children': 5,\n",
       " 'who': 48,\n",
       " 'burnt,': 1,\n",
       " 'eaten': 1,\n",
       " 'wild': 2,\n",
       " 'beasts': 1,\n",
       " 'other': 26,\n",
       " 'unpleasant': 2,\n",
       " 'things,': 2,\n",
       " 'because': 11,\n",
       " '_would_': 5,\n",
       " 'simple': 5,\n",
       " 'friends': 2,\n",
       " 'taught': 4,\n",
       " 'them:': 1,\n",
       " 'as,': 2,\n",
       " 'red-hot': 1,\n",
       " 'poker': 1,\n",
       " 'will': 23,\n",
       " 'burn': 2,\n",
       " 'hold': 6,\n",
       " 'long;': 1,\n",
       " 'cut': 5,\n",
       " 'your': 53,\n",
       " 'finger': 3,\n",
       " 'deeply': 1,\n",
       " 'knife,': 1,\n",
       " 'usually': 2,\n",
       " 'bleeds;': 1,\n",
       " 'forgotten': 6,\n",
       " 'that,': 5,\n",
       " 'drink': 4,\n",
       " '“poison,”': 2,\n",
       " 'almost': 6,\n",
       " 'certain': 2,\n",
       " 'disagree': 1,\n",
       " 'you,': 25,\n",
       " 'sooner': 2,\n",
       " 'later.': 1,\n",
       " '_not_': 5,\n",
       " 'ventured': 4,\n",
       " 'taste': 2,\n",
       " 'finding': 3,\n",
       " 'nice,': 1,\n",
       " '(it': 4,\n",
       " 'had,': 1,\n",
       " 'fact,': 4,\n",
       " 'mixed': 2,\n",
       " 'flavour': 1,\n",
       " 'cherry-tart,': 1,\n",
       " 'custard,': 1,\n",
       " 'pine-apple,': 1,\n",
       " 'roast': 1,\n",
       " 'turkey,': 1,\n",
       " 'toffee,': 1,\n",
       " 'buttered': 1,\n",
       " 'toast,)': 1,\n",
       " 'finished': 7,\n",
       " 'off.': 5,\n",
       " '*': 60,\n",
       " '“What': 33,\n",
       " 'curious': 16,\n",
       " 'feeling!”': 1,\n",
       " 'Alice;': 16,\n",
       " 'telescope.”': 1,\n",
       " 'indeed:': 1,\n",
       " 'now': 23,\n",
       " 'ten': 5,\n",
       " 'high,': 3,\n",
       " 'face': 7,\n",
       " 'brightened': 2,\n",
       " 'size': 6,\n",
       " 'lovely': 2,\n",
       " 'garden.': 3,\n",
       " 'however,': 6,\n",
       " 'waited': 9,\n",
       " 'minutes': 7,\n",
       " 'shrink': 1,\n",
       " 'further:': 1,\n",
       " 'nervous': 4,\n",
       " 'this;': 2,\n",
       " '“for': 6,\n",
       " 'end,': 1,\n",
       " 'know,”': 8,\n",
       " '“in': 3,\n",
       " 'altogether,': 2,\n",
       " 'candle.': 1,\n",
       " 'then?”': 1,\n",
       " 'fancy': 3,\n",
       " 'flame': 1,\n",
       " 'candle': 2,\n",
       " 'blown': 1,\n",
       " 'out,': 13,\n",
       " 'thing.': 1,\n",
       " 'After': 5,\n",
       " 'while,': 4,\n",
       " 'more': 38,\n",
       " 'happened,': 2,\n",
       " 'decided': 3,\n",
       " 'once;': 1,\n",
       " 'alas': 1,\n",
       " 'Alice!': 3,\n",
       " 'table': 7,\n",
       " 'possibly': 3,\n",
       " 'reach': 4,\n",
       " 'it:': 9,\n",
       " 'plainly': 1,\n",
       " 'glass,': 2,\n",
       " 'best': 7,\n",
       " 'climb': 1,\n",
       " 'legs': 3,\n",
       " 'slippery;': 1,\n",
       " 'trying,': 1,\n",
       " 'thing': 35,\n",
       " 'sat': 17,\n",
       " 'cried.': 2,\n",
       " '“Come,': 9,\n",
       " 'there’s': 15,\n",
       " 'crying': 2,\n",
       " 'that!”': 7,\n",
       " 'sharply;': 1,\n",
       " 'advise': 1,\n",
       " 'leave': 7,\n",
       " 'minute!”': 1,\n",
       " 'generally': 5,\n",
       " 'gave': 15,\n",
       " 'advice,': 1,\n",
       " '(though': 1,\n",
       " 'seldom': 1,\n",
       " 'followed': 8,\n",
       " 'it),': 2,\n",
       " 'sometimes': 4,\n",
       " 'scolded': 1,\n",
       " 'severely': 3,\n",
       " 'bring': 2,\n",
       " 'tears': 4,\n",
       " 'eyes;': 1,\n",
       " 'remembered': 5,\n",
       " 'box': 3,\n",
       " 'cheated': 1,\n",
       " 'game': 6,\n",
       " 'croquet': 3,\n",
       " 'playing': 2,\n",
       " 'against': 9,\n",
       " 'child': 3,\n",
       " 'fond': 3,\n",
       " 'pretending': 1,\n",
       " 'two': 20,\n",
       " 'people.': 1,\n",
       " '“But': 19,\n",
       " 'now,”': 4,\n",
       " '“to': 4,\n",
       " 'pretend': 1,\n",
       " 'people!': 1,\n",
       " 'hardly': 11,\n",
       " 'enough': 10,\n",
       " 'left': 13,\n",
       " '_one_': 2,\n",
       " 'respectable': 1,\n",
       " 'person!”': 1,\n",
       " 'Soon': 1,\n",
       " 'eye': 4,\n",
       " 'glass': 4,\n",
       " 'lying': 8,\n",
       " 'table:': 1,\n",
       " 'cake,': 2,\n",
       " '“EAT': 1,\n",
       " 'ME”': 1,\n",
       " 'currants.': 1,\n",
       " '“Well,': 20,\n",
       " 'it,”': 18,\n",
       " 'makes': 11,\n",
       " 'grow': 13,\n",
       " 'larger,': 3,\n",
       " 'can': 27,\n",
       " 'key;': 1,\n",
       " 'smaller,': 3,\n",
       " 'creep': 1,\n",
       " 'door;': 1,\n",
       " 'garden,': 5,\n",
       " 'don’t': 48,\n",
       " 'care': 4,\n",
       " 'happens!”': 1,\n",
       " 'ate': 1,\n",
       " 'bit,': 2,\n",
       " 'anxiously': 13,\n",
       " '“Which': 3,\n",
       " 'way?': 1,\n",
       " 'Which': 3,\n",
       " 'way?”,': 1,\n",
       " 'holding': 2,\n",
       " 'growing,': 4,\n",
       " 'surprised': 6,\n",
       " 'remained': 3,\n",
       " 'same': 21,\n",
       " 'size:': 3,\n",
       " 'sure,': 2,\n",
       " 'happens': 2,\n",
       " 'eats': 1,\n",
       " 'expecting': 3,\n",
       " 'happen,': 1,\n",
       " 'dull': 2,\n",
       " 'stupid': 1,\n",
       " 'life': 2,\n",
       " 'common': 1,\n",
       " 'way.': 3,\n",
       " 'set': 14,\n",
       " 'work,': 1,\n",
       " 'cake.': 1,\n",
       " 'II.': 1,\n",
       " 'Pool': 1,\n",
       " 'Tears': 1,\n",
       " '“Curiouser': 1,\n",
       " 'curiouser!”': 1,\n",
       " 'cried': 18,\n",
       " 'surprised,': 1,\n",
       " 'forgot': 2,\n",
       " 'speak': 8,\n",
       " 'English);': 1,\n",
       " '“now': 1,\n",
       " 'opening': 3,\n",
       " 'largest': 1,\n",
       " 'telescope': 1,\n",
       " 'was!': 1,\n",
       " 'Good-bye,': 1,\n",
       " 'feet!”': 1,\n",
       " '(for': 1,\n",
       " 'far': 9,\n",
       " 'off).': 1,\n",
       " '“Oh,': 19,\n",
       " 'shoes': 5,\n",
       " 'stockings': 1,\n",
       " 'now,': 6,\n",
       " 'dears?': 1,\n",
       " 'sure': 16,\n",
       " '_I_': 13,\n",
       " 'shan’t': 4,\n",
       " 'able!': 1,\n",
       " 'deal': 11,\n",
       " 'myself': 2,\n",
       " 'you:': 1,\n",
       " 'can;—but': 1,\n",
       " 'kind': 6,\n",
       " 'them,”': 3,\n",
       " '“or': 5,\n",
       " 'won’t': 21,\n",
       " 'want': 9,\n",
       " 'go!': 1,\n",
       " 'give': 9,\n",
       " 'new': 4,\n",
       " 'pair': 5,\n",
       " 'boots': 3,\n",
       " 'Christmas.”': 1,\n",
       " 'planning': 1,\n",
       " '“They': 9,\n",
       " 'carrier,”': 1,\n",
       " 'thought;': 1,\n",
       " 'seem,': 1,\n",
       " 'sending': 2,\n",
       " 'presents': 2,\n",
       " 'one’s': 1,\n",
       " 'feet!': 1,\n",
       " 'odd': 1,\n",
       " 'directions': 1,\n",
       " 'look!': 1,\n",
       " '_Alice’s': 1,\n",
       " 'Right': 1,\n",
       " 'Foot,': 1,\n",
       " 'Esq.,': 1,\n",
       " 'Hearthrug,': 1,\n",
       " 'Fender,_': 1,\n",
       " '(_with': 1,\n",
       " 'love_).': 1,\n",
       " 'dear,': 6,\n",
       " 'nonsense': 1,\n",
       " 'talking!”': 1,\n",
       " 'Just': 5,\n",
       " 'struck': 2,\n",
       " 'roof': 5,\n",
       " 'hall:': 1,\n",
       " 'fact': 2,\n",
       " 'nine': 4,\n",
       " 'door.': 2,\n",
       " 'Poor': 1,\n",
       " 'side,': 3,\n",
       " 'eye;': 2,\n",
       " 'hopeless': 1,\n",
       " 'ever:': 1,\n",
       " 'cry': 3,\n",
       " '“You': 32,\n",
       " 'ashamed': 2,\n",
       " 'yourself,”': 1,\n",
       " '“a': 2,\n",
       " 'you,”': 6,\n",
       " 'this),': 1,\n",
       " 'way!': 1,\n",
       " 'Stop': 1,\n",
       " 'moment,': 5,\n",
       " 'you!”': 3,\n",
       " 'same,': 2,\n",
       " 'shedding': 1,\n",
       " 'gallons': 1,\n",
       " 'tears,': 3,\n",
       " 'until': 4,\n",
       " 'pool': 6,\n",
       " 'reaching': 1,\n",
       " 'hall.': 1,\n",
       " 'heard': 29,\n",
       " 'pattering': 3,\n",
       " 'distance,': 4,\n",
       " 'hastily': 7,\n",
       " 'dried': 1,\n",
       " 'coming.': 2,\n",
       " 'returning,': 1,\n",
       " 'splendidly': 1,\n",
       " 'dressed,': 1,\n",
       " 'white': 6,\n",
       " 'kid': 5,\n",
       " 'gloves': 5,\n",
       " 'fan': 8,\n",
       " 'other:': 3,\n",
       " 'he': 94,\n",
       " 'trotting': 2,\n",
       " 'hurry,': 1,\n",
       " 'muttering': 3,\n",
       " 'himself': 4,\n",
       " 'came,': 2,\n",
       " '“Oh!': 2,\n",
       " 'Duchess,': 8,\n",
       " 'Duchess!': 3,\n",
       " 'Oh!': 1,\n",
       " 'savage': 3,\n",
       " 'kept': 13,\n",
       " 'waiting!”': 1,\n",
       " 'desperate': 1,\n",
       " 'ready': 7,\n",
       " 'help': 9,\n",
       " 'one;': 2,\n",
       " 'so,': 7,\n",
       " 'began,': 6,\n",
       " 'low,': 6,\n",
       " 'timid': 3,\n",
       " 'voice,': 15,\n",
       " '“If': 14,\n",
       " 'please,': 3,\n",
       " 'sir—”': 1,\n",
       " 'violently,': 2,\n",
       " 'dropped': 4,\n",
       " 'fan,': 1,\n",
       " 'skurried': 1,\n",
       " 'darkness': 1,\n",
       " 'hard': 8,\n",
       " 'go.': 1,\n",
       " 'gloves,': 3,\n",
       " 'and,': 19,\n",
       " 'hall': 1,\n",
       " 'hot,': 1,\n",
       " 'fanning': 1,\n",
       " 'talking:': 1,\n",
       " '“Dear,': 1,\n",
       " 'queer': 9,\n",
       " 'everything': 9,\n",
       " 'to-day!': 1,\n",
       " 'yesterday': 2,\n",
       " 'usual.': 2,\n",
       " 'changed': 7,\n",
       " 'night?': 1,\n",
       " 'think:': 1,\n",
       " 'morning?': 1,\n",
       " 'feeling': 6,\n",
       " 'different.': 1,\n",
       " 'next': 20,\n",
       " 'question': 7,\n",
       " 'Who': 6,\n",
       " 'am': 13,\n",
       " 'I?': 1,\n",
       " 'Ah,': 1,\n",
       " '_that’s_': 3,\n",
       " 'puzzle!”': 1,\n",
       " 'thinking': 10,\n",
       " 'age': 2,\n",
       " '“I’m': 19,\n",
       " 'Ada,”': 1,\n",
       " 'hair': 5,\n",
       " 'goes': 7,\n",
       " 'ringlets,': 1,\n",
       " 'mine': 3,\n",
       " 'doesn’t': 16,\n",
       " 'ringlets': 1,\n",
       " 'all;': 2,\n",
       " 'can’t': 27,\n",
       " 'Mabel,': 2,\n",
       " 'know': 45,\n",
       " 'sorts': 3,\n",
       " 'she,': 4,\n",
       " ...}"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "with open(\"aliceinwonderland.txt\") as alicefile:\n",
    "    alice_text = alicefile.read()\n",
    "    \n",
    "#print(alice_text)    \n",
    "    \n",
    "alice_text = alice_text[1435:145451] #getting rid of the project Gutenberg stuff at the beginning and end\n",
    "alice_words = alice_text.split()\n",
    "\n",
    "#print(alice_words)\n",
    "\n",
    "word_frequencies_dict = {}\n",
    "\n",
    "for word in alice_words:\n",
    "    if word in word_frequencies_dict:\n",
    "        word_frequencies_dict[word] += 1\n",
    "    else:\n",
    "        word_frequencies_dict[word] = 1\n",
    "\n",
    "word_frequencies_dict"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "d7210a26",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[[12, 'CHAPTER'],\n",
       " [1, 'I.'],\n",
       " [1, 'Down'],\n",
       " [1513, 'the'],\n",
       " [1, 'Rabbit-Hole'],\n",
       " [221, 'Alice'],\n",
       " [327, 'was'],\n",
       " [11, 'beginning'],\n",
       " [706, 'to'],\n",
       " [43, 'get'],\n",
       " [125, 'very'],\n",
       " [7, 'tired'],\n",
       " [492, 'of'],\n",
       " [10, 'sitting'],\n",
       " [53, 'by'],\n",
       " [204, 'her'],\n",
       " [5, 'sister'],\n",
       " [138, 'on'],\n",
       " [2, 'bank,'],\n",
       " [715, 'and'],\n",
       " [10, 'having'],\n",
       " [22, 'nothing'],\n",
       " [1, 'do:'],\n",
       " [18, 'once'],\n",
       " [68, 'or'],\n",
       " [1, 'twice'],\n",
       " [485, 'she'],\n",
       " [176, 'had'],\n",
       " [3, 'peeped'],\n",
       " [67, 'into'],\n",
       " [3, 'book'],\n",
       " [1, 'reading,'],\n",
       " [101, 'but'],\n",
       " [347, 'it'],\n",
       " [64, 'no'],\n",
       " [4, 'pictures'],\n",
       " [1, 'conversations'],\n",
       " [344, 'in'],\n",
       " [38, 'it,'],\n",
       " [38, '“and'],\n",
       " [85, 'what'],\n",
       " [63, 'is'],\n",
       " [16, 'use'],\n",
       " [608, 'a'],\n",
       " [2, 'book,”'],\n",
       " [63, 'thought'],\n",
       " [1, '“without'],\n",
       " [1, 'conversations?”'],\n",
       " [23, 'So'],\n",
       " [3, 'considering'],\n",
       " [9, 'own'],\n",
       " [4, 'mind'],\n",
       " [2, '(as'],\n",
       " [27, 'well'],\n",
       " [237, 'as'],\n",
       " [7, 'could,'],\n",
       " [125, 'for'],\n",
       " [4, 'hot'],\n",
       " [11, 'day'],\n",
       " [29, 'made'],\n",
       " [8, 'feel'],\n",
       " [3, 'sleepy'],\n",
       " [1, 'stupid),'],\n",
       " [11, 'whether'],\n",
       " [2, 'pleasure'],\n",
       " [8, 'making'],\n",
       " [1, 'daisy-chain'],\n",
       " [68, 'would'],\n",
       " [137, 'be'],\n",
       " [4, 'worth'],\n",
       " [4, 'trouble'],\n",
       " [21, 'getting'],\n",
       " [81, 'up'],\n",
       " [2, 'picking'],\n",
       " [1, 'daisies,'],\n",
       " [66, 'when'],\n",
       " [9, 'suddenly'],\n",
       " [22, 'White'],\n",
       " [29, 'Rabbit'],\n",
       " [168, 'with'],\n",
       " [1, 'pink'],\n",
       " [18, 'eyes'],\n",
       " [13, 'ran'],\n",
       " [12, 'close'],\n",
       " [13, 'her.'],\n",
       " [19, 'There'],\n",
       " [103, 'so'],\n",
       " [13, '_very_'],\n",
       " [2, 'remarkable'],\n",
       " [1, 'that;'],\n",
       " [2, 'nor'],\n",
       " [50, 'did'],\n",
       " [36, 'think'],\n",
       " [40, 'much'],\n",
       " [97, 'out'],\n",
       " [37, 'way'],\n",
       " [14, 'hear'],\n",
       " [35, 'say'],\n",
       " [4, 'itself,'],\n",
       " [2, '“Oh'],\n",
       " [9, 'dear!'],\n",
       " [5, 'Oh'],\n",
       " [249, 'I'],\n",
       " [21, 'shall'],\n",
       " [1, 'late!”'],\n",
       " [1, '(when'],\n",
       " [31, 'over'],\n",
       " [1, 'afterwards,'],\n",
       " [2, 'occurred'],\n",
       " [213, 'that'],\n",
       " [13, 'ought'],\n",
       " [73, 'have'],\n",
       " [1, 'wondered'],\n",
       " [196, 'at'],\n",
       " [17, 'this,'],\n",
       " [46, 'time'],\n",
       " [151, 'all'],\n",
       " [27, 'seemed'],\n",
       " [53, 'quite'],\n",
       " [1, 'natural);'],\n",
       " [1, 'actually'],\n",
       " [1, '_took'],\n",
       " [6, 'watch'],\n",
       " [57, 'its'],\n",
       " [1, 'waistcoat-pocket_,'],\n",
       " [45, 'looked'],\n",
       " [50, 'then'],\n",
       " [11, 'hurried'],\n",
       " [27, 'on,'],\n",
       " [2, 'started'],\n",
       " [6, 'feet,'],\n",
       " [1, 'flashed'],\n",
       " [5, 'across'],\n",
       " [37, 'never'],\n",
       " [19, 'before'],\n",
       " [12, 'seen'],\n",
       " [1, 'rabbit'],\n",
       " [5, 'either'],\n",
       " [1, 'waistcoat-pocket,'],\n",
       " [18, 'take'],\n",
       " [1, 'burning'],\n",
       " [2, 'curiosity,'],\n",
       " [1, 'field'],\n",
       " [35, 'after'],\n",
       " [1, 'fortunately'],\n",
       " [43, 'just'],\n",
       " [47, 'see'],\n",
       " [1, 'pop'],\n",
       " [77, 'down'],\n",
       " [32, 'large'],\n",
       " [2, 'rabbit-hole'],\n",
       " [16, 'under'],\n",
       " [1, 'hedge.'],\n",
       " [5, 'In'],\n",
       " [21, 'another'],\n",
       " [21, 'moment'],\n",
       " [79, 'went'],\n",
       " [37, 'how'],\n",
       " [6, 'world'],\n",
       " [16, 'again.'],\n",
       " [89, 'The'],\n",
       " [2, 'straight'],\n",
       " [74, 'like'],\n",
       " [1, 'tunnel'],\n",
       " [47, 'some'],\n",
       " [7, 'way,'],\n",
       " [2, 'dipped'],\n",
       " [12, 'down,'],\n",
       " [103, 'not'],\n",
       " [84, 'about'],\n",
       " [1, 'stopping'],\n",
       " [40, 'herself'],\n",
       " [28, 'found'],\n",
       " [2, 'falling'],\n",
       " [5, 'deep'],\n",
       " [2, 'well.'],\n",
       " [1, 'Either'],\n",
       " [2, 'deep,'],\n",
       " [6, 'fell'],\n",
       " [2, 'slowly,'],\n",
       " [1, 'plenty'],\n",
       " [25, 'look'],\n",
       " [15, 'wonder'],\n",
       " [26, 'going'],\n",
       " [5, 'happen'],\n",
       " [3, 'next.'],\n",
       " [4, 'First,'],\n",
       " [18, 'tried'],\n",
       " [26, 'make'],\n",
       " [5, 'coming'],\n",
       " [3, 'to,'],\n",
       " [21, 'too'],\n",
       " [3, 'dark'],\n",
       " [2, 'anything;'],\n",
       " [4, 'sides'],\n",
       " [1, 'well,'],\n",
       " [7, 'noticed'],\n",
       " [108, 'they'],\n",
       " [82, 'were'],\n",
       " [3, 'filled'],\n",
       " [2, 'cupboards'],\n",
       " [1, 'book-shelves;'],\n",
       " [14, 'here'],\n",
       " [44, 'there'],\n",
       " [13, 'saw'],\n",
       " [1, 'maps'],\n",
       " [1, 'hung'],\n",
       " [26, 'upon'],\n",
       " [1, 'pegs.'],\n",
       " [33, 'She'],\n",
       " [23, 'took'],\n",
       " [2, 'jar'],\n",
       " [32, 'from'],\n",
       " [77, 'one'],\n",
       " [1, 'shelves'],\n",
       " [1, 'passed;'],\n",
       " [1, 'labelled'],\n",
       " [1, '“ORANGE'],\n",
       " [1, 'MARMALADE”,'],\n",
       " [39, 'great'],\n",
       " [1, 'disappointment'],\n",
       " [1, 'empty:'],\n",
       " [1, 'drop'],\n",
       " [4, 'fear'],\n",
       " [1, 'killing'],\n",
       " [4, 'somebody'],\n",
       " [1, 'underneath,'],\n",
       " [3, 'managed'],\n",
       " [31, 'put'],\n",
       " [1, 'past'],\n",
       " [15, 'it.'],\n",
       " [1, '“Well!”'],\n",
       " [31, 'herself,'],\n",
       " [1, '“after'],\n",
       " [40, 'such'],\n",
       " [6, 'fall'],\n",
       " [2, 'tumbling'],\n",
       " [1, 'stairs!'],\n",
       " [9, 'How'],\n",
       " [1, 'brave'],\n",
       " [4, 'they’ll'],\n",
       " [46, 'me'],\n",
       " [1, 'home!'],\n",
       " [7, 'Why,'],\n",
       " [12, 'wouldn’t'],\n",
       " [14, 'anything'],\n",
       " [17, 'even'],\n",
       " [69, 'if'],\n",
       " [38, 'off'],\n",
       " [8, 'top'],\n",
       " [1, 'house!”'],\n",
       " [2, '(Which'],\n",
       " [4, 'likely'],\n",
       " [1, 'true.)'],\n",
       " [2, 'Down,'],\n",
       " [2, 'down.'],\n",
       " [3, 'Would'],\n",
       " [2, '_never_'],\n",
       " [22, 'come'],\n",
       " [52, 'an'],\n",
       " [1, 'end?'],\n",
       " [119, '“I'],\n",
       " [12, 'many'],\n",
       " [3, 'miles'],\n",
       " [20, 'I’ve'],\n",
       " [4, 'fallen'],\n",
       " [86, 'this'],\n",
       " [1, 'time?”'],\n",
       " [416, 'said'],\n",
       " [3, 'aloud.'],\n",
       " [39, 'must'],\n",
       " [1, 'somewhere'],\n",
       " [14, 'near'],\n",
       " [1, 'centre'],\n",
       " [2, 'earth.'],\n",
       " [6, 'Let'],\n",
       " [3, 'see:'],\n",
       " [6, 'four'],\n",
       " [2, 'thousand'],\n",
       " [3, 'think—”'],\n",
       " [1, '(for,'],\n",
       " [251, 'you'],\n",
       " [11, 'see,'],\n",
       " [2, 'learnt'],\n",
       " [4, 'several'],\n",
       " [19, 'things'],\n",
       " [17, 'sort'],\n",
       " [4, 'lessons'],\n",
       " [1, 'schoolroom,'],\n",
       " [6, 'though'],\n",
       " [23, 'good'],\n",
       " [8, 'opportunity'],\n",
       " [2, 'showing'],\n",
       " [1, 'knowledge,'],\n",
       " [4, 'listen'],\n",
       " [18, 'her,'],\n",
       " [12, 'still'],\n",
       " [1, 'practice'],\n",
       " [1, 'over)'],\n",
       " [1, '“—yes,'],\n",
       " [13, 'that’s'],\n",
       " [20, 'right'],\n",
       " [1, 'distance—but'],\n",
       " [2, 'Latitude'],\n",
       " [2, 'Longitude'],\n",
       " [45, 'got'],\n",
       " [3, 'to?”'],\n",
       " [4, '(Alice'],\n",
       " [14, 'idea'],\n",
       " [14, 'was,'],\n",
       " [2, 'either,'],\n",
       " [5, 'nice'],\n",
       " [2, 'grand'],\n",
       " [14, 'words'],\n",
       " [1, 'say.)'],\n",
       " [2, 'Presently'],\n",
       " [46, 'began'],\n",
       " [1, '_through_'],\n",
       " [1, 'earth!'],\n",
       " [3, 'funny'],\n",
       " [6, 'it’ll'],\n",
       " [7, 'seem'],\n",
       " [12, 'among'],\n",
       " [10, 'people'],\n",
       " [4, 'walk'],\n",
       " [50, 'their'],\n",
       " [7, 'heads'],\n",
       " [1, 'downward!'],\n",
       " [1, 'Antipathies,'],\n",
       " [9, '(she'],\n",
       " [25, 'rather'],\n",
       " [11, 'glad'],\n",
       " [5, '_was_'],\n",
       " [2, 'listening,'],\n",
       " [6, 'time,'],\n",
       " [11, 'didn’t'],\n",
       " [3, 'sound'],\n",
       " [1, 'word)'],\n",
       " [1, '“—but'],\n",
       " [7, 'ask'],\n",
       " [49, 'them'],\n",
       " [8, 'name'],\n",
       " [1, 'country'],\n",
       " [16, 'is,'],\n",
       " [8, 'know.'],\n",
       " [1, 'Please,'],\n",
       " [1, 'Ma’am,'],\n",
       " [1, 'New'],\n",
       " [1, 'Zealand'],\n",
       " [1, 'Australia?”'],\n",
       " [1, '(and'],\n",
       " [1, 'curtsey'],\n",
       " [1, 'spoke—fancy'],\n",
       " [1, '_curtseying_'],\n",
       " [15, 'you’re'],\n",
       " [12, 'through'],\n",
       " [1, 'air!'],\n",
       " [5, 'Do'],\n",
       " [63, 'could'],\n",
       " [6, 'manage'],\n",
       " [1, 'it?)'],\n",
       " [17, '“And'],\n",
       " [1, 'ignorant'],\n",
       " [118, 'little'],\n",
       " [3, 'girl'],\n",
       " [2, 'she’ll'],\n",
       " [1, 'asking!'],\n",
       " [4, 'No,'],\n",
       " [46, 'do'],\n",
       " [1, 'ask:'],\n",
       " [12, 'perhaps'],\n",
       " [6, 'written'],\n",
       " [1, 'somewhere.”'],\n",
       " [8, 'else'],\n",
       " [8, 'do,'],\n",
       " [23, 'soon'],\n",
       " [12, 'talking'],\n",
       " [1, '“Dinah’ll'],\n",
       " [1, 'miss'],\n",
       " [1, 'to-night,'],\n",
       " [27, 'should'],\n",
       " [1, 'think!”'],\n",
       " [1, '(Dinah'],\n",
       " [1, 'cat.)'],\n",
       " [3, 'hope'],\n",
       " [12, 'remember'],\n",
       " [1, 'saucer'],\n",
       " [1, 'milk'],\n",
       " [1, 'tea-time.'],\n",
       " [4, 'Dinah'],\n",
       " [55, 'my'],\n",
       " [21, 'wish'],\n",
       " [3, 'me!'],\n",
       " [37, 'are'],\n",
       " [3, 'mice'],\n",
       " [5, 'air,'],\n",
       " [35, 'I’m'],\n",
       " [2, 'afraid,'],\n",
       " [27, 'might'],\n",
       " [3, 'catch'],\n",
       " [1, 'bat,'],\n",
       " [3, 'mouse,'],\n",
       " [15, 'But'],\n",
       " [9, 'cats'],\n",
       " [16, 'eat'],\n",
       " [1, 'bats,'],\n",
       " [3, 'wonder?”'],\n",
       " [49, 'And'],\n",
       " [1, 'sleepy,'],\n",
       " [11, 'saying'],\n",
       " [1, 'dreamy'],\n",
       " [8, '“Do'],\n",
       " [1, 'bats?'],\n",
       " [1, 'bats?”'],\n",
       " [1, 'sometimes,'],\n",
       " [1, 'bats'],\n",
       " [1, 'cats?”'],\n",
       " [2, 'for,'],\n",
       " [9, 'couldn’t'],\n",
       " [6, 'answer'],\n",
       " [4, 'question,'],\n",
       " [8, 'matter'],\n",
       " [37, 'which'],\n",
       " [23, 'felt'],\n",
       " [1, 'dozing'],\n",
       " [14, 'off,'],\n",
       " [6, 'begun'],\n",
       " [3, 'dream'],\n",
       " [5, 'walking'],\n",
       " [11, 'hand'],\n",
       " [3, 'Dinah,'],\n",
       " [1, 'earnestly,'],\n",
       " [4, '“Now,'],\n",
       " [26, 'tell'],\n",
       " [1, 'truth:'],\n",
       " [16, 'ever'],\n",
       " [1, 'bat?”'],\n",
       " [1, 'suddenly,'],\n",
       " [2, 'thump!'],\n",
       " [38, 'came'],\n",
       " [1, 'heap'],\n",
       " [1, 'sticks'],\n",
       " [7, 'dry'],\n",
       " [2, 'leaves,'],\n",
       " [2, 'over.'],\n",
       " [8, 'bit'],\n",
       " [1, 'hurt,'],\n",
       " [5, 'jumped'],\n",
       " [11, 'feet'],\n",
       " [1, 'moment:'],\n",
       " [9, 'up,'],\n",
       " [1, 'overhead;'],\n",
       " [29, 'long'],\n",
       " [2, 'passage,'],\n",
       " [4, 'sight,'],\n",
       " [1, 'hurrying'],\n",
       " [1, 'lost:'],\n",
       " [15, 'away'],\n",
       " [2, 'wind,'],\n",
       " [5, 'say,'],\n",
       " [16, 'turned'],\n",
       " [2, 'corner,'],\n",
       " [4, 'ears'],\n",
       " [1, 'whiskers,'],\n",
       " [3, 'late'],\n",
       " [25, 'it’s'],\n",
       " [1, 'getting!”'],\n",
       " [12, 'behind'],\n",
       " [2, 'longer'],\n",
       " [1, 'seen:'],\n",
       " [1, 'long,'],\n",
       " [7, 'low'],\n",
       " [5, 'hall,'],\n",
       " [1, 'lit'],\n",
       " [2, 'row'],\n",
       " [1, 'lamps'],\n",
       " [3, 'hanging'],\n",
       " [1, 'roof.'],\n",
       " [2, 'doors'],\n",
       " [30, 'round'],\n",
       " [1, 'locked;'],\n",
       " [36, 'been'],\n",
       " [12, 'side'],\n",
       " [5, 'other,'],\n",
       " [11, 'trying'],\n",
       " [12, 'every'],\n",
       " [9, 'door,'],\n",
       " [10, 'walked'],\n",
       " [2, 'sadly'],\n",
       " [3, 'middle,'],\n",
       " [7, 'wondering'],\n",
       " [1, 'Suddenly'],\n",
       " [2, 'three-legged'],\n",
       " [5, 'table,'],\n",
       " [1, 'solid'],\n",
       " [1, 'glass;'],\n",
       " [4, 'except'],\n",
       " [4, 'tiny'],\n",
       " [7, 'golden'],\n",
       " [3, 'key,'],\n",
       " [9, 'Alice’s'],\n",
       " [28, 'first'],\n",
       " [1, 'belong'],\n",
       " [1, 'hall;'],\n",
       " [6, 'but,'],\n",
       " [2, 'alas!'],\n",
       " [1, 'locks'],\n",
       " [1, 'large,'],\n",
       " [5, 'key'],\n",
       " [1, 'small,'],\n",
       " [36, 'any'],\n",
       " [4, 'rate'],\n",
       " [6, 'open'],\n",
       " [2, 'them.'],\n",
       " [13, 'However,'],\n",
       " [4, 'second'],\n",
       " [7, 'round,'],\n",
       " [1, 'curtain'],\n",
       " [11, 'before,'],\n",
       " [15, 'door'],\n",
       " [1, 'fifteen'],\n",
       " [6, 'inches'],\n",
       " [3, 'high:'],\n",
       " [1, 'lock,'],\n",
       " [1, 'delight'],\n",
       " [1, 'fitted!'],\n",
       " [9, 'opened'],\n",
       " [4, 'led'],\n",
       " [8, 'small'],\n",
       " [3, 'larger'],\n",
       " [23, 'than'],\n",
       " [1, 'rat-hole:'],\n",
       " [1, 'knelt'],\n",
       " [5, 'along'],\n",
       " [1, 'passage'],\n",
       " [1, 'loveliest'],\n",
       " [4, 'garden'],\n",
       " [1, 'saw.'],\n",
       " [2, 'longed'],\n",
       " [1, 'wander'],\n",
       " [9, 'those'],\n",
       " [1, 'beds'],\n",
       " [7, 'bright'],\n",
       " [2, 'flowers'],\n",
       " [2, 'cool'],\n",
       " [1, 'fountains,'],\n",
       " [29, 'head'],\n",
       " [1, 'doorway;'],\n",
       " [38, 'go'],\n",
       " [1, 'through,”'],\n",
       " [25, 'poor'],\n",
       " [76, 'Alice,'],\n",
       " [5, '“it'],\n",
       " [24, 'without'],\n",
       " [1, 'shoulders.'],\n",
       " [3, 'Oh,'],\n",
       " [4, 'shut'],\n",
       " [1, 'telescope!'],\n",
       " [43, 'only'],\n",
       " [13, 'knew'],\n",
       " [3, 'begin.”'],\n",
       " [1, 'For,'],\n",
       " [3, 'out-of-the-way'],\n",
       " [3, 'happened'],\n",
       " [1, 'lately,'],\n",
       " [9, 'few'],\n",
       " [3, 'indeed'],\n",
       " [9, 'really'],\n",
       " [1, 'impossible.'],\n",
       " [7, 'waiting'],\n",
       " [29, 'back'],\n",
       " [21, 'half'],\n",
       " [3, 'hoping'],\n",
       " [20, 'find'],\n",
       " [3, 'rules'],\n",
       " [2, 'shutting'],\n",
       " [1, 'telescopes:'],\n",
       " [7, 'bottle'],\n",
       " [1, '(“which'],\n",
       " [8, 'certainly'],\n",
       " [3, 'before,”'],\n",
       " [2, 'Alice,)'],\n",
       " [6, 'neck'],\n",
       " [3, 'paper'],\n",
       " [1, 'label,'],\n",
       " [2, '“DRINK'],\n",
       " [2, 'ME,”'],\n",
       " [2, 'beautifully'],\n",
       " [1, 'printed'],\n",
       " [1, 'letters.'],\n",
       " [15, 'It'],\n",
       " [1, '“Drink'],\n",
       " [5, 'me,”'],\n",
       " [2, 'wise'],\n",
       " [6, '_that_'],\n",
       " [3, 'hurry.'],\n",
       " [9, '“No,'],\n",
       " [23, 'I’ll'],\n",
       " [2, 'first,”'],\n",
       " [26, 'said,'],\n",
       " [5, 'marked'],\n",
       " [1, '‘_poison_’'],\n",
       " [1, 'not”;'],\n",
       " [9, 'read'],\n",
       " [1, 'histories'],\n",
       " [5, 'children'],\n",
       " [48, 'who'],\n",
       " [1, 'burnt,'],\n",
       " [1, 'eaten'],\n",
       " [2, 'wild'],\n",
       " [1, 'beasts'],\n",
       " [26, 'other'],\n",
       " [2, 'unpleasant'],\n",
       " [2, 'things,'],\n",
       " [11, 'because'],\n",
       " [5, '_would_'],\n",
       " [5, 'simple'],\n",
       " [2, 'friends'],\n",
       " [4, 'taught'],\n",
       " [1, 'them:'],\n",
       " [2, 'as,'],\n",
       " [1, 'red-hot'],\n",
       " [1, 'poker'],\n",
       " [23, 'will'],\n",
       " [2, 'burn'],\n",
       " [6, 'hold'],\n",
       " [1, 'long;'],\n",
       " [5, 'cut'],\n",
       " [53, 'your'],\n",
       " [3, 'finger'],\n",
       " [1, 'deeply'],\n",
       " [1, 'knife,'],\n",
       " [2, 'usually'],\n",
       " [1, 'bleeds;'],\n",
       " [6, 'forgotten'],\n",
       " [5, 'that,'],\n",
       " [4, 'drink'],\n",
       " [2, '“poison,”'],\n",
       " [6, 'almost'],\n",
       " [2, 'certain'],\n",
       " [1, 'disagree'],\n",
       " [25, 'you,'],\n",
       " [2, 'sooner'],\n",
       " [1, 'later.'],\n",
       " [5, '_not_'],\n",
       " [4, 'ventured'],\n",
       " [2, 'taste'],\n",
       " [3, 'finding'],\n",
       " [1, 'nice,'],\n",
       " [4, '(it'],\n",
       " [1, 'had,'],\n",
       " [4, 'fact,'],\n",
       " [2, 'mixed'],\n",
       " [1, 'flavour'],\n",
       " [1, 'cherry-tart,'],\n",
       " [1, 'custard,'],\n",
       " [1, 'pine-apple,'],\n",
       " [1, 'roast'],\n",
       " [1, 'turkey,'],\n",
       " [1, 'toffee,'],\n",
       " [1, 'buttered'],\n",
       " [1, 'toast,)'],\n",
       " [7, 'finished'],\n",
       " [5, 'off.'],\n",
       " [60, '*'],\n",
       " [33, '“What'],\n",
       " [16, 'curious'],\n",
       " [1, 'feeling!”'],\n",
       " [16, 'Alice;'],\n",
       " [1, 'telescope.”'],\n",
       " [1, 'indeed:'],\n",
       " [23, 'now'],\n",
       " [5, 'ten'],\n",
       " [3, 'high,'],\n",
       " [7, 'face'],\n",
       " [2, 'brightened'],\n",
       " [6, 'size'],\n",
       " [2, 'lovely'],\n",
       " [3, 'garden.'],\n",
       " [6, 'however,'],\n",
       " [9, 'waited'],\n",
       " [7, 'minutes'],\n",
       " [1, 'shrink'],\n",
       " [1, 'further:'],\n",
       " [4, 'nervous'],\n",
       " [2, 'this;'],\n",
       " [6, '“for'],\n",
       " [1, 'end,'],\n",
       " [8, 'know,”'],\n",
       " [3, '“in'],\n",
       " [2, 'altogether,'],\n",
       " [1, 'candle.'],\n",
       " [1, 'then?”'],\n",
       " [3, 'fancy'],\n",
       " [1, 'flame'],\n",
       " [2, 'candle'],\n",
       " [1, 'blown'],\n",
       " [13, 'out,'],\n",
       " [1, 'thing.'],\n",
       " [5, 'After'],\n",
       " [4, 'while,'],\n",
       " [38, 'more'],\n",
       " [2, 'happened,'],\n",
       " [3, 'decided'],\n",
       " [1, 'once;'],\n",
       " [1, 'alas'],\n",
       " [3, 'Alice!'],\n",
       " [7, 'table'],\n",
       " [3, 'possibly'],\n",
       " [4, 'reach'],\n",
       " [9, 'it:'],\n",
       " [1, 'plainly'],\n",
       " [2, 'glass,'],\n",
       " [7, 'best'],\n",
       " [1, 'climb'],\n",
       " [3, 'legs'],\n",
       " [1, 'slippery;'],\n",
       " [1, 'trying,'],\n",
       " [35, 'thing'],\n",
       " [17, 'sat'],\n",
       " [2, 'cried.'],\n",
       " [9, '“Come,'],\n",
       " [15, 'there’s'],\n",
       " [2, 'crying'],\n",
       " [7, 'that!”'],\n",
       " [1, 'sharply;'],\n",
       " [1, 'advise'],\n",
       " [7, 'leave'],\n",
       " [1, 'minute!”'],\n",
       " [5, 'generally'],\n",
       " [15, 'gave'],\n",
       " [1, 'advice,'],\n",
       " [1, '(though'],\n",
       " [1, 'seldom'],\n",
       " [8, 'followed'],\n",
       " [2, 'it),'],\n",
       " [4, 'sometimes'],\n",
       " [1, 'scolded'],\n",
       " [3, 'severely'],\n",
       " [2, 'bring'],\n",
       " [4, 'tears'],\n",
       " [1, 'eyes;'],\n",
       " [5, 'remembered'],\n",
       " [3, 'box'],\n",
       " [1, 'cheated'],\n",
       " [6, 'game'],\n",
       " [3, 'croquet'],\n",
       " [2, 'playing'],\n",
       " [9, 'against'],\n",
       " [3, 'child'],\n",
       " [3, 'fond'],\n",
       " [1, 'pretending'],\n",
       " [20, 'two'],\n",
       " [1, 'people.'],\n",
       " [19, '“But'],\n",
       " [4, 'now,”'],\n",
       " [4, '“to'],\n",
       " [1, 'pretend'],\n",
       " [1, 'people!'],\n",
       " [11, 'hardly'],\n",
       " [10, 'enough'],\n",
       " [13, 'left'],\n",
       " [2, '_one_'],\n",
       " [1, 'respectable'],\n",
       " [1, 'person!”'],\n",
       " [1, 'Soon'],\n",
       " [4, 'eye'],\n",
       " [4, 'glass'],\n",
       " [8, 'lying'],\n",
       " [1, 'table:'],\n",
       " [2, 'cake,'],\n",
       " [1, '“EAT'],\n",
       " [1, 'ME”'],\n",
       " [1, 'currants.'],\n",
       " [20, '“Well,'],\n",
       " [18, 'it,”'],\n",
       " [11, 'makes'],\n",
       " [13, 'grow'],\n",
       " [3, 'larger,'],\n",
       " [27, 'can'],\n",
       " [1, 'key;'],\n",
       " [3, 'smaller,'],\n",
       " [1, 'creep'],\n",
       " [1, 'door;'],\n",
       " [5, 'garden,'],\n",
       " [48, 'don’t'],\n",
       " [4, 'care'],\n",
       " [1, 'happens!”'],\n",
       " [1, 'ate'],\n",
       " [2, 'bit,'],\n",
       " [13, 'anxiously'],\n",
       " [3, '“Which'],\n",
       " [1, 'way?'],\n",
       " [3, 'Which'],\n",
       " [1, 'way?”,'],\n",
       " [2, 'holding'],\n",
       " [4, 'growing,'],\n",
       " [6, 'surprised'],\n",
       " [3, 'remained'],\n",
       " [21, 'same'],\n",
       " [3, 'size:'],\n",
       " [2, 'sure,'],\n",
       " [2, 'happens'],\n",
       " [1, 'eats'],\n",
       " [3, 'expecting'],\n",
       " [1, 'happen,'],\n",
       " [2, 'dull'],\n",
       " [1, 'stupid'],\n",
       " [2, 'life'],\n",
       " [1, 'common'],\n",
       " [3, 'way.'],\n",
       " [14, 'set'],\n",
       " [1, 'work,'],\n",
       " [1, 'cake.'],\n",
       " [1, 'II.'],\n",
       " [1, 'Pool'],\n",
       " [1, 'Tears'],\n",
       " [1, '“Curiouser'],\n",
       " [1, 'curiouser!”'],\n",
       " [18, 'cried'],\n",
       " [1, 'surprised,'],\n",
       " [2, 'forgot'],\n",
       " [8, 'speak'],\n",
       " [1, 'English);'],\n",
       " [1, '“now'],\n",
       " [3, 'opening'],\n",
       " [1, 'largest'],\n",
       " [1, 'telescope'],\n",
       " [1, 'was!'],\n",
       " [1, 'Good-bye,'],\n",
       " [1, 'feet!”'],\n",
       " [1, '(for'],\n",
       " [9, 'far'],\n",
       " [1, 'off).'],\n",
       " [19, '“Oh,'],\n",
       " [5, 'shoes'],\n",
       " [1, 'stockings'],\n",
       " [6, 'now,'],\n",
       " [1, 'dears?'],\n",
       " [16, 'sure'],\n",
       " [13, '_I_'],\n",
       " [4, 'shan’t'],\n",
       " [1, 'able!'],\n",
       " [11, 'deal'],\n",
       " [2, 'myself'],\n",
       " [1, 'you:'],\n",
       " [1, 'can;—but'],\n",
       " [6, 'kind'],\n",
       " [3, 'them,”'],\n",
       " [5, '“or'],\n",
       " [21, 'won’t'],\n",
       " [9, 'want'],\n",
       " [1, 'go!'],\n",
       " [9, 'give'],\n",
       " [4, 'new'],\n",
       " [5, 'pair'],\n",
       " [3, 'boots'],\n",
       " [1, 'Christmas.”'],\n",
       " [1, 'planning'],\n",
       " [9, '“They'],\n",
       " [1, 'carrier,”'],\n",
       " [1, 'thought;'],\n",
       " [1, 'seem,'],\n",
       " [2, 'sending'],\n",
       " [2, 'presents'],\n",
       " [1, 'one’s'],\n",
       " [1, 'feet!'],\n",
       " [1, 'odd'],\n",
       " [1, 'directions'],\n",
       " [1, 'look!'],\n",
       " [1, '_Alice’s'],\n",
       " [1, 'Right'],\n",
       " [1, 'Foot,'],\n",
       " [1, 'Esq.,'],\n",
       " [1, 'Hearthrug,'],\n",
       " [1, 'Fender,_'],\n",
       " [1, '(_with'],\n",
       " [1, 'love_).'],\n",
       " [6, 'dear,'],\n",
       " [1, 'nonsense'],\n",
       " [1, 'talking!”'],\n",
       " [5, 'Just'],\n",
       " [2, 'struck'],\n",
       " [5, 'roof'],\n",
       " [1, 'hall:'],\n",
       " [2, 'fact'],\n",
       " [4, 'nine'],\n",
       " [2, 'door.'],\n",
       " [1, 'Poor'],\n",
       " [3, 'side,'],\n",
       " [2, 'eye;'],\n",
       " [1, 'hopeless'],\n",
       " [1, 'ever:'],\n",
       " [3, 'cry'],\n",
       " [32, '“You'],\n",
       " [2, 'ashamed'],\n",
       " [1, 'yourself,”'],\n",
       " [2, '“a'],\n",
       " [6, 'you,”'],\n",
       " [1, 'this),'],\n",
       " [1, 'way!'],\n",
       " [1, 'Stop'],\n",
       " [5, 'moment,'],\n",
       " [3, 'you!”'],\n",
       " [2, 'same,'],\n",
       " [1, 'shedding'],\n",
       " [1, 'gallons'],\n",
       " [3, 'tears,'],\n",
       " [4, 'until'],\n",
       " [6, 'pool'],\n",
       " [1, 'reaching'],\n",
       " [1, 'hall.'],\n",
       " [29, 'heard'],\n",
       " [3, 'pattering'],\n",
       " [4, 'distance,'],\n",
       " [7, 'hastily'],\n",
       " [1, 'dried'],\n",
       " [2, 'coming.'],\n",
       " [1, 'returning,'],\n",
       " [1, 'splendidly'],\n",
       " [1, 'dressed,'],\n",
       " [6, 'white'],\n",
       " [5, 'kid'],\n",
       " [5, 'gloves'],\n",
       " [8, 'fan'],\n",
       " [3, 'other:'],\n",
       " [94, 'he'],\n",
       " [2, 'trotting'],\n",
       " [1, 'hurry,'],\n",
       " [3, 'muttering'],\n",
       " [4, 'himself'],\n",
       " [2, 'came,'],\n",
       " [2, '“Oh!'],\n",
       " [8, 'Duchess,'],\n",
       " [3, 'Duchess!'],\n",
       " [1, 'Oh!'],\n",
       " [3, 'savage'],\n",
       " [13, 'kept'],\n",
       " [1, 'waiting!”'],\n",
       " [1, 'desperate'],\n",
       " [7, 'ready'],\n",
       " [9, 'help'],\n",
       " [2, 'one;'],\n",
       " [7, 'so,'],\n",
       " [6, 'began,'],\n",
       " [6, 'low,'],\n",
       " [3, 'timid'],\n",
       " [15, 'voice,'],\n",
       " [14, '“If'],\n",
       " [3, 'please,'],\n",
       " [1, 'sir—”'],\n",
       " [2, 'violently,'],\n",
       " [4, 'dropped'],\n",
       " [1, 'fan,'],\n",
       " [1, 'skurried'],\n",
       " [1, 'darkness'],\n",
       " [8, 'hard'],\n",
       " [1, 'go.'],\n",
       " [3, 'gloves,'],\n",
       " [19, 'and,'],\n",
       " [1, 'hall'],\n",
       " [1, 'hot,'],\n",
       " [1, 'fanning'],\n",
       " [1, 'talking:'],\n",
       " [1, '“Dear,'],\n",
       " [9, 'queer'],\n",
       " [9, 'everything'],\n",
       " [1, 'to-day!'],\n",
       " [2, 'yesterday'],\n",
       " [2, 'usual.'],\n",
       " [7, 'changed'],\n",
       " [1, 'night?'],\n",
       " [1, 'think:'],\n",
       " [1, 'morning?'],\n",
       " [6, 'feeling'],\n",
       " [1, 'different.'],\n",
       " [20, 'next'],\n",
       " [7, 'question'],\n",
       " [6, 'Who'],\n",
       " [13, 'am'],\n",
       " [1, 'I?'],\n",
       " [1, 'Ah,'],\n",
       " [3, '_that’s_'],\n",
       " [1, 'puzzle!”'],\n",
       " [10, 'thinking'],\n",
       " [2, 'age'],\n",
       " [19, '“I’m'],\n",
       " [1, 'Ada,”'],\n",
       " [5, 'hair'],\n",
       " [7, 'goes'],\n",
       " [1, 'ringlets,'],\n",
       " [3, 'mine'],\n",
       " [16, 'doesn’t'],\n",
       " [1, 'ringlets'],\n",
       " [2, 'all;'],\n",
       " [27, 'can’t'],\n",
       " [2, 'Mabel,'],\n",
       " [45, 'know'],\n",
       " [3, 'sorts'],\n",
       " [4, 'she,'],\n",
       " ...]"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "with open(\"aliceinwonderland.txt\") as alicefile:\n",
    "    alice_text = alicefile.read()\n",
    "    \n",
    "alice_text = alice_text[1435:145451]\n",
    "alice_words = alice_text.split()\n",
    "\n",
    "word_frequencies_2dlist = []\n",
    "\n",
    "for word in alice_words:\n",
    "    \n",
    "    #search the list of tuples looking for this word\n",
    "    found_word_in_list = False\n",
    "    for freq in word_frequencies_2dlist:\n",
    "        \n",
    "        #if I find it, add one onto its counter and\n",
    "        #flag that we found it\n",
    "        if word == freq[1]:\n",
    "            freq[0] += 1\n",
    "            found_word_in_list = True\n",
    "            \n",
    "    #didn't find it in the loop above, so we add a new tuple\n",
    "    #for the word with frequency 1\n",
    "    if not found_word_in_list:\n",
    "        word_frequencies_2dlist.append([1,word])\n",
    "\n",
    "word_frequencies_2dlist"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3d46e7e4",
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    }
   },
   "source": [
    "## Analysis\n",
    "\n",
    "* It was easier for me to populate the dictionary than the 2D list\n",
    "* The dictionary build code ran faster than the 2D list\n",
    "* Dictionary - fast to look up a word, List - slow, requires loop"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "133ae75a",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "221\n"
     ]
    }
   ],
   "source": [
    "print( word_frequencies_dict[\"Alice\"] )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "4268c4c3",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "221\n"
     ]
    }
   ],
   "source": [
    "for wordfreq in word_frequencies_2dlist:\n",
    "    if \"Alice\" == wordfreq[1]:\n",
    "        print(wordfreq[0])"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f8a0e955",
   "metadata": {},
   "source": [
    "* Display sorted by frequency: dictonaries aren't ordered (would have to convert to a list), but I could sort the 2D list"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "53a27e25",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[[1513, 'the'],\n",
       " [715, 'and'],\n",
       " [706, 'to'],\n",
       " [608, 'a'],\n",
       " [492, 'of'],\n",
       " [485, 'she'],\n",
       " [416, 'said'],\n",
       " [347, 'it'],\n",
       " [344, 'in'],\n",
       " [327, 'was'],\n",
       " [251, 'you'],\n",
       " [249, 'I'],\n",
       " [237, 'as'],\n",
       " [221, 'Alice'],\n",
       " [213, 'that'],\n",
       " [204, 'her'],\n",
       " [196, 'at'],\n",
       " [176, 'had'],\n",
       " [168, 'with'],\n",
       " [151, 'all'],\n",
       " [138, 'on'],\n",
       " [137, 'be'],\n",
       " [125, 'very'],\n",
       " [125, 'for'],\n",
       " [119, '“I'],\n",
       " [118, 'little'],\n",
       " [108, 'they'],\n",
       " [103, 'so'],\n",
       " [103, 'not'],\n",
       " [101, 'but'],\n",
       " [97, 'out'],\n",
       " [94, 'he'],\n",
       " [93, 'his'],\n",
       " [89, 'The'],\n",
       " [86, 'this'],\n",
       " [85, 'what'],\n",
       " [84, 'about'],\n",
       " [82, 'were'],\n",
       " [81, 'up'],\n",
       " [79, 'went'],\n",
       " [77, 'one'],\n",
       " [77, 'down'],\n",
       " [76, 'Alice,'],\n",
       " [74, 'like'],\n",
       " [73, 'have'],\n",
       " [69, 'if'],\n",
       " [68, 'would'],\n",
       " [68, 'or'],\n",
       " [67, 'into'],\n",
       " [66, 'when'],\n",
       " [64, 'no'],\n",
       " [63, 'thought'],\n",
       " [63, 'is'],\n",
       " [63, 'could'],\n",
       " [60, '*'],\n",
       " [57, 'its'],\n",
       " [56, 'Mock'],\n",
       " [55, 'my'],\n",
       " [54, 'Alice.'],\n",
       " [53, 'your'],\n",
       " [53, 'quite'],\n",
       " [53, 'by'],\n",
       " [52, 'an'],\n",
       " [50, 'then'],\n",
       " [50, 'their'],\n",
       " [50, 'did'],\n",
       " [49, 'them'],\n",
       " [49, 'And'],\n",
       " [48, 'who'],\n",
       " [48, 'don’t'],\n",
       " [47, 'some'],\n",
       " [47, 'see'],\n",
       " [46, 'time'],\n",
       " [46, 'me'],\n",
       " [46, 'do'],\n",
       " [46, 'began'],\n",
       " [45, 'looked'],\n",
       " [45, 'know'],\n",
       " [45, 'got'],\n",
       " [44, 'there'],\n",
       " [43, 'only'],\n",
       " [43, 'just'],\n",
       " [43, 'get'],\n",
       " [40, 'such'],\n",
       " [40, 'much'],\n",
       " [40, 'herself'],\n",
       " [39, 'must'],\n",
       " [39, 'great'],\n",
       " [38, '“and'],\n",
       " [38, 'off'],\n",
       " [38, 'more'],\n",
       " [38, 'it,'],\n",
       " [38, 'go'],\n",
       " [38, 'came'],\n",
       " [37, 'which'],\n",
       " [37, 'way'],\n",
       " [37, 'never'],\n",
       " [37, 'how'],\n",
       " [37, 'are'],\n",
       " [36, 'think'],\n",
       " [36, 'been'],\n",
       " [36, 'any'],\n",
       " [35, 'thing'],\n",
       " [35, 'say'],\n",
       " [35, 'after'],\n",
       " [35, 'I’m'],\n",
       " [34, 'Queen'],\n",
       " [33, '“What'],\n",
       " [33, 'Turtle'],\n",
       " [33, 'She'],\n",
       " [32, '“You'],\n",
       " [32, 'large'],\n",
       " [32, 'from'],\n",
       " [31, 'put'],\n",
       " [31, 'over'],\n",
       " [31, 'herself,'],\n",
       " [31, 'again,'],\n",
       " [31, 'March'],\n",
       " [30, 'round'],\n",
       " [30, 'looking'],\n",
       " [29, 'made'],\n",
       " [29, 'long'],\n",
       " [29, 'heard'],\n",
       " [29, 'head'],\n",
       " [29, 'back'],\n",
       " [29, 'Rabbit'],\n",
       " [28, 'found'],\n",
       " [28, 'first'],\n",
       " [27, 'well'],\n",
       " [27, 'should'],\n",
       " [27, 'seemed'],\n",
       " [27, 'on,'],\n",
       " [27, 'might'],\n",
       " [27, 'can’t'],\n",
       " [27, 'can'],\n",
       " [27, 'King'],\n",
       " [26, 'upon'],\n",
       " [26, 'tell'],\n",
       " [26, 'said,'],\n",
       " [26, 'other'],\n",
       " [26, 'make'],\n",
       " [26, 'going'],\n",
       " [25, 'you,'],\n",
       " [25, 'rather'],\n",
       " [25, 'poor'],\n",
       " [25, 'look'],\n",
       " [25, 'last'],\n",
       " [25, 'it’s'],\n",
       " [24, '“It'],\n",
       " [24, 'without'],\n",
       " [24, 'Hatter'],\n",
       " [23, 'will'],\n",
       " [23, 'took'],\n",
       " [23, 'three'],\n",
       " [23, 'than'],\n",
       " [23, 'soon'],\n",
       " [23, 'now'],\n",
       " [23, 'him'],\n",
       " [23, 'good'],\n",
       " [23, 'felt'],\n",
       " [23, 'So'],\n",
       " [23, 'I’ll'],\n",
       " [23, 'Dormouse'],\n",
       " [22, 'nothing'],\n",
       " [22, 'come'],\n",
       " [22, 'White'],\n",
       " [22, 'Gryphon'],\n",
       " [21, 'won’t'],\n",
       " [21, 'wish'],\n",
       " [21, 'too'],\n",
       " [21, 'them,'],\n",
       " [21, 'shall'],\n",
       " [21, 'same'],\n",
       " [21, 'moment'],\n",
       " [21, 'half'],\n",
       " [21, 'getting'],\n",
       " [21, 'another'],\n",
       " [20, '“Well,'],\n",
       " [20, 'two'],\n",
       " [20, 'right'],\n",
       " [20, 'next'],\n",
       " [20, 'find'],\n",
       " [20, 'added'],\n",
       " [20, 'I’ve'],\n",
       " [19, '“but'],\n",
       " [19, '“Oh,'],\n",
       " [19, '“I’m'],\n",
       " [19, '“But'],\n",
       " [19, 'till'],\n",
       " [19, 'things'],\n",
       " [19, 'being'],\n",
       " [19, 'before'],\n",
       " [19, 'and,'],\n",
       " [19, 'There'],\n",
       " [18, 'voice'],\n",
       " [18, 'tried'],\n",
       " [18, 'take'],\n",
       " [18, 'once'],\n",
       " [18, 'it,”'],\n",
       " [18, 'her,'],\n",
       " [18, 'eyes'],\n",
       " [18, 'cried'],\n",
       " [17, '“And'],\n",
       " [17, 'this,'],\n",
       " [17, 'sort'],\n",
       " [17, 'sat'],\n",
       " [17, 'even'],\n",
       " [17, 'Queen,'],\n",
       " [17, 'Mouse'],\n",
       " [16, '“How'],\n",
       " [16, 'use'],\n",
       " [16, 'under'],\n",
       " [16, 'turned'],\n",
       " [16, 'tone,'],\n",
       " [16, 'sure'],\n",
       " [16, 'is,'],\n",
       " [16, 'ever'],\n",
       " [16, 'eat'],\n",
       " [16, 'doesn’t'],\n",
       " [16, 'curious'],\n",
       " [16, 'again.'],\n",
       " [16, 'Hare'],\n",
       " [16, 'Alice;'],\n",
       " [15, '“The'],\n",
       " [15, '“It’s'],\n",
       " [15, 'you’re'],\n",
       " [15, 'wonder'],\n",
       " [15, 'while'],\n",
       " [15, 'we'],\n",
       " [15, 'voice,'],\n",
       " [15, 'there’s'],\n",
       " [15, 'minute'],\n",
       " [15, 'it.'],\n",
       " [15, 'gave'],\n",
       " [15, 'door'],\n",
       " [15, 'called'],\n",
       " [15, 'away'],\n",
       " [15, 'This'],\n",
       " [15, 'King,'],\n",
       " [15, 'It'],\n",
       " [15, 'Gryphon.'],\n",
       " [15, 'Duchess'],\n",
       " [15, 'But'],\n",
       " [14, '“That’s'],\n",
       " [14, '“If'],\n",
       " [14, 'words'],\n",
       " [14, 'was,'],\n",
       " [14, 'something'],\n",
       " [14, 'set'],\n",
       " [14, 'replied'],\n",
       " [14, 'off,'],\n",
       " [14, 'near'],\n",
       " [14, 'idea'],\n",
       " [14, 'here'],\n",
       " [14, 'hear'],\n",
       " [14, 'both'],\n",
       " [14, 'anything'],\n",
       " [14, 'He'],\n",
       " [14, 'Gryphon,'],\n",
       " [13, '“I’ve'],\n",
       " [13, 'whole'],\n",
       " [13, 'that’s'],\n",
       " [13, 'saw'],\n",
       " [13, 'ran'],\n",
       " [13, 'out,'],\n",
       " [13, 'ought'],\n",
       " [13, 'old'],\n",
       " [13, 'left'],\n",
       " [13, 'knew'],\n",
       " [13, 'kept'],\n",
       " [13, 'her.'],\n",
       " [13, 'grow'],\n",
       " [13, 'anxiously'],\n",
       " [13, 'am'],\n",
       " [13, 'again'],\n",
       " [13, '_very_'],\n",
       " [13, '_I_'],\n",
       " [13, 'However,'],\n",
       " [13, 'Hatter.'],\n",
       " [12, 'wouldn’t'],\n",
       " [12, 'used'],\n",
       " [12, 'turning'],\n",
       " [12, 'try'],\n",
       " [12, 'through'],\n",
       " [12, 'talking'],\n",
       " [12, 'still'],\n",
       " [12, 'side'],\n",
       " [12, 'seen'],\n",
       " [12, 'remember'],\n",
       " [12, 'perhaps'],\n",
       " [12, 'many'],\n",
       " [12, 'every'],\n",
       " [12, 'end'],\n",
       " [12, 'down,'],\n",
       " [12, 'close'],\n",
       " [12, 'behind'],\n",
       " [12, 'among'],\n",
       " [12, 'King.'],\n",
       " [12, 'Caterpillar.'],\n",
       " [12, 'CHAPTER'],\n",
       " [12, 'As'],\n",
       " [11, '“Then'],\n",
       " [11, '“Of'],\n",
       " [11, 'whether'],\n",
       " [11, 'wasn’t'],\n",
       " [11, 'trying'],\n",
       " [11, 'these'],\n",
       " [11, 'see,'],\n",
       " [11, 'saying'],\n",
       " [11, 'may'],\n",
       " [11, 'makes'],\n",
       " [11, 'it?”'],\n",
       " [11, 'hurried'],\n",
       " [11, 'hardly'],\n",
       " [11, 'hand'],\n",
       " [11, 'glad'],\n",
       " [11, 'feet'],\n",
       " [11, 'didn’t'],\n",
       " [11, 'deal'],\n",
       " [11, 'day'],\n",
       " [11, 'course'],\n",
       " [11, 'better'],\n",
       " [11, 'beginning'],\n",
       " [11, 'before,'],\n",
       " [11, 'because'],\n",
       " [11, 'always'],\n",
       " [11, 'Queen.'],\n",
       " [11, 'Hare.'],\n",
       " [11, 'Caterpillar'],\n",
       " [10, 'walked'],\n",
       " [10, 'voice.'],\n",
       " [10, 'thinking'],\n",
       " [10, 'talk'],\n",
       " [10, 'sitting'],\n",
       " [10, 'people'],\n",
       " [10, 'nearly'],\n",
       " [10, 'having'],\n",
       " [10, 'enough'],\n",
       " [10, 'done'],\n",
       " [10, 'Hatter,'],\n",
       " [10, 'For'],\n",
       " [9, '“They'],\n",
       " [9, '“Not'],\n",
       " [9, '“No,'],\n",
       " [9, '“Come,'],\n",
       " [9, '“A'],\n",
       " [9, 'want'],\n",
       " [9, 'waited'],\n",
       " [9, 'us'],\n",
       " [9, 'up,'],\n",
       " [9, 'two,'],\n",
       " [9, 'tone.'],\n",
       " [9, 'those'],\n",
       " [9, 'they’re'],\n",
       " [9, 'that,”'],\n",
       " [9, 'suddenly'],\n",
       " [9, 'shouted'],\n",
       " [9, 'shook'],\n",
       " [9, 'rest'],\n",
       " [9, 'really'],\n",
       " [9, 'read'],\n",
       " [9, 'queer'],\n",
       " [9, 'own'],\n",
       " [9, 'opened'],\n",
       " [9, 'not,'],\n",
       " [9, 'know.”'],\n",
       " [9, 'jury'],\n",
       " [9, 'join'],\n",
       " [9, 'it;'],\n",
       " [9, 'it:'],\n",
       " [9, 'it.”'],\n",
       " [9, 'house,'],\n",
       " [9, 'help'],\n",
       " [9, 'gone'],\n",
       " [9, 'give'],\n",
       " [9, 'few'],\n",
       " [9, 'far'],\n",
       " [9, 'everything'],\n",
       " [9, 'door,'],\n",
       " [9, 'dear!'],\n",
       " [9, 'couldn’t'],\n",
       " [9, 'change'],\n",
       " [9, 'cats'],\n",
       " [9, 'against'],\n",
       " [9, 'afraid'],\n",
       " [9, 'Turtle.'],\n",
       " [9, 'They'],\n",
       " [9, 'Then'],\n",
       " [9, 'How'],\n",
       " [9, 'Dodo'],\n",
       " [9, 'Alice’s'],\n",
       " [9, '(she'],\n",
       " [8, '“you'],\n",
       " [8, '“it’s'],\n",
       " [8, '“Yes,'],\n",
       " [8, '“Why,'],\n",
       " [8, '“We'],\n",
       " [8, '“Off'],\n",
       " [8, '“Do'],\n",
       " [8, 'you’d'],\n",
       " [8, 'top'],\n",
       " [8, 'tone'],\n",
       " [8, 'suppose'],\n",
       " [8, 'speak'],\n",
       " [8, 'soldiers'],\n",
       " [8, 'small'],\n",
       " [8, 'running'],\n",
       " [8, 'room'],\n",
       " [8, 'repeated'],\n",
       " [8, 'reason'],\n",
       " [8, 'please'],\n",
       " [8, 'play'],\n",
       " [8, 'opportunity'],\n",
       " [8, 'on.'],\n",
       " [8, 'name'],\n",
       " [8, 'most'],\n",
       " [8, 'matter'],\n",
       " [8, 'making'],\n",
       " [8, 'lying'],\n",
       " [8, 'know.'],\n",
       " [8, 'know,”'],\n",
       " [8, 'keep'],\n",
       " [8, 'itself'],\n",
       " [8, 'house'],\n",
       " [8, 'herself.'],\n",
       " [8, 'hard'],\n",
       " [8, 'followed'],\n",
       " [8, 'feel'],\n",
       " [8, 'fan'],\n",
       " [8, 'explain'],\n",
       " [8, 'else'],\n",
       " [8, 'do,'],\n",
       " [8, 'cook'],\n",
       " [8, 'certainly'],\n",
       " [8, 'bit'],\n",
       " [8, 'believe'],\n",
       " [8, 'beautiful'],\n",
       " [8, 'asked.'],\n",
       " [8, 'asked'],\n",
       " [8, '_is_'],\n",
       " [8, 'Turtle,'],\n",
       " [8, 'Rabbit,'],\n",
       " [8, 'Mouse,'],\n",
       " [8, 'Duchess,'],\n",
       " [8, 'Cat'],\n",
       " [8, 'At'],\n",
       " [7, '“that'],\n",
       " [7, '“if'],\n",
       " [7, '“Why'],\n",
       " [7, '“There’s'],\n",
       " [7, 'you?”'],\n",
       " [7, 'work'],\n",
       " [7, 'word'],\n",
       " [7, 'wondering'],\n",
       " [7, 'why'],\n",
       " [7, 'where'],\n",
       " [7, 'way,'],\n",
       " [7, 'waiting'],\n",
       " [7, 'tired'],\n",
       " [7, 'that!”'],\n",
       " [7, 'table'],\n",
       " [7, 'stood'],\n",
       " [7, 'so,'],\n",
       " [7, 'seem'],\n",
       " [7, 'round,'],\n",
       " [7, 'ready'],\n",
       " [7, 'question'],\n",
       " [7, 'party'],\n",
       " [7, 'our'],\n",
       " [7, 'one,'],\n",
       " [7, 'offended'],\n",
       " [7, 'noticed'],\n",
       " [7, 'mouth'],\n",
       " [7, 'minutes'],\n",
       " [7, 'meaning'],\n",
       " [7, 'mean'],\n",
       " [7, 'low'],\n",
       " [7, 'live'],\n",
       " [7, 'let'],\n",
       " [7, 'leave'],\n",
       " [7, 'least'],\n",
       " [7, 'know,'],\n",
       " [7, 'it!”'],\n",
       " [7, 'heads'],\n",
       " [7, 'head!”'],\n",
       " [7, 'haven’t'],\n",
       " [7, 'hastily'],\n",
       " [7, 'hadn’t'],\n",
       " [7, 'grown'],\n",
       " [7, 'golden'],\n",
       " [7, 'goes'],\n",
       " [7, 'frightened'],\n",
       " [7, 'first,'],\n",
       " [7, 'finished'],\n",
       " [7, 'face'],\n",
       " [7, 'each'],\n",
       " [7, 'dry'],\n",
       " [7, 'could,'],\n",
       " [7, 'continued'],\n",
       " [7, 'changed'],\n",
       " [7, 'cat'],\n",
       " [7, 'bright'],\n",
       " [7, 'bottle'],\n",
       " [7, 'birds'],\n",
       " [7, 'best'],\n",
       " [7, 'begin'],\n",
       " [7, 'beg'],\n",
       " [7, 'ask'],\n",
       " [7, 'arm'],\n",
       " [7, 'again!”'],\n",
       " [7, '_your_'],\n",
       " [7, 'Why,'],\n",
       " [7, 'When'],\n",
       " [7, 'Queen’s'],\n",
       " [7, 'Majesty,”'],\n",
       " [7, 'Knave'],\n",
       " [7, 'I’d'],\n",
       " [7, 'Cat,'],\n",
       " [7, 'Alice:'],\n",
       " [6, '“for'],\n",
       " [6, '“You’re'],\n",
       " [6, '“Who'],\n",
       " [6, '“There'],\n",
       " [6, '“That'],\n",
       " [6, '“Come'],\n",
       " [6, '‘I'],\n",
       " [6, 'you,”'],\n",
       " [6, 'yet'],\n",
       " [6, 'written'],\n",
       " [6, 'world'],\n",
       " [6, 'white'],\n",
       " [6, 'watch'],\n",
       " [6, 'turn'],\n",
       " [6, 'trembling'],\n",
       " [6, 'told'],\n",
       " [6, 'times'],\n",
       " [6, 'time,'],\n",
       " [6, 'thought,'],\n",
       " [6, 'though'],\n",
       " [6, 'thing!”'],\n",
       " [6, 'then,”'],\n",
       " [6, 'then,'],\n",
       " [6, 'that?”'],\n",
       " [6, 'surprised'],\n",
       " [6, 'spoke.'],\n",
       " [6, 'slowly'],\n",
       " [6, 'size'],\n",
       " [6, 'sharp'],\n",
       " [6, 'repeat'],\n",
       " [6, 'pool'],\n",
       " [6, 'place'],\n",
       " [6, 'open'],\n",
       " [6, 'on!”'],\n",
       " [6, 'now,'],\n",
       " [6, 'not,”'],\n",
       " [6, 'neck'],\n",
       " [6, 'moral'],\n",
       " [6, 'melancholy'],\n",
       " [6, 'manage'],\n",
       " [6, 'low,'],\n",
       " [6, 'kind'],\n",
       " [6, 'it’ll'],\n",
       " [6, 'isn’t'],\n",
       " [6, 'indeed!”'],\n",
       " [6, 'inches'],\n",
       " [6, 'however,'],\n",
       " [6, 'hold'],\n",
       " [6, 'here,'],\n",
       " [6, 'has'],\n",
       " [6, 'hands'],\n",
       " [6, 'hand,'],\n",
       " [6, 'growing'],\n",
       " [6, 'game'],\n",
       " [6, 'full'],\n",
       " [6, 'four'],\n",
       " [6, 'forgotten'],\n",
       " [6, 'fell'],\n",
       " [6, 'feet,'],\n",
       " [6, 'feeling'],\n",
       " [6, 'fall'],\n",
       " [6, 'dreadfully'],\n",
       " [6, 'dear,'],\n",
       " [6, 'dear'],\n",
       " [6, 'creatures'],\n",
       " [6, 'but,'],\n",
       " [6, 'begun'],\n",
       " [6, 'began,'],\n",
       " [6, 'baby'],\n",
       " [6, 'answer'],\n",
       " [6, 'almost'],\n",
       " [6, 'about,'],\n",
       " [6, '_you_'],\n",
       " [6, '_that_'],\n",
       " [6, 'You'],\n",
       " [6, 'Who'],\n",
       " [6, 'Let'],\n",
       " [6, 'It’s'],\n",
       " [6, 'Hatter:'],\n",
       " [6, 'Dormouse,'],\n",
       " [6, 'Cheshire'],\n",
       " [6, 'A'],\n",
       " [5, '“the'],\n",
       " [5, '“or'],\n",
       " [5, '“it'],\n",
       " [5, '“Would'],\n",
       " [5, '“I’ll'],\n",
       " [5, '“In'],\n",
       " [5, '“He'],\n",
       " [5, 'you’ve'],\n",
       " [5, 'yourself'],\n",
       " [5, 'young'],\n",
       " [5, 'write'],\n",
       " [5, 'window,'],\n",
       " [5, 'waving'],\n",
       " [5, 'walking'],\n",
       " [5, 'understand'],\n",
       " [5, 'trees'],\n",
       " [5, 'tone:'],\n",
       " [5, 'time,”'],\n",
       " [5, 'them!”'],\n",
       " [5, 'that,'],\n",
       " [5, 'ten'],\n",
       " [5, 'tea'],\n",
       " [5, 'taking'],\n",
       " [5, 'table,'],\n",
       " [5, 'swam'],\n",
       " [5, 'sudden'],\n",
       " [5, 'spoke,'],\n",
       " [5, 'sounded'],\n",
       " [5, 'so,”'],\n",
       " [5, 'sit'],\n",
       " [5, 'sister'],\n",
       " [5, 'simple'],\n",
       " [5, 'silence.'],\n",
       " [5, 'sighed'],\n",
       " [5, 'shouldn’t'],\n",
       " [5, 'shoes'],\n",
       " [5, 'sentence'],\n",
       " [5, 'say,'],\n",
       " [5, 'roof'],\n",
       " [5, 'replied.'],\n",
       " [5, 'replied,'],\n",
       " [5, 'remembered'],\n",
       " [5, 'remarked.'],\n",
       " [5, 'puzzled'],\n",
       " [5, 'puppy'],\n",
       " [5, 'pleased'],\n",
       " [5, 'piece'],\n",
       " [5, 'pepper'],\n",
       " [5, 'pair'],\n",
       " [5, 'other,'],\n",
       " [5, 'once,'],\n",
       " [5, 'off.'],\n",
       " [5, 'notice'],\n",
       " [5, 'nice'],\n",
       " [5, 'much,”'],\n",
       " [5, 'moment,'],\n",
       " [5, 'me,”'],\n",
       " [5, 'marked'],\n",
       " [5, 'mad'],\n",
       " [5, 'last,'],\n",
       " [5, 'kid'],\n",
       " [5, 'key'],\n",
       " [5, 'jumped'],\n",
       " [5, 'interrupted'],\n",
       " [5, 'her:'],\n",
       " [5, 'hedgehog'],\n",
       " [5, 'head.'],\n",
       " [5, 'happen'],\n",
       " [5, 'hands,'],\n",
       " [5, 'hall,'],\n",
       " [5, 'hair'],\n",
       " [5, 'gloves'],\n",
       " [5, 'generally'],\n",
       " [5, 'garden,'],\n",
       " [5, 'foot'],\n",
       " [5, 'fetch'],\n",
       " [5, 'eyes,'],\n",
       " [5, 'exactly'],\n",
       " [5, 'everybody'],\n",
       " [5, 'either'],\n",
       " [5, 'drew'],\n",
       " [5, 'deep'],\n",
       " [5, 'dare'],\n",
       " [5, 'dance.'],\n",
       " [5, 'cut'],\n",
       " [5, 'crowded'],\n",
       " [5, 'court,'],\n",
       " [5, 'court'],\n",
       " [5, 'course,”'],\n",
       " [5, 'course,'],\n",
       " [5, 'conversation.'],\n",
       " [5, 'coming'],\n",
       " [5, 'children'],\n",
       " [5, 'call'],\n",
       " [5, 'broken'],\n",
       " [5, 'between'],\n",
       " [5, 'become'],\n",
       " [5, 'arms'],\n",
       " [5, 'arm,'],\n",
       " [5, 'along'],\n",
       " [5, 'air.'],\n",
       " [5, 'air,'],\n",
       " [5, 'across'],\n",
       " [5, '_would_'],\n",
       " [5, '_was_'],\n",
       " [5, '_not_'],\n",
       " [5, 'While'],\n",
       " [5, 'Pigeon'],\n",
       " [5, 'Oh'],\n",
       " [5, 'Just'],\n",
       " [5, 'In'],\n",
       " [5, 'Here'],\n",
       " [5, 'Hearts,'],\n",
       " [5, 'Do'],\n",
       " [5, 'Cat.'],\n",
       " [5, 'After'],\n",
       " [4, '“to'],\n",
       " [4, '“as'],\n",
       " [4, '“So'],\n",
       " [4, '“Now,'],\n",
       " [4, '“Now'],\n",
       " [4, '“I’d'],\n",
       " [4, '“Don’t'],\n",
       " [4, '“Call'],\n",
       " [4, '“Are'],\n",
       " [4, 'you’ll'],\n",
       " [4, 'yet,”'],\n",
       " [4, 'yer'],\n",
       " [4, 'writing'],\n",
       " [4, 'worth'],\n",
       " [4, 'witness'],\n",
       " [4, 'whispered'],\n",
       " [4, 'while,'],\n",
       " [4, 'wanted'],\n",
       " [4, 'walk'],\n",
       " [4, 'ventured'],\n",
       " [4, 'until'],\n",
       " [4, 'trouble'],\n",
       " [4, 'trial'],\n",
       " [4, 'tiny'],\n",
       " [4, 'timidly,'],\n",
       " [4, 'things!”'],\n",
       " [4, 'thing,'],\n",
       " [4, 'they’ll'],\n",
       " [4, 'tears'],\n",
       " [4, 'taught'],\n",
       " [4, 'taken'],\n",
       " [4, 'strange'],\n",
       " [4, 'stick,'],\n",
       " [4, 'stay'],\n",
       " [4, 'stand'],\n",
       " [4, 'spoke'],\n",
       " [4, 'song,'],\n",
       " [4, 'sometimes'],\n",
       " [4, 'somebody'],\n",
       " [4, 'sneezing'],\n",
       " [4, 'sleep'],\n",
       " [4, 'slates,'],\n",
       " [4, 'sir,'],\n",
       " [4, 'since'],\n",
       " [4, 'sight,'],\n",
       " [4, 'sides'],\n",
       " [4, 'shut'],\n",
       " [4, 'shrinking'],\n",
       " [4, 'short'],\n",
       " [4, 'she,'],\n",
       " [4, 'shan’t'],\n",
       " [4, 'several'],\n",
       " [4, 'seems'],\n",
       " [4, 'second'],\n",
       " [4, 'screamed'],\n",
       " [4, 'school'],\n",
       " [4, 'says'],\n",
       " [4, 'say,”'],\n",
       " [4, 'said.'],\n",
       " [4, 'remark,'],\n",
       " [4, 'reach'],\n",
       " [4, 'rate'],\n",
       " [4, 'quietly'],\n",
       " [4, 'question,'],\n",
       " [4, 'puzzling'],\n",
       " [4, 'pig,'],\n",
       " [4, 'pictures'],\n",
       " [4, 'perfectly'],\n",
       " [4, 'passed'],\n",
       " [4, 'pardon!”'],\n",
       " [4, 'pack'],\n",
       " [4, 'others'],\n",
       " [4, 'number'],\n",
       " [4, 'now.”'],\n",
       " [4, 'now,”'],\n",
       " [4, 'nine'],\n",
       " [4, 'new'],\n",
       " [4, 'nervous'],\n",
       " [4, 'nearer'],\n",
       " [4, 'mushroom'],\n",
       " [4, 'moved'],\n",
       " [4, 'more,'],\n",
       " [4, 'minute,'],\n",
       " [4, 'mind'],\n",
       " [4, 'meant'],\n",
       " [4, 'listen'],\n",
       " [4, 'likely'],\n",
       " [4, 'lessons'],\n",
       " [4, 'led'],\n",
       " [4, 'learn'],\n",
       " [4, 'lay'],\n",
       " [4, 'know—”'],\n",
       " [4, 'jury,'],\n",
       " [4, 'jumping'],\n",
       " [4, 'itself,'],\n",
       " [4, 'hurry'],\n",
       " [4, 'hot'],\n",
       " [4, 'hookah'],\n",
       " [4, 'history,'],\n",
       " [4, 'himself'],\n",
       " [4, 'him,'],\n",
       " [4, 'high'],\n",
       " [4, 'herself;'],\n",
       " [4, 'here?”'],\n",
       " [4, 'here,”'],\n",
       " [4, 'held'],\n",
       " [4, 'height'],\n",
       " [4, 'hastily.'],\n",
       " [4, 'hastily,'],\n",
       " [4, 'growing,'],\n",
       " [4, 'go,'],\n",
       " [4, 'glass'],\n",
       " [4, 'gardeners,'],\n",
       " [4, 'gardeners'],\n",
       " [4, 'garden'],\n",
       " [4, 'finish'],\n",
       " [4, 'fear'],\n",
       " [4, 'fast'],\n",
       " [4, 'fallen'],\n",
       " [4, 'fact,'],\n",
       " [4, 'face,'],\n",
       " [4, 'eye'],\n",
       " [4, 'exclaimed'],\n",
       " [4, 'except'],\n",
       " [4, 'ears'],\n",
       " [4, 'dropped'],\n",
       " [4, 'drink'],\n",
       " [4, 'draw'],\n",
       " [4, 'does'],\n",
       " [4, 'do,”'],\n",
       " [4, 'distance,'],\n",
       " [4, 'different'],\n",
       " [4, 'dead'],\n",
       " [4, 'day,'],\n",
       " [4, 'dance?'],\n",
       " [4, 'crowd'],\n",
       " [4, 'could.'],\n",
       " [4, 'conversation'],\n",
       " [4, 'chin'],\n",
       " [4, 'chance'],\n",
       " [4, 'case'],\n",
       " [4, 'carried'],\n",
       " [4, 'care'],\n",
       " [4, 'capital'],\n",
       " [4, 'busily'],\n",
       " [4, 'bottom'],\n",
       " [4, 'begins'],\n",
       " [4, 'beat'],\n",
       " [4, 'back,'],\n",
       " [4, 'asleep'],\n",
       " [4, 'argument'],\n",
       " [4, 'all.'],\n",
       " [4, 'again:'],\n",
       " [4, '_have_'],\n",
       " [4, '_can_'],\n",
       " [4, 'Will'],\n",
       " [4, 'What'],\n",
       " [4, 'Soup!'],\n",
       " [4, 'Soup'],\n",
       " [4, 'Soo—oop!'],\n",
       " [4, 'Said'],\n",
       " [4, 'On'],\n",
       " [4, 'No,'],\n",
       " [4, 'Lobster'],\n",
       " [4, 'Footman'],\n",
       " [4, 'First,'],\n",
       " [4, 'Father'],\n",
       " [4, 'Duchess;'],\n",
       " [4, 'Duchess:'],\n",
       " [4, 'Don’t'],\n",
       " [4, 'Dinah'],\n",
       " [4, 'Come'],\n",
       " [4, 'Beau—ootiful'],\n",
       " [4, 'An'],\n",
       " [4, '(it'],\n",
       " [4, '(Alice'],\n",
       " [3, '“we'],\n",
       " [3, '“so'],\n",
       " [3, '“in'],\n",
       " [3, '“because'],\n",
       " [3, '“Yes,”'],\n",
       " [3, '“Which'],\n",
       " [3, '“When'],\n",
       " [3, '“Very'],\n",
       " [3, '“Thank'],\n",
       " [3, '“Sure,'],\n",
       " [3, '“Please'],\n",
       " [3, '“Perhaps'],\n",
       " [3, '“Nothing'],\n",
       " [3, '“Let'],\n",
       " [3, '“Is'],\n",
       " [3, '“Hold'],\n",
       " [3, '“Have'],\n",
       " [3, '“Give'],\n",
       " [3, '“Did'],\n",
       " [3, '“As'],\n",
       " [3, '’em'],\n",
       " [3, 'youth,”'],\n",
       " [3, 'youth,'],\n",
       " [3, 'you!”'],\n",
       " [3, 'yet,'],\n",
       " [3, 'wrote'],\n",
       " [3, 'wood.'],\n",
       " [3, 'wonder?”'],\n",
       " [3, 'whiting'],\n",
       " [3, 'way.'],\n",
       " [3, 'watching'],\n",
       " [3, 'was,”'],\n",
       " [3, 'verses'],\n",
       " [3, 'verdict,”'],\n",
       " [3, 'venture'],\n",
       " [3, 'vanished'],\n",
       " [3, 'unfortunate'],\n",
       " [3, 'twinkling'],\n",
       " [3, 'twinkle,'],\n",
       " [3, 'twice,'],\n",
       " [3, 'tucked'],\n",
       " [3, 'trial’s'],\n",
       " [3, 'tree'],\n",
       " [3, 'tossing'],\n",
       " [3, 'to?”'],\n",
       " [3, 'to,'],\n",
       " [3, 'timid'],\n",
       " [3, 'throw'],\n",
       " [3, 'think—”'],\n",
       " [3, 'thing,”'],\n",
       " [3, 'they’d'],\n",
       " [3, 'them,”'],\n",
       " [3, 'that.”'],\n",
       " [3, 'tears,'],\n",
       " [3, 'teacup'],\n",
       " [3, 'tea,”'],\n",
       " [3, 'tarts,'],\n",
       " [3, 'tarts'],\n",
       " [3, 'tails'],\n",
       " [3, 'tail,'],\n",
       " [3, 'tail'],\n",
       " [3, 'table.'],\n",
       " [3, 'suppressed'],\n",
       " [3, 'suit'],\n",
       " [3, 'succeeded'],\n",
       " [3, 'stopped'],\n",
       " [3, 'stop'],\n",
       " [3, 'staring'],\n",
       " [3, 'spread'],\n",
       " [3, 'speaking,'],\n",
       " [3, 'sounds'],\n",
       " [3, 'sound'],\n",
       " [3, 'sorts'],\n",
       " [3, 'solemn'],\n",
       " [3, 'so.'],\n",
       " [3, 'smaller,'],\n",
       " [3, 'sleepy'],\n",
       " [3, 'size:'],\n",
       " [3, 'sing'],\n",
       " [3, 'silent'],\n",
       " [3, 'silence'],\n",
       " [3, 'side,'],\n",
       " [3, 'shrill'],\n",
       " [3, 'shriek'],\n",
       " [3, 'show'],\n",
       " [3, 'shoulder'],\n",
       " [3, 'she’s'],\n",
       " [3, 'shaking'],\n",
       " [3, 'severely'],\n",
       " [3, 'settled'],\n",
       " [3, 'see:'],\n",
       " [3, 'sea.'],\n",
       " [3, 'sea,'],\n",
       " [3, 'saying,'],\n",
       " [3, 'savage'],\n",
       " [3, 'said—”'],\n",
       " [3, 'said:'],\n",
       " [3, 'run'],\n",
       " [3, 'rules'],\n",
       " [3, 'round.'],\n",
       " [3, 'right,”'],\n",
       " [3, 'right,'],\n",
       " [3, 'reply.'],\n",
       " [3, 'replied;'],\n",
       " [3, 'repeating'],\n",
       " [3, 'remark.'],\n",
       " [3, 'remark'],\n",
       " ...]"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "word_frequencies_2dlist.sort(reverse=True)\n",
    "word_frequencies_2dlist"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4fa6c962",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    }
   },
   "source": [
    "### Bottom line: \n",
    "\n",
    "If my application mostly needs to look up word frequencies given a word, us a dictionary (convert to 2D list (or list of tuples) when necessary)\n",
    "\n",
    "If my application needs to display the words in order a frequency more often, and individual word lookup is leess common, then use 2D list."
   ]
  }
 ],
 "metadata": {
  "celltoolbar": "Slideshow",
  "hide_code_all_hidden": false,
  "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.8.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
