{
  "cells": [
    {
      "cell_type": "markdown",
      "id": "2a5ff1be-2da3-4ce2-9a6c-9f171f1ff6c1",
      "metadata": {
        "id": "2a5ff1be-2da3-4ce2-9a6c-9f171f1ff6c1"
      },
      "source": [
        "# DS 122 Homework 1\n",
        "\n",
        "### You can download the python notebook for this pdf from https://drive.google.com/file/d/1T7EBmSNzn2JP99nqHMduJH-wiIEPXTtG/view?usp=sharing\n",
        "\n",
        "**Due Sep., 20th**\n",
        "\n",
        "**Full credit is 87 points (With Bonus Question: 92 Points)**\n",
        "\n",
        "**Name: Xiang Fu**\n",
        "\n",
        "**BUID: U69445651**\n",
        "\n",
        "Most homeworks will involve “analytical” questions, and many will involve “computational” questions. This homework involves analytical and computational questions.\n",
        "\n",
        "**NOTE**\n",
        "\n",
        "- It is advised not to use ChatGPT or any other LLM to complete the homeworks and try the questions on your own unless otherwise stated in the question.\n",
        "\n",
        "- Try to answer the questions in detail, In case you do not get the correct answer, we will take into consideration the steps (process you take to solve the question) which will help you in getting partial points.\n",
        "\n",
        "- Please note unless otherwise mentioned, leaving the answer in fractional format is completely alright. Do not worry about accuracy of the decimal answers.\n",
        "\n",
        "- Coding questions might seem a little daunting at first but if you go through them you will notice that a lot of answers are directly available in the notebook. It is more for your understanding than for testing, if you are unable to find a solution at first please try reading up the documentation and your class notes. We are always available during our office hours in case you have doubts regarding a topic.\n",
        "\n",
        "- To make things clear to the grader, you MUST draw a box around your answer. Questions whose answers are not boxed will lose points. To put a box around your answer in LATEX use \\fbox{} or \\boxed{}.\n",
        "\n",
        "**SUBMISSION GUIDELINES**\n",
        "\n",
        "- You are free to write your solutions to math problems on paper and upload scanned copies as PDF. If you wish to type your solutions, I would suggest using Latex to write mathematical equations, you can use https://www.overleaf.com/ to create free latex documents.\n",
        "\n",
        "- For coding questions, please edit the jupyter notebook itself in the space provided to input your answer. You can choose to create a new cell to enter your code so as to not lose the sample output.\n",
        "\n",
        "- Final submissions should contain both your code (Jupyter Notebook) as well as mathematical files (Scanned or Typed PDF). You can select more than one file while uploading during submission. Please try to use the following naming convention for your submissions **{FirstName}\\_\\{LastName}\\_\\{BUID}\\_\\{analytical/computational}.zip**\n",
        "\n",
        "- Steps to Submit\n",
        "    - Write your answers to the mathematical questions on a paper or on Latex Editor\n",
        "    - If you wrote them on a paper, scan them as pdf or else save the pdf from the Latex Editor\n",
        "    - Download the Python notebook and complete the coding questions\n",
        "    - Copy content from the question cell to a new cell and write your answer\n",
        "    - Press Shift + Enter to run the cell and see if the output matches the sample output\n",
        "    - Once you have completed all the coding questions save the notebook with the prescribed name\n",
        "    - Submit both the files on gradescope (PDF and Jupyter Notebook)\n",
        "\n"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "e1af25b2-fa7b-4b1c-9ec2-dd56053dc4ff",
      "metadata": {
        "id": "e1af25b2-fa7b-4b1c-9ec2-dd56053dc4ff"
      },
      "source": [
        "## Analytical"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "3115967f-032b-446d-a293-97be8d40e862",
      "metadata": {
        "id": "3115967f-032b-446d-a293-97be8d40e862"
      },
      "source": [
        "**Problem A - 5 points**\n",
        "\n",
        "Consider a wooden cube with painted faces that is sawed up into 27 smaller equal-sized cubes. If one of these small cubes is chosen at random, what is the probability that it has exactly 3 painted faces?\n",
        "\n",
        "---"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "a7433e86-0b4a-4007-a91a-d6f078204601",
      "metadata": {
        "id": "a7433e86-0b4a-4007-a91a-d6f078204601"
      },
      "source": [
        "**Problem B - 5 points**\n",
        "\n",
        "In a penalty shootout, two footballers, Player X and Player Y, are known for their precision. Player X has an 85% probability of scoring a goal, while Player Y has a 80% probability. If both players take a shot one after the other, what is the probability that at least one of them scores?\n",
        "\n",
        "---"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "71a93a8c-e82e-4ffa-937b-140d00de7761",
      "metadata": {
        "id": "71a93a8c-e82e-4ffa-937b-140d00de7761"
      },
      "source": [
        "**Problem C - 5 points**\n",
        "\n",
        "In a carnival game, players throw balls at a wall with five differently shaped targets (Please note that a throw will either hit one of the shapes or miss completely, there is no other possiblity). The probabilities of **not hitting** each of these shapes are:\n",
        "\n",
        "- Star: 0.68\n",
        "- Triangle: 0.95\n",
        "- Square: 0.90\n",
        "- Circle: 0.80\n",
        "- Pentagon: 0.81\n",
        "\n",
        "Given that the **outcomes for each shape are independent**, what is the probability that a player's shot does not hit any of the shapes?\n",
        "\n",
        "---"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "47f557b0-f187-4847-8733-f48c37d30145",
      "metadata": {
        "id": "47f557b0-f187-4847-8733-f48c37d30145"
      },
      "source": [
        "**Problem D - 30 points (35 with Bonus)**\n",
        "\n",
        "**Premise:**\n",
        "\n",
        "You and your friend are sitting in the CDS building waiting for your next class. Your friend is bored and suggests playing a game where you roll two six-sided dice, You win if the sum of the two dice equals 7.\n",
        "\n",
        "**Part a - 5 points**\n",
        "\n",
        "If you decide to play the game just once, what is the probability that you win?\n",
        "\n",
        "**Part b - 5 points**\n",
        "\n",
        "If you play the game three times in a row and don't remember your previous rolls, what is the probability you win at least once?\n",
        "\n",
        "**Part c - 5 points**\n",
        "\n",
        "If you play 4 games, what is the probability you win exactly twice, given the probability of winning a single game as found in Part a?\n",
        "\n",
        "**Part d - 5 points**\n",
        "\n",
        "What is the expected number of games you will play before you win?\n",
        "\n",
        "**Part e - 10 points**\n",
        "\n",
        "Your friend now proposes a twist. If either dice shows a 1, you automatically lose, regardless of the sum. Calculate the probability of winning in this new scenario for a single game.\n",
        "\n",
        "**Part f - 5 points (Bonus Question - Optional)**\n",
        "\n",
        "You and your friend decide to further tweak the rules. Now, if the first dice shows a 1, you lose, but if the second dice shows a 6, you automatically win, regardless of the sum. Find the probability that you win the game in this new scenario.\n",
        "\n",
        "---"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "65b85b38-bda7-4876-b871-7dcceaf34b30",
      "metadata": {
        "id": "65b85b38-bda7-4876-b871-7dcceaf34b30"
      },
      "source": [
        "**Problem E - 10 points**\n",
        "\n",
        "Imagine you're Batman and the overall rate of individuals having committed a crime (let's denote this as event A) in Gotham is P(A)\n",
        "\n",
        "There's a certain marker, a unique tattoo (let's denote this as event B), which has been found common among many criminals. You observed that among the individuals with this tattoo, the probability of them having committed a crime is P(A | B) and this is higher than P(A)\n",
        "\n",
        "P(A) = 0.4\n",
        "\n",
        "P(B) = 0.3\n",
        "\n",
        "P(A | B) = 0.5\n",
        "\n",
        "Using the given probabilities and the definition of conditional probability, determine the exact value of P(B|A). Compare it to the value of P(B), is there any relation you find between P(B|A) and P(B) (Greater than, Lesser than, Equal to)\n",
        "\n",
        "---"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "8b612a28-f15f-48ff-9ceb-92c5eefe76dd",
      "metadata": {
        "id": "8b612a28-f15f-48ff-9ceb-92c5eefe76dd"
      },
      "source": [
        "**Problem G - 5 points**\n",
        "\n",
        "Consider a radioactive source emitting alpha particles at\n",
        "          an average rate of 4 particles per second. What is the probability that in a particular one-second interval, less than two particles are emitted?"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "dcb453bb-c759-4f1f-9469-ecebaddecd5a",
      "metadata": {
        "id": "dcb453bb-c759-4f1f-9469-ecebaddecd5a"
      },
      "source": [
        "**Problem H - 5 Points**\n",
        "\n",
        "Consider the following joint probability table for two random variables, \\(X\\) and \\(Y\\):\n",
        "\n",
        "|         | Y = 1 | Y = 2 |\n",
        "|---------|-------|-------|\n",
        "| X = 1   | 0.2   | 0.3   |\n",
        "| X = 2   | 0.1   | 0.4   |\n",
        "\n",
        "What is the marginal probability \\(P(Y = 1)\\)?"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "f039bb78-5200-4bce-bdd3-f04f68fe344e",
      "metadata": {
        "id": "f039bb78-5200-4bce-bdd3-f04f68fe344e"
      },
      "source": [
        "## Computational\n",
        "\n",
        "- Add your answers in the same cell as the code or add another cell by copy pasting the existing cell\n",
        "- Outputs from the answer key have been left as they are for your reference. My personal suggestion would be to create a new cell with the same code copied and make sure that the output coming is the same."
      ]
    },
    {
      "cell_type": "markdown",
      "id": "64b58f42-cc0e-4211-bf19-e23c9192b782",
      "metadata": {
        "id": "64b58f42-cc0e-4211-bf19-e23c9192b782"
      },
      "source": [
        "**Problem I - 0 points**\n",
        "\n",
        "Install Python 3 and NumPy package on the computer you will use for this\n",
        "  course.    Read the document ``Getting\n",
        "  Started with Python'' on Piazza.\n",
        "  https://numpy.org/install/"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "6f910e5f-7d3e-4df7-8242-14c867597abb",
      "metadata": {
        "id": "6f910e5f-7d3e-4df7-8242-14c867597abb"
      },
      "source": [
        "**Problem J - 2 points**\n",
        "\n",
        "Verify that NumPy is installed correctly:  \n",
        "\n",
        "execute\n",
        "\n",
        "$$\\texttt{import numpy as np;}$$\n",
        "$$\\texttt{A = np.array([1, 2, 3])};$$\n",
        "$$\\texttt{print(np.sum(A))}$$\n",
        "\n",
        "Cut and paste the input and output from your Python interpreter."
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "import numpy as np\n",
        "\n",
        "A = np.array([1, 2, 3])\n",
        "print(np.sum(A))\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "DOn5vT6jrZ0s",
        "outputId": "a5b436d2-76bd-48af-825b-aa9b3e3152b2"
      },
      "id": "DOn5vT6jrZ0s",
      "execution_count": 1,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "6\n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "id": "40ea5244-9828-4e4a-8a7f-fe20de9d2829",
      "metadata": {
        "id": "40ea5244-9828-4e4a-8a7f-fe20de9d2829"
      },
      "source": [
        "**Problem K - 10 points**\n",
        "\n",
        "Now we will use some of the skills we have learned to examine the attritubtes of professional baseball players. Read in ’hwk01 mlb.csv’ (https://drive.google.com/file/d/1AioLAfFQF7cXig7MdlBZ_bnAbkjpwCcP/view?usp=sharing) and fill in the code to compute a CDF of the players ages using no built-in functions of NumPy other than sort. Plot the resulting CDF.\n",
        "\n",
        "Complete the blanks wherever given as TODO"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 2,
      "id": "ba588294-30a8-4af3-96ee-b964d59dcad2",
      "metadata": {
        "id": "ba588294-30a8-4af3-96ee-b964d59dcad2"
      },
      "outputs": [],
      "source": [
        "# importing libraries\n",
        "import pandas as pd # TODO Import pandas with the alias pd\n",
        "import matplotlib.pyplot as plt\n",
        "import numpy as np"
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "from google.colab import files\n",
        "\n",
        "# Upload the CSV file\n",
        "uploaded = files.upload()"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 76
        },
        "id": "zSneWYlltH4N",
        "outputId": "0052538c-50ec-44fb-ebd8-19cb4c4cfc47"
      },
      "id": "zSneWYlltH4N",
      "execution_count": 3,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<IPython.core.display.HTML object>"
            ],
            "text/html": [
              "\n",
              "     <input type=\"file\" id=\"files-343226d7-b627-4172-b0da-45b472916456\" name=\"files[]\" multiple disabled\n",
              "        style=\"border:none\" />\n",
              "     <output id=\"result-343226d7-b627-4172-b0da-45b472916456\">\n",
              "      Upload widget is only available when the cell has been executed in the\n",
              "      current browser session. Please rerun this cell to enable.\n",
              "      </output>\n",
              "      <script>// Copyright 2017 Google LLC\n",
              "//\n",
              "// Licensed under the Apache License, Version 2.0 (the \"License\");\n",
              "// you may not use this file except in compliance with the License.\n",
              "// You may obtain a copy of the License at\n",
              "//\n",
              "//      http://www.apache.org/licenses/LICENSE-2.0\n",
              "//\n",
              "// Unless required by applicable law or agreed to in writing, software\n",
              "// distributed under the License is distributed on an \"AS IS\" BASIS,\n",
              "// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n",
              "// See the License for the specific language governing permissions and\n",
              "// limitations under the License.\n",
              "\n",
              "/**\n",
              " * @fileoverview Helpers for google.colab Python module.\n",
              " */\n",
              "(function(scope) {\n",
              "function span(text, styleAttributes = {}) {\n",
              "  const element = document.createElement('span');\n",
              "  element.textContent = text;\n",
              "  for (const key of Object.keys(styleAttributes)) {\n",
              "    element.style[key] = styleAttributes[key];\n",
              "  }\n",
              "  return element;\n",
              "}\n",
              "\n",
              "// Max number of bytes which will be uploaded at a time.\n",
              "const MAX_PAYLOAD_SIZE = 100 * 1024;\n",
              "\n",
              "function _uploadFiles(inputId, outputId) {\n",
              "  const steps = uploadFilesStep(inputId, outputId);\n",
              "  const outputElement = document.getElementById(outputId);\n",
              "  // Cache steps on the outputElement to make it available for the next call\n",
              "  // to uploadFilesContinue from Python.\n",
              "  outputElement.steps = steps;\n",
              "\n",
              "  return _uploadFilesContinue(outputId);\n",
              "}\n",
              "\n",
              "// This is roughly an async generator (not supported in the browser yet),\n",
              "// where there are multiple asynchronous steps and the Python side is going\n",
              "// to poll for completion of each step.\n",
              "// This uses a Promise to block the python side on completion of each step,\n",
              "// then passes the result of the previous step as the input to the next step.\n",
              "function _uploadFilesContinue(outputId) {\n",
              "  const outputElement = document.getElementById(outputId);\n",
              "  const steps = outputElement.steps;\n",
              "\n",
              "  const next = steps.next(outputElement.lastPromiseValue);\n",
              "  return Promise.resolve(next.value.promise).then((value) => {\n",
              "    // Cache the last promise value to make it available to the next\n",
              "    // step of the generator.\n",
              "    outputElement.lastPromiseValue = value;\n",
              "    return next.value.response;\n",
              "  });\n",
              "}\n",
              "\n",
              "/**\n",
              " * Generator function which is called between each async step of the upload\n",
              " * process.\n",
              " * @param {string} inputId Element ID of the input file picker element.\n",
              " * @param {string} outputId Element ID of the output display.\n",
              " * @return {!Iterable<!Object>} Iterable of next steps.\n",
              " */\n",
              "function* uploadFilesStep(inputId, outputId) {\n",
              "  const inputElement = document.getElementById(inputId);\n",
              "  inputElement.disabled = false;\n",
              "\n",
              "  const outputElement = document.getElementById(outputId);\n",
              "  outputElement.innerHTML = '';\n",
              "\n",
              "  const pickedPromise = new Promise((resolve) => {\n",
              "    inputElement.addEventListener('change', (e) => {\n",
              "      resolve(e.target.files);\n",
              "    });\n",
              "  });\n",
              "\n",
              "  const cancel = document.createElement('button');\n",
              "  inputElement.parentElement.appendChild(cancel);\n",
              "  cancel.textContent = 'Cancel upload';\n",
              "  const cancelPromise = new Promise((resolve) => {\n",
              "    cancel.onclick = () => {\n",
              "      resolve(null);\n",
              "    };\n",
              "  });\n",
              "\n",
              "  // Wait for the user to pick the files.\n",
              "  const files = yield {\n",
              "    promise: Promise.race([pickedPromise, cancelPromise]),\n",
              "    response: {\n",
              "      action: 'starting',\n",
              "    }\n",
              "  };\n",
              "\n",
              "  cancel.remove();\n",
              "\n",
              "  // Disable the input element since further picks are not allowed.\n",
              "  inputElement.disabled = true;\n",
              "\n",
              "  if (!files) {\n",
              "    return {\n",
              "      response: {\n",
              "        action: 'complete',\n",
              "      }\n",
              "    };\n",
              "  }\n",
              "\n",
              "  for (const file of files) {\n",
              "    const li = document.createElement('li');\n",
              "    li.append(span(file.name, {fontWeight: 'bold'}));\n",
              "    li.append(span(\n",
              "        `(${file.type || 'n/a'}) - ${file.size} bytes, ` +\n",
              "        `last modified: ${\n",
              "            file.lastModifiedDate ? file.lastModifiedDate.toLocaleDateString() :\n",
              "                                    'n/a'} - `));\n",
              "    const percent = span('0% done');\n",
              "    li.appendChild(percent);\n",
              "\n",
              "    outputElement.appendChild(li);\n",
              "\n",
              "    const fileDataPromise = new Promise((resolve) => {\n",
              "      const reader = new FileReader();\n",
              "      reader.onload = (e) => {\n",
              "        resolve(e.target.result);\n",
              "      };\n",
              "      reader.readAsArrayBuffer(file);\n",
              "    });\n",
              "    // Wait for the data to be ready.\n",
              "    let fileData = yield {\n",
              "      promise: fileDataPromise,\n",
              "      response: {\n",
              "        action: 'continue',\n",
              "      }\n",
              "    };\n",
              "\n",
              "    // Use a chunked sending to avoid message size limits. See b/62115660.\n",
              "    let position = 0;\n",
              "    do {\n",
              "      const length = Math.min(fileData.byteLength - position, MAX_PAYLOAD_SIZE);\n",
              "      const chunk = new Uint8Array(fileData, position, length);\n",
              "      position += length;\n",
              "\n",
              "      const base64 = btoa(String.fromCharCode.apply(null, chunk));\n",
              "      yield {\n",
              "        response: {\n",
              "          action: 'append',\n",
              "          file: file.name,\n",
              "          data: base64,\n",
              "        },\n",
              "      };\n",
              "\n",
              "      let percentDone = fileData.byteLength === 0 ?\n",
              "          100 :\n",
              "          Math.round((position / fileData.byteLength) * 100);\n",
              "      percent.textContent = `${percentDone}% done`;\n",
              "\n",
              "    } while (position < fileData.byteLength);\n",
              "  }\n",
              "\n",
              "  // All done.\n",
              "  yield {\n",
              "    response: {\n",
              "      action: 'complete',\n",
              "    }\n",
              "  };\n",
              "}\n",
              "\n",
              "scope.google = scope.google || {};\n",
              "scope.google.colab = scope.google.colab || {};\n",
              "scope.google.colab._files = {\n",
              "  _uploadFiles,\n",
              "  _uploadFilesContinue,\n",
              "};\n",
              "})(self);\n",
              "</script> "
            ]
          },
          "metadata": {}
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Saving hwk01_mlb.csv to hwk01_mlb.csv\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 4,
      "id": "f07768af-897a-470b-90cf-c7f245c83fdf",
      "metadata": {
        "id": "f07768af-897a-470b-90cf-c7f245c83fdf"
      },
      "outputs": [],
      "source": [
        "# reading the dataset\n",
        "df = pd.read_csv('hwk01_mlb.csv') #TODO, read the dataset by completing the function read_csv"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 5,
      "id": "5e63b225-5e3e-4f49-a555-4f7acb800211",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 363
        },
        "id": "5e63b225-5e3e-4f49-a555-4f7acb800211",
        "outputId": "bd776882-7493-4761-80ad-2b7c4a6165d3"
      },
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "              Name Team        Position  Height(inches)  Weight(pounds)    Age\n",
              "0    Adam_Donachie  BAL         Catcher              74           180.0  22.99\n",
              "1        Paul_Bako  BAL         Catcher              74           215.0  34.69\n",
              "2  Ramon_Hernandez  BAL         Catcher              72           210.0  30.78\n",
              "3     Kevin_Millar  BAL   First_Baseman              72           210.0  35.43\n",
              "4      Chris_Gomez  BAL   First_Baseman              73           188.0  35.71\n",
              "5    Brian_Roberts  BAL  Second_Baseman              69           176.0  29.39\n",
              "6    Miguel_Tejada  BAL       Shortstop              69           209.0  30.77\n",
              "7      Melvin_Mora  BAL   Third_Baseman              71           200.0  35.07\n",
              "8      Aubrey_Huff  BAL   Third_Baseman              76           231.0  30.19\n",
              "9       Adam_Stern  BAL      Outfielder              71           180.0  27.05"
            ],
            "text/html": [
              "\n",
              "  <div id=\"df-917f6129-f290-4c08-9462-01eaf995ba5e\" class=\"colab-df-container\">\n",
              "    <div>\n",
              "<style scoped>\n",
              "    .dataframe tbody tr th:only-of-type {\n",
              "        vertical-align: middle;\n",
              "    }\n",
              "\n",
              "    .dataframe tbody tr th {\n",
              "        vertical-align: top;\n",
              "    }\n",
              "\n",
              "    .dataframe thead th {\n",
              "        text-align: right;\n",
              "    }\n",
              "</style>\n",
              "<table border=\"1\" class=\"dataframe\">\n",
              "  <thead>\n",
              "    <tr style=\"text-align: right;\">\n",
              "      <th></th>\n",
              "      <th>Name</th>\n",
              "      <th>Team</th>\n",
              "      <th>Position</th>\n",
              "      <th>Height(inches)</th>\n",
              "      <th>Weight(pounds)</th>\n",
              "      <th>Age</th>\n",
              "    </tr>\n",
              "  </thead>\n",
              "  <tbody>\n",
              "    <tr>\n",
              "      <th>0</th>\n",
              "      <td>Adam_Donachie</td>\n",
              "      <td>BAL</td>\n",
              "      <td>Catcher</td>\n",
              "      <td>74</td>\n",
              "      <td>180.0</td>\n",
              "      <td>22.99</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>1</th>\n",
              "      <td>Paul_Bako</td>\n",
              "      <td>BAL</td>\n",
              "      <td>Catcher</td>\n",
              "      <td>74</td>\n",
              "      <td>215.0</td>\n",
              "      <td>34.69</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>2</th>\n",
              "      <td>Ramon_Hernandez</td>\n",
              "      <td>BAL</td>\n",
              "      <td>Catcher</td>\n",
              "      <td>72</td>\n",
              "      <td>210.0</td>\n",
              "      <td>30.78</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>3</th>\n",
              "      <td>Kevin_Millar</td>\n",
              "      <td>BAL</td>\n",
              "      <td>First_Baseman</td>\n",
              "      <td>72</td>\n",
              "      <td>210.0</td>\n",
              "      <td>35.43</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>4</th>\n",
              "      <td>Chris_Gomez</td>\n",
              "      <td>BAL</td>\n",
              "      <td>First_Baseman</td>\n",
              "      <td>73</td>\n",
              "      <td>188.0</td>\n",
              "      <td>35.71</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>5</th>\n",
              "      <td>Brian_Roberts</td>\n",
              "      <td>BAL</td>\n",
              "      <td>Second_Baseman</td>\n",
              "      <td>69</td>\n",
              "      <td>176.0</td>\n",
              "      <td>29.39</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>6</th>\n",
              "      <td>Miguel_Tejada</td>\n",
              "      <td>BAL</td>\n",
              "      <td>Shortstop</td>\n",
              "      <td>69</td>\n",
              "      <td>209.0</td>\n",
              "      <td>30.77</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>7</th>\n",
              "      <td>Melvin_Mora</td>\n",
              "      <td>BAL</td>\n",
              "      <td>Third_Baseman</td>\n",
              "      <td>71</td>\n",
              "      <td>200.0</td>\n",
              "      <td>35.07</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>8</th>\n",
              "      <td>Aubrey_Huff</td>\n",
              "      <td>BAL</td>\n",
              "      <td>Third_Baseman</td>\n",
              "      <td>76</td>\n",
              "      <td>231.0</td>\n",
              "      <td>30.19</td>\n",
              "    </tr>\n",
              "    <tr>\n",
              "      <th>9</th>\n",
              "      <td>Adam_Stern</td>\n",
              "      <td>BAL</td>\n",
              "      <td>Outfielder</td>\n",
              "      <td>71</td>\n",
              "      <td>180.0</td>\n",
              "      <td>27.05</td>\n",
              "    </tr>\n",
              "  </tbody>\n",
              "</table>\n",
              "</div>\n",
              "    <div class=\"colab-df-buttons\">\n",
              "\n",
              "  <div class=\"colab-df-container\">\n",
              "    <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-917f6129-f290-4c08-9462-01eaf995ba5e')\"\n",
              "            title=\"Convert this dataframe to an interactive table.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "  <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
              "    <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
              "  </svg>\n",
              "    </button>\n",
              "\n",
              "  <style>\n",
              "    .colab-df-container {\n",
              "      display:flex;\n",
              "      gap: 12px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert {\n",
              "      background-color: #E8F0FE;\n",
              "      border: none;\n",
              "      border-radius: 50%;\n",
              "      cursor: pointer;\n",
              "      display: none;\n",
              "      fill: #1967D2;\n",
              "      height: 32px;\n",
              "      padding: 0 0 0 0;\n",
              "      width: 32px;\n",
              "    }\n",
              "\n",
              "    .colab-df-convert:hover {\n",
              "      background-color: #E2EBFA;\n",
              "      box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "      fill: #174EA6;\n",
              "    }\n",
              "\n",
              "    .colab-df-buttons div {\n",
              "      margin-bottom: 4px;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert {\n",
              "      background-color: #3B4455;\n",
              "      fill: #D2E3FC;\n",
              "    }\n",
              "\n",
              "    [theme=dark] .colab-df-convert:hover {\n",
              "      background-color: #434B5C;\n",
              "      box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
              "      filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
              "      fill: #FFFFFF;\n",
              "    }\n",
              "  </style>\n",
              "\n",
              "    <script>\n",
              "      const buttonEl =\n",
              "        document.querySelector('#df-917f6129-f290-4c08-9462-01eaf995ba5e button.colab-df-convert');\n",
              "      buttonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "\n",
              "      async function convertToInteractive(key) {\n",
              "        const element = document.querySelector('#df-917f6129-f290-4c08-9462-01eaf995ba5e');\n",
              "        const dataTable =\n",
              "          await google.colab.kernel.invokeFunction('convertToInteractive',\n",
              "                                                    [key], {});\n",
              "        if (!dataTable) return;\n",
              "\n",
              "        const docLinkHtml = 'Like what you see? Visit the ' +\n",
              "          '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
              "          + ' to learn more about interactive tables.';\n",
              "        element.innerHTML = '';\n",
              "        dataTable['output_type'] = 'display_data';\n",
              "        await google.colab.output.renderOutput(dataTable, element);\n",
              "        const docLink = document.createElement('div');\n",
              "        docLink.innerHTML = docLinkHtml;\n",
              "        element.appendChild(docLink);\n",
              "      }\n",
              "    </script>\n",
              "  </div>\n",
              "\n",
              "\n",
              "<div id=\"df-cd685558-8e8b-4797-bd4f-729558404a4f\">\n",
              "  <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-cd685558-8e8b-4797-bd4f-729558404a4f')\"\n",
              "            title=\"Suggest charts.\"\n",
              "            style=\"display:none;\">\n",
              "\n",
              "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
              "     width=\"24px\">\n",
              "    <g>\n",
              "        <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n",
              "    </g>\n",
              "</svg>\n",
              "  </button>\n",
              "\n",
              "<style>\n",
              "  .colab-df-quickchart {\n",
              "      --bg-color: #E8F0FE;\n",
              "      --fill-color: #1967D2;\n",
              "      --hover-bg-color: #E2EBFA;\n",
              "      --hover-fill-color: #174EA6;\n",
              "      --disabled-fill-color: #AAA;\n",
              "      --disabled-bg-color: #DDD;\n",
              "  }\n",
              "\n",
              "  [theme=dark] .colab-df-quickchart {\n",
              "      --bg-color: #3B4455;\n",
              "      --fill-color: #D2E3FC;\n",
              "      --hover-bg-color: #434B5C;\n",
              "      --hover-fill-color: #FFFFFF;\n",
              "      --disabled-bg-color: #3B4455;\n",
              "      --disabled-fill-color: #666;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart {\n",
              "    background-color: var(--bg-color);\n",
              "    border: none;\n",
              "    border-radius: 50%;\n",
              "    cursor: pointer;\n",
              "    display: none;\n",
              "    fill: var(--fill-color);\n",
              "    height: 32px;\n",
              "    padding: 0;\n",
              "    width: 32px;\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart:hover {\n",
              "    background-color: var(--hover-bg-color);\n",
              "    box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
              "    fill: var(--button-hover-fill-color);\n",
              "  }\n",
              "\n",
              "  .colab-df-quickchart-complete:disabled,\n",
              "  .colab-df-quickchart-complete:disabled:hover {\n",
              "    background-color: var(--disabled-bg-color);\n",
              "    fill: var(--disabled-fill-color);\n",
              "    box-shadow: none;\n",
              "  }\n",
              "\n",
              "  .colab-df-spinner {\n",
              "    border: 2px solid var(--fill-color);\n",
              "    border-color: transparent;\n",
              "    border-bottom-color: var(--fill-color);\n",
              "    animation:\n",
              "      spin 1s steps(1) infinite;\n",
              "  }\n",
              "\n",
              "  @keyframes spin {\n",
              "    0% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "      border-left-color: var(--fill-color);\n",
              "    }\n",
              "    20% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    30% {\n",
              "      border-color: transparent;\n",
              "      border-left-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    40% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-top-color: var(--fill-color);\n",
              "    }\n",
              "    60% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "    }\n",
              "    80% {\n",
              "      border-color: transparent;\n",
              "      border-right-color: var(--fill-color);\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "    90% {\n",
              "      border-color: transparent;\n",
              "      border-bottom-color: var(--fill-color);\n",
              "    }\n",
              "  }\n",
              "</style>\n",
              "\n",
              "  <script>\n",
              "    async function quickchart(key) {\n",
              "      const quickchartButtonEl =\n",
              "        document.querySelector('#' + key + ' button');\n",
              "      quickchartButtonEl.disabled = true;  // To prevent multiple clicks.\n",
              "      quickchartButtonEl.classList.add('colab-df-spinner');\n",
              "      try {\n",
              "        const charts = await google.colab.kernel.invokeFunction(\n",
              "            'suggestCharts', [key], {});\n",
              "      } catch (error) {\n",
              "        console.error('Error during call to suggestCharts:', error);\n",
              "      }\n",
              "      quickchartButtonEl.classList.remove('colab-df-spinner');\n",
              "      quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n",
              "    }\n",
              "    (() => {\n",
              "      let quickchartButtonEl =\n",
              "        document.querySelector('#df-cd685558-8e8b-4797-bd4f-729558404a4f button');\n",
              "      quickchartButtonEl.style.display =\n",
              "        google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
              "    })();\n",
              "  </script>\n",
              "</div>\n",
              "    </div>\n",
              "  </div>\n"
            ]
          },
          "metadata": {},
          "execution_count": 5
        }
      ],
      "source": [
        "# Show the top 10 elements of the dataframe using the head function\n",
        "df.head(10) #TODO, Show the top 10 elements"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 6,
      "id": "0d45bf3a-4aba-407c-8822-0667551f37d6",
      "metadata": {
        "id": "0d45bf3a-4aba-407c-8822-0667551f37d6"
      },
      "outputs": [],
      "source": [
        "# taking out the column 'Age' and converting it to a list\n",
        "# this is advisable for a better code\n",
        "# Convert the values from column Age to a list\n",
        "ages = df['Age'].to_list() # TODO, Store the values of Ages from the dataset in the variable ages in the form of a list\n",
        "\n",
        "# sort the list of ages\n",
        "sorted_ages = np.sort(ages) # TODO, Use np.sort to sort the list of ages"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 7,
      "id": "11a2f325-3316-4cb7-9903-9cf5c49196b9",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "11a2f325-3316-4cb7-9903-9cf5c49196b9",
        "outputId": "98fd54db-f4b1-46e4-a842-9e6112c1379d"
      },
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "[22.99, 34.69, 30.78, 35.43, 35.71, 29.39, 30.77, 35.07, 30.19, 27.05]\n",
            "[20.9  21.46 21.52 21.58 21.78 21.85 21.9  22.02 22.06 22.11]\n"
          ]
        }
      ],
      "source": [
        "# printing the first 10 elements of the arrays\n",
        "# this step is not required; arrays printed for better understanding\n",
        "print(ages[0:10])\n",
        "print(sorted_ages[0:10])"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 8,
      "id": "6c448661-f3e9-40c3-9c61-292adbb0d071",
      "metadata": {
        "id": "6c448661-f3e9-40c3-9c61-292adbb0d071"
      },
      "outputs": [],
      "source": [
        "# defining a function for calculating the CDF\n",
        "# Complete the below code to calculate the CDF\n",
        "def calc_cdf(sorted_data):\n",
        "    #calculating proportional values\n",
        "    p = 1. * np.arange(1,len(sorted_data)+1) / (len(sorted_data)) # TODO, calculate the proportional values from the data and return them\n",
        "    return p"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 9,
      "id": "08b4742b-a1d3-41bc-956c-6f05998a58f8",
      "metadata": {
        "id": "08b4742b-a1d3-41bc-956c-6f05998a58f8"
      },
      "outputs": [],
      "source": [
        "# calling the function to calculate cdf of ages\n",
        "cdf_ages = calc_cdf(sorted_ages) # TODO, calculate cdf of ages"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 10,
      "id": "ea3bb4f3-3d9b-4c16-a52e-94378dd1b2c1",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 449
        },
        "id": "ea3bb4f3-3d9b-4c16-a52e-94378dd1b2c1",
        "outputId": "c4d684b8-b260-4960-efe4-ae7bcfb4cff5"
      },
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ],
            "image/png": "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\n"
          },
          "metadata": {}
        }
      ],
      "source": [
        "# plotting the CDF\n",
        "# Complete the below code to plot the CDF\n",
        "plt.plot(sorted_ages, cdf_ages) #TODO, Plot the cdf of ages\n",
        "plt.xlabel('Data')\n",
        "plt.ylabel('CDF')\n",
        "# Complete the below code to show the plot\n",
        "plt.show() # TODO, Show the plot"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 11,
      "id": "54ab587d-d0f3-4714-801a-873fc56381a0",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 449
        },
        "id": "54ab587d-d0f3-4714-801a-873fc56381a0",
        "outputId": "f9bb3616-fd71-4e22-ed36-074a690851cb"
      },
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ],
            "image/png": "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t2/PG2+8Qb9+/cjNzSUgIKBWXoeI1BwdaRIRAQzDwGKxAPD1118zePBgWrZsSWBgIKNHj+bkyZPk5+dfch0pKSncfvvttG7dmsDAQG688UYA0tPTazy/iNQ8lSYREWD37t20a9eOgwcPMnz4cHr06MF//vMfUlJSmDNnDgBFRUUX/f28vDzi4+Ox2+188MEHbNq0iYULF17290Sk7tDHcyLS4K1cuZLt27czefJkUlJScLlcvPrqq3h5lf135ccff1xhvNVqpbS0tMJje/bs4eTJk7z88stERkYCsHnz5tp5ASJSK3SkSUQalMLCQjIyMvjxxx/ZsmULL730EnfccQfDhw/ngQceICoqiuLiYv7yl7+wf/9+3n//febOnVthHW3btiU3N5cVK1Zw4sQJ8vPzad26NVar1f17X3zxBb/73e9MepUiUhNUmkSkQVm2bBktWrSgbdu23HrrraxatYo33niDzz//HG9vb3r27Mlrr73GH//4R7p168YHH3zAzJkzK6zj2muvZcKECYwaNYrmzZsza9Ysmjdvzrx581iwYAHR0dG8/PLL/OlPfzLpVYpITbAYhmGYHUJERETE0+lIk4iIiEglqDSJiIiIVIJKk4iIiEglqDSJiIiIVIJKk4iIiEglqDSJiIiIVIJKk4iIiEglqDSJiIiIVIJKk4iIiEglqDSJiIiIVIJKk4iIiEgl/H+npQyCH09p/AAAAABJRU5ErkJggg==\n"
          },
          "metadata": {}
        }
      ],
      "source": [
        "# NOTE - a neat trick to cross check your answer is to use a built-in function\n",
        "cdf_check_ages = np.cumsum(sorted_ages)\n",
        "# plotting the CDF\n",
        "plt.plot(sorted_ages, cdf_check_ages)\n",
        "plt.xlabel('Data')\n",
        "plt.ylabel('CDF')\n",
        "plt.show()\n",
        "# The above is only for your referance and need not be completed, you have your own user defined function finding the cumulative sum"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "394dcbd3-83e5-4ae5-bb0c-eb6276825173",
      "metadata": {
        "id": "394dcbd3-83e5-4ae5-bb0c-eb6276825173"
      },
      "source": [
        "**Problem L - 10 points**\n",
        "\n",
        "Next we will consider the players heights and weights, which taken together are bivariate data. First, plot a scatterplot of the two variables against each other. Second, plot the CDFs of the marginals."
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 12,
      "id": "54015d43-014f-4663-bd1b-bb11705555e4",
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 430
        },
        "id": "54015d43-014f-4663-bd1b-bb11705555e4",
        "outputId": "f6060f55-fcc4-4209-92e6-43ce57ab32f8"
      },
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ],
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAGdCAYAAAA44ojeAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABiNUlEQVR4nO3de3xU1bk//s9M7iEkkGgIt0CKLRgBUQsa5OJRCLd6P7VaRagcVEy8/zyKimIpRmqrtRWs5augUIV6LAiIwQgYUMJFMEIMdwMRSIgSmCHkMklm//5IZ8yETPaaZM3aM3s+79crf5B5mLVX5vbM2ms/j0XTNA1EREREAcRq9AEQERERtcQEhYiIiAIOExQiIiIKOExQiIiIKOAwQSEiIqKAwwSFiIiIAg4TFCIiIgo4TFCIiIgo4IQbfQDt4XQ6ceLECXTu3BkWi8XowyEiIiIBmqbh7Nmz6NGjB6zWttdIgjJBOXHiBHr37m30YRAREVE7fP/99+jVq1ebMUGZoHTu3BlA0wTj4+MNPhoiIiISYbfb0bt3b/fneFuCMkFxndaJj49ngkJERBRkRLZncJMsERERBRwmKERERBRwmKAQERFRwGGCQkRERAGHCQoREREFHCYoREREFHCYoBAREVHAYYJCREREAScoC7UREVFganRq2F5SiYqztUjuHI1haYkIs7JnGvmOCQoREUmRW1SGF1YXo8xW6/5d94RoPH99OsYP7G7gkVEw4ikeIiLqsNyiMsxYussjOQGAclstZizdhdyiMoOOjIIVExQiIuqQRqeGF1YXQ2vlNtfvXlhdjEZnaxFErWOCQkREHbK9pPK8lZPmNABltlpsL6lUd1AU9JigEBFRh1Sc9Z6ctCeOCGCCQkREHZTcOVpqHBHABIWIiDpoWFoiuidEw9vFxBY0Xc0zLC1R5WFRkGOCQkREHRJmteD569MB4LwkxfXv569PZz0U8gkTFCIi6rDxA7vjjbsuR0qC52mclIRovHHX5ayDQj5joTYiIpJi/MDuGJuewkqyJAUTFCIikibMakFGvySjD4NMgKd4iIiIKOAwQSEiIqKAwwSFiIiIAg4TFCIiIgo4TFCIiIgo4DBBISIiooDDBIWIiIgCDhMUIiIiCjhMUIiIiCjgMEEhIiKigMMEhYiIiAIOExQiIiIKOExQiIiIKOD4lKDk5ORg6NCh6Ny5M5KTk3HTTTdh//79HjHl5eWYPHkyUlJS0KlTJ1x++eX48MMPPWIqKytx5513Ij4+Hl26dMG0adNQVVXV8dkQERGRKfiUoOTn5yMrKwtbt25FXl4e6uvrkZmZiXPnzrlj7r77buzfvx+rVq3Cnj17cMstt+C2227D119/7Y6588478e233yIvLw9r1qzBpk2bcO+998qbFREREQU1i6ZpWnv/8w8//IDk5GTk5+dj1KhRAIC4uDi88cYbmDx5sjsuKSkJ8+bNw//8z/9g7969SE9Px44dO/DLX/4SAJCbm4uJEyfi2LFj6NGjh+64drsdCQkJsNlsiI+Pb+/hExERkUK+fH53aA+KzWYDACQmJrp/N3z4cCxfvhyVlZVwOp1YtmwZamtrcc011wAACgoK0KVLF3dyAgBjxoyB1WrFtm3bWh2nrq4Odrvd44eIiIjMq90JitPpxCOPPIKrr74aAwcOdP/+X//6F+rr65GUlISoqCjcd999WLFiBS666CIATXtUkpOTPe4rPDwciYmJKC8vb3WsnJwcJCQkuH969+7d3sMmogDW6NRQcPgUPio8joLDp9DobPcCLxEFufD2/sesrCwUFRXhiy++8Pj9rFmzcObMGXz22We44IILsHLlStx2223YvHkzBg0a1K6xZs6ciccee8z9b7vdziSFyGRyi8rwwupilNlq3b/rnhCN569Px/iB3Q08MiIyQrsSlOzsbPfm1l69erl/f/jwYbz++usoKirCJZdcAgC49NJLsXnzZsyfPx9///vfkZKSgoqKCo/7a2hoQGVlJVJSUlodLyoqClFRUe05VCIKArlFZZixdBdarpeU22oxY+kuvHHX5UxSiEKMT6d4NE1DdnY2VqxYgQ0bNiAtLc3j9urq6qY7tXrebVhYGJxOJwAgIyMDZ86cwc6dO923b9iwAU6nE1deeWW7JkFEwavRqeGF1cXnJScA3L97YXUxT/cQhRifEpSsrCwsXboU7733Hjp37ozy8nKUl5ejpqYGADBgwABcdNFFuO+++7B9+3YcPnwYf/7zn5GXl4ebbroJAHDxxRdj/PjxmD59OrZv344vv/wS2dnZuP3224Wu4CEic9leUulxWqclDUCZrRbbSyrVHRQRGc6nBOWNN96AzWbDNddcg+7du7t/li9fDgCIiIjA2rVrceGFF+L666/H4MGD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\n"
          },
          "metadata": {}
        }
      ],
      "source": [
        "# plotting scatterplot of heights and weights\n",
        "# Use the scatter function in plt to plot the scatter plot of Height and Weight\n",
        "plt.scatter(df['Height(inches)'], df['Weight(pounds)']) # TODO, complete the scatter function with the height and weight values from the dataset\n",
        "plt.show()"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 13,
      "id": "4df17ca2-42b3-4f75-9828-da9e2dd0bcb2",
      "metadata": {
        "id": "4df17ca2-42b3-4f75-9828-da9e2dd0bcb2"
      },
      "outputs": [],
      "source": [
        "# Below we calculate the cdf_height and cdf_weight, enter the function name to complete the code\n",
        "cdf_height = calc_cdf(np.sort(df['Height(inches)'])) # TODO, find the cdf of height\n",
        "cdf_weight = calc_cdf(np.sort(df['Weight(pounds)'])) # TODO, find the cdf_ of weight"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 14,
      "id": "a26216fd-0fdf-4032-a098-f271dd47db55",
      "metadata": {
        "id": "a26216fd-0fdf-4032-a098-f271dd47db55",
        "outputId": "ee7fb943-ae97-4779-e25c-0d552bff038b",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 449
        }
      },
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ],
            "image/png": "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9f/7v/9rJJnt27dHbPfLX/7SXH/99fVd7ik5WY/HO3jwoOndu7e58cYb67HK+tP4/jQ8w7iuq759+2ratGmSpIsuukhffvml8vLyNHLkSEnSU089pX/84x9auHChOnXqpA8++EBjx45VcnJyxF8ijcELL7ygwYMHKzk52etS6kRV/QWDQV199dXq2rWrHnjggfovrhYc39/ChQu1dOlSffrppx5XVnuO79F1XUnSbbfdplGjRkk68v9pfn6+5syZo9zcXM9qPRXR/o1OmjRJe/bs0fvvv6927dppwYIFuv766/Xhhx+qe/fuHlZbPa+//rrmzZunV199VRdeeKHWrFmju+66S8nJyeGfo41dTXosKyvT9ddfL2OMnn32WY8qrmNepytULS0tLeKvXmOMeeaZZ0xycrIxxpgDBw6YJk2amHfeeSdizi233GKysrLqrc7asHnzZuPz+cyCBQvCY/n5+UaS+f777yPmpqWlmRkzZtRzhacnWn/HBINBk5GRYa644opGcwHj8aL1N27cOOM4jvH7/eGHJOPz+czAgQO9K/YURetx48aNRpJ5+eWXI+Zef/31je6v4mj9bdiwwUgyX375ZcTcK664wtx22231XeIp6dixo3n66acjxqZOnWouuOACY4wx33zzjZFkPv3004g5l112mfntb39bX2WelpP1eExpaam59tprTY8ePczu3bvrs8R6xTU3Ddwll1yidevWRYytX79enTp1knQkgZeVlcnni/xW+v3+8F+UjcWLL76o9u3b6+qrrw6P9enTR02aNFF+fn54bN26ddqyZYsyMjK8KPOURetPOnLEZtCgQYqNjdXChQsVFxfnUYWnJ1p/EyZM0Oeff641a9aEH5L0xBNP6MUXX/So0lMXrcf09HQlJydX+f9pYxGtvwMHDkhSo/4Zc+DAgSrr79y5s5KSkiJ+zgSDQX3yySeN5ufMyXqUyo/YfP3113r//ffVtm3b+i6z/nidrlC1FStWmJiYGPPwww+br7/+2sybN880a9bMvPLKK+E5AwcONBdeeKFZtmyZ2bhxo3nxxRdNXFyceeaZZzysvGZCoZBJS0sz48ePr7RuzJgxJi0tzSxdutSsXLnSZGRkmIyMDA+qPHUn6q+4uNj079/fdO/e3WzYsCHidtzDhw97VG3NVfX9O54a6TU3VfX4xBNPmPj4ePPGG2+Yr7/+2kycONHExcVFvGVDQ3ei/kpLS825555rLr30UvPJJ5+YDRs2mMcee8w4jmMWLVrkUbU1M3LkSJOSkhK+TfrNN9807dq1i7hub/r06aZVq1bm7bffNp9//rn52c9+1qhuBT9Zj6Wlpeaaa64xHTt2NGvWrIn4WVNSUuJx9bWPcNMI/O1vfzPdunUzgUDAdOnSxTz33HMR63fs2GFuuukmk5ycbOLi4swFF1xgHn/88RPeatwQLVmyxEgy69atq7Tu4MGD5o477jCtW7c2zZo1M//1X/9lduzY4UGVp+5E/S1btsxIivrYtGmTN8Wegqq+f8drrOHmZD3m5uaajh07mmbNmpmMjAzz4Ycf1nOFp6eq/tavX2+uu+460759e9OsWTPTo0ePSreGN2TBYNCMGzfOpKWlmbi4OHP22Web+++/P+KXuuu6ZtKkSSYxMdEEAgFzxRVXVOvfc0Nxsh43bdp0wp81x78nlQ0cYyq8RSMAAEAjxzU3AADAKoQbAABgFcINAACwCuEGAABYhXADAACsQrgBAABWIdwAAACrEG4AAIBVCDcAAMAqhBsADc5NN90kx3HkOI6aNGmixMREXXnllZozZ06NPqxx7ty5atWqVd0VCqBBItwAaJCuuuoq7dixQ5s3b9bf//53XX755Ro3bpyGDBmiw4cPe10egAaMcAOgQQoEAkpKSlJKSop69+6t++67T2+//bb+/ve/a+7cuZKkGTNmqHv37mrevLlSU1N1xx13aN++fZKk5cuXa9SoUSouLg4fBXrggQckSS+//LL69u2rli1bKikpSTfeeKN27tzpUacAahvhBkCj8ZOf/EQ9e/bUm2++KUny+Xx68skn9a9//UsvvfSSli5dqnvvvVeSNGDAAM2cOVPx8fHasWOHduzYoXvuuUeSVFZWpqlTp+qzzz7TggULtHnzZt10001etQWglsV4XQAA1ESXLl30+eefS5Luuuuu8Hh6erp+97vfacyYMXrmmWcUGxurhIQEOY6jpKSkiNe4+eabw8tnn322nnzySV188cXat2+fWrRoUS99AKg7HLkB0KgYY+Q4jiTp/fff1xVXXKGUlBS1bNlSw4cP13/+8x8dOHCgytdYtWqVhg4dqrS0NLVs2VIDBw6UJG3ZsqXO6wdQ9wg3ABqVr776Sp07d9bmzZs1ZMgQ9ejRQ3/961+1atUqzZo1S5JUWlp6wu3379+vrKwsxcfHa968efrnP/+pt95666TbAWg8OC0FoNFYunSpvvjiC919991atWqVXNfV448/Lp/vyN9pr7/+esT82NhYhUKhiLG1a9fqP//5j6ZPn67U1FRJ0sqVK+unAQD1giM3ABqkkpISFRYWatu2bVq9erWmTZumn/3sZxoyZIhGjBihc889V2VlZXrqqae0ceNGvfzyy8rLy4t4jfT0dO3bt0/5+fnavXu3Dhw4oLS0NMXGxoa3W7hwoaZOnepRlwDqAuEGQIO0ePFidejQQenp6brqqqu0bNkyPfnkk3r77bfl9/vVs2dPzZgxQ4888oi6deumefPmKTc3N+I1BgwYoDFjxmjYsGE666yz9Pvf/15nnXWW5s6dqzfeeENdu3bV9OnT9dhjj3nUJYC64BhjjNdFAAAA1BaO3AAAAKsQbgAAgFUINwAAwCqEGwAAYBXCDQAAsArhBgAAWIVwAwAArEK4AQAAViHcAAAAqxBuAACAVQg3AADAKv8/F7ebbEndEMcAAAAASUVORK5CYII=\n"
          },
          "metadata": {}
        }
      ],
      "source": [
        "# plotting the CDF\n",
        "sorted_height = np.sort(df['Height(inches)'])\n",
        "plt.plot(sorted_height, cdf_height) # TODO, plot the cdf\n",
        "plt.xlabel('Data')\n",
        "plt.ylabel('CDF')\n",
        "plt.show()"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": 15,
      "id": "de73d57c-dbfd-4c38-bacb-18108edd7f35",
      "metadata": {
        "id": "de73d57c-dbfd-4c38-bacb-18108edd7f35",
        "outputId": "0f37a526-62db-4a85-e8f6-202353b6b1e2",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 449
        }
      },
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "text/plain": [
              "<Figure size 640x480 with 1 Axes>"
            ],
            "image/png": "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fWuXyirrFAzHnuLd1ZWgScMyTKoMAI6PcAOgSX8v+lJ7D399iney06F7fzxcF5zRSymuBNlsnO4NID4RbgBEvbhlr97aXi6fv05fHQk2/2fqaF04OF3OBC5oDqBjINwAkNRwQb7Zy7co8o09UE6HXSP6phFsAHQopv/FWrx4sbKzs+V2u5WTk6MNGzYct//hw4c1c+ZM9e7dWy6XS2eccYZefvnldqoWsK76UCQabP704+H6+/Xn6u3fXaiMVC7IB6BjMXXLzfLly5Wfn68lS5YoJydHixYt0sSJE7Vt2zalpze+bkZ9fb0uvvhipaen6x//+IcyMzP15ZdfKi0trf2LByzsx6P6ys4tFAB0UKaGm4ULF+qGG27QjBkzJElLlizRqlWrtHTpUt16662N+i9dulQHDx7U+vXrlZiYKEnKzs4+7vcIBAIKBALR136/v/UmAAAA4o5pu6Xq6+u1ceNG5eXlfV2M3a68vDwVFRU1OWblypXKzc3VzJkz5fV6NWzYMN19990Kh8PH/D4FBQVKTU2NPrKyslp9LgAAIH6YFm7Ky8sVDofl9Xpj2r1er0pLS5sc88UXX+gf//iHwuGwXn75Zc2bN0/333+//vCHPxzz+8yZM0cVFRXRx549e1p1HgAAIL50qLOlIpGI0tPT9be//U0Oh0OjR4/W3r179ec//1kLFixocozL5ZLL5WrnSgEAgFlMCzc9e/aUw+GQz+eLaff5fMrIaPrKp71791ZiYqIcDke07cwzz1Rpaanq6+vldDrbtGYAABD/TNst5XQ6NXr0aBUWFkbbIpGICgsLlZub2+SY8847Tzt27FAkEom2ff755+rduzfBBgAASDL5Ojf5+fl65JFH9MQTT2jr1q266aabVF1dHT17atq0aZozZ060/0033aSDBw/q5ptv1ueff65Vq1bp7rvv1syZM82aAgAAiDOmHnMzZcoU7d+/X/Pnz1dpaalGjhyp1atXRw8yLi4ult3+df7KysrSq6++qtmzZ2v48OHKzMzUzTffrN/97ndmTQEAAMQZm2EYxom7WYff71dqaqoqKirk8XjMLgeIG4eq63XOXa9Jkr64+1Iu4gcgrrTk89v02y8AAAC0JsINAACwFMINAACwFMINAACwFMINAACwlA51+wUArasuGNafX92mrSV+lVbUmV0OALQKwg3QyQTDEb3+qU/FB2v0z01f6XNfVczy4X1TZeMscAAdGOEG6AQOVddr9SelKqmo0wOF25vs8/QNOfJ63OrXPUk20g2ADoxwA3QC8178WC99WNKo/ZfjT5M3xa3LhveW1+M2oTIAaH2EG8CiwhFDxQdr5PPXaUdZw66n8wf11Jj+3ZXVvYsuPbu33IkOk6sEgNZHuAEspDoQ0q7yapVV1ulny95vtPzanP6aNCzDhMoAoP0QbgCL8NcFNf5Pa3WoJhjTnuJK0FmZHp3hTdH5g3qaVB0AtB/CDWARew/V6lBNUHabNLSPR94Ut75zWg/dcMFpZpcGAO2KcANYTI+uLr306/PNLgMATMMVigEAgKW0KNxMmzZNlZWV0dcffPCBgsHgcUYAAAC0rxaFm6eeekq1tbXR1+eff7727NnT6kUBAACcrBaFG8MwjvsaAADAbBxzAwAALKXFZ0t9+umnKi0tldSw5eazzz5TVdW3brw3fHjrVAcAANBCLQ43F110UczuqMsvv1ySZLPZZBiGbDabwuFw61UIAADQAi0KN7t27WqrOgAAAFpFi8JN//7926oOAACAVnFSVyjevn27XnzxRe3evVs2m00DBgzQlVdeqdNO4zLvAADAXC0ONwUFBZo/f74ikYjS09NlGIb279+vW2+9VXfffbd+85vftEWdAAAAzdKiU8HXrl2ruXPn6vbbb1d5eblKSkpUWloaDTe33nqr3nzzzbaqFQAA4IRatOVmyZIl+vnPf6477rgjpr179+76/e9/r9LSUj388MO64IILWrNGAACAZmvRlpsNGzZo6tSpx1w+depUvfPOO6dcFAAAwMlqUbjx+XzKzs4+5vIBAwZEL/AHAABghhaFm7q6OjmdzmMuT0xMVH19/SkXBQAAcLJafLbUo48+qq5duza5rLKy8pQLAgAAOBUtCjf9+vXTI488csI+AAAAZmlRuNm9e3cblQEAANA6WnTMzZo1azR06FD5/f5GyyoqKnTWWWfprbfearXiAAAAWqpF4WbRokW64YYb5PF4Gi1LTU3VL3/5Sy1cuLDVigMAAGipFoWbDz74QJMmTTrm8gkTJmjjxo2nXBQAAMDJavF1bhITE4+5PCEhQfv37z/logAAAE5Wi8JNZmamPv7442Mu//DDD9W7d+9TLgoAAOBktSjcXHrppZo3b57q6uoaLautrdWCBQt0+eWXt1pxAAAALdWiU8Hnzp2r559/XmeccYZmzZqlwYMHS5I+++wzLV68WOFwWLfffnubFAoAANAcLQo3Xq9X69ev10033aQ5c+bIMAxJks1m08SJE7V48WJ5vd42KRQAAKA5Wnz7hf79++vll1/WoUOHtGPHDhmGoUGDBqlbt25tUR8AAECLtDjcHNWtWzeNHTu2NWsBAAA4ZS06oBgAACDeEW4AAIClnPRuKQDxwTAMVQVC2ne41uxSACAuEG6ADiYYjuiNbfu193Ct/r2jXP/61Bez3G4zqTAAiBOEG6CD+e/Xt+uva3c0ak9xJaiXx6Wf5vQ3oSoAiB+EG6ADeP1Tn/7+zpfy+ev0WWlltP26cdnq2dWpySP6qH+PZBMrBID4QbgBOoD7/rUtJtQ4HXYtmzFW4wb2NLEqAIhPhBsgToXCEe07XCdfZZ0O1wQlSXMvO1PfHdRTfdK6yONONLlCAIhPhBsgjlQHQio+WKPSijrNWPZeo+Wj+nfTkAyPCZUBQMdBuAHixFeHajRp0VuqCoRi2jPTuigzrYvOyvRoeGaqSdUBQMdBuAHixPayKlUFQkp02DQwPUXpKS5NOMurazn7CQBahHADxJnBGSl66dfnm10GAHRY3H4BAABYSlyEm8WLFys7O1tut1s5OTnasGFDs8Y988wzstlsuvLKK9u2QAAA0GGYHm6WL1+u/Px8LViwQJs2bdKIESM0ceJElZWVHXfc7t279Zvf/Ebnn8/mewAA8DXTw83ChQt1ww03aMaMGRo6dKiWLFmipKQkLV269JhjwuGwrr32Wt1555067bTT2rFaAAAQ70wNN/X19dq4caPy8vKibXa7XXl5eSoqKjrmuN///vdKT0/X9ddff8LvEQgE5Pf7Yx4AAMC6TA035eXlCofD8nq9Me1er1elpaVNjnn77bf12GOP6ZFHHmnW9ygoKFBqamr0kZWVdcp1AwCA+GX6bqmWqKys1NSpU/XII4+oZ8/m3VNnzpw5qqioiD727NnTxlUCAAAzmXqdm549e8rhcMjn88W0+3w+ZWRkNOq/c+dO7d69W5MnT462RSIRSVJCQoK2bdum008/PWaMy+WSy+Vqg+oBAEA8MnXLjdPp1OjRo1VYWBhti0QiKiwsVG5ubqP+Q4YM0UcffaQtW7ZEHz/4wQ904YUXasuWLexyAgAA5l+hOD8/X9OnT9eYMWN07rnnatGiRaqurtaMGTMkSdOmTVNmZqYKCgrkdrs1bNiwmPFpaWmS1KgdAAB0TqaHmylTpmj//v2aP3++SktLNXLkSK1evTp6kHFxcbHs9g51aBAAADCRzTAMw+wi2pPf71dqaqoqKirk8XjMLgeIWrutTDMef0/DMj3cWwoAvqUln9+mb7kBOrPqQEjPvLdHxQeqtbWk0uxyAMASCDdAO9tzsEbPvb9HJRV1em7jV42WZ3i6mFAVAFgH4QZoBxt2HdQrH5eozB/Qqo9KGi3vkujQrZcMkdfj0vmDeplQIQBYB+EGaAe//r+b5PMHYtq+N7iXLju7t/p2S1LOgO6y220mVQcA1kK4AdpBdSAsSfqPiwZpSEaKBqZ31RneFJOrAgBrItwArawuGNb+yoCW/nuXyqvq5fPXqbo+JEn60ahM9e+RbHKFAGBthBuglewqr9a0pe9qz8HaJpenJSWqVwq3AgGAtka4AVrJhl0HosHGmWBXeopLaUmJunH86UpPcWuwN0VJTn7lAKCt8ZcWaGUXDu6lpdeNlc3GAcIAYAbuawC0MofdRrABABMRbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUkmF0A0JHVBcN69ZNS7T1cq6KdB8wuBwAgwg3QYmX+Or36qU9l/jo9uGZHo+XdkpwmVAUAOIpwA7TQfzyzWe98cbBR+03fO129U92aPLyPCVUBAI4i3AAtdLC6XpI08Syvzs5MVf8eyZo0LEOJDg5hA4B4QLgBmuG93Qf11vZylfnrtO9wnSRp+rhsjTu9p8mVAQC+jXADNMEwDK3Yslef7PVrz6EavfqJr1Efr8dtQmUAgBMh3ADfUHygRl8erNZrn/r0ZNGXjZbffNEg9U5166w+qTq9V1cTKgQAnAjhBjjilY9KdNNTmxq1z73sTKV73Bqb3U29U7uYUBkAoCUIN8ARn/uqJEndk506q49HXo9bV5/bT6P7dzO5MgBASxBugG+ZNCxDd//wbLPLAACcJM5dBQAAlkK4AQAAlkK4AQAAlkK4AQAAlkK4AQAAlkK4AQAAlkK4AQAAlkK4AQAAlkK4AQAAlhIX4Wbx4sXKzs6W2+1WTk6ONmzYcMy+jzzyiM4//3x169ZN3bp1U15e3nH7AwCAzsX0cLN8+XLl5+drwYIF2rRpk0aMGKGJEyeqrKysyf7r1q3T1VdfrbVr16qoqEhZWVmaMGGC9u7d286VAwCAeGR6uFm4cKFuuOEGzZgxQ0OHDtWSJUuUlJSkpUuXNtn/qaee0q9+9SuNHDlSQ4YM0aOPPqpIJKLCwsJ2rhwAAMQjU8NNfX29Nm7cqLy8vGib3W5XXl6eioqKmvUeNTU1CgaD6t69e5PLA4GA/H5/zAMAAFiXqeGmvLxc4XBYXq83pt3r9aq0tLRZ7/G73/1Offr0iQlI31RQUKDU1NToIysr65TrhnWEwhEV7Tyg5zd9pU3Fh8wuBwDQChLMLuBU3HPPPXrmmWe0bt06ud3uJvvMmTNH+fn50dd+v5+AA0Uihg7V1OvG/9mo93bHhpqurg79awEAnZ6pf8V79uwph8Mhn88X0+7z+ZSRkXHcsffdd5/uuecevf766xo+fPgx+7lcLrlcrlapF/HPMAwdrgmqrDIgn79OPn9do6/L/AGVVdYpGDZixl51Tqb6duuin+b2N6l6AEBrMDXcOJ1OjR49WoWFhbryyislKXpw8KxZs4457k9/+pP++Mc/6tVXX9WYMWPaqVrEu9c/9emW5VtUFQg1e0yPZKcGpnfVg1efo3RP01v/AAAdi+nb3/Pz8zV9+nSNGTNG5557rhYtWqTq6mrNmDFDkjRt2jRlZmaqoKBAknTvvfdq/vz5evrpp5WdnR09Nqdr167q2rWrafOA+dZsK4sGm25JifJ63OqV4pLX45bX0/CcnvL11z27uuRMMP2EQQBAKzM93EyZMkX79+/X/PnzVVpaqpEjR2r16tXRg4yLi4tlt3/9AfTwww+rvr5eP/7xj2PeZ8GCBbrjjjvas3TEqdl5Z+jmvEFmlwEAMInp4UaSZs2adczdUOvWrYt5vXv37rYvCB2azWZ2BQAAM7FNHgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWArhBgAAWEqC2QUAzVUfimh/VUDPvrdHJRW1qg6EVRUIqToQUlUgpL2Has0uEQAQBwg3iFuGYchfF9KOsipNe+xdVdeHmzVuUHrXNq4MABDPCDeIS5uLD+n6J97Xwer6mPZEh03pKW4FwxHNvHCgkl0JSnY6Gp5dCUpPcSmre5JJVQMA4gHhBnHjw68Oa8kbO1VSUafNxYej7R53gnqluPSTMVm64fzTZLfbzCsSABD3CDeIGw+v26lXPi6NaZt/+VD97LsDTKoIANAREW4QN+pDEUnSdeOydcXIPspM66J0j9vkqgAAHQ3hBnFnaG+PzunXzewyAAAdFNe5AQAAlkK4AQAAlkK4AQAAlkK4AQAAlsIBxWg1oXBEW0sqVVkXbLgtQn1IVYGwqo/cIqEuGFZdMKJAqOnnnWVVZk8BAGABhBu0mv987gO9uGXfKb9P3+5dWqEaAEBnRbhBq9lxZMtLZloX9UpxqasrQcmuhlsjdHUlqEuiQ64Eu1yJDrmPfP3NZ3eiXb1T3RqYnmLyTAAAHRnhBq3ujz8cpu8NTje7DABAJ8UBxQAAwFIINwAAwFIINwAAwFIINwAAwFIINwAAwFIINwAAwFIINwAAwFIINwAAwFIINwAAwFK4QjFapKY+JJ8/IH9tUNWBUMwNMg9U1ZtdHgAAhBs0zTAM1QUjqgqE9NHew5r/4ieqqAmqMhA64dguiY52qBAAgKYRbhD1YOF2Pb2huGFrTCCkiNF0vySnQ2ldEpXsSojeFPPoDTJP65ms0f27tW/hAAB8A+EGUU++86X2VwYatSc7HXIlOjTrwoH6ydgsdXXxYwMAiF98SkGhcEQHqusVCkckSY9NH6NhmalKdiUoKdEhu91mcoUAADQf4cZCyirr9OGeCtWFwgoEI6oLhVUXjCjwjedAMKLa+rAOVAfk8wfk89epvCoQswsqq3uSvB63eRMBAOAUEG4swjAMTX7wbfn8jXcrNYfDblPPrk6N7t9Np/fq2srVAQDQfgg3FhExFA02o/t3U7IrQe4Eu9yJDrmOPLsT7XIlNDx3T3bJ63HJ63Er3eNSj2SXHOx+AgBYAOHGgh6dNkbdkp1mlwEAgCm4QjEAALAUttzEkWA4on2Ha6MH+h6uDao+FFEwHIl5rv/W62DYUCAUMbt8AADiQlyEm8WLF+vPf/6zSktLNWLECD344IM699xzj9n/ueee07x587R7924NGjRI9957ry699NJ2rLhpdcFw9JTqYNhQKBJRKGwoGI4oFDEUDEUUjBiNlteHI6oLhjX/xU9OuYZkp0NdnFwhGADQeZkebpYvX678/HwtWbJEOTk5WrRokSZOnKht27YpPT29Uf/169fr6quvVkFBgS6//HI9/fTTuvLKK7Vp0yYNGzbMhBk0OFRdrwvvX6fDNcFTfq/sHklK97jVLSlRrgSHEh12ORNscjrsR77++tn5rdfD+6bKze0PAACdmM0wjGNcZL995OTkaOzYsfrrX/8qSYpEIsrKytKvf/1r3XrrrY36T5kyRdXV1XrppZeibd/5znc0cuRILVmypFH/QCCgQODr06P9fr+ysrJUUVEhj8fTavPYVHxIVz20XlLD7QkS7DYlOuxKcDQ8JzrsSrDblOCwK/FIW+M+Nk0YmqErz8lstboAALACv9+v1NTUZn1+m7rlpr6+Xhs3btScOXOibXa7XXl5eSoqKmpyTFFRkfLz82PaJk6cqBUrVjTZv6CgQHfeeWer1XwsNkmuBLuyuifp9fzxbf79AABA00w9W6q8vFzhcFherzem3ev1qrS0tMkxpaWlLeo/Z84cVVRURB979uxpneK/5Zx+3bTtD5cQbAAAMJnpx9y0NZfLJZfLZXYZAACgnZi65aZnz55yOBzy+Xwx7T6fTxkZGU2OycjIaFF/AADQuZgabpxOp0aPHq3CwsJoWyQSUWFhoXJzc5sck5ubG9Nfkl577bVj9gcAAJ2L6bul8vPzNX36dI0ZM0bnnnuuFi1apOrqas2YMUOSNG3aNGVmZqqgoECSdPPNN2v8+PG6//77ddlll+mZZ57R+++/r7/97W9mTgMAAMQJ08PNlClTtH//fs2fP1+lpaUaOXKkVq9eHT1ouLi4WHb71xuYxo0bp6efflpz587VbbfdpkGDBmnFihWmXuMGAADED9Ovc9PeWnKePAAAiA8t+fzmxpkAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSTL9CcXs7es1Cv99vciUAAKC5jn5uN+faw50u3FRWVkqSsrKyTK4EAAC0VGVlpVJTU4/bp9PdfiESiWjfvn1KSUmRzWYzu5xW5ff7lZWVpT179nTKW0t09vlLrIPOPn+JddDZ5y9Zdx0YhqHKykr16dMn5p6TTel0W27sdrv69u1rdhltyuPxWOoHuqU6+/wl1kFnn7/EOujs85esuQ5OtMXmKA4oBgAAlkK4AQAAlkK4sRCXy6UFCxbI5XKZXYopOvv8JdZBZ5+/xDro7POXWAdSJzygGAAAWBtbbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbuLcm2++qcmTJ6tPnz6y2WxasWJFoz5bt27VD37wA6Wmpio5OVljx45VcXFxdHldXZ1mzpypHj16qGvXrvrRj34kn8/XjrM4NSdaB1VVVZo1a5b69u2rLl26aOjQoVqyZElMn468DgoKCjR27FilpKQoPT1dV155pbZt2xbTpznzKy4u1mWXXaakpCSlp6frv/7rvxQKhdpzKiflRPM/ePCgfv3rX2vw4MHq0qWL+vXrp//4j/9QRUVFzPt01PlLzfsZOMowDF1yySVN/q501HXQ3PkXFRXp+9//vpKTk+XxeHTBBReotrY2uvzgwYO69tpr5fF4lJaWpuuvv15VVVXtOZWT0pz5l5aWaurUqcrIyFBycrJGjRqlf/7znzF9Our8TwbhJs5VV1drxIgRWrx4cZPLd+7cqe9+97saMmSI1q1bpw8//FDz5s2T2+2O9pk9e7b+93//V88995zeeOMN7du3T1dddVV7TeGUnWgd5Ofna/Xq1fqf//kfbd26VbfccotmzZqllStXRvt05HXwxhtvaObMmXrnnXf02muvKRgMasKECaquro72OdH8wuGwLrvsMtXX12v9+vV64okntGzZMs2fP9+MKbXIiea/b98+7du3T/fdd58+/vhjLVu2TKtXr9b1118ffY+OPH+peT8DRy1atKjJW8t05HXQnPkXFRVp0qRJmjBhgjZs2KD33ntPs2bNirlM/7XXXqtPPvlEr732ml566SW9+eab+sUvfmHGlFqkOfOfNm2atm3bppUrV+qjjz7SVVddpZ/85CfavHlztE9Hnf9JMdBhSDJeeOGFmLYpU6YYP/3pT4855vDhw0ZiYqLx3HPPRdu2bt1qSDKKioraqtQ209Q6OOuss4zf//73MW2jRo0ybr/9dsMwrLcOysrKDEnGG2+8YRhG8+b38ssvG3a73SgtLY32efjhhw2Px2MEAoH2ncAp+vb8m/Lss88aTqfTCAaDhmFYa/6Gcex1sHnzZiMzM9MoKSlp9LtipXXQ1PxzcnKMuXPnHnPMp59+akgy3nvvvWjbK6+8YthsNmPv3r1tWm9ra2r+ycnJxpNPPhnTr3v37sYjjzxiGIa15t8cbLnpwCKRiFatWqUzzjhDEydOVHp6unJycmI2RW/cuFHBYFB5eXnRtiFDhqhfv34qKioyoerWN27cOK1cuVJ79+6VYRhau3atPv/8c02YMEGS9dbB0d0t3bt3l9S8+RUVFenss8+W1+uN9pk4caL8fr8++eSTdqz+1H17/sfq4/F4lJDQcPs8K81fanod1NTU6JprrtHixYuVkZHRaIyV1sG3519WVqZ3331X6enpGjdunLxer8aPH6+33347OqaoqEhpaWkaM2ZMtC0vL092u13vvvtu+07gFDX17z9u3DgtX75cBw8eVCQS0TPPPKO6ujp973vfk2St+TcH4aYDKysrU1VVle655x5NmjRJ//rXv/TDH/5QV111ld544w1JDfthnU6n0tLSYsZ6vV6VlpaaUHXre/DBBzV06FD17dtXTqdTkyZN0uLFi3XBBRdIstY6iEQiuuWWW3Teeedp2LBhkpo3v9LS0pgPtaPLjy7rKJqa/7eVl5frrrvuitncbpX5S8deB7Nnz9a4ceN0xRVXNDnOKuugqfl/8cUXkqQ77rhDN9xwg1avXq1Ro0bpoosu0vbt2yU1zDE9PT3mvRISEtS9e/cOP39JevbZZxUMBtWjRw+5XC798pe/1AsvvKCBAwdKss78m6vT3RXcSiKRiCTpiiuu0OzZsyVJI0eO1Pr167VkyRKNHz/ezPLazYMPPqh33nlHK1euVP/+/fXmm29q5syZ6tOnT8zWDCuYOXOmPv7445j/kXYmJ5q/3+/XZZddpqFDh+qOO+5o3+LaSVPrYOXKlVqzZk3M8RVW1dT8j/4t/OUvf6kZM2ZIks455xwVFhZq6dKlKigoMKXWtnCs34F58+bp8OHDev3119WzZ0+tWLFCP/nJT/TWW2/p7LPPNqla87DlpgPr2bOnEhISNHTo0Jj2M888M3q2VEZGhurr63X48OGYPj6fr8lN1x1NbW2tbrvtNi1cuFCTJ0/W8OHDNWvWLE2ZMkX33XefJOusg1mzZumll17S2rVr1bdv32h7c+aXkZHR6Oypo687yjo41vyPqqys1KRJk5SSkqIXXnhBiYmJ0WVWmL907HWwZs0a7dy5U2lpaUpISIjujvvRj34U3S1hhXVwrPn37t1bkk74t7CsrCxmeSgU0sGDBzv8/Hfu3Km//vWvWrp0qS666CKNGDFCCxYs0JgxY6InYlhh/i1BuOnAnE6nxo4d2+iUwM8//1z9+/eXJI0ePVqJiYkqLCyMLt+2bZuKi4uVm5vbrvW2hWAwqGAwGHNGhCQ5HI7o/+Y6+jowDEOzZs3SCy+8oDVr1mjAgAExy5szv9zcXH300Ucxf9xee+01eTyeRh8I8eZE85catthMmDBBTqdTK1eujDlbUOrY85dOvA5uvfVWffjhh9qyZUv0IUl/+ctf9Pjjj0vq2OvgRPPPzs5Wnz59jvu3MDc3V4cPH9bGjRujy9esWaNIJKKcnJy2n8QpONH8a2pqJOm4fwc78vxPiplHM+PEKisrjc2bNxubN282JBkLFy40Nm/ebHz55ZeGYRjG888/byQmJhp/+9vfjO3btxsPPvig4XA4jLfeeiv6HjfeeKPRr18/Y82aNcb7779v5ObmGrm5uWZNqcVOtA7Gjx9vnHXWWcbatWuNL774wnj88ccNt9ttPPTQQ9H36Mjr4KabbjJSU1ONdevWGSUlJdFHTU1NtM+J5hcKhYxhw4YZEyZMMLZs2WKsXr3a6NWrlzFnzhwzptQiJ5p/RUWFkZOTY5x99tnGjh07YvqEQiHDMDr2/A2jeT8D36ZvnS3VkddBc+b/l7/8xfB4PMZzzz1nbN++3Zg7d67hdruNHTt2RPtMmjTJOOecc4x3333XePvtt41BgwYZV199tRlTapETzb++vt4YOHCgcf755xvvvvuusWPHDuO+++4zbDabsWrVquj7dNT5nwzCTZxbu3atIanRY/r06dE+jz32mDFw4EDD7XYbI0aMMFasWBHzHrW1tcavfvUro1u3bkZSUpLxwx/+0CgpKWnnmZy8E62DkpIS47rrrjP69OljuN1uY/Dgwcb9999vRCKR6Ht05HXQ1NwlGY8//ni0T3Pmt3v3buOSSy4xunTpYvTs2dP4z//8z+ip0vHsRPM/1s+HJGPXrl3R9+mo8zeM5v0MNDXm25dN6KjroLnzLygoMPr27WskJSUZubm5Mf/JMwzDOHDggHH11VcbXbt2NTwejzFjxgyjsrKyHWdycpoz/88//9y46qqrjPT0dCMpKckYPnx4o1PDO+r8T4bNMAyjtbcGAQAAmIVjbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgAAgKUQbgDEneuuu042m002m02JiYnyer26+OKLtXTp0uiNAJtj2bJlSktLa7tCAcQlwg2AuDRp0iSVlJRo9+7deuWVV3ThhRfq5ptv1uWXX65QKGR2eQDiGOEGQFxyuVzKyMhQZmamRo0apdtuu00vvviiXnnlFS1btkyStHDhQp199tlKTk5WVlaWfvWrX6mqqkqStG7dOs2YMUMVFRXRrUB33HGHJOnvf/+7xowZo5SUFGVkZOiaa65RWVmZSTMF0NoINwA6jO9///saMWKEnn/+eUmS3W7XAw88oE8++URPPPGE1qxZo9/+9reSpHHjxmnRokXyeDwqKSlRSUmJfvOb30iSgsGg7rrrLn3wwQdasWKFdu/ereuuu86saQFoZQlmFwAALTFkyBB9+OGHkqRbbrkl2p6dna0//OEPuvHGG/XQQw/J6XQqNTVVNptNGRkZMe/xs5/9LPr1aaedpgceeEBjx45VVVWVunbt2i7zANB22HIDoEMxDEM2m02S9Prrr+uiiy5SZmamUlJSNHXqVB04cEA1NTXHfY+NGzdq8uTJ6tevn1JSUjR+/HhJUnFxcZvXD6DtEW4AdChbt27VgAEDtHv3bl1++eUaPny4/vnPf2rjxo1avHixJKm+vv6Y46urqzVx4kR5PB499dRTeu+99/TCCy+ccByAjoPdUgA6jDVr1uijjz7S7NmztXHjRkUiEd1///2y2xv+n/bss8/G9Hc6nQqHwzFtn332mQ4cOKB77rlHWVlZkqT333+/fSYAoF2w5QZAXAoEAiotLdXevXu1adMm3X333briiit0+eWXa9q0aRo4cKCCwaAefPBBffHFF/r73/+uJUuWxLxHdna2qqqqVFhYqPLyctXU1Khfv35yOp3RcStXrtRdd91l0iwBtAXCDYC4tHr1avXu3VvZ2dmaNGmS1q5dqwceeEAvvviiHA6HRowYoYULF+ree+/VsGHD9NRTT6mgoCDmPcaNG6cbb7xRU6ZMUa9evfSnP/1JvXr10rJly/Tcc89p6NChuueee3TfffeZNEsAbcFmGIZhdhEAAACthS03AADAUgg3AADAUgg3AADAUgg3AADAUgg3AADAUgg3AADAUgg3AADAUgg3AADAUgg3AADAUgg3AADAUgg3AADAUv4f95rAJDIJ+KgAAAAASUVORK5CYII=\n"
          },
          "metadata": {}
        }
      ],
      "source": [
        "# plotting the CDF\n",
        "sorted_weight = np.sort(df['Weight(pounds)']) # TODO, Store the sorted heights\n",
        "plt.plot(sorted_weight, cdf_weight) # TODO, Plot the sorted weight\n",
        "plt.xlabel('Data')\n",
        "plt.ylabel('CDF')\n",
        "plt.show()"
      ]
    }
  ],
  "metadata": {
    "kernelspec": {
      "display_name": "Python 3",
      "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.13"
    },
    "colab": {
      "provenance": []
    },
    "accelerator": "TPU"
  },
  "nbformat": 4,
  "nbformat_minor": 5
}