Skip to content

Instantly share code, notes, and snippets.

@adeways2000
Created March 23, 2021 22:16
Show Gist options
  • Select an option

  • Save adeways2000/88411b5ea054a4ecaf54540b66b46f6b to your computer and use it in GitHub Desktop.

Select an option

Save adeways2000/88411b5ea054a4ecaf54540b66b46f6b to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"metadata": {},
"cell_type": "markdown",
"source": "<center>\n <img src=\"https://gitlab.com/ibm/skills-network/courses/placeholder101/-/raw/master/labs/module%201/images/IDSNlogo.png\" width=\"300\" alt=\"cognitiveclass.ai logo\" />\n</center>\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "# **Exploratory Data Analysis Lab**\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Estimated time needed: **30** minutes\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "In this module you get to work with the cleaned dataset from the previous module.\n\nIn this assignment you will perform the task of exploratory data analysis.\nYou will find out the distribution of data, presence of outliers and also determine the correlation between different columns in the dataset.\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Objectives\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "In this lab you will perform the following:\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "- Identify the distribution of data in the dataset.\n\n- Identify outliers in the dataset.\n\n- Remove outliers from the dataset.\n\n- Identify correlation between features in the dataset.\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "* * *\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Hands on Lab\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Import the pandas module.\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "import pandas as pd\n\n%matplotlib inline\n\nimport matplotlib as mpl\nimport matplotlib.pyplot as plt",
"execution_count": 33,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Load the dataset into a dataframe.\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "df = pd.read_csv(\"https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBM-DA0321EN-SkillsNetwork/LargeData/m2_survey_data.csv\")\ndf.tail()",
"execution_count": 4,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 4,
"data": {
"text/plain": " Respondent MainBranch Hobbyist \\\n11393 25136 I am a developer by profession Yes \n11394 25137 I am a developer by profession Yes \n11395 25138 I am a developer by profession Yes \n11396 25141 I am a developer by profession Yes \n11397 25142 I am a developer by profession Yes \n\n OpenSourcer \\\n11393 Never \n11394 Never \n11395 Less than once per year \n11396 Less than once a month but more than once per ... \n11397 Less than once a month but more than once per ... \n\n OpenSource Employment \\\n11393 OSS is, on average, of HIGHER quality than pro... Employed full-time \n11394 The quality of OSS and closed source software ... Employed full-time \n11395 The quality of OSS and closed source software ... Employed full-time \n11396 OSS is, on average, of LOWER quality than prop... Employed full-time \n11397 OSS is, on average, of HIGHER quality than pro... Employed full-time \n\n Country Student \\\n11393 United States No \n11394 Poland No \n11395 United States No \n11396 Switzerland No \n11397 United Kingdom No \n\n EdLevel \\\n11393 Master\u2019s degree (MA, MS, M.Eng., MBA, etc.) \n11394 Master\u2019s degree (MA, MS, M.Eng., MBA, etc.) \n11395 Master\u2019s degree (MA, MS, M.Eng., MBA, etc.) \n11396 Secondary school (e.g. American high school, G... \n11397 Other doctoral degree (Ph.D, Ed.D., etc.) \n\n UndergradMajor ... \\\n11393 Computer science, computer engineering, or sof... ... \n11394 Computer science, computer engineering, or sof... ... \n11395 Computer science, computer engineering, or sof... ... \n11396 NaN ... \n11397 A natural science (ex. biology, chemistry, phy... ... \n\n WelcomeChange \\\n11393 Just as welcome now as I felt last year \n11394 A lot more welcome now than last year \n11395 A lot more welcome now than last year \n11396 Somewhat less welcome now than last year \n11397 Just as welcome now as I felt last year \n\n SONewContent Age Gender Trans \\\n11393 Tech articles written by other developers;Cour... 36.0 Man No \n11394 Tech articles written by other developers;Tech... 25.0 Man No \n11395 Tech articles written by other developers;Indu... 34.0 Man No \n11396 NaN 25.0 Man No \n11397 Tech articles written by other developers;Tech... 30.0 Man No \n\n Sexuality Ethnicity Dependents \\\n11393 Straight / Heterosexual White or of European descent No \n11394 Straight / Heterosexual White or of European descent No \n11395 Straight / Heterosexual White or of European descent Yes \n11396 Straight / Heterosexual White or of European descent No \n11397 Bisexual White or of European descent No \n\n SurveyLength SurveyEase \n11393 Appropriate in length Difficult \n11394 Appropriate in length Neither easy nor difficult \n11395 Too long Easy \n11396 Appropriate in length Easy \n11397 Appropriate in length Easy \n\n[5 rows x 85 columns]",
"text/html": "<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>Respondent</th>\n <th>MainBranch</th>\n <th>Hobbyist</th>\n <th>OpenSourcer</th>\n <th>OpenSource</th>\n <th>Employment</th>\n <th>Country</th>\n <th>Student</th>\n <th>EdLevel</th>\n <th>UndergradMajor</th>\n <th>...</th>\n <th>WelcomeChange</th>\n <th>SONewContent</th>\n <th>Age</th>\n <th>Gender</th>\n <th>Trans</th>\n <th>Sexuality</th>\n <th>Ethnicity</th>\n <th>Dependents</th>\n <th>SurveyLength</th>\n <th>SurveyEase</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>11393</th>\n <td>25136</td>\n <td>I am a developer by profession</td>\n <td>Yes</td>\n <td>Never</td>\n <td>OSS is, on average, of HIGHER quality than pro...</td>\n <td>Employed full-time</td>\n <td>United States</td>\n <td>No</td>\n <td>Master\u2019s degree (MA, MS, M.Eng., MBA, etc.)</td>\n <td>Computer science, computer engineering, or sof...</td>\n <td>...</td>\n <td>Just as welcome now as I felt last year</td>\n <td>Tech articles written by other developers;Cour...</td>\n <td>36.0</td>\n <td>Man</td>\n <td>No</td>\n <td>Straight / Heterosexual</td>\n <td>White or of European descent</td>\n <td>No</td>\n <td>Appropriate in length</td>\n <td>Difficult</td>\n </tr>\n <tr>\n <th>11394</th>\n <td>25137</td>\n <td>I am a developer by profession</td>\n <td>Yes</td>\n <td>Never</td>\n <td>The quality of OSS and closed source software ...</td>\n <td>Employed full-time</td>\n <td>Poland</td>\n <td>No</td>\n <td>Master\u2019s degree (MA, MS, M.Eng., MBA, etc.)</td>\n <td>Computer science, computer engineering, or sof...</td>\n <td>...</td>\n <td>A lot more welcome now than last year</td>\n <td>Tech articles written by other developers;Tech...</td>\n <td>25.0</td>\n <td>Man</td>\n <td>No</td>\n <td>Straight / Heterosexual</td>\n <td>White or of European descent</td>\n <td>No</td>\n <td>Appropriate in length</td>\n <td>Neither easy nor difficult</td>\n </tr>\n <tr>\n <th>11395</th>\n <td>25138</td>\n <td>I am a developer by profession</td>\n <td>Yes</td>\n <td>Less than once per year</td>\n <td>The quality of OSS and closed source software ...</td>\n <td>Employed full-time</td>\n <td>United States</td>\n <td>No</td>\n <td>Master\u2019s degree (MA, MS, M.Eng., MBA, etc.)</td>\n <td>Computer science, computer engineering, or sof...</td>\n <td>...</td>\n <td>A lot more welcome now than last year</td>\n <td>Tech articles written by other developers;Indu...</td>\n <td>34.0</td>\n <td>Man</td>\n <td>No</td>\n <td>Straight / Heterosexual</td>\n <td>White or of European descent</td>\n <td>Yes</td>\n <td>Too long</td>\n <td>Easy</td>\n </tr>\n <tr>\n <th>11396</th>\n <td>25141</td>\n <td>I am a developer by profession</td>\n <td>Yes</td>\n <td>Less than once a month but more than once per ...</td>\n <td>OSS is, on average, of LOWER quality than prop...</td>\n <td>Employed full-time</td>\n <td>Switzerland</td>\n <td>No</td>\n <td>Secondary school (e.g. American high school, G...</td>\n <td>NaN</td>\n <td>...</td>\n <td>Somewhat less welcome now than last year</td>\n <td>NaN</td>\n <td>25.0</td>\n <td>Man</td>\n <td>No</td>\n <td>Straight / Heterosexual</td>\n <td>White or of European descent</td>\n <td>No</td>\n <td>Appropriate in length</td>\n <td>Easy</td>\n </tr>\n <tr>\n <th>11397</th>\n <td>25142</td>\n <td>I am a developer by profession</td>\n <td>Yes</td>\n <td>Less than once a month but more than once per ...</td>\n <td>OSS is, on average, of HIGHER quality than pro...</td>\n <td>Employed full-time</td>\n <td>United Kingdom</td>\n <td>No</td>\n <td>Other doctoral degree (Ph.D, Ed.D., etc.)</td>\n <td>A natural science (ex. biology, chemistry, phy...</td>\n <td>...</td>\n <td>Just as welcome now as I felt last year</td>\n <td>Tech articles written by other developers;Tech...</td>\n <td>30.0</td>\n <td>Man</td>\n <td>No</td>\n <td>Bisexual</td>\n <td>White or of European descent</td>\n <td>No</td>\n <td>Appropriate in length</td>\n <td>Easy</td>\n </tr>\n </tbody>\n</table>\n<p>5 rows \u00d7 85 columns</p>\n</div>"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Distribution\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### Determine how the data is distributed\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "The column `ConvertedComp` contains Salary converted to annual USD salaries using the exchange rate on 2019-02-01.\n\nThis assumes 12 working months and 50 working weeks.\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Plot the distribution curve for the column `ConvertedComp`.\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\n",
"execution_count": null,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Plot the histogram for the column `ConvertedComp`.\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\n",
"execution_count": null,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "What is the median of the column `ConvertedComp`?\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\ndf.ConvertedComp.median()",
"execution_count": 11,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 11,
"data": {
"text/plain": "57745.0"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "How many responders identified themselves only as a **Man**?\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\n\ndf['Gender'].value_counts()",
"execution_count": 8,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 8,
"data": {
"text/plain": "Man 10480\nWoman 731\nNon-binary, genderqueer, or gender non-conforming 63\nMan;Non-binary, genderqueer, or gender non-conforming 26\nWoman;Non-binary, genderqueer, or gender non-conforming 14\nWoman;Man 9\nWoman;Man;Non-binary, genderqueer, or gender non-conforming 2\nName: Gender, dtype: int64"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Find out the median ConvertedComp of responders identified themselves only as a **Woman**?\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\n",
"execution_count": 24,
"outputs": [
{
"output_type": "error",
"ename": "KeyError",
"evalue": "'Woman'",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m/opt/conda/envs/Python-3.7-main/lib/python3.7/site-packages/pandas/core/indexes/base.py\u001b[0m in \u001b[0;36mget_loc\u001b[0;34m(self, key, method, tolerance)\u001b[0m\n\u001b[1;32m 2645\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2646\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2647\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32mpandas/_libs/index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n",
"\u001b[0;32mpandas/_libs/index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n",
"\u001b[0;32mpandas/_libs/hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n",
"\u001b[0;32mpandas/_libs/hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n",
"\u001b[0;31mKeyError\u001b[0m: 'Woman'",
"\nDuring handling of the above exception, another exception occurred:\n",
"\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-24-5538e39fccfe>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;31m# your code goes here\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 3\u001b[0;31m \u001b[0mdf\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'Woman'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalue_counts\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;32m/opt/conda/envs/Python-3.7-main/lib/python3.7/site-packages/pandas/core/frame.py\u001b[0m in \u001b[0;36m__getitem__\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 2798\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mnlevels\u001b[0m \u001b[0;34m>\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2799\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_getitem_multilevel\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2800\u001b[0;31m \u001b[0mindexer\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2801\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mis_integer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mindexer\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2802\u001b[0m \u001b[0mindexer\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0mindexer\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32m/opt/conda/envs/Python-3.7-main/lib/python3.7/site-packages/pandas/core/indexes/base.py\u001b[0m in \u001b[0;36mget_loc\u001b[0;34m(self, key, method, tolerance)\u001b[0m\n\u001b[1;32m 2646\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2647\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2648\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_maybe_cast_indexer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2649\u001b[0m \u001b[0mindexer\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_indexer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmethod\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmethod\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtolerance\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mtolerance\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2650\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mindexer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mndim\u001b[0m \u001b[0;34m>\u001b[0m \u001b[0;36m1\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0mindexer\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msize\u001b[0m \u001b[0;34m>\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;32mpandas/_libs/index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n",
"\u001b[0;32mpandas/_libs/index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[0;34m()\u001b[0m\n",
"\u001b[0;32mpandas/_libs/hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n",
"\u001b[0;32mpandas/_libs/hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[0;34m()\u001b[0m\n",
"\u001b[0;31mKeyError\u001b[0m: 'Woman'"
]
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Give the five number summary for the column `Age`?\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "**Double click here for hint**.\n\n<!--\nmin,q1,median,q3,max of a column are its five number summary.\n-->\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\ndf.describe()",
"execution_count": 26,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 26,
"data": {
"text/plain": " Respondent CompTotal ConvertedComp WorkWeekHrs CodeRevHrs \\\ncount 11398.000000 1.058900e+04 1.058200e+04 11276.000000 8972.000000 \nmean 12490.392437 7.570477e+05 1.315967e+05 42.064606 4.781071 \nstd 7235.461999 9.705598e+06 2.947865e+05 24.672741 4.567060 \nmin 4.000000 0.000000e+00 0.000000e+00 3.000000 0.000000 \n25% 6264.250000 2.500000e+04 2.686800e+04 40.000000 2.000000 \n50% 12484.000000 6.500000e+04 5.774500e+04 40.000000 4.000000 \n75% 18784.750000 1.200000e+05 1.000000e+05 43.000000 5.000000 \nmax 25142.000000 7.000000e+08 2.000000e+06 1012.000000 99.000000 \n\n Age \ncount 11111.000000 \nmean 30.778895 \nstd 7.393686 \nmin 16.000000 \n25% 25.000000 \n50% 29.000000 \n75% 35.000000 \nmax 99.000000 ",
"text/html": "<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>Respondent</th>\n <th>CompTotal</th>\n <th>ConvertedComp</th>\n <th>WorkWeekHrs</th>\n <th>CodeRevHrs</th>\n <th>Age</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>count</th>\n <td>11398.000000</td>\n <td>1.058900e+04</td>\n <td>1.058200e+04</td>\n <td>11276.000000</td>\n <td>8972.000000</td>\n <td>11111.000000</td>\n </tr>\n <tr>\n <th>mean</th>\n <td>12490.392437</td>\n <td>7.570477e+05</td>\n <td>1.315967e+05</td>\n <td>42.064606</td>\n <td>4.781071</td>\n <td>30.778895</td>\n </tr>\n <tr>\n <th>std</th>\n <td>7235.461999</td>\n <td>9.705598e+06</td>\n <td>2.947865e+05</td>\n <td>24.672741</td>\n <td>4.567060</td>\n <td>7.393686</td>\n </tr>\n <tr>\n <th>min</th>\n <td>4.000000</td>\n <td>0.000000e+00</td>\n <td>0.000000e+00</td>\n <td>3.000000</td>\n <td>0.000000</td>\n <td>16.000000</td>\n </tr>\n <tr>\n <th>25%</th>\n <td>6264.250000</td>\n <td>2.500000e+04</td>\n <td>2.686800e+04</td>\n <td>40.000000</td>\n <td>2.000000</td>\n <td>25.000000</td>\n </tr>\n <tr>\n <th>50%</th>\n <td>12484.000000</td>\n <td>6.500000e+04</td>\n <td>5.774500e+04</td>\n <td>40.000000</td>\n <td>4.000000</td>\n <td>29.000000</td>\n </tr>\n <tr>\n <th>75%</th>\n <td>18784.750000</td>\n <td>1.200000e+05</td>\n <td>1.000000e+05</td>\n <td>43.000000</td>\n <td>5.000000</td>\n <td>35.000000</td>\n </tr>\n <tr>\n <th>max</th>\n <td>25142.000000</td>\n <td>7.000000e+08</td>\n <td>2.000000e+06</td>\n <td>1012.000000</td>\n <td>99.000000</td>\n <td>99.000000</td>\n </tr>\n </tbody>\n</table>\n</div>"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Plot a histogram of the column `Age`.\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\ndf.Age.hist(bins=20);",
"execution_count": 7,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
"image/png": "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\n"
},
"metadata": {
"needs_background": "light"
}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Outliers\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### Finding outliers\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Find out if outliers exist in the column `ConvertedComp` using a box plot?\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\ndf_ConvertedComp= df['ConvertedComp']\ndf_ConvertedComp.head()\ndf_ConvertedComp.plot(kind='box', figsize=(10, 8))\n\nplt.title('Converted Compensation')\n\nplt.show()",
"execution_count": 63,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 720x576 with 1 Axes>",
"image/png": "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\n"
},
"metadata": {
"needs_background": "light"
}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Find out the Inter Quartile Range for the column `ConvertedComp`.\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\ndf_ConvertedComp.describe()",
"execution_count": 50,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 50,
"data": {
"text/plain": "count 1.058200e+04\nmean 1.315967e+05\nstd 2.947865e+05\nmin 0.000000e+00\n25% 2.686800e+04\n50% 5.774500e+04\n75% 1.000000e+05\nmax 2.000000e+06\nName: ConvertedComp, dtype: float64"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Find out the upper and lower bounds.\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\n",
"execution_count": null,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Identify how many outliers are there in the `ConvertedComp` column.\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\n",
"execution_count": null,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Create a new dataframe by removing the outliers from the `ConvertedComp` column.\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\n",
"execution_count": null,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Correlation\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### Finding correlation\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Find the correlation between `Age` and all other numerical columns.\n"
},
{
"metadata": {},
"cell_type": "code",
"source": "# your code goes here\ndf.corr()\n",
"execution_count": 70,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 70,
"data": {
"text/plain": " Respondent CompTotal ConvertedComp WorkWeekHrs CodeRevHrs \\\nRespondent 1.000000 -0.013490 0.002181 -0.015314 0.004621 \nCompTotal -0.013490 1.000000 0.001037 0.003510 0.007063 \nConvertedComp 0.002181 0.001037 1.000000 0.021143 -0.033865 \nWorkWeekHrs -0.015314 0.003510 0.021143 1.000000 0.026517 \nCodeRevHrs 0.004621 0.007063 -0.033865 0.026517 1.000000 \nAge 0.004041 0.006970 0.105386 0.036518 -0.020469 \n\n Age \nRespondent 0.004041 \nCompTotal 0.006970 \nConvertedComp 0.105386 \nWorkWeekHrs 0.036518 \nCodeRevHrs -0.020469 \nAge 1.000000 ",
"text/html": "<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>Respondent</th>\n <th>CompTotal</th>\n <th>ConvertedComp</th>\n <th>WorkWeekHrs</th>\n <th>CodeRevHrs</th>\n <th>Age</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>Respondent</th>\n <td>1.000000</td>\n <td>-0.013490</td>\n <td>0.002181</td>\n <td>-0.015314</td>\n <td>0.004621</td>\n <td>0.004041</td>\n </tr>\n <tr>\n <th>CompTotal</th>\n <td>-0.013490</td>\n <td>1.000000</td>\n <td>0.001037</td>\n <td>0.003510</td>\n <td>0.007063</td>\n <td>0.006970</td>\n </tr>\n <tr>\n <th>ConvertedComp</th>\n <td>0.002181</td>\n <td>0.001037</td>\n <td>1.000000</td>\n <td>0.021143</td>\n <td>-0.033865</td>\n <td>0.105386</td>\n </tr>\n <tr>\n <th>WorkWeekHrs</th>\n <td>-0.015314</td>\n <td>0.003510</td>\n <td>0.021143</td>\n <td>1.000000</td>\n <td>0.026517</td>\n <td>0.036518</td>\n </tr>\n <tr>\n <th>CodeRevHrs</th>\n <td>0.004621</td>\n <td>0.007063</td>\n <td>-0.033865</td>\n <td>0.026517</td>\n <td>1.000000</td>\n <td>-0.020469</td>\n </tr>\n <tr>\n <th>Age</th>\n <td>0.004041</td>\n <td>0.006970</td>\n <td>0.105386</td>\n <td>0.036518</td>\n <td>-0.020469</td>\n <td>1.000000</td>\n </tr>\n </tbody>\n</table>\n</div>"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Authors\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Ramesh Sannareddy\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### Other Contributors\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "Rav Ahuja\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Change Log\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "| Date (YYYY-MM-DD) | Version | Changed By | Change Description |\n| ----------------- | ------- | ----------------- | ---------------------------------- |\n| 2020-10-17 | 0.1 | Ramesh Sannareddy | Created initial version of the lab |\n"
},
{
"metadata": {},
"cell_type": "markdown",
"source": " Copyright \u00a9 2020 IBM Corporation. This notebook and its source code are released under the terms of the [MIT License](https://cognitiveclass.ai/mit-license?cm_mmc=Email_Newsletter-_-Developer_Ed%2BTech-_-WW_WW-_-SkillsNetwork-Courses-IBM-DA0321EN-SkillsNetwork-21426264&cm_mmca1=000026UJ&cm_mmca2=10006555&cm_mmca3=M12345678&cvosrc=email.Newsletter.M12345678&cvo_campaign=000026UJ&cm_mmc=Email_Newsletter-_-Developer_Ed%2BTech-_-WW_WW-_-SkillsNetwork-Courses-IBM-DA0321EN-SkillsNetwork-21426264&cm_mmca1=000026UJ&cm_mmca2=10006555&cm_mmca3=M12345678&cvosrc=email.Newsletter.M12345678&cvo_campaign=000026UJ&cm_mmc=Email_Newsletter-_-Developer_Ed%2BTech-_-WW_WW-_-SkillsNetwork-Courses-IBM-DA0321EN-SkillsNetwork-21426264&cm_mmca1=000026UJ&cm_mmca2=10006555&cm_mmca3=M12345678&cvosrc=email.Newsletter.M12345678&cvo_campaign=000026UJ&cm_mmc=Email_Newsletter-_-Developer_Ed%2BTech-_-WW_WW-_-SkillsNetwork-Courses-IBM-DA0321EN-SkillsNetwork-21426264&cm_mmca1=000026UJ&cm_mmca2=10006555&cm_mmca3=M12345678&cvosrc=email.Newsletter.M12345678&cvo_campaign=000026UJ&cm_mmc=Email_Newsletter-_-Developer_Ed%2BTech-_-WW_WW-_-SkillsNetwork-Courses-IBM-DA0321EN-SkillsNetwork-21426264&cm_mmca1=000026UJ&cm_mmca2=10006555&cm_mmca3=M12345678&cvosrc=email.Newsletter.M12345678&cvo_campaign=000026UJ&cm_mmc=Email_Newsletter-_-Developer_Ed%2BTech-_-WW_WW-_-SkillsNetwork-Courses-IBM-DA0321EN-SkillsNetwork-21426264&cm_mmca1=000026UJ&cm_mmca2=10006555&cm_mmca3=M12345678&cvosrc=email.Newsletter.M12345678&cvo_campaign=000026UJ).\n"
}
],
"metadata": {
"kernelspec": {
"name": "python3",
"display_name": "Python 3.7",
"language": "python"
},
"language_info": {
"name": "python",
"version": "3.7.10",
"mimetype": "text/x-python",
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"pygments_lexer": "ipython3",
"nbconvert_exporter": "python",
"file_extension": ".py"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment