From af0b08929b35e443720d7eed13ba82333394373a Mon Sep 17 00:00:00 2001 From: nikitap17 Date: Sun, 26 Mar 2023 13:05:31 +0200 Subject: [PATCH 1/3] Assignment 1 Added folder "My Homeworks", created assignment 1 - for the modifications in the other document: just ran some commands, I think ididnt change anything to be honest --- Assignments/EN/Assignment_5.ipynb | 2 +- My Homeworks/Assignment 1/Assignment_1.ipynb | 1594 +++++++++++++++++ My Homeworks/Assignment 1/secrettxt.txt | 1 + My Homeworks/Assignment 1/~$crettxt.txt | Bin 0 -> 162 bytes .../08_Data_Persistence.ipynb | 72 +- .../Python_Intermediate/09_Classes.ipynb | 2 +- .../Python_Intermediate/10_Decorators.ipynb | 4 +- .../12_Unitary_Tests.ipynb | 2 +- 8 files changed, 1632 insertions(+), 45 deletions(-) create mode 100644 My Homeworks/Assignment 1/Assignment_1.ipynb create mode 100644 My Homeworks/Assignment 1/secrettxt.txt create mode 100644 My Homeworks/Assignment 1/~$crettxt.txt diff --git a/Assignments/EN/Assignment_5.ipynb b/Assignments/EN/Assignment_5.ipynb index f842b189..86e411aa 100644 --- a/Assignments/EN/Assignment_5.ipynb +++ b/Assignments/EN/Assignment_5.ipynb @@ -390,7 +390,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.6" + "version": "3.11.2" } }, "nbformat": 4, diff --git a/My Homeworks/Assignment 1/Assignment_1.ipynb b/My Homeworks/Assignment 1/Assignment_1.ipynb new file mode 100644 index 00000000..3ede60a8 --- /dev/null +++ b/My Homeworks/Assignment 1/Assignment_1.ipynb @@ -0,0 +1,1594 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\"Logo\n", + "\n", + "# Practical Machine Learning for Natural Language Processing - 2023 SS \n", + "\n", + "### Assigment 1 - Python for Poets \n", + "\n", + "This assigment is an adaptation for Python of the original exercise [\"Unix for Poets\"](https://www.cs.upc.edu/~padro/Unixforpoets.pdf)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "***" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Loading the document" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "KBR said Friday the global economic downturn so far has\n", + "had\n", + "little effect on its business but warned some projects on its books\n", + "could be in jeopardy if the headwinds persist into next year.\n", + "\n", + "\"With the economic outlook remaining uncertain, it is possible\n", + "that\n", + "customers may cancel or delay projects that are under way,\" said\n", + "William\n", + "Utt, chief executive of the Houston-based engineering and\n", + "construction\n", + "giant and government contractor.\n", + "\n", + "He did not predict how much of the company's $15.3billion in\n", + "future\n", + "business commitments could be affected but downplayed the potential\n", + "of\n", + "any significant impact as \"limited.\"\n", + "\n", + "The remarks came during a conference call to discuss KBR's\n", + "third-quarter\n", + "financial results, which showed a 35percent improvement over the\n", + "same\n", + "period in 2007.\n", + "\n", + "KBR, which was spun off from Halliburton Co. last year, posted\n", + "better\n", + "numbers and beat analyst expectations after a new acquisition\n", + "helped\n", + "boost sales and offset losses because of Hurricane Ike.\n", + "\n", + "Net income rose to $85million,\n" + ] + } + ], + "source": [ + "with open(\"../../Data/txt/nyt_200811.txt\", \"r\") as f:\n", + " text = f.read()\n", + "\n", + "print(text[0:1000])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "***" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### You will solve the following exercises using **Pure Python** \n", + "### (only packages \"string\" and \"re\" are allowed). \n", + "\n", + "1. Count words in a text \n", + "2. Sort a list of words in various ways \n", + " • ascii order \n", + " • \"rhyming\" order \n", + "3. Extract useful info for a dictionary \n", + "4. Compute ngram statistics \n", + "5. Make a Concordance " + ] + }, + { + "cell_type": "code", + "execution_count": 404, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "import re\n", + "import string\n", + "dir(text)\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "75457" + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "upper = [m for m in words if m.istitle()] #just checking some commands\n", + "print(len(upper))\n", + "upper[0].lower() " + ] + }, + { + "cell_type": "code", + "execution_count": 422, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['kbr', 'said', 'friday', 'the', 'global', 'economic', 'downturn', 'so', 'far', 'has', 'had', 'little', 'effect', 'on', 'its', 'business', 'but', 'warned', 'some', 'projects', 'on', 'its', 'books', 'could', 'be', 'in', 'jeopardy', 'if', 'the', 'headwinds', 'persist', 'into', 'next', 'year', 'with', 'the', 'economic', 'outlook', 'remaining', 'uncertain', 'it', 'is', 'possible', 'that', 'customers', 'may', 'cancel', 'or', 'delay', 'projects', 'that', 'are', 'under', 'way', 'said', 'william', 'utt', 'chief', 'executive', 'of', 'the', 'houston-based', 'engineering', 'and', 'construction', 'giant', 'and', 'government', 'contractor', 'he', 'did', 'not', 'predict', 'how', 'much', 'of', 'the', \"company's\", 'billion', 'in', 'future', 'business', 'commitments', 'could', 'be', 'affected', 'but', 'downplayed', 'the', 'potential', 'of', 'any', 'significant', 'impact', 'as', 'limited', 'the', 'remarks', 'came', 'during']\n" + ] + } + ], + "source": [ + "words = text.split()\n", + "#print(words[0:100])\n", + "words_clean = [m.strip(string.punctuation) for m in words]\n", + "words_clean = [m.strip(string.digits) for m in words_clean]\n", + "words_clean = [m.strip(string.punctuation) for m in words_clean]\n", + "words_clean = [m.strip(string.digits) for m in words_clean]\n", + "words_clean = [m for m in words_clean if m != '']\n", + "words_clean = [m.lower() for m in words_clean]\n", + "\n", + "print(words_clean[0:100])" + ] + }, + { + "cell_type": "code", + "execution_count": 427, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['kbr', 'said', 'friday', 'the', 'global', 'economic', 'downturn', 'so', 'far', 'has', 'had', 'little', 'effect', 'on', 'its', 'business', 'but', 'warned', 'some', 'projects', 'on', 'its', 'books', 'could', 'be', 'in', 'jeopardy', 'if', 'the', 'headwinds', 'persist', 'into', 'next', 'year', 'with', 'the', 'economic', 'outlook', 'remaining', 'uncertain', 'it', 'is', 'possible', 'that', 'customers', 'may', 'cancel', 'or', 'delay', 'projects', 'that', 'are', 'under', 'way', 'said', 'william', 'utt', 'chief', 'executive', 'of', 'the', 'houston-based', 'engineering', 'and', 'construction', 'giant', 'and', 'government', 'contractor', 'he', 'did', 'not', 'predict', 'how', 'much', 'of', 'the', 'company', 's', 'billion', 'in', 'future', 'business', 'commitments', 'could', 'be', 'affected', 'but', 'downplayed', 'the', 'potential', 'of', 'any', 'significant', 'impact', 'as', 'limited', 'the', 'remarks', 'came']\n" + ] + } + ], + "source": [ + "#according to chatGPT, contractions like \"company's\" or \"I'm\" are counted as one word. So, in the following,\n", + "#I can either delete the contraction letters or I can keep them and treat them as different words - so \"I'm\" will not be counted\n", + "#as \"I\" and so on. Or I can save both versions...\n", + "\n", + "words2 = text.replace(\"'\",\" \") #tearing contarctions apart, no contractions in words2\n", + "#print(words2[0:400])\n", + "words2 = words2.split()\n", + "#print(words2[0:100])\n", + "words2_clean = [m.strip(string.punctuation) for m in words2]\n", + "#print(words2_clean[0:100])\n", + "words2_clean = [m.strip(string.digits) for m in words2_clean]\n", + "words2_clean = [m.strip(string.punctuation) for m in words2_clean]\n", + "words2_clean = [m.strip(string.digits) for m in words2_clean]\n", + "#print(words2_clean[0:100])\n", + "words2_clean = [m.lower() for m in words2_clean]\n", + "words2_clean = [m for m in words2_clean if m != '']\n", + "\n", + "#words2_clean = sum(words2_clean, [])\n", + "print(words2_clean[0:100])" + ] + }, + { + "cell_type": "code", + "execution_count": 430, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "499511\n" + ] + } + ], + "source": [ + "print(len(words_clean))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "***" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 1. Count words in a text\n", + "\n", + "a. Output a list of words in the file along with their frequency counts (ignoring case). \n", + "a. Count how many unique words there are (ignoring case). \n", + "c. Check how common are all different sequences of vowels (e.g. the sequences \"ieu\" or just \"e\" in \"lieutenant\")?" + ] + }, + { + "cell_type": "code", + "execution_count": 423, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[('kbr', 1), ('said', 2), ('friday', 1), ('the', 7), ('global', 1), ('economic', 2), ('downturn', 1), ('so', 1), ('far', 1), ('has', 1), ('had', 1), ('little', 1), ('effect', 1), ('on', 2), ('its', 2), ('business', 2), ('but', 2), ('warned', 1), ('some', 1), ('projects', 2), ('on', 2), ('its', 2), ('books', 1), ('could', 2), ('be', 2), ('in', 2), ('jeopardy', 1), ('if', 1), ('the', 7), ('headwinds', 1), ('persist', 1), ('into', 1), ('next', 1), ('year', 1), ('with', 1), ('the', 7), ('economic', 2), ('outlook', 1), ('remaining', 1), ('uncertain', 1), ('it', 1), ('is', 1), ('possible', 1), ('that', 2), ('customers', 1), ('may', 1), ('cancel', 1), ('or', 1), ('delay', 1), ('projects', 2), ('that', 2), ('are', 1), ('under', 1), ('way', 1), ('said', 2), ('william', 1), ('utt', 1), ('chief', 1), ('executive', 1), ('of', 3), ('the', 7), ('houston-based', 1), ('engineering', 1), ('and', 2), ('construction', 1), ('giant', 1), ('and', 2), ('government', 1), ('contractor', 1), ('he', 1), ('did', 1), ('not', 1), ('predict', 1), ('how', 1), ('much', 1), ('of', 3), ('the', 7), ('company', 1), ('s', 1), ('billion', 1), ('in', 2), ('future', 1), ('business', 2), ('commitments', 1), ('could', 2), ('be', 2), ('affected', 1), ('but', 2), ('downplayed', 1), ('the', 7), ('potential', 1), ('of', 3), ('any', 1), ('significant', 1), ('impact', 1), ('as', 1), ('limited', 1), ('the', 7), ('remarks', 1), ('came', 1)]\n" + ] + } + ], + "source": [ + "# a)\n", + "def count_words(word_list):\n", + " words = [m.lower() for m in word_list]\n", + " \n", + " counted = []\n", + " for a,i in enumerate(words):\n", + " c = words.count(i)\n", + " counted.append((i, c))\n", + " return counted\n", + "\n", + "counts = count_words(words2_clean[0:100]) #i think the code might work well, however the whole text is way to big to put it in here, so i indexed it\n", + "print(counts)\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 435, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "words: 499511\n", + "unique words: 29901\n" + ] + } + ], + "source": [ + "# b)\n", + "print(f\"words: {len(words_clean)}\")\n", + "print(f\"unique words: {len(set(words2_clean))}\")\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 518, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[('e', 286904),\n", + " ('a', 208486),\n", + " ('o', 180005),\n", + " ('i', 175776),\n", + " ('u', 61342),\n", + " ('ou', 17309),\n", + " ('ea', 14435),\n", + " ('io', 10975),\n", + " ('ai', 10557),\n", + " ('ie', 6442),\n", + " ('ia', 5351),\n", + " ('ei', 3364),\n", + " ('au', 2470),\n", + " ('ue', 2444),\n", + " ('oi', 2026),\n", + " ('ua', 1781),\n", + " ('oa', 1651),\n", + " ('eo', 1643),\n", + " ('ui', 1635),\n", + " ('oe', 750),\n", + " ('iou', 506),\n", + " ('eu', 471),\n", + " ('ae', 244),\n", + " ('iu', 218),\n", + " ('eau', 131),\n", + " ('uo', 103),\n", + " ('ao', 75),\n", + " ('oui', 63),\n", + " ('eou', 61),\n", + " ('uie', 44)]" + ] + }, + "execution_count": 518, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# c)\n", + "\n", + "low_words2 = \" \".join(words2_clean)\n", + "\n", + "vowel_seq = []\n", + "for a in (\"a\",\"e\",\"i\",\"o\",\"u\"):\n", + " for e in (\"a\",\"e\",\"i\",\"o\",\"u\"):\n", + " for i in (\"a\",\"e\",\"i\",\"o\",\"u\"):\n", + " for o in (\"a\",\"e\",\"i\",\"o\",\"u\"):\n", + " for u in (\"a\",\"e\",\"i\",\"o\",\"u\"):\n", + " vowel_seq.append(a+e+i+o+u)\n", + " vowel_seq.append(a+e+i+o)\n", + " vowel_seq.append(a+e+i)\n", + " vowel_seq.append(a+e)\n", + " vowel_seq.append(a)\n", + " \n", + "#print(vowel_seq[0:20])\n", + "\n", + "vowels =[]\n", + "for m in vowel_seq:\n", + " if m.count(\"a\") <2 and m.count(\"e\")<2 and m.count(\"i\") <2 and m.count(\"o\")<2 and m.count(\"u\") <2:\n", + " vowels.append(m)\n", + "\n", + "#print(vowels[0:20],len(vowels))\n", + "\n", + "freq_vls = []\n", + "for i in vowels:\n", + " freq_vls.append((i, low_words2.count(i)))\n", + "\n", + "freq_vls[0:30] #the result :-)#\n", + "sorted(freq_vls, key= lambda x: x[1], reverse=True)[0:30] #and here sorted accoding to frequency\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 2. Sorting and reversing lines of text\n", + "\n", + "a. Sort each line alphabetically (ignoring case). \n", + "b. Sort in numeric ([ascii](https://python-reference.readthedocs.io/en/latest/docs/str/ASCII.html)) order. \n", + "c. Alphabetically reverse sort (ignoring case). \n", + "d. Sort in reverse numeric ([ascii](https://python-reference.readthedocs.io/en/latest/docs/str/ASCII.html)) order. " + ] + }, + { + "cell_type": "code", + "execution_count": 438, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['\"with the economic outlook remaining uncertain, it is possible\\n',\n", + " '$14.84 in\\n',\n", + " 'and services division.\\n',\n", + " 'any significant impact as \"limited.\"\\n',\n", + " \"back of big gains in the company's government and infrastructure\\n\",\n", + " 'better\\n',\n", + " 'boost sales and offset losses because of hurricane ike.\\n',\n", + " 'business commitments could be affected but downplayed the potential\\n',\n", + " 'construction\\n',\n", + " 'continuing operations totaled 44 cents per share, including\\n',\n", + " 'could be in jeopardy if the headwinds persist into next year.\\n',\n", + " 'customers may cancel or delay projects that are under way,\" said\\n',\n", + " 'financial results, which showed a 35percent improvement over the\\n',\n", + " 'future\\n',\n", + " 'gas\\n',\n", + " 'giant and government contractor.\\n',\n", + " 'had\\n',\n", + " \"he did not predict how much of the company's $15.3billion in\\n\",\n", + " 'helped\\n',\n", + " 'hurricane\\n',\n", + " 'ike-related costs of 4 to 5 cents a share.\\n',\n", + " 'in commenting on third-quarter earnings in recent days, oil and\\n',\n", + " 'investors liked what they saw, boosting kbr shares 77 cents to\\n',\n", + " 'kbr said friday the global economic downturn so far has\\n',\n", + " 'kbr, which was spun off from halliburton co. last year, posted\\n',\n", + " 'little effect on its business but warned some projects on its books\\n',\n", + " 'million,\\n',\n", + " 'net income rose to $85million, or 51 cents per share, from $63\\n',\n", + " 'new york stock exchange trading.\\n',\n", + " 'numbers and beat analyst expectations after a new acquisition\\n',\n", + " 'of\\n',\n", + " 'on the\\n',\n", + " 'or 37 cents, in the july-september period of 2007. income from\\n',\n", + " 'period in 2007.\\n',\n", + " 'revenue climbed 39 percent to $3.02 billion from $2.18 billion,\\n',\n", + " 'same\\n',\n", + " 'that\\n',\n", + " \"the remarks came during a conference call to discuss kbr's\\n\",\n", + " 'third-quarter\\n',\n", + " 'unit\\n',\n", + " 'utt, chief executive of the houston-based engineering and\\n',\n", + " 'william\\n']" + ] + }, + "execution_count": 438, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# a)\n", + "with open(\"../../Data/txt/nyt_200811.txt\", \"r\") as f:\n", + " data = f.readlines()\n", + "\n", + "data_short = data[0:50]\n", + "data_short = [m for m in data_short if m != '\\n']\n", + "data_short = [m.lower() for m in data_short]\n", + "\n", + "\n", + "#print(data_short)\n", + "sorted(data_short)\n", + "#print(data[0:20])\n", + "#for i in data[0:50]:\n", + "# print(i)\n", + "\n", + "#sorting with punctuation/numbers included" + ] + }, + { + "cell_type": "code", + "execution_count": 439, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "[' in\\n',\n", + " 'and services division\\n',\n", + " 'any significant impact as limited\\n',\n", + " 'back of big gains in the companys government and infrastructure\\n',\n", + " 'better\\n',\n", + " 'boost sales and offset losses because of hurricane ike\\n',\n", + " 'business commitments could be affected but downplayed the potential\\n',\n", + " 'construction\\n',\n", + " 'continuing operations totaled cents per share including\\n',\n", + " 'could be in jeopardy if the headwinds persist into next year\\n',\n", + " 'customers may cancel or delay projects that are under way said\\n',\n", + " 'financial results which showed a percent improvement over the\\n',\n", + " 'future\\n',\n", + " 'gas\\n',\n", + " 'giant and government contractor\\n',\n", + " 'had\\n',\n", + " 'he did not predict how much of the companys billion in\\n',\n", + " 'helped\\n',\n", + " 'hurricane\\n',\n", + " 'ikerelated costs of to cents a share\\n',\n", + " 'in commenting on thirdquarter earnings in recent days oil and\\n',\n", + " 'investors liked what they saw boosting kbr shares cents to\\n',\n", + " 'kbr said friday the global economic downturn so far has\\n',\n", + " 'kbr which was spun off from halliburton co last year posted\\n',\n", + " 'little effect on its business but warned some projects on its books\\n',\n", + " 'million\\n',\n", + " 'net income rose to million or cents per share from \\n',\n", + " 'new york stock exchange trading\\n',\n", + " 'numbers and beat analyst expectations after a new acquisition\\n',\n", + " 'of\\n',\n", + " 'on the\\n',\n", + " 'or cents in the julyseptember period of income from\\n',\n", + " 'period in \\n',\n", + " 'revenue climbed percent to billion from billion\\n',\n", + " 'same\\n',\n", + " 'that\\n',\n", + " 'the remarks came during a conference call to discuss kbrs\\n',\n", + " 'thirdquarter\\n',\n", + " 'unit\\n',\n", + " 'utt chief executive of the houstonbased engineering and\\n',\n", + " 'william\\n',\n", + " 'with the economic outlook remaining uncertain it is possible\\n']" + ] + }, + "execution_count": 439, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# a) found a more efficient and reliable way for stripping -> .translate()\n", + "\n", + "#sorting without punctuation/numbers\n", + "\n", + "data_short = [m.translate(str.maketrans('','', string.punctuation)) for m in data_short]\n", + "data_short = [m.translate(str.maketrans('','', string.digits)) for m in data_short]\n", + "\n", + "sorted(data_short) #didnt get rid of the blank space :/" + ] + }, + { + "cell_type": "code", + "execution_count": 440, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['\"with the economic outlook remaining uncertain, it is possible\\n',\n", + " '$14.84 in\\n',\n", + " 'and services division.\\n',\n", + " 'any significant impact as \"limited.\"\\n',\n", + " \"back of big gains in the company's government and infrastructure\\n\",\n", + " 'better\\n',\n", + " 'boost sales and offset losses because of hurricane ike.\\n',\n", + " 'business commitments could be affected but downplayed the potential\\n',\n", + " 'construction\\n',\n", + " 'continuing operations totaled 44 cents per share, including\\n',\n", + " 'could be in jeopardy if the headwinds persist into next year.\\n',\n", + " 'customers may cancel or delay projects that are under way,\" said\\n',\n", + " 'financial results, which showed a 35percent improvement over the\\n',\n", + " 'future\\n',\n", + " 'gas\\n',\n", + " 'giant and government contractor.\\n',\n", + " 'had\\n',\n", + " \"he did not predict how much of the company's $15.3billion in\\n\",\n", + " 'helped\\n',\n", + " 'hurricane\\n',\n", + " 'ike-related costs of 4 to 5 cents a share.\\n',\n", + " 'in commenting on third-quarter earnings in recent days, oil and\\n',\n", + " 'investors liked what they saw, boosting kbr shares 77 cents to\\n',\n", + " 'kbr said friday the global economic downturn so far has\\n',\n", + " 'kbr, which was spun off from halliburton co. last year, posted\\n',\n", + " 'little effect on its business but warned some projects on its books\\n',\n", + " 'million,\\n',\n", + " 'net income rose to $85million, or 51 cents per share, from $63\\n',\n", + " 'new york stock exchange trading.\\n',\n", + " 'numbers and beat analyst expectations after a new acquisition\\n',\n", + " 'of\\n',\n", + " 'on the\\n',\n", + " 'or 37 cents, in the july-september period of 2007. income from\\n',\n", + " 'period in 2007.\\n',\n", + " 'revenue climbed 39 percent to $3.02 billion from $2.18 billion,\\n',\n", + " 'same\\n',\n", + " 'that\\n',\n", + " \"the remarks came during a conference call to discuss kbr's\\n\",\n", + " 'third-quarter\\n',\n", + " 'unit\\n',\n", + " 'utt, chief executive of the houston-based engineering and\\n',\n", + " 'william\\n']" + ] + }, + "execution_count": 440, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# b)\n", + "data_short_n = data[0:50]\n", + "data_short_n = [m for m in data_short_n if m != '\\n']\n", + "data_short_n = [m.lower() for m in data_short_n]\n", + "\n", + "sorted(data_short_n)\n", + "#is it this that you mean?" + ] + }, + { + "cell_type": "code", + "execution_count": 441, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['with the economic outlook remaining uncertain it is possible\\n',\n", + " 'william\\n',\n", + " 'utt chief executive of the houstonbased engineering and\\n',\n", + " 'unit\\n',\n", + " 'thirdquarter\\n',\n", + " 'the remarks came during a conference call to discuss kbrs\\n',\n", + " 'that\\n',\n", + " 'same\\n',\n", + " 'revenue climbed percent to billion from billion\\n',\n", + " 'period in \\n',\n", + " 'or cents in the julyseptember period of income from\\n',\n", + " 'on the\\n',\n", + " 'of\\n',\n", + " 'numbers and beat analyst expectations after a new acquisition\\n',\n", + " 'new york stock exchange trading\\n',\n", + " 'net income rose to million or cents per share from \\n',\n", + " 'million\\n',\n", + " 'little effect on its business but warned some projects on its books\\n',\n", + " 'kbr which was spun off from halliburton co last year posted\\n',\n", + " 'kbr said friday the global economic downturn so far has\\n',\n", + " 'investors liked what they saw boosting kbr shares cents to\\n',\n", + " 'in commenting on thirdquarter earnings in recent days oil and\\n',\n", + " 'ikerelated costs of to cents a share\\n',\n", + " 'hurricane\\n',\n", + " 'helped\\n',\n", + " 'he did not predict how much of the companys billion in\\n',\n", + " 'had\\n',\n", + " 'giant and government contractor\\n',\n", + " 'gas\\n',\n", + " 'future\\n',\n", + " 'financial results which showed a percent improvement over the\\n',\n", + " 'customers may cancel or delay projects that are under way said\\n',\n", + " 'could be in jeopardy if the headwinds persist into next year\\n',\n", + " 'continuing operations totaled cents per share including\\n',\n", + " 'construction\\n',\n", + " 'business commitments could be affected but downplayed the potential\\n',\n", + " 'boost sales and offset losses because of hurricane ike\\n',\n", + " 'better\\n',\n", + " 'back of big gains in the companys government and infrastructure\\n',\n", + " 'any significant impact as limited\\n',\n", + " 'and services division\\n',\n", + " ' in\\n']" + ] + }, + "execution_count": 441, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# c)\n", + "sorted(data_short,reverse=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 442, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['william\\n',\n", + " 'utt, chief executive of the houston-based engineering and\\n',\n", + " 'unit\\n',\n", + " 'third-quarter\\n',\n", + " \"the remarks came during a conference call to discuss kbr's\\n\",\n", + " 'that\\n',\n", + " 'same\\n',\n", + " 'revenue climbed 39 percent to $3.02 billion from $2.18 billion,\\n',\n", + " 'period in 2007.\\n',\n", + " 'or 37 cents, in the july-september period of 2007. income from\\n',\n", + " 'on the\\n',\n", + " 'of\\n',\n", + " 'numbers and beat analyst expectations after a new acquisition\\n',\n", + " 'new york stock exchange trading.\\n',\n", + " 'net income rose to $85million, or 51 cents per share, from $63\\n',\n", + " 'million,\\n',\n", + " 'little effect on its business but warned some projects on its books\\n',\n", + " 'kbr, which was spun off from halliburton co. last year, posted\\n',\n", + " 'kbr said friday the global economic downturn so far has\\n',\n", + " 'investors liked what they saw, boosting kbr shares 77 cents to\\n',\n", + " 'in commenting on third-quarter earnings in recent days, oil and\\n',\n", + " 'ike-related costs of 4 to 5 cents a share.\\n',\n", + " 'hurricane\\n',\n", + " 'helped\\n',\n", + " \"he did not predict how much of the company's $15.3billion in\\n\",\n", + " 'had\\n',\n", + " 'giant and government contractor.\\n',\n", + " 'gas\\n',\n", + " 'future\\n',\n", + " 'financial results, which showed a 35percent improvement over the\\n',\n", + " 'customers may cancel or delay projects that are under way,\" said\\n',\n", + " 'could be in jeopardy if the headwinds persist into next year.\\n',\n", + " 'continuing operations totaled 44 cents per share, including\\n',\n", + " 'construction\\n',\n", + " 'business commitments could be affected but downplayed the potential\\n',\n", + " 'boost sales and offset losses because of hurricane ike.\\n',\n", + " 'better\\n',\n", + " \"back of big gains in the company's government and infrastructure\\n\",\n", + " 'any significant impact as \"limited.\"\\n',\n", + " 'and services division.\\n',\n", + " '$14.84 in\\n',\n", + " '\"with the economic outlook remaining uncertain, it is possible\\n']" + ] + }, + "execution_count": 442, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# d)\n", + "sorted(data_short_n,reverse=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 3. Computing basic statistics\n", + "\n", + "a. Find the 50 most common words \n", + "b. Find the words in the NYT that end in \"zz\" \n", + "c. Count the lines, the words, and the characters \n", + "d. How many all uppercase words are there in this NYT file? \n", + "e, How many 4-letter words? \n", + "f. How many different words are there with no vowels? \n", + "g. **tricky:** How many “1 syllable” words are there? " + ] + }, + { + "cell_type": "code", + "execution_count": 575, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['kbr', 'said', 'friday', 'the', 'global', 'economic', 'downturn', 'so', 'far', 'has', 'had', 'little', 'effect', 'on', 'its', 'business', 'but', 'warned', 'some', 'projects', 'on', 'its', 'books', 'could', 'be', 'in', 'jeopardy', 'if', 'the', 'headwinds', 'persist', 'into', 'next', 'year', 'with', 'the', 'economic', 'outlook', 'remaining', 'uncertain', 'it', 'is', 'possible', 'that', 'customers', 'may', 'cancel', 'or', 'delay', 'projects']\n" + ] + } + ], + "source": [ + "#text== unprocessed text\n", + "text_clean=text.replace(\"'\",\" \")\n", + "text_clean = text_clean.lower()\n", + "text_clean = text_clean.split()\n", + "text_clean = [m.translate(str.maketrans('','', string.punctuation)) for m in text_clean]\n", + "text_clean = [m.translate(str.maketrans('','', string.digits)) for m in text_clean]\n", + "text_clean = [m for m in text_clean if m != '']\n", + "\n", + "print(text_clean[0:50])" + ] + }, + { + "cell_type": "code", + "execution_count": 444, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "'\\ndef count_words(word_list):\\n words = [m.lower() for m in word_list]\\n \\n counted = []\\n for a,i in enumerate(words):\\n c = words.count(i)\\n counted.append((i, c))\\n return counted\\n'" + ] + }, + "execution_count": 444, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "#just a reminder of the function\n", + "'''\n", + "def count_words(word_list):\n", + " words = [m.lower() for m in word_list]\n", + " \n", + " counted = []\n", + " for a,i in enumerate(words):\n", + " c = words.count(i)\n", + " counted.append((i, c))\n", + " return counted\n", + "'''" + ] + }, + { + "cell_type": "code", + "execution_count": 445, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[('the', 514),\n", + " ('to', 262),\n", + " ('a', 243),\n", + " ('and', 234),\n", + " ('of', 229),\n", + " ('in', 196),\n", + " ('for', 125),\n", + " ('s', 112),\n", + " ('that', 97),\n", + " ('said', 83),\n", + " ('on', 82),\n", + " ('it', 75),\n", + " ('is', 75),\n", + " ('he', 61),\n", + " ('as', 59),\n", + " ('with', 57),\n", + " ('has', 52),\n", + " ('but', 51),\n", + " ('have', 50),\n", + " ('are', 49),\n", + " ('be', 46),\n", + " ('by', 46),\n", + " ('not', 43),\n", + " ('from', 42),\n", + " ('more', 41),\n", + " ('its', 40),\n", + " ('or', 39),\n", + " ('they', 38),\n", + " ('an', 38),\n", + " ('who', 37),\n", + " ('was', 37),\n", + " ('their', 37),\n", + " ('will', 36),\n", + " ('at', 34),\n", + " ('if', 32),\n", + " ('students', 31),\n", + " ('you', 30),\n", + " ('which', 30),\n", + " ('his', 30),\n", + " ('state', 29),\n", + " ('new', 29),\n", + " ('kbr', 28),\n", + " ('one', 27),\n", + " ('i', 25),\n", + " ('about', 24),\n", + " ('couples', 24),\n", + " ('this', 24),\n", + " ('company', 23),\n", + " ('when', 22),\n", + " ('after', 22)]" + ] + }, + "execution_count": 445, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# a)\n", + "common_words = count_words(text_clean[0:9500])\n", + "common_words = set(common_words)\n", + "sorted_common_words = sorted(common_words, key= lambda x: x[1],reverse = True)\n", + "sorted_common_words[0:50]\n", + "#bc i seperated the contraction, we will find some 'nonesense' words, that is, the letters of the contraction,\n", + "#e.g. s - probably derived from he's and company's and so on" + ] + }, + { + "cell_type": "code", + "execution_count": 449, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "[('the', 531),\n", + " ('to', 272),\n", + " ('and', 243),\n", + " ('of', 241),\n", + " ('in', 210),\n", + " ('for', 129),\n", + " ('that', 102),\n", + " ('said', 83),\n", + " ('on', 83),\n", + " ('it', 79),\n", + " ('is', 77),\n", + " ('with', 64),\n", + " ('as', 61),\n", + " ('he', 61),\n", + " ('have', 55),\n", + " ('are', 55),\n", + " ('has', 55),\n", + " ('but', 53),\n", + " ('be', 47),\n", + " ('by', 47),\n", + " ('not', 46),\n", + " ('they', 44),\n", + " ('from', 43),\n", + " ('their', 42),\n", + " ('more', 41),\n", + " ('its', 40),\n", + " ('who', 40),\n", + " ('or', 40),\n", + " ('an', 39),\n", + " ('was', 38),\n", + " ('will', 36),\n", + " ('you', 35),\n", + " ('at', 34),\n", + " ('if', 32),\n", + " ('we', 32),\n", + " ('students', 31),\n", + " ('which', 31),\n", + " ('new', 30),\n", + " ('his', 30),\n", + " ('state', 29),\n", + " ('kbr', 28),\n", + " ('one', 27),\n", + " ('about', 26),\n", + " ('couples', 25),\n", + " ('company', 24),\n", + " ('this', 24),\n", + " ('your', 23),\n", + " ('when', 23),\n", + " ('were', 23),\n", + " ('school', 22)]" + ] + }, + "execution_count": 449, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "text_clean_no_1letters = [m for m in text_clean if len(m)>1]\n", + "#stripping one-letter-words, just for fun\n", + "common_words = count_words(text_clean_no_1letters[0:9500])\n", + "common_words = set(common_words)\n", + "sorted_common_words = sorted(common_words, key= lambda x: x[1],reverse = True)\n", + "sorted_common_words[0:50]" + ] + }, + { + "cell_type": "code", + "execution_count": 457, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "buzz\n", + "buzz\n", + "jazz\n", + "buzz\n", + "buzz\n", + "jazz\n", + "jazz\n", + "jazz\n", + "jazz\n", + "jazz\n", + "jazz\n", + "buzz\n", + "buzz\n", + "buzz\n", + "jazz\n", + "buzz\n", + "jazz\n", + "pizazz\n", + "buzz\n", + "buzz\n", + "jazz\n", + "buzz\n" + ] + } + ], + "source": [ + "# b) Find the words in the NYT that end in \"zz\"\n", + "\n", + "for i in text_clean:\n", + " if len(i) > 1:\n", + " if i[-1] == \"z\" and i[-2] == \"z\":\n", + " print(i)" + ] + }, + { + "cell_type": "code", + "execution_count": 461, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Words: 508083\n", + "Characters: 3052306\n", + "Lines: 70334\n" + ] + } + ], + "source": [ + "# c) Count the lines, the words, and the characters\n", + "print(f\"Words: {len(text_clean)}\")\n", + "\n", + "print(f\"Characters: {len(text)}\") #all the characters of the original text, no strippings or modifications\n", + "\n", + "print(f\"Lines: {len(data)}\") #bc data equals our line-structured object of the NYT, see above" + ] + }, + { + "cell_type": "code", + "execution_count": 479, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Uppercase Words: 7740\n" + ] + } + ], + "source": [ + "# d) How many all uppercase words are there in this NYT file? \n", + "text_clean2=text.replace(\"'\",\" \")\n", + "#text_clean = text_clean.lower()\n", + "text_clean2 = text_clean2.split()\n", + "text_clean2 = [m.translate(str.maketrans('','', string.punctuation)) for m in text_clean2]\n", + "text_clean2 = [m.translate(str.maketrans('','', string.digits)) for m in text_clean2]\n", + "text_clean2 = [m for m in text_clean2 if m != '']\n", + "\n", + "uppers = [i.isupper() for i in text_clean2]\n", + "print(f\"Uppercase Words: {sum(uppers)}\")" + ] + }, + { + "cell_type": "code", + "execution_count": 483, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Four-letter Words: 84343\n" + ] + } + ], + "source": [ + "# e) How many 4-letter words?\n", + "four_words = [i for i in text_clean if len(i) == 4]\n", + "print(f\"Four-letter Words: {len(four_words)}\")" + ] + }, + { + "cell_type": "code", + "execution_count": 508, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Different words without vowels: 277\n" + ] + } + ], + "source": [ + "# f) How many different words are there with no vowels?\n", + "vls # from the code above, this variable contains the vowels\n", + "no_vwl = []\n", + "\n", + "for i in text_clean:\n", + " if_cond = []\n", + " for v in vls:\n", + " if i.count(v) == 0:\n", + " if_cond.append(1)\n", + " else:\n", + " if_cond.append(0)\n", + " if all(if_cond): \n", + " no_vwl.append(i)\n", + "\n", + "print(\"Different words without vowels: \" + str(len(set(no_vwl))))" + ] + }, + { + "cell_type": "code", + "execution_count": 627, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "one-syllables: 260683\n", + "uniques: 3807\n", + "['the', 'so', 'far', 'has', 'had', 'little', 'on', 'its', 'but', 'some', 'on', 'its', 'be', 'in', 'if', 'the', 'next', 'with', 'the', 'it', 'is', 'that', 'may', 'or', 'that', 'are', 'way', 'utt', 'of', 'the', 'and', 'and', 'he', 'did', 'not', 'how', 'much', 'of', 'the', 'in', 'be', 'but', 'the', 'of', 'any', 'as', 'the', 'came', 'call', 'to', 'which', 'the', 'same', 'in', 'which', 'was', 'spun', 'off', 'from', 'co', 'last', 'and', 'new', 'and', 'of', 'ike', 'net', 'rose', 'to', 'or', 'cents', 'per', 'share', 'from', 'or', 'cents', 'in', 'the', 'of', 'from', 'cents', 'per', 'share', 'costs', 'of', 'to', 'cents', 'share', 'to', 'from', 'on', 'the', 'back', 'of', 'big', 'in', 'the', 'and', 'and', 'what']\n" + ] + } + ], + "source": [ + "# g) **tricky:** How many “1 syllable” words are there?\n", + "\n", + "##puuh.. we need to find rules - unfortunately, i'm not a linguist.. my best shot would be the following rules:\n", + "# - there is only one vowel (or combo of vowels pronounced as one sound) in a word\n", + "# - an exception of this rule is if the words ends with \"e\"\n", + "# the \"ed\" part is tricky and will lead to some false positives, but it's still my best guess, so let's try\n", + "\n", + "vowels2 = vowels #thats all possible combos of vowels from an exercise above\n", + "\n", + "for i in vls:\n", + " if i in vowels2:\n", + " vowels2.remove(i)\n", + " \n", + "#vls2 = vls\n", + "#vls2.remove(\"e\")\n", + " \n", + "\n", + "v_inword =[]\n", + "for word in text_clean:\n", + " vn = []\n", + " for v in vowels2:\n", + " vn.append(word.count(v))\n", + " vnsum = sum(vn)\n", + " \n", + " if vnsum == 0 or vnsum == 1:\n", + " for vo in vls:\n", + " vn.append(word.count(vo))\n", + " vnsum = sum(vn)\n", + " \n", + " if len(word) >1:\n", + " if vnsum == 1 or (vnsum ==2 and word[-1] == \"e\"): #or (vnsum ==2 and word[-1] == \"d\" and word[-2] == \"e\"):\n", + " v_inword.append(word)\n", + "\n", + "print(\"one-syllables: \" + str(len(v_inword)))\n", + "print(\"uniques: \" + str(len(set(v_inword))))\n", + "\n", + "print(v_inword[0:100])\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 4. Compute ngrams \n", + "\n", + "a. Find the 10 most common bigrams \n", + "b. Find the 10 most common trigrams " + ] + }, + { + "cell_type": "code", + "execution_count": 587, + "metadata": {}, + "outputs": [], + "source": [ + "# a)\n", + "text_clean3 = [m for m in text_clean if len(m)>1]\n", + "text_joined = \" \".join(text_clean3)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 588, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "bigrams = []\n", + "for i in range(len(text_clean3)-1):\n", + " bigrams.append([text_clean3[i],text_clean3[i+1]])\n", + "#bigrams[0:10]" + ] + }, + { + "cell_type": "code", + "execution_count": 589, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "bigrams = [\" \".join(m) for m in bigrams]\n", + "#bigrams[0:10]" + ] + }, + { + "cell_type": "code", + "execution_count": 595, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "[('in the', 11),\n", + " ('of the', 7),\n", + " ('the company', 5),\n", + " ('cents per', 5),\n", + " ('per share', 5),\n", + " ('next year', 5),\n", + " ('the industry', 4),\n", + " ('on its', 4),\n", + " ('million or', 4),\n", + " ('or cents', 4)]" + ] + }, + "execution_count": 595, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "co_bigrams = []\n", + "for i in bigrams:\n", + " co_bigrams.append((i,bigrams[0:1000].count(i))) #sorry, it takes way to long to compute bigrams for the whole text\n", + "\n", + "co_bigrams = set(co_bigrams)\n", + "co_bigrams = sorted(co_bigrams, key= lambda x: x[1], reverse=True)\n", + "co_bigrams[0:10]" + ] + }, + { + "cell_type": "code", + "execution_count": 597, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[('cents per share', 5),\n", + " ('million or cents', 4),\n", + " ('oil and gas', 3),\n", + " ('of to cents', 3),\n", + " ('engineering and construction', 3),\n", + " ('credit financial and', 2),\n", + " ('the current credit', 2),\n", + " ('share from million', 2),\n", + " ('on thirdquarter earnings', 2),\n", + " ('on the back', 2)]" + ] + }, + "execution_count": 597, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# b)\n", + "trigrams = []\n", + "for i in range(len(text_clean3)-2):\n", + " trigrams.append([text_clean3[i],text_clean3[i+1],text_clean3[i+2]])\n", + "\n", + "\n", + "trigrams = [\" \".join(m) for m in trigrams]\n", + "\n", + "co_trigrams = []\n", + "for i in trigrams:\n", + " co_trigrams.append((i,trigrams[0:1000].count(i)))\n", + "\n", + "co_trigrams = set(co_trigrams)\n", + "co_trigrams = sorted(co_trigrams, key= lambda x: x[1], reverse=True)\n", + "co_trigrams[0:10]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### 5. Make a Concordance\n", + "\n", + "a. Create a concordance display for an arbitrary word. See the example below \n", + "\n", + "![](../../Data/figs/Sample-concordance-lines-of-actually.png)" + ] + }, + { + "cell_type": "code", + "execution_count": 626, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "16\n" + ] + }, + { + "data": { + "text/plain": [ + "[\"... Clinton Portis 56 yards away from the magic 1,000 mark. Say what? What's so magic about \",\n", + " \" the magic 1,000 mark. Say what? What's so magic about 1,000 yards in a 16-game season? ... \",\n", + " ' or, if nothing else, a sip from a magic fountain that would restore his fading youth. He ',\n", + " ' is not as if CBS has found a magic potion; its move to first place is mostly ',\n", + " \" two others. But he couldn't produce the same magic in the fourth quarter. After an unnecessary roughness \",\n", + " ' or, if nothing else, a sip from a magic fountain that would restore his fading youth. He ',\n", + " \" is a simple one. Obama can reach the magic 270 electoral votes even if he doesn't carry \",\n", + " \" right New Kids stuff for Christmas. Whatever their magic formula, it's back. The New Kids say it \",\n", + " ' especially important. \"Media campaigns were themselves seen as magic bullets,\" Sappol said. In an iconic poster from ',\n", + " ' got the polio vaccine, penicillin, DDT and other magic bullets, and that\\'s going to conquer disease,\" Sappol ',\n", + " ' and persuade him to return to work his magic on Rebekka. It is Florens who is sent ',\n", + " \" deployed by CNN. Baiting the hook: John King's magic screen. Setting it: the hypnotic electronic fever chart \",\n", + " ' the game. \"He\\'ll pass on some of his magic to them.\" While Argentines may disagree over the ',\n", + " ' same thing.\" Tymoshenko is also capable of political magic tricks. Last year she colluded with Yushchenko, withdrawing ',\n", + " \" the candidates might reach 270 electoral votes, the magic number needed to claim the presidency. AND THEY'RE \",\n", + " ' foodies. Where oh where, you ask, is this magic matchbook cover? How do I apply for this ',\n", + " '']" + ] + }, + "execution_count": 626, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# a)\n", + "text_1 = text.split()\n", + "print(text_1.count(\"magic\"))\n", + "arr = (-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8)\n", + "\n", + "magic = []\n", + "for a, i in enumerate(text_1):\n", + " if i == \"magic\":\n", + " for z in arr:\n", + " magic.append(text_1[a+z])\n", + " magic.append(\"__\")\n", + "\n", + "magic = \" \".join(magic)\n", + "magic = magic.split(\"__\")\n", + "magic\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 609, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "20" + ] + }, + "execution_count": 609, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "***" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Extra Credit – Secret Message\n", + "+ The answers to the extra credit exercises will reveal a secret message. \n", + "+ We will be working with the following text file for these exercises: \n", + "[Link to Text](https://web.stanford.edu/class/cs124/lec/secret_ec.txt) \n", + "(No starter code in the Extra Credit) " + ] + }, + { + "cell_type": "code", + "execution_count": 632, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "enjoy omniscient defeated doubt squeak activity screw defeated bawl hair the crazy messy screeching and excellent motion the part about crazy there are puzzling foot grip object ship crazy best squeak clover motion the bubble invent somber and mint admit the somber like abashed bubble crazy help there crazy approval mundane cows it bare grip hair monkey face all enjoy object the bubble excellent it range unpack car heat toes there are clover reign the range spurious unix is birth mock crazy attraction are all ratty broad tacit sincere abashed purple they can mint queen all face and the squeak courageous the mass reign bawl best it the admit brush theory flowery meat cave car hesitant crazy laughable every toe divergent the bubble crazy the bubble tempt amount screeching excellent brush hallowed coast ratty the cave object bee activity mass bitter degree best crazy fish the bag nervous harmony doubt and part about harmony birth screeching there kneel heat the bubble grip like tacit temp\n" + ] + } + ], + "source": [ + "with open(\"../../My Homeworks/Assignment 1/secrettxt.txt\", \"r\") as f:\n", + " text = f.read()\n", + "\n", + "print(text[0:1000])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Extra Credit Exercise 1\n", + "• Find the 2 most common words in secret_ec.txt containing the letter e. \n", + "• Your answer will correspond to the first two words of the secret message. " + ] + }, + { + "cell_type": "code", + "execution_count": 641, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[('the', 22), ('best', 11)]\n" + ] + }, + { + "data": { + "text/plain": [ + "['the', 'best']" + ] + }, + "execution_count": 641, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "words = text.split()\n", + "words_e = [m for m in words if \"e\" in m]\n", + "\n", + "common_words = count_words(words_e)\n", + "common_words = set(common_words)\n", + "sorted_common_words = sorted(common_words, key= lambda x: x[1],reverse = True)\n", + "print(sorted_common_words[0:2])\n", + "part_1 = [sorted_common_words[0][0],sorted_common_words[1][0]]\n", + "part_1" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Extra Credit Exercise 2\n", + "• Find the 2 most common bigrams in secret_ec.txt where the second word in the bigram ends with a consonant. \n", + "• Your answer will correspond to the next four words of the secret message. " + ] + }, + { + "cell_type": "code", + "execution_count": 642, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['enjoy omniscient', 'omniscient defeated', 'defeated doubt', 'doubt squeak', 'squeak activity', 'activity screw', 'screw defeated', 'defeated bawl', 'bawl hair', 'hair the', 'the crazy', 'crazy messy', 'messy screeching', 'screeching and', 'and excellent', 'excellent motion', 'motion the', 'the part', 'part about', 'about crazy']\n", + "[('the bubble', 7), ('part about', 6)]\n" + ] + }, + { + "data": { + "text/plain": [ + "['part about', 'the bubble']" + ] + }, + "execution_count": 642, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "bigrams = []\n", + "for i in range(len(words)-1):\n", + " bigrams.append([words[i],words[i+1]])\n", + "\n", + "bigrams = [\" \".join(m) for m in bigrams]\n", + "print(bigrams[0:20])\n", + "\n", + "co_bigrams = []\n", + "for i in bigrams:\n", + " co_bigrams.append((i,bigrams.count(i)))\n", + "\n", + "co_bigrams = set(co_bigrams)\n", + "co_bigrams = sorted(co_bigrams, key= lambda x: x[1], reverse=True)\n", + "print(co_bigrams[0:2])\n", + "\n", + "part_2 = [co_bigrams[1][0],co_bigrams[0][0]]\n", + "part_2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Extra Credit Exercise 3\n", + "• Find all 5-letter-long words that only appear once in secret_ec.txt. \n", + "• Concatenate your result. This will be the final word of the secret message. \n", + "\n", + "What is the secret message? " + ] + }, + { + "cell_type": "code", + "execution_count": 649, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['everything']" + ] + }, + "execution_count": 649, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "five_l = [m for m in words if len(m) == 5]\n", + "\n", + "uniques = [l for l in five_l if five_l.count(l) == 1]\n", + " \n", + "part_3 = [\"\".join(uniques)]\n", + "part_3" + ] + }, + { + "cell_type": "code", + "execution_count": 651, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "['the', 'best', 'part about', 'the bubble', 'everything']" + ] + }, + "execution_count": 651, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "secret_message = part_1 + part_2 + part_3\n", + "secret_message" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# \"The best part about the bubble [is] everything\"?\n", + "# \"The best part about the bubble[:] everything\"?" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "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.11.2" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/My Homeworks/Assignment 1/secrettxt.txt b/My Homeworks/Assignment 1/secrettxt.txt new file mode 100644 index 00000000..6bc94d86 --- /dev/null +++ b/My Homeworks/Assignment 1/secrettxt.txt @@ -0,0 +1 @@ +enjoy omniscient defeated doubt squeak activity screw defeated bawl hair the crazy messy screeching and excellent motion the part about crazy there are puzzling foot grip object ship crazy best squeak clover motion the bubble invent somber and mint admit the somber like abashed bubble crazy help there crazy approval mundane cows it bare grip hair monkey face all enjoy object the bubble excellent it range unpack car heat toes there are clover reign the range spurious unix is birth mock crazy attraction are all ratty broad tacit sincere abashed purple they can mint queen all face and the squeak courageous the mass reign bawl best it the admit brush theory flowery meat cave car hesitant crazy laughable every toe divergent the bubble crazy the bubble tempt amount screeching excellent brush hallowed coast ratty the cave object bee activity mass bitter degree best crazy fish the bag nervous harmony doubt and part about harmony birth screeching there kneel heat the bubble grip like tacit tempt messy like clover amount half best they can wicked panoramic bare degree best part about heat best puzzling bee embarrassed thing broad soft elderly cart face squeak sincere mouth nervous it like ban screw ban all it monkey and the best symptomatic rampant motion voice unix is crazy are best face mail hallowed unix is mouth the invent the dinner best reign part about crazy best theory kneel offend admit bag wood invent cart debonair queen dinner like meat ahead theory bitter squeak crazy tendency mouth the bubble they can film motion crazy birth spade part about crazy voice ratty swanky crazy the help tacit degree part about cart queen the swanky the bubble crazy coast unix is the ahead mail heat toe and spade omniscient and tendency harmony crazy voice overjoyed all best spade range ban activity wicked heat ship somber \ No newline at end of file diff --git a/My Homeworks/Assignment 1/~$crettxt.txt b/My Homeworks/Assignment 1/~$crettxt.txt new file mode 100644 index 0000000000000000000000000000000000000000..50936de2da897d9fb1b50076b6a1bd33f8620a2d GIT binary patch literal 162 zcmWgi%goL!NmK~P&&e;yNvupQVjuztGWaoMGGqgB2}2@-0z&{pK0^)=7XZmbhDwH1 z28c0CP_s1IA&k?PdUMXi-(-9hx_XJuRR)H`KY!$11oB~4hE=})^{<|RK?Eki*uVe) D)rlX! literal 0 HcmV?d00001 diff --git a/Notebooks/Python_Intermediate/08_Data_Persistence.ipynb b/Notebooks/Python_Intermediate/08_Data_Persistence.ipynb index eba89bcc..a0ac0183 100755 --- a/Notebooks/Python_Intermediate/08_Data_Persistence.ipynb +++ b/Notebooks/Python_Intermediate/08_Data_Persistence.ipynb @@ -1367,13 +1367,14 @@ }, { "cell_type": "code", - "execution_count": 190, + "execution_count": 7, "metadata": { "collapsed": false, "editable": true, "jupyter": { "outputs_hidden": false - } + }, + "tags": [] }, "outputs": [], "source": [ @@ -1385,64 +1386,55 @@ }, { "cell_type": "code", - "execution_count": 191, + "execution_count": 8, "metadata": { - "editable": true + "editable": true, + "tags": [] }, "outputs": [ { - "ename": "SSLError", - "evalue": "HTTPSConnectionPool(host='en.wikipedia.org', port=443): Max retries exceeded with url: /wiki/FIFA_World_Cup (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)')))", + "ename": "AttributeError", + "evalue": "'Response' object has no attribute 'split'", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[1;31mSSLCertVerificationError\u001b[0m Traceback (most recent call last)", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\urllib3\\connectionpool.py:703\u001b[0m, in \u001b[0;36mHTTPConnectionPool.urlopen\u001b[1;34m(self, method, url, body, headers, retries, redirect, assert_same_host, timeout, pool_timeout, release_conn, chunked, body_pos, **response_kw)\u001b[0m\n\u001b[0;32m 702\u001b[0m \u001b[39m# Make the request on the httplib connection object.\u001b[39;00m\n\u001b[1;32m--> 703\u001b[0m httplib_response \u001b[39m=\u001b[39m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49m_make_request(\n\u001b[0;32m 704\u001b[0m conn,\n\u001b[0;32m 705\u001b[0m method,\n\u001b[0;32m 706\u001b[0m url,\n\u001b[0;32m 707\u001b[0m timeout\u001b[39m=\u001b[39;49mtimeout_obj,\n\u001b[0;32m 708\u001b[0m body\u001b[39m=\u001b[39;49mbody,\n\u001b[0;32m 709\u001b[0m headers\u001b[39m=\u001b[39;49mheaders,\n\u001b[0;32m 710\u001b[0m chunked\u001b[39m=\u001b[39;49mchunked,\n\u001b[0;32m 711\u001b[0m )\n\u001b[0;32m 713\u001b[0m \u001b[39m# If we're going to release the connection in ``finally:``, then\u001b[39;00m\n\u001b[0;32m 714\u001b[0m \u001b[39m# the response doesn't need to know about the connection. Otherwise\u001b[39;00m\n\u001b[0;32m 715\u001b[0m \u001b[39m# it will also try to release it and we'll have a double-release\u001b[39;00m\n\u001b[0;32m 716\u001b[0m \u001b[39m# mess.\u001b[39;00m\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\urllib3\\connectionpool.py:386\u001b[0m, in \u001b[0;36mHTTPConnectionPool._make_request\u001b[1;34m(self, conn, method, url, timeout, chunked, **httplib_request_kw)\u001b[0m\n\u001b[0;32m 385\u001b[0m \u001b[39mtry\u001b[39;00m:\n\u001b[1;32m--> 386\u001b[0m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49m_validate_conn(conn)\n\u001b[0;32m 387\u001b[0m \u001b[39mexcept\u001b[39;00m (SocketTimeout, BaseSSLError) \u001b[39mas\u001b[39;00m e:\n\u001b[0;32m 388\u001b[0m \u001b[39m# Py2 raises this as a BaseSSLError, Py3 raises it as socket timeout.\u001b[39;00m\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\urllib3\\connectionpool.py:1042\u001b[0m, in \u001b[0;36mHTTPSConnectionPool._validate_conn\u001b[1;34m(self, conn)\u001b[0m\n\u001b[0;32m 1041\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mnot\u001b[39;00m \u001b[39mgetattr\u001b[39m(conn, \u001b[39m\"\u001b[39m\u001b[39msock\u001b[39m\u001b[39m\"\u001b[39m, \u001b[39mNone\u001b[39;00m): \u001b[39m# AppEngine might not have `.sock`\u001b[39;00m\n\u001b[1;32m-> 1042\u001b[0m conn\u001b[39m.\u001b[39;49mconnect()\n\u001b[0;32m 1044\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mnot\u001b[39;00m conn\u001b[39m.\u001b[39mis_verified:\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\urllib3\\connection.py:414\u001b[0m, in \u001b[0;36mHTTPSConnection.connect\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 412\u001b[0m context\u001b[39m.\u001b[39mload_default_certs()\n\u001b[1;32m--> 414\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39msock \u001b[39m=\u001b[39m ssl_wrap_socket(\n\u001b[0;32m 415\u001b[0m sock\u001b[39m=\u001b[39;49mconn,\n\u001b[0;32m 416\u001b[0m keyfile\u001b[39m=\u001b[39;49m\u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mkey_file,\n\u001b[0;32m 417\u001b[0m certfile\u001b[39m=\u001b[39;49m\u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mcert_file,\n\u001b[0;32m 418\u001b[0m key_password\u001b[39m=\u001b[39;49m\u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mkey_password,\n\u001b[0;32m 419\u001b[0m ca_certs\u001b[39m=\u001b[39;49m\u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mca_certs,\n\u001b[0;32m 420\u001b[0m ca_cert_dir\u001b[39m=\u001b[39;49m\u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mca_cert_dir,\n\u001b[0;32m 421\u001b[0m ca_cert_data\u001b[39m=\u001b[39;49m\u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mca_cert_data,\n\u001b[0;32m 422\u001b[0m server_hostname\u001b[39m=\u001b[39;49mserver_hostname,\n\u001b[0;32m 423\u001b[0m ssl_context\u001b[39m=\u001b[39;49mcontext,\n\u001b[0;32m 424\u001b[0m tls_in_tls\u001b[39m=\u001b[39;49mtls_in_tls,\n\u001b[0;32m 425\u001b[0m )\n\u001b[0;32m 427\u001b[0m \u001b[39m# If we're using all defaults and the connection\u001b[39;00m\n\u001b[0;32m 428\u001b[0m \u001b[39m# is TLSv1 or TLSv1.1 we throw a DeprecationWarning\u001b[39;00m\n\u001b[0;32m 429\u001b[0m \u001b[39m# for the host.\u001b[39;00m\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\urllib3\\util\\ssl_.py:449\u001b[0m, in \u001b[0;36mssl_wrap_socket\u001b[1;34m(sock, keyfile, certfile, cert_reqs, ca_certs, server_hostname, ssl_version, ciphers, ssl_context, ca_cert_dir, key_password, ca_cert_data, tls_in_tls)\u001b[0m\n\u001b[0;32m 448\u001b[0m \u001b[39mif\u001b[39;00m send_sni:\n\u001b[1;32m--> 449\u001b[0m ssl_sock \u001b[39m=\u001b[39m _ssl_wrap_socket_impl(\n\u001b[0;32m 450\u001b[0m sock, context, tls_in_tls, server_hostname\u001b[39m=\u001b[39;49mserver_hostname\n\u001b[0;32m 451\u001b[0m )\n\u001b[0;32m 452\u001b[0m \u001b[39melse\u001b[39;00m:\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\urllib3\\util\\ssl_.py:493\u001b[0m, in \u001b[0;36m_ssl_wrap_socket_impl\u001b[1;34m(sock, ssl_context, tls_in_tls, server_hostname)\u001b[0m\n\u001b[0;32m 492\u001b[0m \u001b[39mif\u001b[39;00m server_hostname:\n\u001b[1;32m--> 493\u001b[0m \u001b[39mreturn\u001b[39;00m ssl_context\u001b[39m.\u001b[39;49mwrap_socket(sock, server_hostname\u001b[39m=\u001b[39;49mserver_hostname)\n\u001b[0;32m 494\u001b[0m \u001b[39melse\u001b[39;00m:\n", - "File \u001b[1;32mC:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.10_3.10.2288.0_x64__qbz5n2kfra8p0\\lib\\ssl.py:513\u001b[0m, in \u001b[0;36mSSLContext.wrap_socket\u001b[1;34m(self, sock, server_side, do_handshake_on_connect, suppress_ragged_eofs, server_hostname, session)\u001b[0m\n\u001b[0;32m 507\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mwrap_socket\u001b[39m(\u001b[39mself\u001b[39m, sock, server_side\u001b[39m=\u001b[39m\u001b[39mFalse\u001b[39;00m,\n\u001b[0;32m 508\u001b[0m do_handshake_on_connect\u001b[39m=\u001b[39m\u001b[39mTrue\u001b[39;00m,\n\u001b[0;32m 509\u001b[0m suppress_ragged_eofs\u001b[39m=\u001b[39m\u001b[39mTrue\u001b[39;00m,\n\u001b[0;32m 510\u001b[0m server_hostname\u001b[39m=\u001b[39m\u001b[39mNone\u001b[39;00m, session\u001b[39m=\u001b[39m\u001b[39mNone\u001b[39;00m):\n\u001b[0;32m 511\u001b[0m \u001b[39m# SSLSocket class handles server_hostname encoding before it calls\u001b[39;00m\n\u001b[0;32m 512\u001b[0m \u001b[39m# ctx._wrap_socket()\u001b[39;00m\n\u001b[1;32m--> 513\u001b[0m \u001b[39mreturn\u001b[39;00m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49msslsocket_class\u001b[39m.\u001b[39;49m_create(\n\u001b[0;32m 514\u001b[0m sock\u001b[39m=\u001b[39;49msock,\n\u001b[0;32m 515\u001b[0m server_side\u001b[39m=\u001b[39;49mserver_side,\n\u001b[0;32m 516\u001b[0m do_handshake_on_connect\u001b[39m=\u001b[39;49mdo_handshake_on_connect,\n\u001b[0;32m 517\u001b[0m suppress_ragged_eofs\u001b[39m=\u001b[39;49msuppress_ragged_eofs,\n\u001b[0;32m 518\u001b[0m server_hostname\u001b[39m=\u001b[39;49mserver_hostname,\n\u001b[0;32m 519\u001b[0m context\u001b[39m=\u001b[39;49m\u001b[39mself\u001b[39;49m,\n\u001b[0;32m 520\u001b[0m session\u001b[39m=\u001b[39;49msession\n\u001b[0;32m 521\u001b[0m )\n", - "File \u001b[1;32mC:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.10_3.10.2288.0_x64__qbz5n2kfra8p0\\lib\\ssl.py:1071\u001b[0m, in \u001b[0;36mSSLSocket._create\u001b[1;34m(cls, sock, server_side, do_handshake_on_connect, suppress_ragged_eofs, server_hostname, context, session)\u001b[0m\n\u001b[0;32m 1070\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mValueError\u001b[39;00m(\u001b[39m\"\u001b[39m\u001b[39mdo_handshake_on_connect should not be specified for non-blocking sockets\u001b[39m\u001b[39m\"\u001b[39m)\n\u001b[1;32m-> 1071\u001b[0m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mdo_handshake()\n\u001b[0;32m 1072\u001b[0m \u001b[39mexcept\u001b[39;00m (\u001b[39mOSError\u001b[39;00m, \u001b[39mValueError\u001b[39;00m):\n", - "File \u001b[1;32mC:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.10_3.10.2288.0_x64__qbz5n2kfra8p0\\lib\\ssl.py:1342\u001b[0m, in \u001b[0;36mSSLSocket.do_handshake\u001b[1;34m(self, block)\u001b[0m\n\u001b[0;32m 1341\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39msettimeout(\u001b[39mNone\u001b[39;00m)\n\u001b[1;32m-> 1342\u001b[0m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49m_sslobj\u001b[39m.\u001b[39;49mdo_handshake()\n\u001b[0;32m 1343\u001b[0m \u001b[39mfinally\u001b[39;00m:\n", - "\u001b[1;31mSSLCertVerificationError\u001b[0m: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)", - "\nDuring handling of the above exception, another exception occurred:\n", - "\u001b[1;31mMaxRetryError\u001b[0m Traceback (most recent call last)", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\requests\\adapters.py:489\u001b[0m, in \u001b[0;36mHTTPAdapter.send\u001b[1;34m(self, request, stream, timeout, verify, cert, proxies)\u001b[0m\n\u001b[0;32m 488\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mnot\u001b[39;00m chunked:\n\u001b[1;32m--> 489\u001b[0m resp \u001b[39m=\u001b[39m conn\u001b[39m.\u001b[39;49murlopen(\n\u001b[0;32m 490\u001b[0m method\u001b[39m=\u001b[39;49mrequest\u001b[39m.\u001b[39;49mmethod,\n\u001b[0;32m 491\u001b[0m url\u001b[39m=\u001b[39;49murl,\n\u001b[0;32m 492\u001b[0m body\u001b[39m=\u001b[39;49mrequest\u001b[39m.\u001b[39;49mbody,\n\u001b[0;32m 493\u001b[0m headers\u001b[39m=\u001b[39;49mrequest\u001b[39m.\u001b[39;49mheaders,\n\u001b[0;32m 494\u001b[0m redirect\u001b[39m=\u001b[39;49m\u001b[39mFalse\u001b[39;49;00m,\n\u001b[0;32m 495\u001b[0m assert_same_host\u001b[39m=\u001b[39;49m\u001b[39mFalse\u001b[39;49;00m,\n\u001b[0;32m 496\u001b[0m preload_content\u001b[39m=\u001b[39;49m\u001b[39mFalse\u001b[39;49;00m,\n\u001b[0;32m 497\u001b[0m decode_content\u001b[39m=\u001b[39;49m\u001b[39mFalse\u001b[39;49;00m,\n\u001b[0;32m 498\u001b[0m retries\u001b[39m=\u001b[39;49m\u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mmax_retries,\n\u001b[0;32m 499\u001b[0m timeout\u001b[39m=\u001b[39;49mtimeout,\n\u001b[0;32m 500\u001b[0m )\n\u001b[0;32m 502\u001b[0m \u001b[39m# Send the request.\u001b[39;00m\n\u001b[0;32m 503\u001b[0m \u001b[39melse\u001b[39;00m:\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\urllib3\\connectionpool.py:787\u001b[0m, in \u001b[0;36mHTTPConnectionPool.urlopen\u001b[1;34m(self, method, url, body, headers, retries, redirect, assert_same_host, timeout, pool_timeout, release_conn, chunked, body_pos, **response_kw)\u001b[0m\n\u001b[0;32m 785\u001b[0m e \u001b[39m=\u001b[39m ProtocolError(\u001b[39m\"\u001b[39m\u001b[39mConnection aborted.\u001b[39m\u001b[39m\"\u001b[39m, e)\n\u001b[1;32m--> 787\u001b[0m retries \u001b[39m=\u001b[39m retries\u001b[39m.\u001b[39;49mincrement(\n\u001b[0;32m 788\u001b[0m method, url, error\u001b[39m=\u001b[39;49me, _pool\u001b[39m=\u001b[39;49m\u001b[39mself\u001b[39;49m, _stacktrace\u001b[39m=\u001b[39;49msys\u001b[39m.\u001b[39;49mexc_info()[\u001b[39m2\u001b[39;49m]\n\u001b[0;32m 789\u001b[0m )\n\u001b[0;32m 790\u001b[0m retries\u001b[39m.\u001b[39msleep()\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\urllib3\\util\\retry.py:592\u001b[0m, in \u001b[0;36mRetry.increment\u001b[1;34m(self, method, url, response, error, _pool, _stacktrace)\u001b[0m\n\u001b[0;32m 591\u001b[0m \u001b[39mif\u001b[39;00m new_retry\u001b[39m.\u001b[39mis_exhausted():\n\u001b[1;32m--> 592\u001b[0m \u001b[39mraise\u001b[39;00m MaxRetryError(_pool, url, error \u001b[39mor\u001b[39;00m ResponseError(cause))\n\u001b[0;32m 594\u001b[0m log\u001b[39m.\u001b[39mdebug(\u001b[39m\"\u001b[39m\u001b[39mIncremented Retry for (url=\u001b[39m\u001b[39m'\u001b[39m\u001b[39m%s\u001b[39;00m\u001b[39m'\u001b[39m\u001b[39m): \u001b[39m\u001b[39m%r\u001b[39;00m\u001b[39m\"\u001b[39m, url, new_retry)\n", - "\u001b[1;31mMaxRetryError\u001b[0m: HTTPSConnectionPool(host='en.wikipedia.org', port=443): Max retries exceeded with url: /wiki/FIFA_World_Cup (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)')))", - "\nDuring handling of the above exception, another exception occurred:\n", - "\u001b[1;31mSSLError\u001b[0m Traceback (most recent call last)", - "Cell \u001b[1;32mIn [191], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m page \u001b[39m=\u001b[39m requests\u001b[39m.\u001b[39;49mget(\u001b[39m'\u001b[39;49m\u001b[39mhttps://en.wikipedia.org/wiki/FIFA_World_Cup\u001b[39;49m\u001b[39m'\u001b[39;49m)\n\u001b[0;32m 2\u001b[0m soup \u001b[39m=\u001b[39m BeautifulSoup(page\u001b[39m.\u001b[39mtext, \u001b[39m\"\u001b[39m\u001b[39mlxml\u001b[39m\u001b[39m\"\u001b[39m)\n\u001b[0;32m 3\u001b[0m text \u001b[39m=\u001b[39m soup\u001b[39m.\u001b[39mtext\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\requests\\api.py:73\u001b[0m, in \u001b[0;36mget\u001b[1;34m(url, params, **kwargs)\u001b[0m\n\u001b[0;32m 62\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mget\u001b[39m(url, params\u001b[39m=\u001b[39m\u001b[39mNone\u001b[39;00m, \u001b[39m*\u001b[39m\u001b[39m*\u001b[39mkwargs):\n\u001b[0;32m 63\u001b[0m \u001b[39mr\u001b[39m\u001b[39m\"\"\"Sends a GET request.\u001b[39;00m\n\u001b[0;32m 64\u001b[0m \n\u001b[0;32m 65\u001b[0m \u001b[39m :param url: URL for the new :class:`Request` object.\u001b[39;00m\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 70\u001b[0m \u001b[39m :rtype: requests.Response\u001b[39;00m\n\u001b[0;32m 71\u001b[0m \u001b[39m \"\"\"\u001b[39;00m\n\u001b[1;32m---> 73\u001b[0m \u001b[39mreturn\u001b[39;00m request(\u001b[39m\"\u001b[39m\u001b[39mget\u001b[39m\u001b[39m\"\u001b[39m, url, params\u001b[39m=\u001b[39mparams, \u001b[39m*\u001b[39m\u001b[39m*\u001b[39mkwargs)\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\requests\\api.py:59\u001b[0m, in \u001b[0;36mrequest\u001b[1;34m(method, url, **kwargs)\u001b[0m\n\u001b[0;32m 55\u001b[0m \u001b[39m# By using the 'with' statement we are sure the session is closed, thus we\u001b[39;00m\n\u001b[0;32m 56\u001b[0m \u001b[39m# avoid leaving sockets open which can trigger a ResourceWarning in some\u001b[39;00m\n\u001b[0;32m 57\u001b[0m \u001b[39m# cases, and look like a memory leak in others.\u001b[39;00m\n\u001b[0;32m 58\u001b[0m \u001b[39mwith\u001b[39;00m sessions\u001b[39m.\u001b[39mSession() \u001b[39mas\u001b[39;00m session:\n\u001b[1;32m---> 59\u001b[0m \u001b[39mreturn\u001b[39;00m session\u001b[39m.\u001b[39mrequest(method\u001b[39m=\u001b[39mmethod, url\u001b[39m=\u001b[39murl, \u001b[39m*\u001b[39m\u001b[39m*\u001b[39mkwargs)\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\requests\\sessions.py:587\u001b[0m, in \u001b[0;36mSession.request\u001b[1;34m(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert, json)\u001b[0m\n\u001b[0;32m 582\u001b[0m send_kwargs \u001b[39m=\u001b[39m {\n\u001b[0;32m 583\u001b[0m \u001b[39m\"\u001b[39m\u001b[39mtimeout\u001b[39m\u001b[39m\"\u001b[39m: timeout,\n\u001b[0;32m 584\u001b[0m \u001b[39m\"\u001b[39m\u001b[39mallow_redirects\u001b[39m\u001b[39m\"\u001b[39m: allow_redirects,\n\u001b[0;32m 585\u001b[0m }\n\u001b[0;32m 586\u001b[0m send_kwargs\u001b[39m.\u001b[39mupdate(settings)\n\u001b[1;32m--> 587\u001b[0m resp \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39msend(prep, \u001b[39m*\u001b[39m\u001b[39m*\u001b[39msend_kwargs)\n\u001b[0;32m 589\u001b[0m \u001b[39mreturn\u001b[39;00m resp\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\requests\\sessions.py:701\u001b[0m, in \u001b[0;36mSession.send\u001b[1;34m(self, request, **kwargs)\u001b[0m\n\u001b[0;32m 698\u001b[0m start \u001b[39m=\u001b[39m preferred_clock()\n\u001b[0;32m 700\u001b[0m \u001b[39m# Send the request\u001b[39;00m\n\u001b[1;32m--> 701\u001b[0m r \u001b[39m=\u001b[39m adapter\u001b[39m.\u001b[39msend(request, \u001b[39m*\u001b[39m\u001b[39m*\u001b[39mkwargs)\n\u001b[0;32m 703\u001b[0m \u001b[39m# Total elapsed time of the request (approximately)\u001b[39;00m\n\u001b[0;32m 704\u001b[0m elapsed \u001b[39m=\u001b[39m preferred_clock() \u001b[39m-\u001b[39m start\n", - "File \u001b[1;32m~\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python310\\site-packages\\requests\\adapters.py:563\u001b[0m, in \u001b[0;36mHTTPAdapter.send\u001b[1;34m(self, request, stream, timeout, verify, cert, proxies)\u001b[0m\n\u001b[0;32m 559\u001b[0m \u001b[39mraise\u001b[39;00m ProxyError(e, request\u001b[39m=\u001b[39mrequest)\n\u001b[0;32m 561\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39misinstance\u001b[39m(e\u001b[39m.\u001b[39mreason, _SSLError):\n\u001b[0;32m 562\u001b[0m \u001b[39m# This branch is for urllib3 v1.22 and later.\u001b[39;00m\n\u001b[1;32m--> 563\u001b[0m \u001b[39mraise\u001b[39;00m SSLError(e, request\u001b[39m=\u001b[39mrequest)\n\u001b[0;32m 565\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mConnectionError\u001b[39;00m(e, request\u001b[39m=\u001b[39mrequest)\n\u001b[0;32m 567\u001b[0m \u001b[39mexcept\u001b[39;00m ClosedPoolError \u001b[39mas\u001b[39;00m e:\n", - "\u001b[1;31mSSLError\u001b[0m: HTTPSConnectionPool(host='en.wikipedia.org', port=443): Max retries exceeded with url: /wiki/FIFA_World_Cup (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)')))" + "\u001b[1;31mAttributeError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[1;32mIn[8], line 4\u001b[0m\n\u001b[0;32m 1\u001b[0m text \u001b[38;5;241m=\u001b[39m requests\u001b[38;5;241m.\u001b[39mget(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mhttps://en.wikipedia.org/wiki/FIFA_World_Cup\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[0;32m 2\u001b[0m \u001b[38;5;66;03m#soup = BeautifulSoup(page.text, \"lxml\")\u001b[39;00m\n\u001b[0;32m 3\u001b[0m \u001b[38;5;66;03m#text = soup.text\u001b[39;00m\n\u001b[1;32m----> 4\u001b[0m words \u001b[38;5;241m=\u001b[39m \u001b[43mtext\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43msplit\u001b[49m()\n", + "\u001b[1;31mAttributeError\u001b[0m: 'Response' object has no attribute 'split'" ] } ], "source": [ - "page = requests.get('https://en.wikipedia.org/wiki/FIFA_World_Cup')\n", - "soup = BeautifulSoup(page.text, \"lxml\")\n", - "text = soup.text\n", + "text = requests.get('https://en.wikipedia.org/wiki/FIFA_World_Cup')\n", + "#soup = BeautifulSoup(page.text, \"lxml\")\n", + "#text = soup.text\n", "words = text.split()" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "metadata": { "collapsed": false, "editable": true, "jupyter": { "outputs_hidden": false - } + }, + "tags": [] }, - "outputs": [], + "outputs": [ + { + "ename": "NameError", + "evalue": "name 'words' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[1;32mIn[5], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m upper \u001b[38;5;241m=\u001b[39m [m \u001b[38;5;28;01mfor\u001b[39;00m m \u001b[38;5;129;01min\u001b[39;00m \u001b[43mwords\u001b[49m \u001b[38;5;28;01mif\u001b[39;00m m\u001b[38;5;241m.\u001b[39mistitle()]\n\u001b[0;32m 2\u001b[0m upper_clean \u001b[38;5;241m=\u001b[39m [m\u001b[38;5;241m.\u001b[39mstrip(string\u001b[38;5;241m.\u001b[39mpunctuation) \u001b[38;5;28;01mfor\u001b[39;00m m \u001b[38;5;129;01min\u001b[39;00m upper]\n\u001b[0;32m 3\u001b[0m upper_clean \u001b[38;5;241m=\u001b[39m [m\u001b[38;5;241m.\u001b[39mstrip(string\u001b[38;5;241m.\u001b[39mdigits) \u001b[38;5;28;01mfor\u001b[39;00m m \u001b[38;5;129;01min\u001b[39;00m upper_clean]\n", + "\u001b[1;31mNameError\u001b[0m: name 'words' is not defined" + ] + } + ], "source": [ "upper = [m for m in words if m.istitle()]\n", "upper_clean = [m.strip(string.punctuation) for m in upper]\n", @@ -1576,7 +1568,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3.10.8 64-bit (microsoft store)", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -1590,7 +1582,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.8" + "version": "3.11.2" }, "vscode": { "interpreter": { diff --git a/Notebooks/Python_Intermediate/09_Classes.ipynb b/Notebooks/Python_Intermediate/09_Classes.ipynb index f53f9c48..f9bccfa1 100755 --- a/Notebooks/Python_Intermediate/09_Classes.ipynb +++ b/Notebooks/Python_Intermediate/09_Classes.ipynb @@ -2519,7 +2519,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.10" + "version": "3.11.2" } }, "nbformat": 4, diff --git a/Notebooks/Python_Intermediate/10_Decorators.ipynb b/Notebooks/Python_Intermediate/10_Decorators.ipynb index 931e629a..92976f4b 100755 --- a/Notebooks/Python_Intermediate/10_Decorators.ipynb +++ b/Notebooks/Python_Intermediate/10_Decorators.ipynb @@ -1302,7 +1302,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -1316,7 +1316,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.6" + "version": "3.11.2" } }, "nbformat": 4, diff --git a/Notebooks/Python_Intermediate/12_Unitary_Tests.ipynb b/Notebooks/Python_Intermediate/12_Unitary_Tests.ipynb index 41aff3f0..604427b4 100644 --- a/Notebooks/Python_Intermediate/12_Unitary_Tests.ipynb +++ b/Notebooks/Python_Intermediate/12_Unitary_Tests.ipynb @@ -648,7 +648,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.10" + "version": "3.11.2" } }, "nbformat": 4, From 6440e14300fcf0486dada8de60ce4134e070e9f9 Mon Sep 17 00:00:00 2001 From: nikitap17 Date: Sat, 1 Apr 2023 13:34:42 +0200 Subject: [PATCH 2/3] Delete ~$crettxt.txt --- My Homeworks/Assignment 1/~$crettxt.txt | Bin 162 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 My Homeworks/Assignment 1/~$crettxt.txt diff --git a/My Homeworks/Assignment 1/~$crettxt.txt b/My Homeworks/Assignment 1/~$crettxt.txt deleted file mode 100644 index 50936de2da897d9fb1b50076b6a1bd33f8620a2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 162 zcmWgi%goL!NmK~P&&e;yNvupQVjuztGWaoMGGqgB2}2@-0z&{pK0^)=7XZmbhDwH1 z28c0CP_s1IA&k?PdUMXi-(-9hx_XJuRR)H`KY!$11oB~4hE=})^{<|RK?Eki*uVe) D)rlX! From 598367510e30c8ded61627101e4989adf9adf39c Mon Sep 17 00:00:00 2001 From: nikitap17 Date: Tue, 11 Apr 2023 21:10:21 +0200 Subject: [PATCH 3/3] minor changes --- My Homeworks/Assignment 1/Assignment_1.ipynb | 2 +- My Homeworks/Assignment_2.ipynb | 703 ++++++++++++++++++ My Homeworks/elevator.ipynb | 655 ++++++++++++++++ Notebooks/Python_Basic/03_Functions.ipynb | 18 +- .../Python_Intermediate/09_Classes.ipynb | 2 +- .../Python_Intermediate/10_Decorators.ipynb | 2 +- .../12_Unitary_Tests.ipynb | 2 +- 7 files changed, 1365 insertions(+), 19 deletions(-) create mode 100644 My Homeworks/Assignment_2.ipynb create mode 100644 My Homeworks/elevator.ipynb diff --git a/My Homeworks/Assignment 1/Assignment_1.ipynb b/My Homeworks/Assignment 1/Assignment_1.ipynb index 3ede60a8..78e3db62 100644 --- a/My Homeworks/Assignment 1/Assignment_1.ipynb +++ b/My Homeworks/Assignment 1/Assignment_1.ipynb @@ -1586,7 +1586,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.2" + "version": "3.9.12" } }, "nbformat": 4, diff --git a/My Homeworks/Assignment_2.ipynb b/My Homeworks/Assignment_2.ipynb new file mode 100644 index 00000000..b39d29ed --- /dev/null +++ b/My Homeworks/Assignment_2.ipynb @@ -0,0 +1,703 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\"Logo\n", + "\n", + "# Practical Machine Learning for Natural Language Processing - 2023 SS \n", + "\n", + "### Assigment 2 - Generators and Classes \n", + "\n", + "In this assigment we are going to play with generators and instances/classes - structures that retain state. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "***" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "import time\n", + "from itertools import chain" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [] + }, + "source": [ + "### 1. Alea Iacta Est \n", + "\n", + "(a) Using [generator functions](https://github.com/rsouza/Python_Course/blob/master/Notebooks/Python_Basic/03_Functions.ipynb), create an object that emulates an eight-sided dice (1-8) that is biased, such that the probability of this generator function returning a certain value is proportional to the value itself (i.e. the face \"6\" is 3 times more likely to come out than face \"2\"); \n", + "\n", + " \"8-Dice\" \n", + "\n", + "(b) Using [Matplotlib](https://matplotlib.org/) plt.plot or plt.hist commands, show graphically the result of 10000 casts of the die; \n", + "\n", + "(c) Modify this generator function so that it terminates automatically when all possible values (1,2,3,4,5,6,7,8) have been cast at least once. In this case, it will return the total absolute time that has elapsed since the first iteration. (hint: a function can have both **return** and **yield** commands) " + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "array([1., 2., 2., 3., 3., 3., 4., 4., 4., 4., 5., 5., 5., 5., 5., 6., 6.,\n", + " 6., 6., 6., 6., 7., 7., 7., 7., 7., 7., 7., 8., 8., 8., 8., 8., 8.,\n", + " 8., 8.])" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "dicey = ()\n", + "for i in range(1,9):\n", + " dicey = np.append(dicey,np.repeat(i,i))\n", + "\n", + "dicey" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "# a)\n", + "def dice():\n", + " while True:\n", + " yield(np.random.choice(dicey)) #the probability to land a certain number equals to its reversed number, so 1 == .1, 4 == .4\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# b) Visualizing" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[8.0, 6.0, 7.0, 5.0, 8.0, 8.0, 8.0, 6.0, 6.0, 8.0, 6.0, 6.0, 7.0, 5.0, 8.0, 4.0, 6.0, 7.0, 5.0, 7.0]\n" + ] + }, + { + "data": { + "text/plain": [ + "(array([ 30., 51., 82., 116., 143., 161., 197., 220.]),\n", + " array([0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5]),\n", + " )" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "#first, i save the values in a list\n", + "dice1 = dice()\n", + "dice_trials1000 = [next(dice1) for i in range(1000)]\n", + "print(dice_trials1000[0:20])\n", + "#then plot:\n", + "plt.hist(dice_trials1000, bins=np.arange(1,10)-0.5, color=\"#641975\", ec=\"k\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# c) Modify this generator function so that it terminates automatically when all possible values (1,2,3,4,5,6,7,8)\n", + "#have been cast at least once. In this case, it will return the total absolute time that has elapsed\n", + "#since the first iteration." + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "2" + ] + }, + "execution_count": 62, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 153, + "metadata": {}, + "outputs": [], + "source": [ + "def diceII():\n", + " now = []\n", + " counts = np.zeros(8)\n", + " while not all(counts) >= 1:\n", + " now.append(time.time())\n", + " random_n = int(np.random.choice(dicey))\n", + " counts[random_n-1] += 1\n", + " yield(random_n)\n", + " return time.time() - now[0]" + ] + }, + { + "cell_type": "code", + "execution_count": 157, + "metadata": {}, + "outputs": [ + { + "ename": "StopIteration", + "evalue": "0.015623807907104492", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mStopIteration\u001b[0m Traceback (most recent call last)", + "Input \u001b[1;32mIn [157]\u001b[0m, in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 2\u001b[0m dice2_trials \u001b[38;5;241m=\u001b[39m []\n\u001b[0;32m 3\u001b[0m \u001b[38;5;28;01mwhile\u001b[39;00m \u001b[38;5;28;01mTrue\u001b[39;00m:\n\u001b[1;32m----> 4\u001b[0m dice2_trials\u001b[38;5;241m.\u001b[39mappend(\u001b[38;5;28;43mnext\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mdice2\u001b[49m\u001b[43m)\u001b[49m)\n", + "\u001b[1;31mStopIteration\u001b[0m: 0.015623807907104492" + ] + } + ], + "source": [ + "dice2 = diceII()\n", + "dice2_trials = []\n", + "while True:\n", + " dice2_trials.append(next(dice2))" + ] + }, + { + "cell_type": "code", + "execution_count": 158, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "111\n" + ] + } + ], + "source": [ + "print(len(dice2_trials))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 2. A ticket to the first Class \n", + "\n", + "+ Create a Class called \"Elevator\". Each instance of this class receives as parameters the number of floors in the building and starts the elevator on the lowest floor. \n", + "+ This Class should have methods and properties to allow the elevator to:\n", + "

\n", + " + Receive a call - user(s) press a button to go to specific floor(s); \n", + " + Receive a floor as a destination - when users enter the elevator, each one may press a button to choose destination floor; \n", + " + Store and inform which floor the elevator is at each moment(consider that trips for consecutive floors takes 5 seconds, and stopping takes 10 seconds); \n", + " + Store and inform which users are in the elevator; \n", + " + Store and inform the sequence of floors yet to be visited; \n", + " + Store the number of times the elevator stopped in each floor (passing through the floor without \"stopping\" on the floor does not count); \n", + " + Refuses commands to go to inexistent floors. \n", + "

\n", + "+ Simulate the behavior of the elevator serving ten users, each one calling from a random floor, and chosing a random destination floor. \n", + "+ Graphically illustrate the current elevator position for the requested simulation. \n", + "+ (BONUS) Create a smart building simulator, controlling calls made to n > 1 elevators and routing elevator properly. " + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "class MyElevator:\n", + " def __init__(self,floors_min,floors_max):\n", + " self.n_floors = [floors_min,floors_max,floors_max-floors_min+1]\n", + " self.current_elev_floor = floors_min\n", + " #self.users = []\n", + " self.users_inelev = []\n", + " self.not_visited_floors = []\n", + " self.floors_visited = np.column_stack((np.arange(floors_min,floors_max+1),np.zeros(self.n_floors[-1])))\n", + " \n", + " \n", + " def user(self,customer, print_features = True, plot_fig = True):\n", + " for u in customer:\n", + " if len(u) != 3:\n", + " raise ValueError(\"object must be a list of tuples with 3 elements\")\n", + " \n", + " self.users = customer\n", + " \n", + " for u in self.users:\n", + " self.not_visited_floors.append((u[1],u[2]))\n", + " \n", + " if u[2] < self.n_floors[0] or u[2] > self.n_floors[1] or u[1] < self.n_floors[0] or u[1] > self.n_floors[1]:\n", + " raise ValueError(\"Hola my friend, you're travelling too far! The building has not yet that many floors!\")\n", + "\n", + " print(\"current floor: \" + str(Elevator_sim1.current_elev_floor))\n", + " print(f\"Not visited floors: {Elevator_sim1.not_visited_floors}\") \n", + " print(f\"Users: {Elevator_sim1.users}\")\n", + " print(f\"Users in elevator: {Elevator_sim1.users_inelev}\")\n", + " \n", + " x_rounds = []\n", + " xx = 0\n", + " y_levels = []\n", + " while len(self.not_visited_floors) > 0: \n", + " users_inelev_before = len(self.users_inelev)\n", + " xx += 1\n", + " \n", + " for a,user in enumerate(self.users): #put the user into elevator or remove if theay are leaving\n", + "\n", + " if user[0] not in self.users_inelev and user[1] == self.current_elev_floor:\n", + " self.users_inelev.append(user[0])\n", + " self.not_visited_floors[a] = [self.not_visited_floors[a][1]]\n", + " \n", + " elif user[0] in self.users_inelev and user[2] == self.current_elev_floor:\n", + " self.users_inelev.remove(user[0])\n", + " self.users.remove(user)\n", + " self.not_visited_floors.remove(self.not_visited_floors[a])\n", + " \n", + " if users_inelev_before != len(self.users_inelev):\n", + " self.floors_visited[self.current_elev_floor,1] += 1\n", + " time.sleep(10)\n", + " elif self.current_elev_floor != self.not_visited_floors[0][0]:\n", + " time.sleep(5)\n", + " \n", + " if print_features == True:\n", + " print(\"current floor: \" + str(Elevator_sim1.current_elev_floor))\n", + " print(f\"Not visited floors: {Elevator_sim1.not_visited_floors}\") \n", + " print(f\"Users: {Elevator_sim1.users}\")\n", + " print(f\"Users in elevator: {Elevator_sim1.users_inelev}\")\n", + " \n", + " if plot_fig == True:\n", + " x_rounds.append(xx)\n", + " y_levels.append(self.current_elev_floor)\n", + " #plt.figure()\n", + " plt.bar(x_rounds,y_levels, color=\"orange\")\n", + " plt.ylim([self.n_floors[0],self.n_floors[1]])\n", + " plt.xlabel(\"Floor\")\n", + " plt.show()\n", + " \n", + "\n", + " if len(self.not_visited_floors) == 0:\n", + " break\n", + " \n", + " if self.current_elev_floor < self.not_visited_floors[0][0]:\n", + " self.current_elev_floor += 1\n", + "\n", + " elif self.current_elev_floor > self.not_visited_floors[0][0]:\n", + " self.current_elev_floor -= 1\n", + " else:\n", + " continue\n", + "\n", + " \n", + " time.sleep(5*self.current_elev_floor)\n", + " self.current_elev_floor = 0\n", + " #self.floors_visited[self.current_elev_floor,1] += 1\n", + " if plot_fig == True:\n", + " x_rounds.append(xx)\n", + " y_levels.append(self.current_elev_floor)\n", + " #plt.figure()\n", + " plt.bar(x_rounds,y_levels, color=\"orange\")\n", + " plt.ylim([self.n_floors[0],self.n_floors[1]])\n", + " plt.xlabel(\"Floor\")\n", + " plt.show()\n", + " print(\"No customers in the elevator\")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[('Aang', 7, 8),\n", + " ('Katara', 5, 4),\n", + " ('Sokka', 1, 0),\n", + " ('Zuko', 0, 2),\n", + " ('Toph', 4, 5),\n", + " ('Uncle Iroh', 3, 1),\n", + " ('Appa', 3, 6),\n", + " ('Momo', 4, 6),\n", + " ('Suki', 6, 5),\n", + " ('Azula', 4, 5)]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "user_list=[]\n", + "for i in (\"Aang\",\"Katara\",\"Sokka\",\"Zuko\",\"Toph\",\"Uncle Iroh\",\"Appa\",\"Momo\",\"Suki\",\"Azula\"):\n", + " user_list.append((i,np.random.randint(0,9),np.random.randint(0,9)))\n", + "user_list" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "current floor: 0\n", + "Not visited floors: [(7, 8), (5, 4), (1, 0), (0, 2), (4, 5), (3, 1), (3, 6), (4, 6), (6, 5), (4, 5)]\n", + "Users: [('Aang', 7, 8), ('Katara', 5, 4), ('Sokka', 1, 0), ('Zuko', 0, 2), ('Toph', 4, 5), ('Uncle Iroh', 3, 1), ('Appa', 3, 6), ('Momo', 4, 6), ('Suki', 6, 5), ('Azula', 4, 5)]\n", + "Users in elevator: []\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAW4AAAEKCAYAAAAyx7/DAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAANnElEQVR4nO3df4zk9V3H8derd0eAA0XLRAlwxSYGgsTCdXJSaUgFNFBNq7GJR2vVxmSj8QcYE1P9Q8r/pvFHjGbTUtsUaFp+NORSKiQtIU3k6t5x0LseGEprewW9xYYCLREPX/4x36vbZWbnM3fz3b338nwkG3Z3vrv7/uRDnpn7znxnnEQAgDresNEDAABmQ7gBoBjCDQDFEG4AKIZwA0AxhBsAimkKt+0/sX3I9kHbd9o+ve/BAADjTQ237fMl/bGkYZLLJG2RtLvvwQAA47WeKtkq6QzbWyWdKemZ/kYCAKxl67QDknzb9l9J+qaklyU9kOSB1cfZXpC0IEnbt29/6yWXXDLvWQFg09q3b99zSQYtx3raJe+2f0zS3ZJ+Q9Lzkj4j6a4kn5z0M8PhMEtLS80DA8Drne19SYYtx7acKrlO0teTLCf5H0n3SPr5kxkQAHDiWsL9TUlX2j7TtiVdK+lwv2MBACaZGu4keyXdJWm/pK90P7PY81wAgAmmPjgpSUlukXRLz7MAABpw5SQAFEO4AaAYwg0AxRBuACiGcANAMYQbAIoh3ABQDOEGgGIINwAUQ7gBoBjCDQDFEG4AKIZwA0AxhBsAiiHcAFAM4QaAYgg3ABRDuAGgmKnhtn2x7QMrPl6wffM6zAYAGGPqe04meVLS5ZJke4ukb0u6t9+xAACTzHqq5FpJX0vy730MAwCYbtZw75Z0Zx+DAADaNIfb9mmS3iXpMxNuX7C9ZHtpeXl5XvMBAFaZ5R73DZL2J/nPcTcmWUwyTDIcDAbzmQ4A8BqzhPtGcZoEADZcU7htnynpFyXd0+84AIBppj4dUJKSfF/SG3ueBQDQgCsnAaAYwg0AxRBuACiGcANAMYQbAIoh3ABQDOEGgGIINwAUQ7gBoBjCDQDFEG4AKIZwA0AxhBsAiiHcAFAM4QaAYgg3ABRDuAGgGMINAMUQbgAopvXNgs+xfZftJ2wftv22vgcDAIzX9GbBkv5G0ueTvMf2aZLO7HEmAMAapobb9o9IulrS70hSklckvdLvWACASVpOlbxZ0rKkj9l+1PZHbG9ffZDtBdtLtpeWl5fnPigAYKQl3Fsl7ZT0D0mukPQ9SR9cfVCSxSTDJMPBYDDnMQEAx7WE+4ikI0n2dl/fpVHIAQAbYGq4k/yHpG/Zvrj71rWSvtrrVACAiVqfVfJHkm7vnlHytKQP9DcSAGAtTeFOckDSsN9RAAAtuHISAIoh3ABQDOEGgGIINwAUQ7gBoBjCDQDFEG4AKIZwA0AxhBsAiiHcAFAM4QaAYgg3ABRDuAGgGMINAMUQbgAohnADQDGEGwCKIdwAUEzTW5fZ/oakFyW9KulYEt7GDAA2SOubBUvSLyR5rrdJAABNOFUCAMW0hjuSHrC9z/bCuANsL9hesr20vLw8vwkBAD+kNdxXJdkp6QZJf2D76tUHJFlMMkwyHAwGcx0SAPD/msKd5Jnuv0cl3StpV59DAQAmmxpu29ttn338c0m/JOlg34MBAMZreVbJT0i61/bx4+9I8vlepwIATDQ13EmelvSWdZgFANCApwMCQDGEGwCKIdwAUAzhBoBiCDcAFEO4AaAYwg0AxRBuACiGcANAMYQbAIoh3ABQDOEGgGIINwAUQ7gBoBjCDQDFEG4AKIZwA0AxhBsAimkOt+0tth+1vafPgQAAa5vlHvdNkg73NQgAoE1TuG1fIOmXJX2k33EAANO03uP+a0l/Jul/Jx1ge8H2ku2l5eXlecwGABhjarht/4qko0n2rXVcksUkwyTDwWAwtwEBAD+s5R73VZLeZfsbkj4l6Rrbn+x1KgDARFPDneTPk1yQ5CJJuyV9Iclv9j4ZAGAsnscNAMVsneXgJA9JeqiXSQAATbjHDQDFEG4AKIZwA0AxhBsAiiHcAFAM4QaAYgg3ABRDuAGgGMINAMUQbgAohnADQDGEGwCKIdwAUAzhBoBiCDcAFEO4AaAYwg0AxRBuAChmarhtn277y7Yfs33I9q3rMRgAYLyW95z8b0nXJHnJ9jZJX7J9f5JHep4NADDG1HAniaSXui+3dR/pcygAwGRN57htb7F9QNJRSQ8m2TvmmAXbS7aXlpeX5zwmAOC4pnAneTXJ5ZIukLTL9mVjjllMMkwyHAwGcx4TAHDcTM8qSfK8pIckXd/HMACA6VqeVTKwfU73+RmSrpP0RM9zAQAmaHlWyXmSPm57i0ah/3SSPf2OBQCYpOVZJY9LumIdZgEANODKSQAohnADQDGEGwCKIdwAUAzhBoBiCDcAFEO4AaAYwg0AxRBuACiGcANAMYQbAIoh3ABQDOEGgGIINwAUQ7gBoBjCDQDFEG4AKIZwA0AxLW8WfKHtL9o+bPuQ7ZvWYzAAwHgtbxZ8TNKfJtlv+2xJ+2w/mOSrPc8GABhj6j3uJM8m2d99/qKkw5LO73swAMB4Lfe4f8D2RRq94/veMbctSFqQpB07dsxjNgB9uMMbPcHm9d6sy59pfnDS9lmS7pZ0c5IXVt+eZDHJMMlwMBjMc0YAwApN4ba9TaNo357knn5HAgCspeVZJZb0UUmHk3y4/5EAAGtpucd9laT3S7rG9oHu4509zwUAmGDqg5NJviSJRzMA4BTBlZMAUAzhBoBiCDcAFEO4AaAYwg0AxRBuACiGcANAMYQbAIoh3ABQDOEGgGIINwAUQ7gBoBjCDQDFEG4AKIZwA0AxhBsAiiHcAFAM4QaAYlreLPg220dtH1yPgQAAa2u5x/1Pkq7veQ4AQKOp4U7ysKTvrMMsAIAGnOMGgGK2zusX2V6QtCBJO3bsmNevxanuDm/0BJvXe7PRE+AUNbd73EkWkwyTDAeDwbx+LQBgFU6VAEAxLU8HvFPSv0i62PYR27/b/1gAgEmmnuNOcuN6DAIAaMOpEgAohnADQDGEGwCKIdwAUAzhBoBiCDcAFEO4AaAYwg0AxRBuACiGcANAMYQbAIoh3ABQDOEGgGIINwAUQ7gBoBjCDQDFEG4AKIZwA0AxhBsAimkKt+3rbT9p+ynbH+x7KADAZC3v8r5F0t9LukHSpZJutH1p34MBAMZruce9S9JTSZ5O8oqkT0l6d79jAQAm2dpwzPmSvrXi6yOSfm71QbYXJC10X75k+8kVN58r6bkTHfIUtlnXJW3etdVZ1/s8y9F11jW7Oms7uT17U+sPtoR73CR5zTeSRUmLY3+BvZRk2DpUFZt1XdLmXRvrqmezru1k1tVyquSIpAtXfH2BpGdO5I8BAE5eS7j/VdJP2/4p26dJ2i3pvn7HAgBMMvVUSZJjtv9Q0j9L2iLptiSHZvw7Y0+hbAKbdV3S5l0b66pns67thNfl5DWnqwEApzCunASAYgg3ABQz13BPuzTe9jtsf9f2ge7jL+f59/tg+zbbR20fnHC7bf9tt+bHbe9c7xlPVMPayu2XJNm+0PYXbR+2fcj2TWOOKbdvjesqt2e2T7f9ZduPdeu6dcwx5fZLal7b7HuWZC4fGj1w+TVJb5Z0mqTHJF266ph3SNozr7+5Hh+Srpa0U9LBCbe/U9L9Gj3f/UpJezd65jmurdx+dXOfJ2ln9/nZkv5tzP+L5fatcV3l9qzbg7O6z7dJ2ivpyur7NcPaZt6zed7j3pSXxid5WNJ31jjk3ZI+kZFHJJ1j+7z1me7kNKytpCTPJtnfff6ipMMaXQG8Url9a1xXOd0evNR9ua37WP2siXL7JTWvbWbzDPe4S+PH/U/1tu6fDffb/pk5/v2N0rruqkrvl+2LJF2h0T2dlUrv2xrrkgrume0ttg9IOirpwSSbZr8a1ibNuGfzDHfLpfH7Jb0pyVsk/Z2kz87x72+UppcEKKr0ftk+S9Ldkm5O8sLqm8f8SIl9m7KuknuW5NUkl2t0ZfYu25etOqTsfjWsbeY9m2e4p14an+SF4/9sSPI5SdtsnzvHGTbCpn1JgMr7ZXubRnG7Pck9Yw4puW/T1lV5zyQpyfOSHpJ0/aqbSu7XSpPWdiJ7Ns9wT7003vZP2nb3+a7u7//XHGfYCPdJ+q3uUe8rJX03ybMbPdQ8VN2vbuaPSjqc5MMTDiu3by3rqrhntge2z+k+P0PSdZKeWHVYuf2S2tZ2InvW8uqATTLh0njbv9fd/o+S3iPp920fk/SypN3pHlY9Vdm+U6NHfc+1fUTSLRo9wHB8TZ/T6BHvpyR9X9IHNmbS2TWsrdx+da6S9H5JX+nOLUrSX0jaIZXet5Z1Vdyz8yR93KM3bXmDpE8n2bOqHRX3S2pb28x7xiXvAFAMV04CQDGEGwCKIdwAUAzhBoBiCDcAFEO4UZ7tV1e8stoB2xd1r7i2Z6NnA/owt+dxAxvo5e6S4h/oXsvjpNnemuTYPH4XMC/c48amZ/vHbX+2ex3nR2z/7JTvf8j2ou0HJH1iQ4cHxuAeNzaDM1ZcSfj1JL+26vZbJT2a5FdtX6NRjC9f4/uS9FZJb0/yct/DA7Mi3NgMXnOqZJW3S/p1SUryBdtvtP2ja3xfku4j2jhVcaoErweTXhJ0rZcK/V5/4wAnh3Dj9eBhSe+TRu/vJ+m57nWsJ30fOKVxqgSvBx+S9DHbj2v0ynK/PeX7wCmNVwcEgGI4VQIAxRBuACiGcANAMYQbAIoh3ABQDOEGgGIINwAU83/Dz6fOuHwMawAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWoAAAEKCAYAAAA7LB+5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAPF0lEQVR4nO3de4yldX3H8ffHXagsakEdrWWZoq1CLVHAKVWxBBdt8BK0qUlx1djWZpLGCxpbKyGp+l/TGqt/GNuNF2xhMRbBGhItxkuNScWyKyK4WG8UF1EgxqpoROy3f5wzMMzOMmd3z3POF/b9Sk7mnOc8z8wn58z5zDO/55aqQpLU10PmHUCSdP8saklqzqKWpOYsaklqzqKWpOYsaklqbqKiTvKGJDckuT7JpUkeOnQwSdLIhkWd5DjgdcBSVZ0MbALOGzqYJGlk0qGPzcBRSTYDW4DvDhdJkrTa5o1mqKpbkrwduBn4GXBVVV21dr4ky8AywNFHH/20k046adpZpen5wa6DX/aRT5teDmls165dd1TVwnrPZaNDyJMcC3wE+GPgh8C/ApdV1cX7W2Zpaamuueaagw4sDW5nDn7Z7Z52QdOXZFdVLa333CRDH88Bvl1Vt1fVL4DLgWdOM6Akaf8mKeqbgacn2ZIkwNnAnmFjSZJWbFjUVXU1cBmwG/jKeJkdA+eSJI1tuDERoKreArxl4CySpHV4ZKIkNWdRS1JzFrUkNWdRS1JzFrUkNWdRS1JzFrUkNWdRS1JzFrUkNWdRS1JzFrUkNWdRS1JzFrUkNWdRS1JzFrUkNWdRS1JzFrUkNWdRS1JzGxZ1khOTXLvq9qMkr59BNkkSE1wzsaq+BpwCkGQTcAtwxbCxJEkrDnTo42zgm1X1P0OEkSTt60CL+jzg0iGCSJLWt+HQx4okRwLnAhfs5/llYBlgcXFxKuGk+9iZg192e00vx1qHkguGzaYHhQNZo34esLuqvr/ek1W1o6qWqmppYWFhOukkSQdU1C/FYQ9JmrmJijrJFuC5wOXDxpEkrTXRGHVV/RR41MBZJEnr8MhESWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWpu0ovbHpPksiQ3JtmT5BlDB5MkjUx0cVvgXcAnquolSY4EtgyYSZK0yoZFneQRwJnAnwBU1V3AXcPGkiStmGSN+gnA7cAHkjwV2AWcX1V3rp4pyTKwDLC4uDjtnHog2plDW357TSfHA4mvmdYxyRj1ZuA04D1VdSpwJ/DmtTNV1Y6qWqqqpYWFhSnHlKTD1yRFvRfYW1VXjx9fxqi4JUkzsGFRV9X3gO8kOXE86Wzgq4OmkiTdY9K9Pl4LXDLe4+NbwJ8OF0mStNpERV1V1wJLw0aRJK3HIxMlqTmLWpKas6glqTmLWpKas6glqTmLWpKas6glqTmLWpKas6glqTmLWpKas6glqTmLWpKas6glqTmLWpKas6glqTmLWpKas6glqTmLWpKam+hSXEluAn4M/BK4u6q8LJckzcikF7cFeHZV3TFYEknSuhz6kKTmJl2jLuCqJAX8U1XtWDtDkmVgGWBxcXF6CTVbO3Noy2+v6eTQdBzK++l72caka9RnVNVpwPOAVyc5c+0MVbWjqpaqamlhYWGqISXpcDZRUVfVd8dfbwOuAE4fMpQk6V4bFnWSo5M8fOU+8AfA9UMHkySNTDJG/VjgiiQr8++sqk8MmkqSdI8Ni7qqvgU8dQZZJEnrcPc8SWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5iYu6iSbknwpyZVDBpIk3deBrFGfD+wZKogkaX0TFXWSrcALgPcOG0eStNaGVyEfeyfwJuDh+5shyTKwDLC4uHjIwXQAdubgl91e08uhBzd/z+ZmwzXqJC8EbquqXfc3X1XtqKqlqlpaWFiYWkBJOtxNMvRxBnBukpuADwHbklw8aCpJ0j02LOqquqCqtlbVCcB5wKer6uWDJ5MkAe5HLUntTboxEYCq+izw2UGSSJLW5Rq1JDVnUUtScxa1JDVnUUtScxa1JDVnUUtScxa1JDVnUUtScxa1JDVnUUtScxa1JDVnUUtScxa1JDVnUUtScxa1JDVnUUtScxa1JDVnUUtScxsWdZKHJvliki8nuSHJ22YRTJI0Msk1E38ObKuqnyQ5Avh8ko9X1RcGziZJYoKirqoCfjJ+eMT4VkOGkiTda6KrkCfZBOwCfgt4d1Vdvc48y8AywOLi4jQzPjjtzMEvu92/k3qAO5TffzjsPgMTbUysql9W1SnAVuD0JCevM8+OqlqqqqWFhYUpx5Skw9cB7fVRVT8EPgucM0QYSdK+JtnrYyHJMeP7RwHPAW4cOJckaWySMerHAR8cj1M/BPhwVV05bCxJ0opJ9vq4Djh1BlkkSevwyERJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmJrm47fFJPpNkT5Ibkpw/i2CSpJFJLm57N/DGqtqd5OHAriSfrKqvDpxNksQEa9RVdWtV7R7f/zGwBzhu6GCSpJFJ1qjvkeQERlckv3qd55aBZYDFxcVpZOtlZw5t+e01nRyS7usw+GxOvDExycOAjwCvr6ofrX2+qnZU1VJVLS0sLEwzoyQd1iYq6iRHMCrpS6rq8mEjSZJWm2SvjwDvA/ZU1TuGjyRJWm2SNeozgFcA25JcO749f+BckqSxDTcmVtXngUMcrZckHSyPTJSk5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWrOopak5ixqSWpukovbvj/JbUmun0UgSdJ9TbJGfRFwzsA5JEn7sWFRV9XngB/MIIskaR2OUUtSc5un9Y2SLAPLAIuLi9P6todmZw5+2e01vRySHjga9sbU1qirakdVLVXV0sLCwrS+rSQd9hz6kKTmJtk971LgP4ETk+xN8qrhY0mSVmw4Rl1VL51FEEnS+hz6kKTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmLGpJas6ilqTmJirqJOck+VqSbyR589ChJEn3muQq5JuAdwPPA54MvDTJk4cOJkkamWSN+nTgG1X1raq6C/gQ8KJhY0mSVqSq7n+G5CXAOVX15+PHrwB+r6pes2a+ZWB5/PBE4Gvj+48G7phm6Cnqmq1rLuibrWsu6Jutay7om23IXL9RVQvrPbF5goWzzrR92r2qdgA79lk4uaaqlib4OTPXNVvXXNA3W9dc0Ddb11zQN9u8ck0y9LEXOH7V463Ad4eJI0laa5Ki/i/giUken+RI4DzgY8PGkiSt2HDoo6ruTvIa4N+BTcD7q+qGA/gZ+wyHNNI1W9dc0Ddb11zQN1vXXNA321xybbgxUZI0Xx6ZKEnNWdSS1NygRd3x0PMkxyf5TJI9SW5Icv68M62VZFOSLyW5ct5ZViQ5JsllSW4cv3bPmHemFUneMH4vr09yaZKHzjHL+5PcluT6VdMemeSTSb4+/npsk1x/P34/r0tyRZJjZp1rf9lWPfeXSSrJo7vkSvLaca/dkOTvZpFlsKJufOj53cAbq+q3gacDr26Sa7XzgT3zDrHGu4BPVNVJwFNpki/JccDrgKWqOpnRBu/z5hjpIuCcNdPeDHyqqp4IfGr8eNYuYt9cnwROrqqnAP8NXDDrUGMXsW82khwPPBe4edaBxi5iTa4kz2Z0ZPZTqup3gLfPIsiQa9QtDz2vqluravf4/o8ZFc5x8011ryRbgRcA7513lhVJHgGcCbwPoKruqqofzjXUfW0GjkqyGdjCHPfzr6rPAT9YM/lFwAfH9z8IvHiWmWD9XFV1VVXdPX74BUbHSMzcfl4zgH8A3sQ6B9jNwn5y/QXwt1X18/E8t80iy5BFfRzwnVWP99KoEAGSnACcClw95yirvZPRL+f/zTnHak8Abgc+MB6SeW+So+cdCqCqbmG0VnMzcCvwv1V11XxT7eOxVXUrjFYUgMfMOc96/gz4+LxDrEhyLnBLVX153lnWeBLw+0muTvIfSX53Fj90yKKe6NDzeUnyMOAjwOur6kfzzgOQ5IXAbVW1a95Z1tgMnAa8p6pOBe5kPv++72M83vsi4PHArwNHJ3n5fFM9sCS5kNGQ4CXzzgKQZAtwIfA3886yjs3AsYyGTf8K+HCS9bpuqoYs6raHnic5glFJX1JVl887zypnAOcmuYnRUNG2JBfPNxIwei/3VtXKfx6XMSruDp4DfLuqbq+qXwCXA8+cc6a1vp/kcQDjrzP5d3kSSV4JvBB4WfU5qOI3Gf3h/fL4s7AV2J3k1+aaamQvcHmNfJHRf76Db+gcsqhbHno+/uv3PmBPVb1j3nlWq6oLqmprVZ3A6PX6dFXNfe2wqr4HfCfJieNJZwNfnWOk1W4Gnp5ky/i9PZsmGzpX+RjwyvH9VwL/Nscs90hyDvDXwLlV9dN551lRVV+pqsdU1Qnjz8Je4LTx7+G8fRTYBpDkScCRzOIsf1U12A14PqOtyd8ELhzyZx1ApmcxGoK5Drh2fHv+vHOtk/Ms4Mp551iV5xTgmvHr9lHg2HlnWpXtbcCNwPXAvwC/MscslzIaK/8Fo4J5FfAoRnt7fH389ZFNcn2D0Xaklc/BP3Z5zdY8fxPw6A65GBXzxePftd3Atllk8RBySWrOIxMlqTmLWpKas6glqTmLWpKas6glqTmLWg94SX6Z5NpVtxOSnNXp7IPSoZjkKuRSdz+rqlNWTxifx+WQJdlc9564SJoL16j1oDc+H/RHx+dd/kKSp2ww/a1JdiS5CvjnuYaXcI1aDw5HJbl2fP/bVfWHa55/G/Clqnpxkm2MyveU+5kO8DTgWVX1s6HDSxuxqPVgsM/QxxrPAv4IoKo+neRRSX71fqYDfMySVhcOfehwsL9T7t7fqXjvHC6OdGAsah0OPge8DCDJWcAdNToH+f6mS6049KHDwVsZXZ3mOuCn3HvK0f1Nl1rx7HmS1JxDH5LUnEUtSc1Z1JLUnEUtSc1Z1JLUnEUtSc1Z1JLU3P8DcoxWfia3MO8AAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "No customers in the elevator\n" + ] + } + ], + "source": [ + "Elevator_sim1 = MyElevator(0,8)\n", + "Elevator_sim1.user(user_list,False)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0., 2.],\n", + " [1., 2.],\n", + " [2., 1.],\n", + " [3., 1.],\n", + " [4., 2.],\n", + " [5., 2.],\n", + " [6., 1.],\n", + " [7., 1.],\n", + " [8., 1.]])" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Elevator_sim1.floors_visited #1. column = floor, 2. column = count visits" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "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.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/My Homeworks/elevator.ipynb b/My Homeworks/elevator.ipynb new file mode 100644 index 00000000..a2d7e550 --- /dev/null +++ b/My Homeworks/elevator.ipynb @@ -0,0 +1,655 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "6d7d0c1d-9bc9-4ee4-a310-5723b47e232f", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "import time\n", + "from itertools import chain" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "id": "f25c8cc4-f755-47dc-b1c0-201e7eba84ba", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nikit\\AppData\\Local\\Temp\\ipykernel_17856\\778509710.py:1: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dtype=object' when creating the ndarray.\n", + " np.array([[np.arange(0,9)],[np.zeros(8)]])\n" + ] + }, + { + "data": { + "text/plain": [ + "array([[array([0, 1, 2, 3, 4, 5, 6, 7, 8])],\n", + " [array([0., 0., 0., 0., 0., 0., 0., 0.])]], dtype=object)" + ] + }, + "execution_count": 36, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 40, + "id": "ed8b3e26-28a3-4548-932c-fe36a7542303", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0., 0.],\n", + " [1., 0.],\n", + " [2., 0.],\n", + " [3., 0.],\n", + " [4., 0.],\n", + " [5., 0.],\n", + " [6., 0.],\n", + " [7., 0.],\n", + " [8., 0.]])" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.column_stack((np.arange(0,9),np.zeros(9)))" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "id": "4613433f-f950-4724-b5ad-860cbfe321ae", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[('Aang', 5, 4),\n", + " ('Katara', 1, 0),\n", + " ('Sokka', 2, 3),\n", + " ('Zuko', 3, 5),\n", + " ('Toph', 2, 2),\n", + " ('Uncle Iroh', 3, 5),\n", + " ('Appa', 1, 8),\n", + " ('Momo', 7, 0),\n", + " ('Suki', 5, 2),\n", + " ('Azula', 1, 6)]" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "user_list=[]\n", + "for i in (\"Aang\",\"Katara\",\"Sokka\",\"Zuko\",\"Toph\",\"Uncle Iroh\",\"Appa\",\"Momo\",\"Suki\",\"Azula\"):\n", + " user_list.append((i,np.random.randint(0,9),np.random.randint(0,9)))\n", + "user_list" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "b555730c-f7b1-4935-a5d9-86fa3663b378", + "metadata": {}, + "outputs": [], + "source": [ + "class MyElevator:\n", + " def __init__(self,floors_min,floors_max):\n", + " self.n_floors = [floors_min,floors_max,floors_max-floors_min+1]\n", + " self.current_elev_floor = floors_min\n", + " #self.users = []\n", + " self.users_inelev = []\n", + " self.not_visited_floors = []\n", + " self.floors_visited = np.column_stack((np.arange(floors_min,floors_max+1),np.zeros(self.n_floors[-1])))\n", + " \n", + " \n", + " def user(self,customer, print_features = True, plot_fig = True):\n", + " for u in customer:\n", + " if len(u) != 3:\n", + " raise ValueError(\"object must be a list of tuples with 3 elements\")\n", + " \n", + " self.users = customer\n", + " \n", + " for u in self.users:\n", + " self.not_visited_floors.append((u[1],u[2]))\n", + " \n", + " if u[2] < self.n_floors[0] or u[2] > self.n_floors[1] or u[1] < self.n_floors[0] or u[1] > self.n_floors[1]:\n", + " raise ValueError(\"Hola my friend, you're travelling too far! The building has not yet that many floors!\")\n", + "\n", + " print(\"current floor: \" + str(Elevator_sim1.current_elev_floor))\n", + " print(f\"Not visited floors: {Elevator_sim1.not_visited_floors}\") \n", + " print(f\"Users: {Elevator_sim1.users}\")\n", + " print(f\"Users in elevator: {Elevator_sim1.users_inelev}\")\n", + " \n", + " x_rounds = []\n", + " xx = 0\n", + " y_levels = []\n", + " while len(self.not_visited_floors) > 0: \n", + " users_inelev_before = len(self.users_inelev)\n", + " xx += 1\n", + " \n", + " for a,user in enumerate(self.users): #put the user into elevator or remove if theay are leaving\n", + "\n", + " if user[0] not in self.users_inelev and user[1] == self.current_elev_floor:\n", + " self.users_inelev.append(user[0])\n", + " self.not_visited_floors[a] = [self.not_visited_floors[a][1]]\n", + " \n", + " #self.floors_visited[self.current_elev_floor,0] = self.current_elev_floor\n", + " #self.floors_visited[self.current_elev_floor,1] += 1\n", + " \n", + " elif user[0] in self.users_inelev and user[2] == self.current_elev_floor:\n", + " self.users_inelev.remove(user[0])\n", + " self.users.remove(user)\n", + " self.not_visited_floors.remove(self.not_visited_floors[a])\n", + " \n", + " #self.floors_visited[self.current_elev_floor,0] = self.current_elev_floor\n", + " #self.floors_visited[self.current_elev_floor,1] += 1\n", + " \n", + "\n", + " \n", + " if users_inelev_before != len(self.users_inelev):\n", + " self.floors_visited[self.current_elev_floor,1] += 1\n", + " time.sleep(2)\n", + " elif self.current_elev_floor != self.not_visited_floors[0][0]:\n", + " time.sleep(1)\n", + " \n", + " if print_features == True:\n", + " print(\"current floor: \" + str(Elevator_sim1.current_elev_floor))\n", + " print(f\"Not visited floors: {Elevator_sim1.not_visited_floors}\") \n", + " print(f\"Users: {Elevator_sim1.users}\")\n", + " print(f\"Users in elevator: {Elevator_sim1.users_inelev}\")\n", + " \n", + " if plot_fig == True:\n", + " x_rounds.append(xx)\n", + " y_levels.append(self.current_elev_floor)\n", + " #plt.figure()\n", + " plt.bar(x_rounds,y_levels, color=\"orange\")\n", + " plt.ylim([self.n_floors[0],self.n_floors[1]])\n", + " plt.xlabel(\"Floor\")\n", + " plt.show()\n", + " \n", + "\n", + " if len(self.not_visited_floors) == 0:\n", + " break\n", + " \n", + " if self.current_elev_floor < self.not_visited_floors[0][0]:\n", + " self.current_elev_floor += 1\n", + "\n", + " elif self.current_elev_floor > self.not_visited_floors[0][0]:\n", + " self.current_elev_floor -= 1\n", + " else:\n", + " continue\n", + "\n", + " \n", + " time.sleep(self.current_elev_floor)\n", + " self.current_elev_floor = 0\n", + " self.floors_visited[self.current_elev_floor,1] += 1\n", + " if plot_fig == True:\n", + " x_rounds.append(xx)\n", + " y_levels.append(self.current_elev_floor)\n", + " #plt.figure()\n", + " plt.bar(x_rounds,y_levels, color=\"orange\")\n", + " plt.ylim([self.n_floors[0],self.n_floors[1]])\n", + " plt.xlabel(\"Floor\")\n", + " plt.show()\n", + " print(\"No customers in the elevator\")\n", + " \n", + " # def add_user(self, customer):\n", + " # self.users = customer\n", + " # for u in self.users:\n", + " # self.not_visited_floors.append((u[1],u[2]))\n", + " \n", + "\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "id": "8575de1d-d8fa-49e7-b81d-d51219a82f59", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "current floor: 0\n", + "Not visited floors: [(5, 4), (1, 0), (2, 3), (3, 5), (2, 2), (3, 5), (1, 8), (7, 0), (5, 2), (1, 6)]\n", + "Users: [('Aang', 5, 4), ('Katara', 1, 0), ('Sokka', 2, 3), ('Zuko', 3, 5), ('Toph', 2, 2), ('Uncle Iroh', 3, 5), ('Appa', 1, 8), ('Momo', 7, 0), ('Suki', 5, 2), ('Azula', 1, 6)]\n", + "Users in elevator: []\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWoAAAEKCAYAAAA7LB+5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAANYklEQVR4nO3df6zddX3H8efLFgKtOJyeGUe5Q6OBGTIBTxiKIQzYAtOAZi4DJnHG5f7jDzAmBvcP+t/+MEb/MGY3iLJAMVpgI2RjGJEQk9mtLQyBQuaAYQFtiWGgkiHsvT/OKVxvb3u+Lfd7zoee5yO56b3f8733vE/aPvvt53zP+aaqkCS16zWzHkCSdGCGWpIaZ6glqXGGWpIaZ6glqXGGWpIa1ynUST6d5P4k9yW5IclRfQ8mSRqZGOokxwGfAoZVdTKwDri478EkSSNdlz7WA0cnWQ9sAJ7obyRJ0nLrJ+1QVY8n+SLwGPAccHtV3b5yvySLwCLAxo0b33XSSSet9aySdNjavn37U1U1WO22THoJeZLXAzcCfwE8DXwH2FJV1+3ve4bDYW3btu2QB5akeZNke1UNV7uty9LHecAjVbWnqn4N3AS8Zy0HlCTtX5dQPwackWRDkgDnAjv7HUuStNfEUFfVVmALsAP40fh7lnqeS5I0NvHJRICqugq4qudZJEmr8JWJktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjZsY6iQnJrln2cczSa6YwmySJDpcM7GqHgJOAUiyDngcuLnfsSRJex3s0se5wH9V1X/3MYwkaV8HG+qLgRv6GESStLrOoU5yJHAh8J393L6YZFuSbXv27Fmr+SRp7h3MEfUFwI6q+tlqN1bVUlUNq2o4GAzWZjpJ0kGF+hJc9pCkqesU6iQbgD8Gbup3HEnSShNPzwOoql8Bb+h5FknSKnxloiQ1zlBLUuMMtSQ1zlBLUuMMtSQ1zlBLUuMMtSQ1zlBLUuMMtSQ1zlBLUuMMtSQ1zlBLUuMMtSQ1zlBLUuMMtSQ1zlBLUuMMtSQ1zlBLUuMMtSQ1ruvFbY9NsiXJg0l2Jnl334NJkkY6XdwW+ApwW1V9KMmRwIYeZ5IkLTMx1EleB5wF/BVAVT0PPN/vWJKkvbosfbwV2AN8I8ndSa5OsnHlTkkWk2xLsm3Pnj1rPqgkzasuoV4PnAZ8rapOBX4JXLlyp6paqqphVQ0Hg8EajylJ86tLqHcBu6pq6/jrLYzCLUmagomhrqqfAj9JcuJ407nAA71OJUl6SdezPj4JXD8+4+Nh4KP9jSRJWq5TqKvqHmDY7yiSpNX4ykRJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGdboUV5JHgWeBF4EXqsrLcknSlHS9uC3AH1XVU71NIklalUsfktS4rkfUBdyepIC/q6qllTskWQQWARYWFtZuQqkvm9P/fVxa/d+HDntdj6jPrKrTgAuAjyc5a+UOVbVUVcOqGg4GgzUdUpLmWadQV9UT4193AzcDp/c5lCTpZRNDnWRjkmP2fg78CXBf34NJkka6rFG/Cbg5yd79N1fVbb1OJUl6ycRQV9XDwDunMIskaRWenidJjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktS4zqFOsi7J3Ulu7XMgSdJvOpgj6suBnX0NIklaXadQJ9kEvA+4ut9xJEkrTbwK+diXgc8Cx+xvhySLwCLAwsLCKx5Mc2Jz+r+PS6v/+zhY8/q4dUgmHlEneT+wu6q2H2i/qlqqqmFVDQeDwZoNKEnzrsvSx5nAhUkeBb4FnJPkul6nkiS9ZGKoq+pzVbWpqk4ALgbuqKoP9z6ZJAnwPGpJal7XJxMBqKo7gTt7mUSStCqPqCWpcYZakhpnqCWpcYZakhpnqCWpcYZakhpnqCWpcYZakhpnqCWpcYZakhpnqCWpcYZakhpnqCWpcYZakhpnqCWpcYZakhpnqCWpcYZakho3MdRJjkryb0n+I8n9Sb4wjcEkSSNdrpn4v8A5VfWLJEcAP0jyz1X1w55nkyTRIdRVVcAvxl8eMf6oPoeSJL2s01XIk6wDtgNvA75aVVtX2WcRWARYWFhYyxnVt83p/z4u9d/2Zvj7/arT6cnEqnqxqk4BNgGnJzl5lX2WqmpYVcPBYLDGY0rS/Dqosz6q6mngTuD8PoaRJO2ry1kfgyTHjj8/GjgPeLDnuSRJY13WqN8MXDtep34N8O2qurXfsSRJe3U56+Ne4NQpzCJJWoWvTJSkxhlqSWqcoZakxhlqSWqcoZakxhlqSWqcoZakxhlqSWqcoZakxhlqSWqcoZakxhlqSWqcoZakxhlqSWqcoZakxhlqSWqcoZakxhlqSWpcl4vbHp/k+0l2Jrk/yeXTGEySNNLl4rYvAJ+pqh1JjgG2J/luVT3Q82ySJDocUVfVk1W1Y/z5s8BO4Li+B5MkjXQ5on5JkhMYXZF86yq3LQKLAAsLC2sx23zZnP7v49Lq/z6kA/HP+SHp/GRiktcCNwJXVNUzK2+vqqWqGlbVcDAYrOWMkjTXOoU6yRGMIn19Vd3U70iSpOW6nPUR4OvAzqr6Uv8jSZKW63JEfSZwGXBOknvGH3/a81ySpLGJTyZW1Q+AKTwDIElaja9MlKTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJapyhlqTGGWpJalyXi9tek2R3kvumMZAk6Td1OaL+JnB+z3NIkvZjYqir6i7g51OYRZK0CteoJalx69fqByVZBBYBFhYW1urHTtfm9H8fl1b/9yFpX6/iv99rdkRdVUtVNayq4WAwWKsfK0lzz6UPSWpcl9PzbgD+FTgxya4kH+t/LEnSXhPXqKvqkmkMIklanUsfktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktQ4Qy1JjTPUktS4TqFOcn6Sh5L8OMmVfQ8lSXpZl6uQrwO+ClwAvAO4JMk7+h5MkjTS5Yj6dODHVfVwVT0PfAu4qN+xJEl7paoOvEPyIeD8qvrr8deXAX9YVZ9Ysd8isDj+8kTgobUftzlvBJ6a9RAzMK+PG+b3sfu4+/d7VTVY7Yb1Hb45q2zbp+5VtQQsHeRgr2pJtlXVcNZzTNu8Pm6Y38fu456tLksfu4Djl329CXiin3EkSSt1CfW/A29P8pYkRwIXA7f0O5Ykaa+JSx9V9UKSTwD/AqwDrqmq+3uf7NVhrpZ6lpnXxw3z+9h93DM08clESdJs+cpESWqcoZakxhnqQ5Dk+CTfT7Izyf1JLp/1TNOUZF2Su5PcOutZpiXJsUm2JHlw/Pv+7lnPNA1JPj3+M35fkhuSHDXrmfqQ5Joku5Pct2zbbyf5bpL/HP/6+lnNZ6gPzQvAZ6rq94EzgI/P2cvqLwd2znqIKfsKcFtVnQS8kzl4/EmOAz4FDKvqZEYnE1w826l6803g/BXbrgS+V1VvB743/nomDPUhqKonq2rH+PNnGf2lPW62U01Hkk3A+4CrZz3LtCR5HXAW8HWAqnq+qp6e6VDTsx44Osl6YAOH6Wsoquou4OcrNl8EXDv+/FrgA9OcaTlD/QolOQE4Fdg641Gm5cvAZ4H/m/Ec0/RWYA/wjfGSz9VJNs56qL5V1ePAF4HHgCeB/6mq22c71VS9qaqehNHBGfA7sxrEUL8CSV4L3AhcUVXPzHqeviV5P7C7qrbPepYpWw+cBnytqk4FfskM/xs8LeM12YuAtwC/C2xM8uHZTjWfDPUhSnIEo0hfX1U3zXqeKTkTuDDJo4zeRfGcJNfNdqSp2AXsqqq9/2vawijch7vzgEeqak9V/Rq4CXjPjGeapp8leTPA+NfdsxrEUB+CJGG0Xrmzqr4063mmpao+V1WbquoERk8q3VFVh/0RVlX9FPhJkhPHm84FHpjhSNPyGHBGkg3jP/PnMgdPoi5zC/CR8ecfAf5xVoN0efc87etM4DLgR0nuGW/7m6r6p9mNpJ59Erh+/H43DwMfnfE8vauqrUm2ADsYnel0N428pHqtJbkBOBt4Y5JdwFXA3wLfTvIxRv9o/fnM5vMl5JLUNpc+JKlxhlqSGmeoJalxhlqSGmeoJalxhlqvekleTHLPso8Tkpw9T+/up8Ob51HrcPBcVZ2yfMP4PVhesSTrq+qFtfhZ0qHyiFqHvfH7Cv9DknuT/DDJH0zY/vkkS0luB/5+psNLeEStw8PRy14h+khVfXDF7V8A7q6qDyQ5h1F8TznAdoB3Ae+tquf6Hl6axFDrcLDP0scK7wX+DKCq7kjyhiS/dYDtALcYabXCpQ/Ng6yyrQ6wHUZvZSo1wVBrHtwF/CVAkrOBp8bvH76/7VJTXPrQPPg8o6uz3Av8ipffunJ/26Wm+O55ktQ4lz4kqXGGWpIaZ6glqXGGWpIaZ6glqXGGWpIaZ6glqXH/D0/2EFhbMKspAAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "No customers in the elevator\n" + ] + } + ], + "source": [ + "Elevator_sim1 = MyElevator(0,8)\n", + "Elevator_sim1.user(user_list,False)" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "id": "1f7aa8d8-b583-4683-8d28-b7497a4b1977", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0., 2.],\n", + " [1., 1.],\n", + " [2., 2.],\n", + " [3., 1.],\n", + " [4., 1.],\n", + " [5., 2.],\n", + " [6., 1.],\n", + " [7., 1.],\n", + " [8., 1.]])" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Elevator_sim1.floors_visited" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "73aed6a1-c9a6-44b6-8846-c6acf9d9e5ad", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2122590b-9fb5-4b58-8f2a-8d3625e70606", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "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.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/Notebooks/Python_Basic/03_Functions.ipynb b/Notebooks/Python_Basic/03_Functions.ipynb index daed0e5f..56fa658c 100755 --- a/Notebooks/Python_Basic/03_Functions.ipynb +++ b/Notebooks/Python_Basic/03_Functions.ipynb @@ -666,13 +666,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "What is your name? Renato\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ + "What is your name? Renato\n", "How are you today, Renato ?\n" ] } @@ -866,13 +860,7 @@ "output_type": "stream", "text": [ "What is your weight? 74\n", - "How tall are you? 183\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ + "How tall are you? 183\n", "Your body mass index (BMI) is 22.096807907073963\n" ] } @@ -1506,7 +1494,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.10" + "version": "3.9.12" } }, "nbformat": 4, diff --git a/Notebooks/Python_Intermediate/09_Classes.ipynb b/Notebooks/Python_Intermediate/09_Classes.ipynb index f9bccfa1..1984c2c8 100755 --- a/Notebooks/Python_Intermediate/09_Classes.ipynb +++ b/Notebooks/Python_Intermediate/09_Classes.ipynb @@ -2519,7 +2519,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.2" + "version": "3.9.12" } }, "nbformat": 4, diff --git a/Notebooks/Python_Intermediate/10_Decorators.ipynb b/Notebooks/Python_Intermediate/10_Decorators.ipynb index 92976f4b..1c550854 100755 --- a/Notebooks/Python_Intermediate/10_Decorators.ipynb +++ b/Notebooks/Python_Intermediate/10_Decorators.ipynb @@ -1316,7 +1316,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.2" + "version": "3.9.12" } }, "nbformat": 4, diff --git a/Notebooks/Python_Intermediate/12_Unitary_Tests.ipynb b/Notebooks/Python_Intermediate/12_Unitary_Tests.ipynb index 604427b4..ae57c59c 100644 --- a/Notebooks/Python_Intermediate/12_Unitary_Tests.ipynb +++ b/Notebooks/Python_Intermediate/12_Unitary_Tests.ipynb @@ -648,7 +648,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.2" + "version": "3.9.12" } }, "nbformat": 4,