From f1c92a0cdb8390c014763e0964b110d01b2d3c7f Mon Sep 17 00:00:00 2001 From: Mariangel Date: Sat, 28 Aug 2021 17:25:52 -0400 Subject: [PATCH] lab ironhack for pull --- .../challenge-1-checkpoint.ipynb | 353 +++++++++ .../challenge-2-checkpoint.ipynb | 606 ++++++++++++++++ your-code/challenge-1.ipynb | 183 ++++- your-code/challenge-2.ipynb | 524 ++++++++++++-- your-code/challenge-3.ipynb | 673 +++++++++++++++++- 5 files changed, 2254 insertions(+), 85 deletions(-) create mode 100755 your-code/.ipynb_checkpoints/challenge-1-checkpoint.ipynb create mode 100755 your-code/.ipynb_checkpoints/challenge-2-checkpoint.ipynb mode change 100755 => 100644 your-code/challenge-1.ipynb mode change 100755 => 100644 your-code/challenge-2.ipynb mode change 100755 => 100644 your-code/challenge-3.ipynb diff --git a/your-code/.ipynb_checkpoints/challenge-1-checkpoint.ipynb b/your-code/.ipynb_checkpoints/challenge-1-checkpoint.ipynb new file mode 100755 index 0000000..b35408d --- /dev/null +++ b/your-code/.ipynb_checkpoints/challenge-1-checkpoint.ipynb @@ -0,0 +1,353 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 1: Tuples\n", + "\n", + "#### Do you know you can create tuples with only one element?\n", + "\n", + "**In the cell below, define a variable `tup` with a single element `\"I\"`.**\n", + "\n", + "*Hint: you need to add a comma (`,`) after the single element.*" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "# Your code here\n", + "tup = 'I'," + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Print the type of `tup`. \n", + "\n", + "Make sure its type is correct (i.e. *tuple* instead of *str*)." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "tuple" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Your code here\n", + "type(tup)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Now try to append the following elements to `tup`. \n", + "\n", + "Are you able to do it? Explain.\n", + "\n", + "```\n", + "\"r\", \"o\", \"n\", \"h\", \"a\", \"c\", \"k',\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "# Your code here\n", + "tup = ('I', 'r', 'n', 'h', 'a', 'c', 'k')\n", + "# Your explanation here\n", + "# tuples doesn't allow to add element since they are inmmutables" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### How about re-assign a new value to an existing tuple?\n", + "\n", + "Re-assign the following elements to `tup`. Are you able to do it? Explain.\n", + "\n", + "```\n", + "\"I\", \"r\", \"o\", \"n\", \"h\", \"a\", \"c\", \"k\"\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "# Your code here\n", + "tup = ('I', 'r', 'o', 'n', 'h', 'a', 'c', 'k')\n", + "# Your explanation here\n", + "# Yes, since we are not changing any element in the tuple, we are Re-assigning to the variable tup a new tuple " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Split `tup` into `tup1` and `tup2` with 4 elements in each. \n", + "\n", + "`tup1` should be `(\"I\", \"r\", \"o\", \"n\")` and `tup2` should be `(\"h\", \"a\", \"c\", \"k\")`.\n", + "\n", + "*Hint: use positive index numbers for `tup1` assignment and use negative index numbers for `tup2` assignment. Positive index numbers count from the beginning whereas negative index numbers count from the end of the sequence.*\n", + "\n", + "Also print `tup1` and `tup2`." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('I', 'r', 'o', 'n')\n", + "('h', 'a', 'c', 'k')\n" + ] + } + ], + "source": [ + "# Your code here\n", + "tup1 = tup[0:4]\n", + "tup2 = tup[-4:]\n", + "print(tup1)\n", + "print(tup2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Add `tup1` and `tup2` into `tup3` using the `+` operator.\n", + "\n", + "Then print `tup3` and check if `tup3` equals to `tup`." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('I', 'r', 'o', 'n', 'h', 'a', 'c', 'k')\n", + "yes\n" + ] + } + ], + "source": [ + "# Your code here\n", + "tup3 = tup1 + tup2\n", + "print(tup3)\n", + "\n", + "if tup3 == tup:\n", + " print('yes')\n", + "else:\n", + " print('no')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Count the number of elements in `tup1` and `tup2`. Then add the two counts together and check if the sum is the same as the number of elements in `tup3`" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "4\n", + "4\n", + "8\n", + "yes\n" + ] + } + ], + "source": [ + "# Your code here\n", + "print(len(tup1))\n", + "print(len(tup2))\n", + "counts = len(tup1) + len(tup2)\n", + "print(counts)\n", + "\n", + "if counts == len(tup3):\n", + " print('yes')\n", + "else:\n", + " print('false')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### What is the index number of `\"h\"` in `tup3`?" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'h'" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Your code here\n", + "tup3[4]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Now, use a FOR loop to check whether each letter in the following list is present in `tup3`:\n", + "\n", + "```\n", + "letters = [\"a\", \"b\", \"c\", \"d\", \"e\"]\n", + "```\n", + "\n", + "For each letter you check, print `True` if it is present in `tup3` otherwise print `False`.\n", + "\n", + "*Hint: you only need to loop `letters`. You don't need to loop `tup3` because there is a Python operator `in` you can use. See [reference](https://stackoverflow.com/questions/17920147/how-to-check-if-a-tuple-contains-an-element-in-python).*" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "True\n", + "False\n", + "True\n", + "False\n", + "False\n" + ] + } + ], + "source": [ + "# Your code here\n", + "letters = ['a', 'b', 'c', 'd', 'e']\n", + "\n", + "for letter in letters:\n", + " if letter in tup3:\n", + " print(True)\n", + " else:\n", + " print(False)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### How many times does each letter in `letters` appear in `tup3`?\n", + "\n", + "Print out the number of occurrence of each letter." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "# Your code here\n", + "count = 0\n", + "dictionary = {}\n", + "\n", + "for letter in letters:\n", + " if letter in tup3:\n", + " count += 1\n", + " dictionary[letter] = count" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'a': 1, 'c': 2}\n" + ] + } + ], + "source": [ + "print(dictionary)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/your-code/.ipynb_checkpoints/challenge-2-checkpoint.ipynb b/your-code/.ipynb_checkpoints/challenge-2-checkpoint.ipynb new file mode 100755 index 0000000..3c17d7a --- /dev/null +++ b/your-code/.ipynb_checkpoints/challenge-2-checkpoint.ipynb @@ -0,0 +1,606 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Challenge 2: Sets\n", + "\n", + "There are a lot to learn about Python Sets and the information presented in the lesson is limited due to its length. To learn Python Sets in depth you are strongly encouraged to review the W3Schools tutorial on [Python Sets Examples and Methods](https://www.w3schools.com/python/python_sets.asp) before you work on this lab. Some difficult questions in this lab have their solutions in the W3Schools tutorial.\n", + "\n", + "#### First, import the Python `random` libary" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import random" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### In the cell below, create a list named `sample_list_1` with 80 random values. \n", + "\n", + "Requirements:\n", + "\n", + "* Each value is an integer falling between 0 and 100.\n", + "* Each value in the list is unique.\n", + "\n", + "Print `sample_list_1` to review its values\n", + "\n", + "*Hint: use `random.sample` ([reference](https://docs.python.org/3/library/random.html#random.sample)).*" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "sample_list_1 = (random.sample(range(0,100), k=80))" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[89, 13, 15, 49, 41, 79, 94, 77, 11, 63, 91, 43, 65, 66, 82, 35, 36, 5, 33, 81, 21, 12, 54, 16, 98, 46, 62, 3, 37, 78, 17, 29, 76, 68, 60, 90, 22, 59, 75, 0, 50, 67, 61, 47, 69, 74, 31, 32, 9, 55, 48, 85, 8, 23, 95, 57, 30, 4, 26, 58, 38, 92, 80, 28, 24, 84, 97, 70, 96, 83, 64, 34, 72, 25, 1, 44, 51, 20, 10, 86]\n" + ] + } + ], + "source": [ + "print(sample_list_1)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "80" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(sample_list_1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Convert `sample_list_1` to a set called `set1`. Print the length of the set. Is its length still 80?" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# It is since sample_list_1 is of unique values, and set doesn't have repeated values\n", + "set1 = set(sample_list_1)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "80\n" + ] + } + ], + "source": [ + "print(len(set1))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Create another list named `sample_list_2` with 80 random values.\n", + "\n", + "Requirements:\n", + "\n", + "* Each value is an integer falling between 0 and 100.\n", + "* The values in the list don't have to be unique.\n", + "\n", + "*Hint: Use a FOR loop.*" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "# Your code here\n", + "sample_list_2 = []\n", + "\n", + "for i in random.choices(range(0,100), k=80):\n", + " sample_list_2.append(i)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[24, 7, 19, 91, 97, 57, 39, 56, 51, 28, 46, 37, 45, 86, 63, 75, 31, 53, 9, 30, 7, 58, 57, 11, 43, 54, 74, 57, 72, 9, 77, 27, 75, 7, 49, 5, 41, 98, 26, 51, 23, 95, 76, 65, 93, 64, 3, 47, 77, 84, 11, 14, 53, 64, 16, 85, 80, 12, 16, 60, 13, 70, 35, 85, 30, 91, 37, 70, 56, 44, 50, 66, 34, 45, 0, 7, 23, 16, 62, 26]\n" + ] + } + ], + "source": [ + "print(sample_list_2)" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "80" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(sample_list_2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Convert `sample_list_2` to a set called `set2`. Print the length of the set. Is its length still 80?" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "57\n" + ] + } + ], + "source": [ + "# Your code here\n", + "set2 = set(sample_list_2)\n", + "print(len(set2))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Identify the elements present in `set1` but not in `set2`. Assign the elements to a new set named `set3`." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{1, 4, 8, 10, 15, 17, 20, 21, 22, 25, 29, 32, 33, 36, 38, 48, 55, 59, 61, 67, 68, 69, 78, 79, 81, 82, 83, 89, 90, 92, 94, 96}\n" + ] + } + ], + "source": [ + "# Your code here\n", + "set3 = set1 - set2\n", + "print(set3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Identify the elements present in `set2` but not in `set1`. Assign the elements to a new set named `set4`." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Your code here\n", + "8 in set2" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "8 in set1" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Now Identify the elements shared between `set1` and `set2`. Assign the elements to a new set named `set5`." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{0, 3, 5, 9, 11, 12, 13, 16, 23, 24, 26, 28, 30, 31, 34, 35, 37, 41, 43, 44, 46, 47, 49, 50, 51, 54, 57, 58, 60, 62, 63, 64, 65, 66, 70, 72, 74, 75, 76, 77, 80, 84, 85, 86, 91, 95, 97, 98}\n" + ] + } + ], + "source": [ + "# Your code here\n", + "set5 = set1.intersection(set2)\n", + "print(set5)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "39 in set1" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "39 in set2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### What is the relationship among the following values:\n", + "\n", + "* len(set1)\n", + "* len(set2)\n", + "* len(set3)\n", + "* len(set4)\n", + "* len(set5)\n", + "\n", + "Use a math formular to represent that relationship. Test your formular with Python code." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "From venn diagram it is know that:\n", + "* (set1) U (set2) = (set1) + (set2) - (set1 ∩ set2)\n", + "* (set3) U (set4) U (set5) = (set3) + (set4) + (set5)\n", + "\n", + "In this case \n", + "(set1 ∩ set2) was already calculate and store in the variable set5\n", + "\n", + "\n", + "(set1) U (set2) = (set1) + (set2) - (set5) == (set3) + (set4) + (set5)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(set1) + len(set2) - len(set5) == len(set3) + len(set4) + len(set5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Create an empty set called `set6`." + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "# Your code here\n", + "set6 = set()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Add `set3` and `set5` to `set6` using the Python Set `update` method." + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{0, 1, 3, 4, 5, 8, 9, 10, 11, 12, 13, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 41, 43, 44, 46, 47, 48, 49, 50, 51, 54, 55, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 72, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 89, 90, 91, 92, 94, 95, 96, 97, 98}\n" + ] + } + ], + "source": [ + "# Your code here\n", + "set6.update(set3, set5)\n", + "print(set6)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Check if `set1` and `set6` are equal." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Your code here\n", + "set1 == set6" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Check if `set1` contains `set2` using the Python Set `issubset` method. Then check if `set1` contains `set3`.*" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Your code here\n", + "set2.issubset(set1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Using the Python Set `union` method, aggregate `set3`, `set4`, and `set5`. Then aggregate `set1` and `set2`. \n", + "\n", + "#### Check if the aggregated values are equal." + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Your code here\n", + "set3.issubset(set1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "set8 = set3.union(set4, set5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Using the `pop` method, remove the first element from `set1`." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [], + "source": [ + "# Your code here\n", + "set8 = set3.union(set4, set5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Remove every element in the following list from `set1` if they are present in the set. Print the remaining elements.\n", + "\n", + "```\n", + "list_to_remove = [1, 9, 11, 19, 21, 29, 31, 39, 41, 49, 51, 59, 61, 69, 71, 79, 81, 89, 91, 99]\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [], + "source": [ + "# Your code here\n", + "set9 = set1.union(set2)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/your-code/challenge-1.ipynb b/your-code/challenge-1.ipynb old mode 100755 new mode 100644 index 2e59d77..3cf57dc --- a/your-code/challenge-1.ipynb +++ b/your-code/challenge-1.ipynb @@ -15,11 +15,12 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ - "# Your code here\n" + "# Your code here\n", + "tup = 'I'," ] }, { @@ -33,11 +34,23 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "tuple" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "# Your code here\n", + "type(tup)\n" ] }, { @@ -55,13 +68,14 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# Your code here\n", - "\n", - "# Your explanation here\n" + "tup = ('I', 'r', 'n', 'h', 'a', 'c', 'k')\n", + "# Your explanation here\n", + "# tuples doesn't allow to add element since they are inmmutables" ] }, { @@ -79,13 +93,15 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# Your code here\n", + "tup = ('I', 'r', 'o', 'n', 'h', 'a', 'c', 'k')\n", "\n", - "# Your explanation here\n" + "# Your explanation here\n", + "# Yes, since we are not changing any element in the tuple, we are Re-assigning to the variable tup a new tuple " ] }, { @@ -103,11 +119,24 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('I', 'r', 'o', 'n')\n", + "('h', 'a', 'c', 'k')\n" + ] + } + ], "source": [ - "# Your code here\n" + "# Your code here\n", + "tup1 = tup[0:4]\n", + "tup2 = tup[-4:]\n", + "print(tup1)\n", + "print(tup2)" ] }, { @@ -121,11 +150,27 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "('I', 'r', 'o', 'n', 'h', 'a', 'c', 'k')\n", + "yes\n" + ] + } + ], "source": [ - "# Your code here\n" + "# Your code here\n", + "tup3 = tup1 + tup2\n", + "print(tup3)\n", + "\n", + "if tup3 == tup:\n", + " print('yes')\n", + "else:\n", + " print('no')" ] }, { @@ -137,11 +182,31 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "4\n", + "4\n", + "8\n", + "yes\n" + ] + } + ], "source": [ - "# Your code here\n" + "# Your code here\n", + "print(len(tup1))\n", + "print(len(tup2))\n", + "counts = len(tup1) + len(tup2)\n", + "print(counts)\n", + "\n", + "if counts == len(tup3):\n", + " print('yes')\n", + "else:\n", + " print('false')" ] }, { @@ -153,11 +218,23 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "'h'" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "# Your code here\n", + "tup3[4]" ] }, { @@ -177,11 +254,30 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "True\n", + "False\n", + "True\n", + "False\n", + "False\n" + ] + } + ], "source": [ - "# Your code here\n" + "# Your code here\n", + "letters = ['a', 'b', 'c', 'd', 'e']\n", + "\n", + "for letter in letters:\n", + " if letter in tup3:\n", + " print(True)\n", + " else:\n", + " print(False)" ] }, { @@ -195,12 +291,43 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "metadata": {}, "outputs": [], "source": [ - "# Your code here\n" + "# Your code here\n", + "count = 0\n", + "dictionary = {}\n", + "\n", + "for letter in letters:\n", + " if letter in tup3:\n", + " count += 1\n", + " dictionary[letter] = count" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'a': 1, 'c': 2}\n" + ] + } + ], + "source": [ + "print(dictionary)" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { @@ -219,7 +346,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.2" + "version": "3.8.8" } }, "nbformat": 4, diff --git a/your-code/challenge-2.ipynb b/your-code/challenge-2.ipynb old mode 100755 new mode 100644 index 41d6911..1286556 --- a/your-code/challenge-2.ipynb +++ b/your-code/challenge-2.ipynb @@ -13,7 +13,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -38,11 +38,48 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 52, "metadata": {}, "outputs": [], "source": [ - "# Your code here\n" + "sample_list_1 = (random.sample(range(0,100), k=80))" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[29, 98, 52, 86, 1, 42, 36, 34, 28, 27, 64, 13, 0, 31, 95, 62, 91, 67, 3, 89, 11, 60, 43, 87, 94, 80, 48, 82, 84, 24, 96, 35, 19, 92, 54, 75, 53, 41, 99, 38, 79, 47, 77, 50, 56, 16, 9, 33, 61, 44, 90, 20, 46, 74, 58, 10, 76, 32, 66, 45, 17, 26, 69, 71, 88, 18, 12, 59, 93, 70, 85, 4, 25, 73, 39, 68, 30, 72, 22, 97]\n" + ] + } + ], + "source": [ + "print(sample_list_1)" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "80" + ] + }, + "execution_count": 54, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(sample_list_1)" ] }, { @@ -54,11 +91,29 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 55, "metadata": {}, "outputs": [], "source": [ - "# Your code here\n" + "# It is since sample_list_1 is of unique values, and set doesn't have repeated values\n", + "set1 = set(sample_list_1)" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "80\n" + ] + } + ], + "source": [ + "print(len(set1))" ] }, { @@ -77,11 +132,51 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 57, "metadata": {}, "outputs": [], "source": [ - "# Your code here\n" + "sample_list_2 = []\n", + "\n", + "for i in random.choices(range(0,100), k=80):\n", + " sample_list_2.append(i)" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[89, 56, 17, 92, 69, 4, 75, 16, 94, 28, 9, 90, 12, 68, 62, 85, 34, 18, 58, 20, 8, 47, 63, 49, 90, 76, 23, 97, 24, 54, 58, 73, 95, 88, 11, 60, 35, 49, 92, 3, 93, 11, 44, 11, 31, 41, 48, 20, 46, 86, 77, 51, 21, 32, 52, 45, 7, 31, 1, 82, 55, 14, 4, 10, 10, 49, 37, 38, 23, 88, 19, 40, 42, 14, 33, 56, 2, 83, 95, 74]\n" + ] + } + ], + "source": [ + "print(sample_list_2)" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "80" + ] + }, + "execution_count": 59, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(sample_list_2)" ] }, { @@ -93,11 +188,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 60, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "64\n" + ] + } + ], "source": [ - "# Your code here\n" + "# Your code here\n", + "set2 = set(sample_list_2)\n", + "print(len(set2))" ] }, { @@ -109,11 +214,62 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 61, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{0, 13, 22, 25, 26, 27, 29, 30, 36, 39, 43, 50, 53, 59, 61, 64, 66, 67, 70, 71, 72, 79, 80, 84, 87, 91, 96, 98, 99}\n" + ] + } + ], + "source": [ + "set3 = set1 - set2\n", + "print(set3)" + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 62, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "7 in set2" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "7 in set1" ] }, { @@ -125,11 +281,62 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 64, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{2, 37, 7, 8, 40, 14, 49, 51, 83, 21, 55, 23, 63}\n" + ] + } + ], + "source": [ + "set4 = set2 - set1\n", + "print(set4)" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 65, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "34 in set1" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 66, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "34 in set2" ] }, { @@ -141,11 +348,60 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 67, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{1, 3, 4, 9, 10, 11, 12, 16, 17, 18, 19, 20, 24, 28, 31, 32, 33, 34, 35, 38, 41, 42, 44, 45, 46, 47, 48, 52, 54, 56, 58, 60, 62, 68, 69, 73, 74, 75, 76, 77, 82, 85, 86, 88, 89, 90, 92, 93, 94, 95, 97}\n" + ] + } + ], + "source": [ + "set5 = set1.intersection(set2)\n", + "print(set5)" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 68, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "1 in set1" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 69, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "1 in set2" ] }, { @@ -163,13 +419,39 @@ "Use a math formular to represent that relationship. Test your formular with Python code." ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "From venn diagram it is know that:\n", + "* (set1) U (set2) = (set1) + (set2) - (set1 ∩ set2)\n", + "* (set3) U (set4) U (set5) = (set3) + (set4) + (set5)\n", + "\n", + "In this case \n", + "(set1 ∩ set2) was already calculate and store in the variable set5\n", + "\n", + "\n", + "(set1) U (set2) = (set1) + (set2) - (set5) == (set3) + (set4) + (set5)" + ] + }, { "cell_type": "code", - "execution_count": null, + "execution_count": 70, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 70, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "len(set1) + len(set2) - len(set5) == len(set3) + len(set4) + len(set5)" ] }, { @@ -181,11 +463,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 71, "metadata": {}, "outputs": [], "source": [ - "# Your code here\n" + "set6 = set()" ] }, { @@ -197,11 +479,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 72, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{0, 1, 3, 4, 9, 10, 11, 12, 13, 16, 17, 18, 19, 20, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 39, 41, 42, 43, 44, 45, 46, 47, 48, 50, 52, 53, 54, 56, 58, 59, 60, 61, 62, 64, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 79, 80, 82, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99}\n" + ] + } + ], "source": [ - "# Your code here\n" + "set6.update(set3, set5)\n", + "print(set6)" ] }, { @@ -213,11 +504,23 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 73, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 73, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "# Your code here\n", + "set1 == set6" ] }, { @@ -229,11 +532,43 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 74, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 74, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Your code here\n", + "set2.issubset(set1)" + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 75, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "set3.issubset(set1)" ] }, { @@ -247,11 +582,40 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 76, + "metadata": {}, + "outputs": [], + "source": [ + "set8 = set3.union(set4, set5)" + ] + }, + { + "cell_type": "code", + "execution_count": 77, "metadata": {}, "outputs": [], "source": [ - "# Your code here\n" + "set9 = set1.union(set2)" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 78, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "set8 == set9" ] }, { @@ -263,11 +627,39 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 79, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{0, 1, 3, 4, 9, 10, 11, 12, 13, 16, 17, 18, 19, 20, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38, 39, 41, 42, 43, 44, 45, 46, 47, 48, 50, 52, 53, 54, 56, 58, 59, 60, 61, 62, 64, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 79, 80, 82, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99}\n" + ] + } + ], "source": [ - "# Your code here\n" + "print(set1)" + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 80, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "set1.pop()" ] }, { @@ -283,12 +675,60 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 81, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{3, 4, 10, 12, 13, 16, 17, 18, 19, 20, 22, 24, 25, 26, 27, 28, 30, 32, 33, 34, 35, 36, 38, 39, 42, 43, 44, 45, 46, 47, 48, 50, 52, 53, 54, 56, 58, 60, 62, 64, 66, 67, 68, 70, 72, 73, 74, 75, 76, 77, 80, 82, 84, 85, 86, 87, 88, 90, 92, 93, 94, 95, 96, 97, 98}\n" + ] + } + ], + "source": [ + "list_to_remove = [1, 9, 11, 21, 29, 31, 41, 49, 51, 59, 61, 69, 71, 79, 81, 89, 91, 99]\n", + "\n", + "\n", + "for i in list_to_remove: \n", + " if i in set1:\n", + " set1.remove(i)\n", + "print(set1)" + ] + }, + { + "cell_type": "code", + "execution_count": 82, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "65" + ] + }, + "execution_count": 82, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "len(set1)" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { @@ -307,7 +747,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.2" + "version": "3.8.8" } }, "nbformat": 4, diff --git a/your-code/challenge-3.ipynb b/your-code/challenge-3.ipynb old mode 100755 new mode 100644 index 7ab8ea5..aff4922 --- a/your-code/challenge-3.ipynb +++ b/your-code/challenge-3.ipynb @@ -15,13 +15,33 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "word_freq = {'love': 25, 'conversation': 1, 'every': 6, \"we're\": 1, 'plate': 1, 'sour': 1, 'jukebox': 1, 'now': 11, 'taxi': 1, 'fast': 1, 'bag': 1, 'man': 1, 'push': 3, 'baby': 14, 'going': 1, 'you': 16, \"don't\": 2, 'one': 1, 'mind': 2, 'backseat': 1, 'friends': 1, 'then': 3, 'know': 2, 'take': 1, 'play': 1, 'okay': 1, 'so': 2, 'begin': 1, 'start': 2, 'over': 1, 'body': 17, 'boy': 2, 'just': 1, 'we': 7, 'are': 1, 'girl': 2, 'tell': 1, 'singing': 2, 'drinking': 1, 'put': 3, 'our': 1, 'where': 1, \"i'll\": 1, 'all': 1, \"isn't\": 1, 'make': 1, 'lover': 1, 'get': 1, 'radio': 1, 'give': 1, \"i'm\": 23, 'like': 10, 'can': 1, 'doing': 2, 'with': 22, 'club': 1, 'come': 37, 'it': 1, 'somebody': 2, 'handmade': 2, 'out': 1, 'new': 6, 'room': 3, 'chance': 1, 'follow': 6, 'in': 27, 'may': 2, 'brand': 6, 'that': 2, 'magnet': 3, 'up': 3, 'first': 1, 'and': 23, 'pull': 3, 'of': 6, 'table': 1, 'much': 2, 'last': 3, 'i': 6, 'thrifty': 1, 'grab': 2, 'was': 2, 'driver': 1, 'slow': 1, 'dance': 1, 'the': 18, 'say': 2, 'trust': 1, 'family': 1, 'week': 1, 'date': 1, 'me': 10, 'do': 3, 'waist': 2, 'smell': 3, 'day': 6, 'although': 3, 'your': 21, 'leave': 1, 'want': 2, \"let's\": 2, 'lead': 6, 'at': 1, 'hand': 1, 'how': 1, 'talk': 4, 'not': 2, 'eat': 1, 'falling': 3, 'about': 1, 'story': 1, 'sweet': 1, 'best': 1, 'crazy': 2, 'let': 1, 'too': 5, 'van': 1, 'shots': 1, 'go': 2, 'to': 2, 'a': 8, 'my': 33, 'is': 5, 'place': 1, 'find': 1, 'shape': 6, 'on': 40, 'kiss': 1, 'were': 3, 'night': 3, 'heart': 3, 'for': 3, 'discovering': 6, 'something': 6, 'be': 16, 'bedsheets': 3, 'fill': 2, 'hours': 2, 'stop': 1, 'bar': 1}" ] }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "140" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(word_freq)" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -49,11 +69,252 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "keys1 = []\n", + "for k in word_freq.keys():\n", + " keys1.append(k)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "keys1 = sorted(keys1)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['a',\n", + " 'about',\n", + " 'all',\n", + " 'although',\n", + " 'and',\n", + " 'are',\n", + " 'at',\n", + " 'baby',\n", + " 'backseat',\n", + " 'bag',\n", + " 'bar',\n", + " 'be',\n", + " 'bedsheets',\n", + " 'begin',\n", + " 'best',\n", + " 'body',\n", + " 'boy',\n", + " 'brand',\n", + " 'can',\n", + " 'chance',\n", + " 'club',\n", + " 'come',\n", + " 'conversation',\n", + " 'crazy',\n", + " 'dance',\n", + " 'date',\n", + " 'day',\n", + " 'discovering',\n", + " 'do',\n", + " 'doing',\n", + " \"don't\",\n", + " 'drinking',\n", + " 'driver',\n", + " 'eat',\n", + " 'every',\n", + " 'falling',\n", + " 'family',\n", + " 'fast',\n", + " 'fill',\n", + " 'find',\n", + " 'first',\n", + " 'follow',\n", + " 'for',\n", + " 'friends',\n", + " 'get',\n", + " 'girl',\n", + " 'give',\n", + " 'go',\n", + " 'going',\n", + " 'grab',\n", + " 'hand',\n", + " 'handmade',\n", + " 'heart',\n", + " 'hours',\n", + " 'how',\n", + " 'i',\n", + " \"i'll\",\n", + " \"i'm\",\n", + " 'in',\n", + " 'is',\n", + " \"isn't\",\n", + " 'it',\n", + " 'jukebox',\n", + " 'just',\n", + " 'kiss',\n", + " 'know',\n", + " 'last',\n", + " 'lead',\n", + " 'leave',\n", + " 'let',\n", + " \"let's\",\n", + " 'like',\n", + " 'love',\n", + " 'lover',\n", + " 'magnet',\n", + " 'make',\n", + " 'man',\n", + " 'may',\n", + " 'me',\n", + " 'mind',\n", + " 'much',\n", + " 'my',\n", + " 'new',\n", + " 'night',\n", + " 'not',\n", + " 'now',\n", + " 'of',\n", + " 'okay',\n", + " 'on',\n", + " 'one',\n", + " 'our',\n", + " 'out',\n", + " 'over',\n", + " 'place',\n", + " 'plate',\n", + " 'play',\n", + " 'pull',\n", + " 'push',\n", + " 'put',\n", + " 'radio',\n", + " 'room',\n", + " 'say',\n", + " 'shape',\n", + " 'shots',\n", + " 'singing',\n", + " 'slow',\n", + " 'smell',\n", + " 'so',\n", + " 'somebody',\n", + " 'something',\n", + " 'sour',\n", + " 'start',\n", + " 'stop',\n", + " 'story',\n", + " 'sweet',\n", + " 'table',\n", + " 'take',\n", + " 'talk',\n", + " 'taxi',\n", + " 'tell',\n", + " 'that',\n", + " 'the',\n", + " 'then',\n", + " 'thrifty',\n", + " 'to',\n", + " 'too',\n", + " 'trust',\n", + " 'up',\n", + " 'van',\n", + " 'waist',\n", + " 'want',\n", + " 'was',\n", + " 'we',\n", + " \"we're\",\n", + " 'week',\n", + " 'were',\n", + " 'where',\n", + " 'with',\n", + " 'you',\n", + " 'your']" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "keys1" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict_keys(['love', 'conversation', 'every', \"we're\", 'plate', 'sour', 'jukebox', 'now', 'taxi', 'fast', 'bag', 'man', 'push', 'baby', 'going', 'you', \"don't\", 'one', 'mind', 'backseat', 'friends', 'then', 'know', 'take', 'play', 'okay', 'so', 'begin', 'start', 'over', 'body', 'boy', 'just', 'we', 'are', 'girl', 'tell', 'singing', 'drinking', 'put', 'our', 'where', \"i'll\", 'all', \"isn't\", 'make', 'lover', 'get', 'radio', 'give', \"i'm\", 'like', 'can', 'doing', 'with', 'club', 'come', 'it', 'somebody', 'handmade', 'out', 'new', 'room', 'chance', 'follow', 'in', 'may', 'brand', 'that', 'magnet', 'up', 'first', 'and', 'pull', 'of', 'table', 'much', 'last', 'i', 'thrifty', 'grab', 'was', 'driver', 'slow', 'dance', 'the', 'say', 'trust', 'family', 'week', 'date', 'me', 'do', 'waist', 'smell', 'day', 'although', 'your', 'leave', 'want', \"let's\", 'lead', 'at', 'hand', 'how', 'talk', 'not', 'eat', 'falling', 'about', 'story', 'sweet', 'best', 'crazy', 'let', 'too', 'van', 'shots', 'go', 'to', 'a', 'my', 'is', 'place', 'find', 'shape', 'on', 'kiss', 'were', 'night', 'heart', 'for', 'discovering', 'something', 'be', 'bedsheets', 'fill', 'hours', 'stop', 'bar'])" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "word_freq.keys()" + ] + }, + { + "cell_type": "code", + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ - "# Your code here\n" + "word_freq2 = {}\n", + "\n", + "for i in keys1:\n", + " for k, v in word_freq.items():\n", + " if i == k:\n", + " word_freq2[k] = v" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'a': 8, 'about': 1, 'all': 1, 'although': 3, 'and': 23, 'are': 1, 'at': 1, 'baby': 14, 'backseat': 1, 'bag': 1, 'bar': 1, 'be': 16, 'bedsheets': 3, 'begin': 1, 'best': 1, 'body': 17, 'boy': 2, 'brand': 6, 'can': 1, 'chance': 1, 'club': 1, 'come': 37, 'conversation': 1, 'crazy': 2, 'dance': 1, 'date': 1, 'day': 6, 'discovering': 6, 'do': 3, 'doing': 2, \"don't\": 2, 'drinking': 1, 'driver': 1, 'eat': 1, 'every': 6, 'falling': 3, 'family': 1, 'fast': 1, 'fill': 2, 'find': 1, 'first': 1, 'follow': 6, 'for': 3, 'friends': 1, 'get': 1, 'girl': 2, 'give': 1, 'go': 2, 'going': 1, 'grab': 2, 'hand': 1, 'handmade': 2, 'heart': 3, 'hours': 2, 'how': 1, 'i': 6, \"i'll\": 1, \"i'm\": 23, 'in': 27, 'is': 5, \"isn't\": 1, 'it': 1, 'jukebox': 1, 'just': 1, 'kiss': 1, 'know': 2, 'last': 3, 'lead': 6, 'leave': 1, 'let': 1, \"let's\": 2, 'like': 10, 'love': 25, 'lover': 1, 'magnet': 3, 'make': 1, 'man': 1, 'may': 2, 'me': 10, 'mind': 2, 'much': 2, 'my': 33, 'new': 6, 'night': 3, 'not': 2, 'now': 11, 'of': 6, 'okay': 1, 'on': 40, 'one': 1, 'our': 1, 'out': 1, 'over': 1, 'place': 1, 'plate': 1, 'play': 1, 'pull': 3, 'push': 3, 'put': 3, 'radio': 1, 'room': 3, 'say': 2, 'shape': 6, 'shots': 1, 'singing': 2, 'slow': 1, 'smell': 3, 'so': 2, 'somebody': 2, 'something': 6, 'sour': 1, 'start': 2, 'stop': 1, 'story': 1, 'sweet': 1, 'table': 1, 'take': 1, 'talk': 4, 'taxi': 1, 'tell': 1, 'that': 2, 'the': 18, 'then': 3, 'thrifty': 1, 'to': 2, 'too': 5, 'trust': 1, 'up': 3, 'van': 1, 'waist': 2, 'want': 2, 'was': 2, 'we': 7, \"we're\": 1, 'week': 1, 'were': 3, 'where': 1, 'with': 22, 'you': 16, 'your': 21}\n" + ] + } + ], + "source": [ + "print(word_freq2)" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "140" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(word_freq2)" ] }, { @@ -90,11 +351,50 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[('conversation', 1), (\"we're\", 1), ('plate', 1), ('sour', 1), ('jukebox', 1), ('taxi', 1), ('fast', 1), ('bag', 1), ('man', 1), ('going', 1), ('one', 1), ('backseat', 1), ('friends', 1), ('take', 1), ('play', 1), ('okay', 1), ('begin', 1), ('over', 1), ('just', 1), ('are', 1), ('tell', 1), ('drinking', 1), ('our', 1), ('where', 1), (\"i'll\", 1), ('all', 1), (\"isn't\", 1), ('make', 1), ('lover', 1), ('get', 1), ('radio', 1), ('give', 1), ('can', 1), ('club', 1), ('it', 1), ('out', 1), ('chance', 1), ('first', 1), ('table', 1), ('thrifty', 1), ('driver', 1), ('slow', 1), ('dance', 1), ('trust', 1), ('family', 1), ('week', 1), ('date', 1), ('leave', 1), ('at', 1), ('hand', 1), ('how', 1), ('eat', 1), ('about', 1), ('story', 1), ('sweet', 1), ('best', 1), ('let', 1), ('van', 1), ('shots', 1), ('place', 1), ('find', 1), ('kiss', 1), ('stop', 1), ('bar', 1), (\"don't\", 2), ('mind', 2), ('know', 2), ('so', 2), ('start', 2), ('boy', 2), ('girl', 2), ('singing', 2), ('doing', 2), ('somebody', 2), ('handmade', 2), ('may', 2), ('that', 2), ('much', 2), ('grab', 2), ('was', 2), ('say', 2), ('waist', 2), ('want', 2), (\"let's\", 2), ('not', 2), ('crazy', 2), ('go', 2), ('to', 2), ('fill', 2), ('hours', 2), ('push', 3), ('then', 3), ('put', 3), ('room', 3), ('magnet', 3), ('up', 3), ('pull', 3), ('last', 3), ('do', 3), ('smell', 3), ('although', 3), ('falling', 3), ('were', 3), ('night', 3), ('heart', 3), ('for', 3), ('bedsheets', 3), ('talk', 4), ('too', 5), ('is', 5), ('every', 6), ('new', 6), ('follow', 6), ('brand', 6), ('of', 6), ('i', 6), ('day', 6), ('lead', 6), ('shape', 6), ('discovering', 6), ('something', 6), ('we', 7), ('a', 8), ('like', 10), ('me', 10), ('now', 11), ('baby', 14), ('you', 16), ('be', 16), ('body', 17), ('the', 18), ('your', 21), ('with', 22), (\"i'm\", 23), ('and', 23), ('love', 25), ('in', 27), ('my', 33), ('come', 37), ('on', 40)]\n" + ] + } + ], + "source": [ + "# Your code here\n", + "import operator\n", + "sorted_tups = sorted(word_freq.items(), key=operator.itemgetter(1))\n", + "print(sorted_tups)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ - "# Your code here\n" + "word_freq2 = {}\n", + "for i in sorted_tups:\n", + " word_freq2[i[0]] = i[1] " + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'conversation': 1, \"we're\": 1, 'plate': 1, 'sour': 1, 'jukebox': 1, 'taxi': 1, 'fast': 1, 'bag': 1, 'man': 1, 'going': 1, 'one': 1, 'backseat': 1, 'friends': 1, 'take': 1, 'play': 1, 'okay': 1, 'begin': 1, 'over': 1, 'just': 1, 'are': 1, 'tell': 1, 'drinking': 1, 'our': 1, 'where': 1, \"i'll\": 1, 'all': 1, \"isn't\": 1, 'make': 1, 'lover': 1, 'get': 1, 'radio': 1, 'give': 1, 'can': 1, 'club': 1, 'it': 1, 'out': 1, 'chance': 1, 'first': 1, 'table': 1, 'thrifty': 1, 'driver': 1, 'slow': 1, 'dance': 1, 'trust': 1, 'family': 1, 'week': 1, 'date': 1, 'leave': 1, 'at': 1, 'hand': 1, 'how': 1, 'eat': 1, 'about': 1, 'story': 1, 'sweet': 1, 'best': 1, 'let': 1, 'van': 1, 'shots': 1, 'place': 1, 'find': 1, 'kiss': 1, 'stop': 1, 'bar': 1, \"don't\": 2, 'mind': 2, 'know': 2, 'so': 2, 'start': 2, 'boy': 2, 'girl': 2, 'singing': 2, 'doing': 2, 'somebody': 2, 'handmade': 2, 'may': 2, 'that': 2, 'much': 2, 'grab': 2, 'was': 2, 'say': 2, 'waist': 2, 'want': 2, \"let's\": 2, 'not': 2, 'crazy': 2, 'go': 2, 'to': 2, 'fill': 2, 'hours': 2, 'push': 3, 'then': 3, 'put': 3, 'room': 3, 'magnet': 3, 'up': 3, 'pull': 3, 'last': 3, 'do': 3, 'smell': 3, 'although': 3, 'falling': 3, 'were': 3, 'night': 3, 'heart': 3, 'for': 3, 'bedsheets': 3, 'talk': 4, 'too': 5, 'is': 5, 'every': 6, 'new': 6, 'follow': 6, 'brand': 6, 'of': 6, 'i': 6, 'day': 6, 'lead': 6, 'shape': 6, 'discovering': 6, 'something': 6, 'we': 7, 'a': 8, 'like': 10, 'me': 10, 'now': 11, 'baby': 14, 'you': 16, 'be': 16, 'body': 17, 'the': 18, 'your': 21, 'with': 22, \"i'm\": 23, 'and': 23, 'love': 25, 'in': 27, 'my': 33, 'come': 37, 'on': 40}\n" + ] + } + ], + "source": [ + "print(word_freq2)" ] }, { @@ -110,7 +410,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 14, "metadata": {}, "outputs": [], "source": [ @@ -132,11 +432,129 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "metadata": {}, "outputs": [], "source": [ - "# Your code here\n" + "# Your code here\n", + "df = pd.DataFrame(word_freq.items(), columns = ['word', 'freq'])" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
wordfreq
0love25
1conversation1
2every6
3we're1
4plate1
.........
135bedsheets3
136fill2
137hours2
138stop1
139bar1
\n", + "

140 rows × 2 columns

\n", + "
" + ], + "text/plain": [ + " word freq\n", + "0 love 25\n", + "1 conversation 1\n", + "2 every 6\n", + "3 we're 1\n", + "4 plate 1\n", + ".. ... ...\n", + "135 bedsheets 3\n", + "136 fill 2\n", + "137 hours 2\n", + "138 stop 1\n", + "139 bar 1\n", + "\n", + "[140 rows x 2 columns]" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" ] }, { @@ -150,11 +568,120 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 17, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
wordfreq
120a8
109about1
43all1
96although3
72and23
.........
128were3
41where1
54with22
15you16
97your21
\n", + "

140 rows × 2 columns

\n", + "
" + ], + "text/plain": [ + " word freq\n", + "120 a 8\n", + "109 about 1\n", + "43 all 1\n", + "96 although 3\n", + "72 and 23\n", + ".. ... ...\n", + "128 were 3\n", + "41 where 1\n", + "54 with 22\n", + "15 you 16\n", + "97 your 21\n", + "\n", + "[140 rows x 2 columns]" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "# Your code here\n", + "df.sort_values(by=['word'], ascending=True)" ] }, { @@ -166,12 +693,128 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 18, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
wordfreq
139bar1
114let1
116van1
60out1
57it1
.........
0love25
65in27
121my33
56come37
126on40
\n", + "

140 rows × 2 columns

\n", + "
" + ], + "text/plain": [ + " word freq\n", + "139 bar 1\n", + "114 let 1\n", + "116 van 1\n", + "60 out 1\n", + "57 it 1\n", + ".. ... ...\n", + "0 love 25\n", + "65 in 27\n", + "121 my 33\n", + "56 come 37\n", + "126 on 40\n", + "\n", + "[140 rows x 2 columns]" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "# Your code here\n" + "# Your code here\n", + "df.sort_values(by=['freq'], ascending=True)" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { @@ -190,7 +833,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.2" + "version": "3.8.8" } }, "nbformat": 4,