{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "a40c3060", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "from sklearn.datasets import fetch_openml\n", "from sklearn.impute import SimpleImputer\n", "from sklearn.preprocessing import OneHotEncoder\n", "from sklearn.preprocessing import MinMaxScaler\n", "from sklearn.preprocessing import StandardScaler" ] }, { "cell_type": "code", "execution_count": 2, "id": "6ca0451b", "metadata": {}, "outputs": [], "source": [ "df_titanic = fetch_openml(\"titanic\", version = 1, as_frame = True)[\"data\"]" ] }, { "cell_type": "code", "execution_count": 3, "id": "108b699a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(1309, 13)" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_titanic.shape" ] }, { "cell_type": "code", "execution_count": 4, "id": "0f68c698", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['pclass', 'name', 'sex', 'age', 'sibsp', 'parch', 'ticket', 'fare',\n", " 'cabin', 'embarked', 'boat', 'body', 'home.dest'],\n", " dtype='object')" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_titanic.columns" ] }, { "cell_type": "code", "execution_count": 5, "id": "678f1623", "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
pclassnamesexagesibspparchticketfarecabinembarkedboatbodyhome.dest
01.0Allen, Miss. Elisabeth Waltonfemale29.00000.00.024160211.3375B5S2NaNSt Louis, MO
11.0Allison, Master. Hudson Trevormale0.91671.02.0113781151.5500C22 C26S11NaNMontreal, PQ / Chesterville, ON
21.0Allison, Miss. Helen Lorainefemale2.00001.02.0113781151.5500C22 C26SNoneNaNMontreal, PQ / Chesterville, ON
31.0Allison, Mr. Hudson Joshua Creightonmale30.00001.02.0113781151.5500C22 C26SNone135.0Montreal, PQ / Chesterville, ON
41.0Allison, Mrs. Hudson J C (Bessie Waldo Daniels)female25.00001.02.0113781151.5500C22 C26SNoneNaNMontreal, PQ / Chesterville, ON
\n", "
" ], "text/plain": [ " pclass name sex age \\\n", "0 1.0 Allen, Miss. Elisabeth Walton female 29.0000 \n", "1 1.0 Allison, Master. Hudson Trevor male 0.9167 \n", "2 1.0 Allison, Miss. Helen Loraine female 2.0000 \n", "3 1.0 Allison, Mr. Hudson Joshua Creighton male 30.0000 \n", "4 1.0 Allison, Mrs. Hudson J C (Bessie Waldo Daniels) female 25.0000 \n", "\n", " sibsp parch ticket fare cabin embarked boat body \\\n", "0 0.0 0.0 24160 211.3375 B5 S 2 NaN \n", "1 1.0 2.0 113781 151.5500 C22 C26 S 11 NaN \n", "2 1.0 2.0 113781 151.5500 C22 C26 S None NaN \n", "3 1.0 2.0 113781 151.5500 C22 C26 S None 135.0 \n", "4 1.0 2.0 113781 151.5500 C22 C26 S None NaN \n", "\n", " home.dest \n", "0 St Louis, MO \n", "1 Montreal, PQ / Chesterville, ON \n", "2 Montreal, PQ / Chesterville, ON \n", "3 Montreal, PQ / Chesterville, ON \n", "4 Montreal, PQ / Chesterville, ON " ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_titanic.head()" ] }, { "cell_type": "code", "execution_count": 6, "id": "2f31b7e0", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
pclassnamesexagesibspparchticketfarecabinembarkedboatbodyhome.dest
13043.0Zabour, Miss. Hilenifemale14.51.00.0266514.4542NoneCNone328.0None
13053.0Zabour, Miss. ThaminefemaleNaN1.00.0266514.4542NoneCNoneNaNNone
13063.0Zakarian, Mr. Mapriededermale26.50.00.026567.2250NoneCNone304.0None
13073.0Zakarian, Mr. Ortinmale27.00.00.026707.2250NoneCNoneNaNNone
13083.0Zimmerman, Mr. Leomale29.00.00.03150827.8750NoneSNoneNaNNone
\n", "
" ], "text/plain": [ " pclass name sex age sibsp parch ticket \\\n", "1304 3.0 Zabour, Miss. Hileni female 14.5 1.0 0.0 2665 \n", "1305 3.0 Zabour, Miss. Thamine female NaN 1.0 0.0 2665 \n", "1306 3.0 Zakarian, Mr. Mapriededer male 26.5 0.0 0.0 2656 \n", "1307 3.0 Zakarian, Mr. Ortin male 27.0 0.0 0.0 2670 \n", "1308 3.0 Zimmerman, Mr. Leo male 29.0 0.0 0.0 315082 \n", "\n", " fare cabin embarked boat body home.dest \n", "1304 14.4542 None C None 328.0 None \n", "1305 14.4542 None C None NaN None \n", "1306 7.2250 None C None 304.0 None \n", "1307 7.2250 None C None NaN None \n", "1308 7.8750 None S None NaN None " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_titanic.tail()" ] }, { "cell_type": "code", "execution_count": 7, "id": "c523519b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 1309 entries, 0 to 1308\n", "Data columns (total 13 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 pclass 1309 non-null float64 \n", " 1 name 1309 non-null object \n", " 2 sex 1309 non-null category\n", " 3 age 1046 non-null float64 \n", " 4 sibsp 1309 non-null float64 \n", " 5 parch 1309 non-null float64 \n", " 6 ticket 1309 non-null object \n", " 7 fare 1308 non-null float64 \n", " 8 cabin 295 non-null object \n", " 9 embarked 1307 non-null category\n", " 10 boat 486 non-null object \n", " 11 body 121 non-null float64 \n", " 12 home.dest 745 non-null object \n", "dtypes: category(2), float64(6), object(5)\n", "memory usage: 115.4+ KB\n" ] } ], "source": [ "df_titanic.info()" ] }, { "cell_type": "code", "execution_count": 8, "id": "ad1c6271", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
pclassagesibspparchfarebody
count1309.0000001046.0000001309.0000001309.0000001308.000000121.000000
mean2.29488229.8811350.4988540.38502733.295479160.809917
std0.83783614.4135001.0416580.86556051.75866897.696922
min1.0000000.1667000.0000000.0000000.0000001.000000
25%2.00000021.0000000.0000000.0000007.89580072.000000
50%3.00000028.0000000.0000000.00000014.454200155.000000
75%3.00000039.0000001.0000000.00000031.275000256.000000
max3.00000080.0000008.0000009.000000512.329200328.000000
\n", "
" ], "text/plain": [ " pclass age sibsp parch fare \\\n", "count 1309.000000 1046.000000 1309.000000 1309.000000 1308.000000 \n", "mean 2.294882 29.881135 0.498854 0.385027 33.295479 \n", "std 0.837836 14.413500 1.041658 0.865560 51.758668 \n", "min 1.000000 0.166700 0.000000 0.000000 0.000000 \n", "25% 2.000000 21.000000 0.000000 0.000000 7.895800 \n", "50% 3.000000 28.000000 0.000000 0.000000 14.454200 \n", "75% 3.000000 39.000000 1.000000 0.000000 31.275000 \n", "max 3.000000 80.000000 8.000000 9.000000 512.329200 \n", "\n", " body \n", "count 121.000000 \n", "mean 160.809917 \n", "std 97.696922 \n", "min 1.000000 \n", "25% 72.000000 \n", "50% 155.000000 \n", "75% 256.000000 \n", "max 328.000000 " ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_titanic.describe()" ] }, { "cell_type": "code", "execution_count": 11, "id": "61b8168d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize = (8, 6))\n", "sns.heatmap(df_titanic.corr(), cmap = \"BuPu\")" ] }, { "cell_type": "code", "execution_count": 12, "id": "7a74e552", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "male 843\n", "female 466\n", "Name: sex, dtype: int64" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_titanic[\"sex\"].value_counts()" ] }, { "cell_type": "code", "execution_count": 14, "id": "e4b9b64c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(figsize = (8, 6))\n", "plt.pie(df_titanic[\"sex\"].value_counts(), explode = [0, 0.05], labels = [\"Female\", \"Male\"], colors = [\"#FF82AB\", \"#8E388E\"])\n", "plt.legend()" ] }, { "cell_type": "code", "execution_count": 15, "id": "f0e4d736", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "35.6" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.round((sum(df_titanic[\"sex\"] == \"female\") / (df_titanic.shape[0]) * 100), 2)" ] }, { "cell_type": "code", "execution_count": 16, "id": "9187c02b", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "64.4" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.round((sum(df_titanic[\"sex\"] == \"male\") / (df_titanic.shape[0]) * 100), 2)" ] }, { "cell_type": "code", "execution_count": 17, "id": "ccbfa540", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "30.0" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.round(df_titanic[\"age\"].mean(), 0)" ] }, { "cell_type": "code", "execution_count": 18, "id": "b68deced", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "pclass 0\n", "name 0\n", "sex 0\n", "age 263\n", "sibsp 0\n", "parch 0\n", "ticket 0\n", "fare 1\n", "cabin 1014\n", "embarked 2\n", "boat 823\n", "body 1188\n", "home.dest 564\n", "dtype: int64" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_titanic.isnull().sum()" ] }, { "cell_type": "code", "execution_count": 31, "id": "10093c65", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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n3/GV199JXbfiIhIRP8YAPfu3UPdunUxffp0HD9+HMXFxVi8eDGsra3V0T8iIhJJhQGwb98+BAQEoHnz5khOTkZwcDC6du2qrr4REZGIKgyA0NBQxMbGwtzcHFeuXEFISAgDgIhIQ/zjSWBzc3MAwOeff46nT5+K3iEiIlKPCgPg9aUaXr2Sl4iIajaVp4ECbwYCERHVXBWeA7h79y46duyofJyfn4+OHTsqF3K7fPmy6B0kIiJxVBgAhw4dUlc/iIhIzSoMgCZNmqirH0REpGaVOgdARESagwFARKSlGABERFqKAUBEpKUYAEREWooBQESkpRgARERaigFARKSlGABERFqKAUBEpKUYAEREWooBQESkpRgARERaigFARKSlGABERFqKAUBEpKUYAEREWooBQESkpRgARERaigFARKSlGABERFqKAUBEpKUYAEREWooBQESkpRgARERaigFARKSlRA2AdevWoV+/fujXrx8CAwMBAPHx8XBycoK9vT1CQkLELE9ERBUQLQDi4+Nx+vRpREZGIioqCrdu3cL+/fsxd+5crF+/HnFxcbh58yZOnDghVheIiKgCogWAqakpfH19oa+vDz09PbRs2RIPHz5E8+bN0axZM0ilUjg5OeHAgQNidYGIiCogFavh1q1bK///4cOH+OWXXzBixAiYmpoqt5uZmSE1NbVS7ZqYGFe6L6amdSr9mrehjjpC1siXF8FQR69SdSp6zdvge/Pu1lFXfU3bn+qsU9kaogVAid9++w0TJkzA7Nmzoauri4cPHyp/plAoIJFIKtVeRkYO5HKFys83Na2D9PTnlarxNtRRR+gapqZ1ILk8oVKvUXTcJFgf+N5Ub523/UAS+t9gTdsfddQRsoaOjqTcL86ingS+dOkSRo8ejZkzZ8LNzQ2NGjVCenq68ufp6ekwMzMTswtERFQO0QLgyZMnmDJlCoKDg9GvXz8AQIcOHfDgwQMkJSVBJpNh//796Natm1hdICKiCog2BLRlyxYUFBRgxYoVym1DhgzBihUr4OXlhYKCAtja2sLBwUGsLhARUQVEC4D58+dj/vz5Zf4sJiZGrLJERKQiXglMRKSlGABERFqKAUBEpKUYAEREWooBQESkpRgARERaigFARKSlGABERFqKAUBEpKUYAEREWooBQESkpRgARERaigFARKSlGABERFqKAUBE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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.set()\n", "missing_values = pd.DataFrame(df_titanic.isnull().sum()/len(df_titanic) * 100)\n", "missing_values.plot(kind = \"bar\",\n", " title = \"Percentage of Missing Values\",\n", " ylabel = \"Percentage\",\n", " color = \"#00CD66\")" ] }, { "cell_type": "code", "execution_count": 32, "id": "7ee19288", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Datatypes of Missing Values:\n", "age : nan\n", "fare : nan\n", "cabin : None\n", "embarked : nan\n", "boat : None\n", "body : nan\n", "home.dest : None\n" ] } ], "source": [ "#Imputing Missing Values:\n", "print(\"Datatypes of Missing Values:\")\n", "for col in df_titanic.columns[df_titanic.isnull().any()]:\n", " print(col, \":\", df_titanic[col][df_titanic[col].isnull()].values[0])" ] }, { "cell_type": "code", "execution_count": 35, "id": "aee16690", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'age': {'missing_values': nan, 'strategy': 'mean'},\n", " 'fare': {'missing_values': nan, 'strategy': 'mean'},\n", " 'cabin': {'missing_values': None, 'strategy': 'most_frequent'},\n", " 'embarked': {'missing_values': nan, 'strategy': 'most_frequent'},\n", " 'boat': {'missing_values': None, 'strategy': 'most_frequent'},\n", " 'body': {'missing_values': nan, 'strategy': 'mean'},\n", " 'home.dest': {'missing_values': None, 'strategy': 'most_frequent'}}" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def get_parameters(df_titanic):\n", " parameters = {}\n", " for col in df_titanic.columns[df_titanic.isnull().any()]:\n", " if df_titanic[col].dtype == \"float64\" or df_titanic[col].dtype == \"int64\" or df_titanic[col].dtype == \"int32\":\n", " strategy = \"mean\"\n", " else:\n", " strategy = \"most_frequent\"\n", " missing_values = df_titanic[col][df_titanic[col].isnull()].values[0]\n", " parameters[col] = {\"missing_values\" : missing_values, \n", " \"strategy\" : strategy}\n", " return parameters\n", "get_parameters(df_titanic)" ] }, { "cell_type": "code", "execution_count": 43, "id": "70ce99ac", "metadata": {}, "outputs": [], "source": [ "parameters = get_parameters(df_titanic)\n", "for col, param in parameters.items():\n", " missing_values = param[\"missing_values\"]\n", " strategy = param[\"strategy\"]\n", " IMP = SimpleImputer(missing_values = missing_values, strategy = strategy)\n", " df_titanic[col] = IMP.fit_transform(df_titanic[[col]])" ] }, { "cell_type": "code", "execution_count": 44, "id": "2312e508", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "pclass 0\n", "name 0\n", "sex 0\n", "age 0\n", "sibsp 0\n", "parch 0\n", "ticket 0\n", "fare 0\n", "cabin 0\n", "embarked 0\n", "boat 0\n", "body 0\n", "home.dest 0\n", "dtype: int64" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_titanic.isnull().sum()" ] }, { "cell_type": "code", "execution_count": 45, "id": "fa570c0a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of Null Values (after) : 0\n" ] } ], "source": [ "print(f'Number of Null Values (after) : {df_titanic.age.isnull().sum()}')" ] }, { "cell_type": "code", "execution_count": 47, "id": "0e24e195", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['pclass', 'age', 'sibsp', 'parch', 'fare', 'body'], dtype='object')" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#Normalizing the Data - MinMaxScaler:\n", "n_cols = df_titanic.select_dtypes(include = [\"int64\", \"float64\", \"float32\"]).columns\n", "n_cols" ] }, { "cell_type": "code", "execution_count": 51, "id": "b5d7be2b", "metadata": {}, "outputs": [], "source": [ "for col in n_cols:\n", " fill_value = df_titanic[col].mean()\n", " df_titanic[col].fillna(fill_value, inplace = True)" ] }, { "cell_type": "code", "execution_count": 52, "id": "6956e3bd", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
pclassagesibspparchfarebody
00.00.3611690.0000.0000000.4125030.488715
10.00.0093950.1250.2222220.2958060.488715
20.00.0229640.1250.2222220.2958060.488715
30.00.3736950.1250.2222220.2958060.409786
40.00.3110640.1250.2222220.2958060.488715
.....................
13041.00.1795400.1250.0000000.0282131.000000
13051.00.3722060.1250.0000000.0282130.488715
13061.00.3298540.0000.0000000.0141020.926606
13071.00.3361170.0000.0000000.0141020.488715
13081.00.3611690.0000.0000000.0153710.488715
\n", "

1309 rows × 6 columns

\n", "
" ], "text/plain": [ " pclass age sibsp parch fare body\n", "0 0.0 0.361169 0.000 0.000000 0.412503 0.488715\n", "1 0.0 0.009395 0.125 0.222222 0.295806 0.488715\n", "2 0.0 0.022964 0.125 0.222222 0.295806 0.488715\n", "3 0.0 0.373695 0.125 0.222222 0.295806 0.409786\n", "4 0.0 0.311064 0.125 0.222222 0.295806 0.488715\n", "... ... ... ... ... ... ...\n", "1304 1.0 0.179540 0.125 0.000000 0.028213 1.000000\n", "1305 1.0 0.372206 0.125 0.000000 0.028213 0.488715\n", "1306 1.0 0.329854 0.000 0.000000 0.014102 0.926606\n", "1307 1.0 0.336117 0.000 0.000000 0.014102 0.488715\n", "1308 1.0 0.361169 0.000 0.000000 0.015371 0.488715\n", "\n", "[1309 rows x 6 columns]" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "minmax = MinMaxScaler()\n", "df_titanic[n_cols] = minmax.fit_transform(df_titanic[n_cols])\n", "df_titanic[n_cols]" ] }, { "cell_type": "code", "execution_count": 55, "id": "28746928", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
pclassagesibspparchfarebody
count1.309000e+031.309000e+031.309000e+031.309000e+031.309000e+031.309000e+03
mean5.000329e-151.832313e-16-1.028801e-153.833620e-178.410215e-16-2.912731e-17
std1.000382e+001.000382e+001.000382e+001.000382e+001.000382e+001.000382e+00
min-1.546098e+00-2.307330e+00-4.790868e-01-4.449995e-01-6.437751e-01-5.402590e+00
25%-3.520907e-01-6.119712e-01-4.790868e-01-4.449995e-01-4.911082e-013.201135e-17
50%8.419164e-011.302752e-16-4.790868e-01-4.449995e-01-3.643001e-013.201135e-17
75%8.419164e-013.974806e-014.812878e-01-4.449995e-01-3.906640e-023.201135e-17
max8.419164e-013.891737e+007.203909e+009.956864e+009.262219e+005.652087e+00
\n", "
" ], "text/plain": [ " pclass age sibsp parch fare \\\n", "count 1.309000e+03 1.309000e+03 1.309000e+03 1.309000e+03 1.309000e+03 \n", "mean 5.000329e-15 1.832313e-16 -1.028801e-15 3.833620e-17 8.410215e-16 \n", "std 1.000382e+00 1.000382e+00 1.000382e+00 1.000382e+00 1.000382e+00 \n", "min -1.546098e+00 -2.307330e+00 -4.790868e-01 -4.449995e-01 -6.437751e-01 \n", "25% -3.520907e-01 -6.119712e-01 -4.790868e-01 -4.449995e-01 -4.911082e-01 \n", "50% 8.419164e-01 1.302752e-16 -4.790868e-01 -4.449995e-01 -3.643001e-01 \n", "75% 8.419164e-01 3.974806e-01 4.812878e-01 -4.449995e-01 -3.906640e-02 \n", "max 8.419164e-01 3.891737e+00 7.203909e+00 9.956864e+00 9.262219e+00 \n", "\n", " body \n", "count 1.309000e+03 \n", "mean -2.912731e-17 \n", "std 1.000382e+00 \n", "min -5.402590e+00 \n", "25% 3.201135e-17 \n", "50% 3.201135e-17 \n", "75% 3.201135e-17 \n", "max 5.652087e+00 " ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#Normalizing the Data - StandardScaler:\n", "stsc = StandardScaler()\n", "df_titanic[n_cols] = stsc.fit_transform(df_titanic[n_cols])\n", "df_titanic[n_cols].describe()" ] }, { "cell_type": "code", "execution_count": 56, "id": "201e4ce9", "metadata": {}, "outputs": [], "source": [ "#so:\n", "#the mean(5.000329e-15) is equal to zero.\n", "#the standard deviation(std) of scaled columns are also equal to zero." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.12" } }, "nbformat": 4, "nbformat_minor": 5 }