{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"df = pd.read_csv('../data/auto-mpg.csv')"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" mpg | \n",
" cylinders | \n",
" displacement | \n",
" horsepower | \n",
" weight | \n",
" acceleration | \n",
" year | \n",
" origin | \n",
" name | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 18.0 | \n",
" 8 | \n",
" 307.0 | \n",
" 130.0 | \n",
" 3504.0 | \n",
" 12.0 | \n",
" 70 | \n",
" 1 | \n",
" chevrolet chevelle malibu | \n",
"
\n",
" \n",
" 1 | \n",
" 15.0 | \n",
" 8 | \n",
" 350.0 | \n",
" 165.0 | \n",
" 3693.0 | \n",
" 11.5 | \n",
" 70 | \n",
" 1 | \n",
" buick skylark 320 | \n",
"
\n",
" \n",
" 2 | \n",
" 18.0 | \n",
" 8 | \n",
" 318.0 | \n",
" 150.0 | \n",
" 3436.0 | \n",
" 11.0 | \n",
" 70 | \n",
" 1 | \n",
" plymouth satellite | \n",
"
\n",
" \n",
" 3 | \n",
" 16.0 | \n",
" 8 | \n",
" 304.0 | \n",
" 150.0 | \n",
" 3433.0 | \n",
" 12.0 | \n",
" 70 | \n",
" 1 | \n",
" amc rebel sst | \n",
"
\n",
" \n",
" 4 | \n",
" 17.0 | \n",
" 8 | \n",
" 302.0 | \n",
" 140.0 | \n",
" 3449.0 | \n",
" 10.5 | \n",
" 70 | \n",
" 1 | \n",
" ford torino | \n",
"
\n",
" \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
"
\n",
" \n",
" 387 | \n",
" 27.0 | \n",
" 4 | \n",
" 140.0 | \n",
" 86.0 | \n",
" 2790.0 | \n",
" 15.6 | \n",
" 82 | \n",
" 1 | \n",
" ford mustang gl | \n",
"
\n",
" \n",
" 388 | \n",
" 44.0 | \n",
" 4 | \n",
" 97.0 | \n",
" 52.0 | \n",
" 2130.0 | \n",
" 24.6 | \n",
" 82 | \n",
" 2 | \n",
" vw pickup | \n",
"
\n",
" \n",
" 389 | \n",
" 32.0 | \n",
" 4 | \n",
" 135.0 | \n",
" 84.0 | \n",
" 2295.0 | \n",
" 11.6 | \n",
" 82 | \n",
" 1 | \n",
" dodge rampage | \n",
"
\n",
" \n",
" 390 | \n",
" 28.0 | \n",
" 4 | \n",
" 120.0 | \n",
" 79.0 | \n",
" 2625.0 | \n",
" 18.6 | \n",
" 82 | \n",
" 1 | \n",
" ford ranger | \n",
"
\n",
" \n",
" 391 | \n",
" 31.0 | \n",
" 4 | \n",
" 119.0 | \n",
" 82.0 | \n",
" 2720.0 | \n",
" 19.4 | \n",
" 82 | \n",
" 1 | \n",
" chevy s-10 | \n",
"
\n",
" \n",
"
\n",
"
392 rows × 9 columns
\n",
"
"
],
"text/plain": [
" mpg cylinders displacement horsepower weight acceleration year \\\n",
"0 18.0 8 307.0 130.0 3504.0 12.0 70 \n",
"1 15.0 8 350.0 165.0 3693.0 11.5 70 \n",
"2 18.0 8 318.0 150.0 3436.0 11.0 70 \n",
"3 16.0 8 304.0 150.0 3433.0 12.0 70 \n",
"4 17.0 8 302.0 140.0 3449.0 10.5 70 \n",
".. ... ... ... ... ... ... ... \n",
"387 27.0 4 140.0 86.0 2790.0 15.6 82 \n",
"388 44.0 4 97.0 52.0 2130.0 24.6 82 \n",
"389 32.0 4 135.0 84.0 2295.0 11.6 82 \n",
"390 28.0 4 120.0 79.0 2625.0 18.6 82 \n",
"391 31.0 4 119.0 82.0 2720.0 19.4 82 \n",
"\n",
" origin name \n",
"0 1 chevrolet chevelle malibu \n",
"1 1 buick skylark 320 \n",
"2 1 plymouth satellite \n",
"3 1 amc rebel sst \n",
"4 1 ford torino \n",
".. ... ... \n",
"387 1 ford mustang gl \n",
"388 2 vw pickup \n",
"389 1 dodge rampage \n",
"390 1 ford ranger \n",
"391 1 chevy s-10 \n",
"\n",
"[392 rows x 9 columns]"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(392, 9)"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.shape\n"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" mpg | \n",
" cylinders | \n",
" displacement | \n",
" horsepower | \n",
" weight | \n",
" acceleration | \n",
" year | \n",
" origin | \n",
" name | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 18.0 | \n",
" 8 | \n",
" 307.0 | \n",
" 130.0 | \n",
" 3504.0 | \n",
" 12.0 | \n",
" 70 | \n",
" 1 | \n",
" chevrolet chevelle malibu | \n",
"
\n",
" \n",
" 1 | \n",
" 15.0 | \n",
" 8 | \n",
" 350.0 | \n",
" 165.0 | \n",
" 3693.0 | \n",
" 11.5 | \n",
" 70 | \n",
" 1 | \n",
" buick skylark 320 | \n",
"
\n",
" \n",
" 2 | \n",
" 18.0 | \n",
" 8 | \n",
" 318.0 | \n",
" 150.0 | \n",
" 3436.0 | \n",
" 11.0 | \n",
" 70 | \n",
" 1 | \n",
" plymouth satellite | \n",
"
\n",
" \n",
" 3 | \n",
" 16.0 | \n",
" 8 | \n",
" 304.0 | \n",
" 150.0 | \n",
" 3433.0 | \n",
" 12.0 | \n",
" 70 | \n",
" 1 | \n",
" amc rebel sst | \n",
"
\n",
" \n",
" 4 | \n",
" 17.0 | \n",
" 8 | \n",
" 302.0 | \n",
" 140.0 | \n",
" 3449.0 | \n",
" 10.5 | \n",
" 70 | \n",
" 1 | \n",
" ford torino | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" mpg cylinders displacement horsepower weight acceleration year \\\n",
"0 18.0 8 307.0 130.0 3504.0 12.0 70 \n",
"1 15.0 8 350.0 165.0 3693.0 11.5 70 \n",
"2 18.0 8 318.0 150.0 3436.0 11.0 70 \n",
"3 16.0 8 304.0 150.0 3433.0 12.0 70 \n",
"4 17.0 8 302.0 140.0 3449.0 10.5 70 \n",
"\n",
" origin name \n",
"0 1 chevrolet chevelle malibu \n",
"1 1 buick skylark 320 \n",
"2 1 plymouth satellite \n",
"3 1 amc rebel sst \n",
"4 1 ford torino "
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" mpg | \n",
" cylinders | \n",
" displacement | \n",
" horsepower | \n",
" weight | \n",
" acceleration | \n",
" year | \n",
" origin | \n",
"
\n",
" \n",
" \n",
" \n",
" count | \n",
" 392.000000 | \n",
" 392.000000 | \n",
" 392.000000 | \n",
" 392.000000 | \n",
" 392.000000 | \n",
" 392.000000 | \n",
" 392.000000 | \n",
" 392.000000 | \n",
"
\n",
" \n",
" mean | \n",
" 23.445918 | \n",
" 5.471939 | \n",
" 194.411990 | \n",
" 104.469388 | \n",
" 2977.584184 | \n",
" 15.541327 | \n",
" 75.979592 | \n",
" 1.576531 | \n",
"
\n",
" \n",
" std | \n",
" 7.805007 | \n",
" 1.705783 | \n",
" 104.644004 | \n",
" 38.491160 | \n",
" 849.402560 | \n",
" 2.758864 | \n",
" 3.683737 | \n",
" 0.805518 | \n",
"
\n",
" \n",
" min | \n",
" 9.000000 | \n",
" 3.000000 | \n",
" 68.000000 | \n",
" 46.000000 | \n",
" 1613.000000 | \n",
" 8.000000 | \n",
" 70.000000 | \n",
" 1.000000 | \n",
"
\n",
" \n",
" 25% | \n",
" 17.000000 | \n",
" 4.000000 | \n",
" 105.000000 | \n",
" 75.000000 | \n",
" 2225.250000 | \n",
" 13.775000 | \n",
" 73.000000 | \n",
" 1.000000 | \n",
"
\n",
" \n",
" 50% | \n",
" 22.750000 | \n",
" 4.000000 | \n",
" 151.000000 | \n",
" 93.500000 | \n",
" 2803.500000 | \n",
" 15.500000 | \n",
" 76.000000 | \n",
" 1.000000 | \n",
"
\n",
" \n",
" 75% | \n",
" 29.000000 | \n",
" 8.000000 | \n",
" 275.750000 | \n",
" 126.000000 | \n",
" 3614.750000 | \n",
" 17.025000 | \n",
" 79.000000 | \n",
" 2.000000 | \n",
"
\n",
" \n",
" max | \n",
" 46.600000 | \n",
" 8.000000 | \n",
" 455.000000 | \n",
" 230.000000 | \n",
" 5140.000000 | \n",
" 24.800000 | \n",
" 82.000000 | \n",
" 3.000000 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" mpg cylinders displacement horsepower weight \\\n",
"count 392.000000 392.000000 392.000000 392.000000 392.000000 \n",
"mean 23.445918 5.471939 194.411990 104.469388 2977.584184 \n",
"std 7.805007 1.705783 104.644004 38.491160 849.402560 \n",
"min 9.000000 3.000000 68.000000 46.000000 1613.000000 \n",
"25% 17.000000 4.000000 105.000000 75.000000 2225.250000 \n",
"50% 22.750000 4.000000 151.000000 93.500000 2803.500000 \n",
"75% 29.000000 8.000000 275.750000 126.000000 3614.750000 \n",
"max 46.600000 8.000000 455.000000 230.000000 5140.000000 \n",
"\n",
" acceleration year origin \n",
"count 392.000000 392.000000 392.000000 \n",
"mean 15.541327 75.979592 1.576531 \n",
"std 2.758864 3.683737 0.805518 \n",
"min 8.000000 70.000000 1.000000 \n",
"25% 13.775000 73.000000 1.000000 \n",
"50% 15.500000 76.000000 1.000000 \n",
"75% 17.025000 79.000000 2.000000 \n",
"max 24.800000 82.000000 3.000000 "
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.describe()"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" mpg | \n",
" cylinders | \n",
" displacement | \n",
" horsepower | \n",
" weight | \n",
" acceleration | \n",
" year | \n",
" origin | \n",
"
\n",
" \n",
" \n",
" \n",
" mpg | \n",
" 1.000000 | \n",
" -0.777618 | \n",
" -0.805127 | \n",
" -0.778427 | \n",
" -0.832244 | \n",
" 0.423329 | \n",
" 0.580541 | \n",
" 0.565209 | \n",
"
\n",
" \n",
" cylinders | \n",
" -0.777618 | \n",
" 1.000000 | \n",
" 0.950823 | \n",
" 0.842983 | \n",
" 0.897527 | \n",
" -0.504683 | \n",
" -0.345647 | \n",
" -0.568932 | \n",
"
\n",
" \n",
" displacement | \n",
" -0.805127 | \n",
" 0.950823 | \n",
" 1.000000 | \n",
" 0.897257 | \n",
" 0.932994 | \n",
" -0.543800 | \n",
" -0.369855 | \n",
" -0.614535 | \n",
"
\n",
" \n",
" horsepower | \n",
" -0.778427 | \n",
" 0.842983 | \n",
" 0.897257 | \n",
" 1.000000 | \n",
" 0.864538 | \n",
" -0.689196 | \n",
" -0.416361 | \n",
" -0.455171 | \n",
"
\n",
" \n",
" weight | \n",
" -0.832244 | \n",
" 0.897527 | \n",
" 0.932994 | \n",
" 0.864538 | \n",
" 1.000000 | \n",
" -0.416839 | \n",
" -0.309120 | \n",
" -0.585005 | \n",
"
\n",
" \n",
" acceleration | \n",
" 0.423329 | \n",
" -0.504683 | \n",
" -0.543800 | \n",
" -0.689196 | \n",
" -0.416839 | \n",
" 1.000000 | \n",
" 0.290316 | \n",
" 0.212746 | \n",
"
\n",
" \n",
" year | \n",
" 0.580541 | \n",
" -0.345647 | \n",
" -0.369855 | \n",
" -0.416361 | \n",
" -0.309120 | \n",
" 0.290316 | \n",
" 1.000000 | \n",
" 0.181528 | \n",
"
\n",
" \n",
" origin | \n",
" 0.565209 | \n",
" -0.568932 | \n",
" -0.614535 | \n",
" -0.455171 | \n",
" -0.585005 | \n",
" 0.212746 | \n",
" 0.181528 | \n",
" 1.000000 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" mpg cylinders displacement horsepower weight \\\n",
"mpg 1.000000 -0.777618 -0.805127 -0.778427 -0.832244 \n",
"cylinders -0.777618 1.000000 0.950823 0.842983 0.897527 \n",
"displacement -0.805127 0.950823 1.000000 0.897257 0.932994 \n",
"horsepower -0.778427 0.842983 0.897257 1.000000 0.864538 \n",
"weight -0.832244 0.897527 0.932994 0.864538 1.000000 \n",
"acceleration 0.423329 -0.504683 -0.543800 -0.689196 -0.416839 \n",
"year 0.580541 -0.345647 -0.369855 -0.416361 -0.309120 \n",
"origin 0.565209 -0.568932 -0.614535 -0.455171 -0.585005 \n",
"\n",
" acceleration year origin \n",
"mpg 0.423329 0.580541 0.565209 \n",
"cylinders -0.504683 -0.345647 -0.568932 \n",
"displacement -0.543800 -0.369855 -0.614535 \n",
"horsepower -0.689196 -0.416361 -0.455171 \n",
"weight -0.416839 -0.309120 -0.585005 \n",
"acceleration 1.000000 0.290316 0.212746 \n",
"year 0.290316 1.000000 0.181528 \n",
"origin 0.212746 0.181528 1.000000 "
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.corr()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"