From 8cab10c54205d671cef0b4057cb61159774b3015 Mon Sep 17 00:00:00 2001
From: happpycorn <135821359+happpycorn@users.noreply.github.com>
Date: Thu, 9 Oct 2025 02:49:41 +0000
Subject: [PATCH 1/2] update
---
ML_data_preprocessing.ipynb | 891 +++++++++++++++++-------------------
1 file changed, 428 insertions(+), 463 deletions(-)
diff --git a/ML_data_preprocessing.ipynb b/ML_data_preprocessing.ipynb
index 03cbab5..7ccef6f 100644
--- a/ML_data_preprocessing.ipynb
+++ b/ML_data_preprocessing.ipynb
@@ -3,30 +3,38 @@
{
"cell_type": "code",
"execution_count": 1,
- "metadata": {},
+ "metadata": {
+ "collapsed": true,
+ "jupyter": {
+ "outputs_hidden": true
+ }
+ },
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
- "Requirement already satisfied: pandas in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (2.3.3)\n",
- "Requirement already satisfied: numpy in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (2.3.3)\n",
- "Requirement already satisfied: matplotlib in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (3.10.6)\n",
- "Requirement already satisfied: scikit-learn in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (1.7.2)\n",
- "Requirement already satisfied: python-dateutil>=2.8.2 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from pandas) (2.9.0.post0)\n",
- "Requirement already satisfied: pytz>=2020.1 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from pandas) (2025.2)\n",
- "Requirement already satisfied: tzdata>=2022.7 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from pandas) (2025.2)\n",
- "Requirement already satisfied: contourpy>=1.0.1 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from matplotlib) (1.3.3)\n",
- "Requirement already satisfied: cycler>=0.10 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from matplotlib) (0.12.1)\n",
- "Requirement already satisfied: fonttools>=4.22.0 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from matplotlib) (4.60.1)\n",
- "Requirement already satisfied: kiwisolver>=1.3.1 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from matplotlib) (1.4.9)\n",
- "Requirement already satisfied: packaging>=20.0 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from matplotlib) (25.0)\n",
- "Requirement already satisfied: pillow>=8 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from matplotlib) (11.3.0)\n",
- "Requirement already satisfied: pyparsing>=2.3.1 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from matplotlib) (3.2.5)\n",
- "Requirement already satisfied: scipy>=1.8.0 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from scikit-learn) (1.16.2)\n",
- "Requirement already satisfied: joblib>=1.2.0 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from scikit-learn) (1.5.2)\n",
- "Requirement already satisfied: threadpoolctl>=3.1.0 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from scikit-learn) (3.6.0)\n",
- "Requirement already satisfied: six>=1.5 in d:\\github\\1141-ml-data preprocessing\\.venv\\lib\\site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0)\n",
+ "Requirement already satisfied: pandas in /home/codespace/.local/lib/python3.12/site-packages (2.3.1)\n",
+ "Requirement already satisfied: numpy in /home/codespace/.local/lib/python3.12/site-packages (2.3.1)\n",
+ "Requirement already satisfied: matplotlib in /home/codespace/.local/lib/python3.12/site-packages (3.10.3)\n",
+ "Requirement already satisfied: scikit-learn in /home/codespace/.local/lib/python3.12/site-packages (1.7.0)\n",
+ "Requirement already satisfied: python-dateutil>=2.8.2 in /home/codespace/.local/lib/python3.12/site-packages (from pandas) (2.9.0.post0)\n",
+ "Requirement already satisfied: pytz>=2020.1 in /home/codespace/.local/lib/python3.12/site-packages (from pandas) (2025.2)\n",
+ "Requirement already satisfied: tzdata>=2022.7 in /home/codespace/.local/lib/python3.12/site-packages (from pandas) (2025.2)\n",
+ "Requirement already satisfied: contourpy>=1.0.1 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (1.3.2)\n",
+ "Requirement already satisfied: cycler>=0.10 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (0.12.1)\n",
+ "Requirement already satisfied: fonttools>=4.22.0 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (4.58.5)\n",
+ "Requirement already satisfied: kiwisolver>=1.3.1 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (1.4.8)\n",
+ "Requirement already satisfied: packaging>=20.0 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (25.0)\n",
+ "Requirement already satisfied: pillow>=8 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (11.3.0)\n",
+ "Requirement already satisfied: pyparsing>=2.3.1 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (3.2.3)\n",
+ "Requirement already satisfied: scipy>=1.8.0 in /home/codespace/.local/lib/python3.12/site-packages (from scikit-learn) (1.16.0)\n",
+ "Requirement already satisfied: joblib>=1.2.0 in /home/codespace/.local/lib/python3.12/site-packages (from scikit-learn) (1.5.1)\n",
+ "Requirement already satisfied: threadpoolctl>=3.1.0 in /home/codespace/.local/lib/python3.12/site-packages (from scikit-learn) (3.6.0)\n",
+ "Requirement already satisfied: six>=1.5 in /home/codespace/.local/lib/python3.12/site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0)\n",
+ "\n",
+ "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m25.1.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m25.2\u001b[0m\n",
+ "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython3 -m pip install --upgrade pip\u001b[0m\n",
"Note: you may need to restart the kernel to use updated packages.\n"
]
}
@@ -54,7 +62,7 @@
},
{
"cell_type": "code",
- "execution_count": 2,
+ "execution_count": 3,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
@@ -223,7 +231,7 @@
"4 396.90 5.33 36.2 36.2 "
]
},
- "execution_count": 2,
+ "execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
@@ -262,7 +270,7 @@
},
{
"cell_type": "code",
- "execution_count": 3,
+ "execution_count": 4,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
@@ -281,14 +289,129 @@
"id": "-T2gXjrbwsLi",
"outputId": "279e371d-e3d4-4a13-eb87-f51892af6000"
},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CRIM | \n",
+ " ZN | \n",
+ " INDUS | \n",
+ " CHAS | \n",
+ " NOX | \n",
+ " RM | \n",
+ " AGE | \n",
+ " DIS | \n",
+ " RAD | \n",
+ " TAX | \n",
+ " PTRATIO | \n",
+ " B | \n",
+ " LSTAT | \n",
+ " MEDV | \n",
+ " target | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 0.00632 | \n",
+ " 18.0 | \n",
+ " 2.31 | \n",
+ " 0 | \n",
+ " 0.538 | \n",
+ " 6.575 | \n",
+ " 65.2 | \n",
+ " 4.0900 | \n",
+ " 1 | \n",
+ " 296.0 | \n",
+ " 15.3 | \n",
+ " 396.90 | \n",
+ " 4.98 | \n",
+ " 24.0 | \n",
+ " 24.0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0.02731 | \n",
+ " 0.0 | \n",
+ " 7.07 | \n",
+ " 0 | \n",
+ " 0.469 | \n",
+ " 6.421 | \n",
+ " 78.9 | \n",
+ " 4.9671 | \n",
+ " 2 | \n",
+ " 242.0 | \n",
+ " 17.8 | \n",
+ " 396.90 | \n",
+ " 9.14 | \n",
+ " 21.6 | \n",
+ " 21.6 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 0.02729 | \n",
+ " 0.0 | \n",
+ " 7.07 | \n",
+ " 0 | \n",
+ " 0.469 | \n",
+ " 7.185 | \n",
+ " 61.1 | \n",
+ " 4.9671 | \n",
+ " 2 | \n",
+ " 242.0 | \n",
+ " 17.8 | \n",
+ " 392.83 | \n",
+ " 4.03 | \n",
+ " 34.7 | \n",
+ " 34.7 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO \\\n",
+ "0 0.00632 18.0 2.31 0 0.538 6.575 65.2 4.0900 1 296.0 15.3 \n",
+ "1 0.02731 0.0 7.07 0 0.469 6.421 78.9 4.9671 2 242.0 17.8 \n",
+ "2 0.02729 0.0 7.07 0 0.469 7.185 61.1 4.9671 2 242.0 17.8 \n",
+ "\n",
+ " B LSTAT MEDV target \n",
+ "0 396.90 4.98 24.0 24.0 \n",
+ "1 396.90 9.14 21.6 21.6 \n",
+ "2 392.83 4.03 34.7 34.7 "
+ ]
+ },
+ "execution_count": 4,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
- "# 查看前三筆資料\n"
+ "# 查看前三筆資料\n",
+ "df.head(3)"
]
},
{
"cell_type": "code",
- "execution_count": 4,
+ "execution_count": 5,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
@@ -307,14 +430,129 @@
"id": "3Uc2bIHWjGA-",
"outputId": "8c3d6b5d-1f81-4063-88c3-68adc956fc64"
},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CRIM | \n",
+ " ZN | \n",
+ " INDUS | \n",
+ " CHAS | \n",
+ " NOX | \n",
+ " RM | \n",
+ " AGE | \n",
+ " DIS | \n",
+ " RAD | \n",
+ " TAX | \n",
+ " PTRATIO | \n",
+ " B | \n",
+ " LSTAT | \n",
+ " MEDV | \n",
+ " target | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 503 | \n",
+ " 0.06076 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.976 | \n",
+ " 91.0 | \n",
+ " 2.1675 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " 21.0 | \n",
+ " 396.90 | \n",
+ " 5.64 | \n",
+ " 23.9 | \n",
+ " 23.9 | \n",
+ "
\n",
+ " \n",
+ " | 504 | \n",
+ " 0.10959 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.794 | \n",
+ " 89.3 | \n",
+ " 2.3889 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " 21.0 | \n",
+ " 393.45 | \n",
+ " 6.48 | \n",
+ " 22.0 | \n",
+ " 22.0 | \n",
+ "
\n",
+ " \n",
+ " | 505 | \n",
+ " 0.04741 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.030 | \n",
+ " 80.8 | \n",
+ " 2.5050 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " 21.0 | \n",
+ " 396.90 | \n",
+ " 7.88 | \n",
+ " 11.9 | \n",
+ " 11.9 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO \\\n",
+ "503 0.06076 0.0 11.93 0 0.573 6.976 91.0 2.1675 1 273.0 21.0 \n",
+ "504 0.10959 0.0 11.93 0 0.573 6.794 89.3 2.3889 1 273.0 21.0 \n",
+ "505 0.04741 0.0 11.93 0 0.573 6.030 80.8 2.5050 1 273.0 21.0 \n",
+ "\n",
+ " B LSTAT MEDV target \n",
+ "503 396.90 5.64 23.9 23.9 \n",
+ "504 393.45 6.48 22.0 22.0 \n",
+ "505 396.90 7.88 11.9 11.9 "
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
- "# 查看末三筆資料\n"
+ "# 查看末三筆資料\n",
+ "df.tail(3)"
]
},
{
"cell_type": "code",
- "execution_count": 5,
+ "execution_count": 7,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
@@ -332,14 +570,26 @@
"id": "Z7tImjqTicrR",
"outputId": "a6665169-b8b9-4ca2-aecd-36bcc270a08a"
},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(506, 15)"
+ ]
+ },
+ "execution_count": 7,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
- "# 查看資料集大小 (列、欄)\n"
+ "# 查看資料集大小 (列、欄)\n",
+ "df.shape"
]
},
{
"cell_type": "code",
- "execution_count": 6,
+ "execution_count": 8,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
@@ -357,14 +607,52 @@
"id": "Eyu5B1QhjIvG",
"outputId": "b55b94d1-96d0-4672-f6a9-4872a82e86a5"
},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 8,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
- "# 查看資料集的基本資訊\n"
+ "# 查看資料集的基本資訊\n",
+ "df.info"
]
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 9,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
@@ -386,413 +674,49 @@
"outputs": [
{
"data": {
- "application/vnd.google.colaboratory.intrinsic+json": {
- "summary": "{\n \"name\": \"df\",\n \"rows\": 8,\n \"fields\": [\n {\n \"column\": \"CRIM\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 176.21241273856964,\n \"min\": 0.00632,\n \"max\": 506.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 3.613523557312254,\n 0.25651,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"ZN\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 174.65631992520625,\n \"min\": 0.0,\n \"max\": 506.0,\n \"num_unique_values\": 6,\n \"samples\": [\n 506.0,\n 11.363636363636363,\n 100.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"INDUS\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 175.10046881853455,\n \"min\": 0.46,\n \"max\": 506.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 11.13677865612648,\n 9.69,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"NOX\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 178.71946937975397,\n \"min\": 0.11587767566755611,\n \"max\": 506.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 0.5546950592885376,\n 0.538,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"RM\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 176.99257138815915,\n \"min\": 0.7026171434153237,\n \"max\": 506.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 6.284634387351779,\n 6.2085,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"AGE\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 161.29423343904304,\n \"min\": 2.9,\n \"max\": 506.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 68.57490118577076,\n 77.5,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"DIS\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 177.4338019618181,\n \"min\": 1.1296,\n \"max\": 506.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 3.795042687747036,\n 3.2074499999999997,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"TAX\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 205.93933614417855,\n \"min\": 168.53711605495926,\n \"max\": 711.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 408.2371541501976,\n 330.0,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"PTRATIO\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 173.36059244426343,\n \"min\": 2.164945523714446,\n \"max\": 506.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 18.455533596837945,\n 19.05,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"B\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 173.23587641654387,\n \"min\": 0.32,\n \"max\": 506.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 356.6740316205534,\n 391.44,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"LSTAT\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 174.45535325169888,\n \"min\": 1.73,\n \"max\": 506.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 12.653063241106722,\n 11.36,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"MEDV\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 171.852511161592,\n \"min\": 5.0,\n \"max\": 506.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 22.532806324110677,\n 21.2,\n 506.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}",
- "type": "dataframe"
- },
- "text/html": [
- "\n",
- " \n",
- "
\n",
- "\n",
- "
\n",
- " \n",
- " \n",
- " | \n",
- " CRIM | \n",
- " ZN | \n",
- " INDUS | \n",
- " NOX | \n",
- " RM | \n",
- " AGE | \n",
- " DIS | \n",
- " TAX | \n",
- " PTRATIO | \n",
- " B | \n",
- " LSTAT | \n",
- " MEDV | \n",
- "
\n",
- " \n",
- " \n",
- " \n",
- " | count | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- " 506.000000 | \n",
- "
\n",
- " \n",
- " | mean | \n",
- " 3.613524 | \n",
- " 11.363636 | \n",
- " 11.136779 | \n",
- " 0.554695 | \n",
- " 6.284634 | \n",
- " 68.574901 | \n",
- " 3.795043 | \n",
- " 408.237154 | \n",
- " 18.455534 | \n",
- " 356.674032 | \n",
- " 12.653063 | \n",
- " 22.532806 | \n",
- "
\n",
- " \n",
- " | std | \n",
- " 8.601545 | \n",
- " 23.322453 | \n",
- " 6.860353 | \n",
- " 0.115878 | \n",
- " 0.702617 | \n",
- " 28.148861 | \n",
- " 2.105710 | \n",
- " 168.537116 | \n",
- " 2.164946 | \n",
- " 91.294864 | \n",
- " 7.141062 | \n",
- " 9.197104 | \n",
- "
\n",
- " \n",
- " | min | \n",
- " 0.006320 | \n",
- " 0.000000 | \n",
- " 0.460000 | \n",
- " 0.385000 | \n",
- " 3.561000 | \n",
- " 2.900000 | \n",
- " 1.129600 | \n",
- " 187.000000 | \n",
- " 12.600000 | \n",
- " 0.320000 | \n",
- " 1.730000 | \n",
- " 5.000000 | \n",
- "
\n",
- " \n",
- " | 25% | \n",
- " 0.082045 | \n",
- " 0.000000 | \n",
- " 5.190000 | \n",
- " 0.449000 | \n",
- " 5.885500 | \n",
- " 45.025000 | \n",
- " 2.100175 | \n",
- " 279.000000 | \n",
- " 17.400000 | \n",
- " 375.377500 | \n",
- " 6.950000 | \n",
- " 17.025000 | \n",
- "
\n",
- " \n",
- " | 50% | \n",
- " 0.256510 | \n",
- " 0.000000 | \n",
- " 9.690000 | \n",
- " 0.538000 | \n",
- " 6.208500 | \n",
- " 77.500000 | \n",
- " 3.207450 | \n",
- " 330.000000 | \n",
- " 19.050000 | \n",
- " 391.440000 | \n",
- " 11.360000 | \n",
- " 21.200000 | \n",
- "
\n",
- " \n",
- " | 75% | \n",
- " 3.677083 | \n",
- " 12.500000 | \n",
- " 18.100000 | \n",
- " 0.624000 | \n",
- " 6.623500 | \n",
- " 94.075000 | \n",
- " 5.188425 | \n",
- " 666.000000 | \n",
- " 20.200000 | \n",
- " 396.225000 | \n",
- " 16.955000 | \n",
- " 25.000000 | \n",
- "
\n",
- " \n",
- " | max | \n",
- " 88.976200 | \n",
- " 100.000000 | \n",
- " 27.740000 | \n",
- " 0.871000 | \n",
- " 8.780000 | \n",
- " 100.000000 | \n",
- " 12.126500 | \n",
- " 711.000000 | \n",
- " 22.000000 | \n",
- " 396.900000 | \n",
- " 37.970000 | \n",
- " 50.000000 | \n",
- "
\n",
- " \n",
- "
\n",
- "
\n",
- "
\n",
- "
\n"
- ],
"text/plain": [
- " CRIM ZN INDUS NOX RM AGE \\\n",
- "count 506.000000 506.000000 506.000000 506.000000 506.000000 506.000000 \n",
- "mean 3.613524 11.363636 11.136779 0.554695 6.284634 68.574901 \n",
- "std 8.601545 23.322453 6.860353 0.115878 0.702617 28.148861 \n",
- "min 0.006320 0.000000 0.460000 0.385000 3.561000 2.900000 \n",
- "25% 0.082045 0.000000 5.190000 0.449000 5.885500 45.025000 \n",
- "50% 0.256510 0.000000 9.690000 0.538000 6.208500 77.500000 \n",
- "75% 3.677083 12.500000 18.100000 0.624000 6.623500 94.075000 \n",
- "max 88.976200 100.000000 27.740000 0.871000 8.780000 100.000000 \n",
+ ""
]
},
- "execution_count": 51,
+ "execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "# 查看數值欄位的敘述性統計\n"
+ "# 查看數值欄位的敘述性統計\n",
+ "df.describe"
]
},
{
"cell_type": "code",
- "execution_count": 7,
+ "execution_count": 10,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
@@ -811,9 +735,33 @@
"id": "Tz47vFk0jdDH",
"outputId": "90e8f49c-2417-4a09-ad3f-c8aafc4a4794"
},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CRIM\n",
+ "0.01501 2\n",
+ "14.33370 2\n",
+ "0.03466 1\n",
+ "0.05083 1\n",
+ "0.03738 1\n",
+ " ..\n",
+ "1.27346 1\n",
+ "1.42502 1\n",
+ "1.34284 1\n",
+ "1.22358 1\n",
+ "0.13914 1\n",
+ "Name: count, Length: 504, dtype: int64"
+ ]
+ },
+ "execution_count": 10,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
"source": [
- "# 查看類別欄位 'MEDV' 中各類別的出現次數\n"
+ "# 查看類別欄位 'MEDV' 中各類別的出現次數\n",
+ "df['CRIM'].value_counts()"
]
},
{
@@ -847,7 +795,7 @@
},
{
"cell_type": "code",
- "execution_count": 8,
+ "execution_count": 11,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
@@ -910,7 +858,7 @@
},
{
"cell_type": "code",
- "execution_count": 9,
+ "execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
@@ -953,7 +901,7 @@
},
{
"cell_type": "code",
- "execution_count": 10,
+ "execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
@@ -1004,7 +952,7 @@
},
{
"cell_type": "code",
- "execution_count": 11,
+ "execution_count": 12,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
@@ -1167,7 +1115,7 @@
"4 396.90 5.33 36.2 "
]
},
- "execution_count": 11,
+ "execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
@@ -1183,7 +1131,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 14,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
@@ -1277,11 +1225,11 @@
"print(\"\\n平均值填補 CRIM 欄位:\\n\",df)\n",
"\n",
"# 中位數填補 RM 欄位\n",
- "# df['RM'] = ...\n",
+ "df['RM'] = df['RM'].fillna(df['RM'].median())\n",
"print(\"\\n中位數填補 RM 欄位:\\n\",df)\n",
"\n",
"# 眾數填補 AGE 欄位\n",
- "# df['AGE'] = ...\n",
+ "df['AGE'] = df['AGE'].fillna(df['AGE'].mode()[0])\n",
"print(\"\\n眾數填補 AGE 欄位:\\n\",df)\n",
"\n",
"print(\"\\n填補後的資料:\")\n",
@@ -1299,7 +1247,7 @@
},
{
"cell_type": "code",
- "execution_count": 12,
+ "execution_count": 18,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
@@ -1321,7 +1269,7 @@
"outputs": [
{
"data": {
- "image/png": "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0HZUpoY6i+rgZKcDrcCEOvLqtN5yyy3273//O9xm0KBBNnLkSJfVpN+lDpvudZU/r2rVquU6X9of1DlTp1D3L730khue07t3b9cRe/nll93v/Pbbb90+o065hobp/dE201Ax0f7iBTQV/NM+oG2i/emFF15w919//bXrHIqyeLTd9TerLpOCVur4KzjhZbkoeKGOqjrVXgDnlVdesbPOOssNmzvllFPc71++fLnLCtQ+rOBPLIcTadt7+5yCvNqvtR9dddVVEUGp7HwO1EHWUDN9HhcsWGBlypRxn0kNWXvggQdcoCg3tZjWrVvn9u+spKWluU67Ptfa/grmKYCmDr72XdUcO9L7rGCs3lPtx+qo67ij937t2rXucVb0Gdd7qqClgkJaFx2v2rZt6zr4+r8K2ChwMHz4cPdZ1TZUIOdItA8rSKNjU7SzpbzPuAJ02o+1T+s91NBRfZa0ru+//749+uijrtadN8RT9Pd4+4P+HgUMn376abcfaH8oWrRoxDA9ff70f/QZ1AWBzOj4rmOvPi8K+upv1X6p4M8vv/ziPgfZ+Tznho6hGY+7Ot7p79A+ofdS79/f//53Fwh788033YWHt99+O3yc1TFiypQpLuio/U+fDwXgdExS4F2B+CN91+SUPlMK9ioYpuO2fs7OMSa7xysAQA6EAAD5wiuvvKJL8ofcihcvHho3blxE2ylTprjnHnzwwYjl3bt3D6WkpIRWrlzpHo8ZM8a1++2337L8vd99951ro9/vl56eHqpcuXKoadOmobS0tPDyqVOnuvZDhw4NL+vZs6dbNmzYsIjXOPHEE0OtWrU64t9+xhlnZPq3+2+PPvpouP3tt9/uls2aNSu8bMeOHaG6deuG6tSpEzpw4EDENl29enXE7/v000/dct3L999/7x6/9dZbh13P2rVru7/V471+hw4dQgcPHgwv79+/f6hw4cKhrVu3uscbN24MFSlSJNSlS5eI17vvvvvc//e/ZlbUrl+/flk+f9ttt7k2P/74o3u8f//+0N69eyPa/Pnnn6EqVaqErr/++vAy7Rv6f/fee+8hr7l79+5Dlr3++uuu/RdffBFeVq5cucOum7ZNgwYNQh07dozYTnp9vWfnnHNOeJne58zes2jLaj/Te7Rnz55cfQ4WLFgQKlasWOiGG25w2/qYY44JnXTSSaF9+/YdcX20b517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eust+/zzz239+vXWtWvX8PMHDhxwAan09HSbPXu2jR8/3saNG2dDhw7N218CAAAAAACA/B2U2rlzp1199dX24osv2lFHHRVevm3bNnv55Zftscces7POOstatWplr7zyigs+ff31167NRx99ZIsXL7YJEyZYixYt7Pzzz7cHHnjAnnnmGReoAgAAAAAAQP6Xq6CUhucp26lDhw4Ry+fNm2f79u2LWN6oUSOrVauWzZkzxz3WfbNmzaxKlSrhNh07drTt27fbokWLMv19e/fudc/7bwAAAAAAAEheRXL6H9544w2bP3++G76X0caNG61YsWJWvnz5iOUKQOk5r40/IOU97z2XmREjRtj999+f01UFAAAAAABAfghKrVu3zm677TabMWOGlShRwoIyaNAgu+OOO8KPlSlVs2bNwH4/AAAAACC6du/ebUuXLs12+7S0NFuzZo3VqVPHUlNTs/3/NHpHk2wBSPKglIbnbd682Vq2bBlRuPyLL76wp59+2j788ENXF2rr1q0R2VKafa9q1aruZ91/++23Ea/rzc7ntcmoePHi7gYAAAAASFwrVqywHTt2ZKvtkiVLrEePHjFfJ9Uzbty48RHblSlTxho0aBDz9QGQy6DU2WefbQsWLIhYdt1117nI89133+2yl4oWLWozZ860bt26ueeXLVtma9eutTZt2rjHun/ooYdccKty5cpumTKvypYta02aNMnJ6gAAAAAAEigg1bBhQ0s0OQl8LV++nMAUkKhBKUWOmzZtGrGsVKlSVrFixfDyXr16uaF2FSpUcIGmW2+91QWiWrdu7Z4/99xzXfDpmmuusZEjR7o6UkOGDHHF08mGAgAAAIDk5GVIZTczKadyO3wvJ1lb2c3yAhCnQudHMmbMGCtUqJDLlNKseZpZb+zYseHnCxcubFOnTrW+ffu6YJWCWj179rRhw4ZFe1UAAAAAAAGqWjrFWlYrbI2r5mqi9yMoZW3rHh+D1zVL3VrYrTuAJAtKffbZZxGPVQD9mWeecbes1K5d295///28/moAAAAAQAK5sVUxa/zFjWZfWFJp/H/rDiDJM6UAAAAAAAXT8/PS7fKh46xxo0aWTJYsXWrPj77KLor3igAFDEEpAAAAAEBUbNwZsrTyDc2qt7BkkrbxoFt3AMGKxUBfAAAAAAAA4LAISgEAAAAAACBwBKUAAAAAAAAQ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tveQIUPsggsusNNPP92GDh0avgBEFkNsgyLa3uqg67x+0KBBNmrUqHivVoGgc0lte134eeihh+K9OgWKjina9l26dLF//vOfLluqoCMolQvel5N33759exflVwddH+zzzz/fPvnkEwJTMbBjxw53X7RoUXevL7BXX33VatWqZc8++yyBqRhni1xyySWuU65treAUguMdSxQQ1LGFYWTBUPCpZMmSdvnll9ttt93m9v9rr73WZawRmIq+jRs32kUXXWQnn3yyDRs2LLxcJ8y9e/e2cuXKxXX9CgJlwJ555pnueD9x4kSXvYDY0kUGDQ/+448/XOekbt26VqZMGdu2bZt73jvWEByJjf/+978uS0TD46tUqWLVqlVzNb06derkLkKQxRC77a4LEDq2v/POOy5r5MYbb3Tnm3v27In36uX7YGDr1q1t165ddsYZZ8R7dQocHVM02kcxBCWzbNq0yS0v0HGDEHIsLS3tkGXPPfdc6JJLLgl9//33oeuuuy5UpEiR0CeffOKeO3DgQBzWMv9ZvHhxqEyZMqHLL788NGjQoNCqVatCv/76q3tuz549oR49eoROPPHE0IsvvugeI7reeuutUNu2bUNbt24NL1uyZElowoQJob/+9a+hhx9+ONPPBvJm+fLloffeey80f/5893j//v2hk08+OfTKK6+E2+zbty+Oa1gwfPzxx6Hy5cuHFi5cGLr33ntDxYsXD73++uvu/UD06Liu79IzzjjDHctl5MiRoaOPPjo0ffr0TP8P37HRs3fv3tBll10W6t27d8Ty9PR09327du3a0B9//OGWHTx4ME5rmb/ofKVNmzahatWquVv9+vVDN9xwQ6hUqVKhG2+80W33LVu2xHs18601a9aEatWqFRo8eHDEPv3++++HzjrrLHc+P3Xq1LiuY36kY4mO65deemnEcp3jt2jRItSoUaPQeeedFxo/fnzc1jG/Ul81NTU19I9//CN0xx13uJ+nTJkS79UqUPzn7SeddFLoqquuChV0BKVySB2SmjVrhh577LHQjBkzwstnz54datmyZei///2vO8FQJ11fZJ9++ql7npPmvNE2VfAjJSUlVLVq1dBpp53m7ps2bRq68847XYdx27ZtrjOjL7GXX36ZwFSUKQjSsGFDF4iScePGhTp27OhOoE8//XTXSdfJBKJn9+7dLshdtmxZ11nR9m/evLk7kbv11ltDX3/9dWjnzp0ERqJsxYoVLhCogKCftvnNN9/sfr7llltCJUqUIDAVowsQPXv2DP3lL38JXXTRRW5/9y7y+Pm/gxEdu3btct+v/qD3Bx984PZ7XRTScahLly7h7wFEx2+//eYCgh9++GHohRdeCN1+++2hY4891p3zVKpUyXXQdX5z1113uWOOPiOIjpdeeil05plnunNInav7A1OzZs0KnXLKKe4zsX79+riuZ36zevVqd4FNx/gvv/zSLRsxYkSoZMmSoQceeMC9L40bNw41aNAg9MMPP8R7dfPVdtcFtr///e/hZTq+KzD17rvvxnXd8vt5pY7d/r6pAlM65gwfPtwFYtetW1egL/gQlMoBXSlUsEknCfqS0oG0Q4cOLoNBO5AiznqsnWzTpk2hPn36uLZffPFFvFc9qS1btix0/vnnh37++efQI488EipUqFBo0qRJoc8++yw0duzYUOvWrUM1atRwkeZOnTq5A2vdunVDr732WrxXPelpm3vZTwr8HXfccS4Qpf28dOnSobvvvtsFRrwOot4b9vfoUkfl999/D/3yyy+hf/7zny4jTVd1dWzRvq8Ou66yq7OiDJ4NGzbEe5WTmraztm3hwoXddtVxXdk7OnFQpk6rVq3C2YL9+vVzHXUFaAlM5d7GjRvdBZyJEye6QKx33FdgqkKFCqG//e1v4bbeBZ6hQ4e6Y5DeL0T3qq06iueee657X+6//34XDO/evbvbz5999ln3GXjooYfceU9BPXmOpsy2oY4nCoLrosR3330XevPNN93noV27du5inDqWiI5evXq579Ks3pOnnnoqVLRo0dCiRYvisHb5my786EKy+lPKDqxcubILzPrPQfV9/Pzzz8d1PfMTbdN//etfhywnMBU76kfpeK59WQHwIUOGuHMd77xR5zFly5Z137cFGUGpHNDJsDKhdJXwqKOOctlR1157reug6wtNnZdTTz01fAVLEU/thFzRyr0ff/wxVK5cOfdB1s8yYMAAd+BUB8b7sCu1XUM81DFX+ypVqoRWrlwZ57VP/mCIOuX16tULB6b0RaZ9WsM7dGVLV9U9ymTQVS11JpH3ALgyoBT8yGxI5OjRo0PHH3+8y9xUoEpXFxUsVGdFV2OQN9rvlemqY3qzZs1CF154oUutViddmWo6Bnmuv/56l7W5ffv2uK5z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DqNHBSZbtGjhhiepjoimjFXar5apho5OEpStpi8vBa382573ITgKfGtWLG8YK6JD9RPatGnjTt5Ux07HGK+4s06ONVSVYs/xCUxpaMEjjzzCFdwY8wem/HWkyFaIzvmNLuroos/xxx/vLvpMmzYtoo0XEBdliajtf/7znzisLRC92eKV3ZpZpmXGwNQFF1zgStUg71SDVwksQ4YMCQe8VfJHpQm8bezNuCczZsxw74EK0SNrKfrHCpg//vjDLr74YmvZsqU98cQT4eX79++3IkWKuJ8nTJhgf//7361bt2526623Wv369eO4xkDepaen27x58+yvf/2rVa5c2WbOnGnFihWzgwcPWqFChRSgtpSUFPvqq6+sXbt29sMPP1jz5s3jvdr5ysqVK+2uu+5y23zQoEFWrVo1mz17tj399NO2b98+W7hwodWrV8/dd+nSxSZPnhzvVS6wnxV9NhBdZ5xxhn355ZdWtWpVe//99+2EE06I9yoVaCtWrLA77rjDvv32W/vzzz9tzpw51qpVq3ivVr62fft2e/PNN61Pnz42cOBAe+SRR+K9SvnG8OHDrUyZMla3bl13nHn22Wft8ssvt9atW9v1119/SPsbb7zR7f/HHXdcXNYXyK1ly5bZ6aefbr169XLnkuXKlcu0ndev/emnn6x9+/Z28skn27/+9S8rWbJk4OucH6xZs8ZWrVplZ555pj388MP2zjvv2IUXXuj6UIonaNued955Ef9n9+7dbnunpaVZampq3NY9KYQK6LA9RZc17j/jOHJ/ZHPChAluivbrrrvORZqBZL0i7g17VLaf6rpo/9fQVS/C7/8cvPzyy+5Ko6ZlR/QpzVrZCRo27J+y988//wy9+uqrLntTRRApao78wvtOVeZCw4YNw7PUkAGYGMcjTWhBllpwVGNK9V8YPhNdU6dOdZkK3lBIldlQxpSG2Zx11lmuPAcZsEh2Oo+/9tprXd/UT3WMtH/rmK4hrP723gys9GVz79dff3VZrhrN8O6777p+kyYiUhkCjUDR8SfjqCrNmq3vV2WtUbfuyApZAaQMkJ9//tllgyi6qawFjzJFdFNkU1FlRT6//vprK1WqVFzXGcgNXSUZNmyYNWnSxBYtWuSumLRo0cLeeOMN27hxo5111lkuQ8f7HBw4cMC+++47O+mkk9znANGnq7JPPfWU2+b33HOP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",
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAJOCAYAAABm7rQwAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAAqXZJREFUeJzs3XlclXX+//8noCCg4MriCqklJmpiKRpftSxTLAmpybK0TM20cslmbDG3dMYla5rMbJp0PmaLRDZSlktapKiF5YiioUlasrjEoiDI4fr94e+c8QgIKGfTx/124ybnut7nul7nwLmO58l7cTMMwxAAAAAAAABgR+6OLgAAAAAAAADXHkIpAAAAAAAA2B2hFAAAAAAAAOyOUAoAAAAAAAB2RygFAAAAAAAAuyOUAgAAAAAAgN0RSgEAAAAAAMDuCKUAAAAAAABgd4RSAAAAAAAAsDtCKQAA7CQkJEQjR450dBm4hvXt21d9+/Z1dBk19v3336tXr17y9fWVm5ubfvrpJ0eX5DC2vo64ublpxowZNjs+AAAXIpQCgKvE8uXL5ebmZvUVEBCgfv36ad26dTY777FjxzRjxgyHfkjs27evOnXqVOG+jIwMubm5aeHChXauyrlc+HtRp04dNW7cWBEREXrmmWe0b9++yz5uYWGhZsyYoS1bttResVdg27ZtmjFjhnJzc216notfa76+vurYsaPmzJmjwsJCm567IiEhIeVe+1FRUfr0009r5fiO/DmfO3dO9913n06dOqXFixfr//7v/9SmTZsK227ZssXyHKSkpJTbP3LkSNWvX9/WJV/1zNfVir569uxpk3M6w3sNAKD21XF0AQCA2jVr1iyFhobKMAxlZ2dr+fLlGjRokNauXavBgwfX+vmOHTummTNnKiQkRF27dq31419NDhw4IHd3x/096I477tAjjzwiwzCUl5en3bt3a8WKFVqyZIn+9re/afLkyTU+ZmFhoWbOnClJTtEDZ9u2bZo5c6ZGjhyphg0b2vRc5udTkk6fPq2kpCS99NJL2r17t1avXm3Tc1eka9eumjJliqTzr8u3335bsbGxeuutt/TEE09c0bEd+XM+dOiQfv31V73zzjt6/PHHq32/GTNmaO3atTaszDEcfR250LBhwzRo0CCrbc2aNbPJuXivAYCrE6EUAFxlBg4cqO7du1tujxo1SoGBgfrggw9sEkqh+ry8vBx6/uuvv17Dhw+32vbXv/5Vd999t6ZMmaIOHTqU+4CJyl38fD7xxBMqKSlRQkKCzp49q3r16tm1nhYtWljV88gjj6hdu3ZavHjxFYdSjpSTkyNJNQoZu3btqsTERO3atUvdunWzUWX2YxiGzp49K29vb4dfRy7UrVu3ctcUV3P27Fl5eno6TdAHANcarr4AcJVr2LChvL29VaeO9d8hzpw5oylTpqhVq1by8vLSDTfcoIULF8owDKt2GzZs0K233qqGDRuqfv36uuGGG/T8889LOj9U5uabb5YkPfroo5bhG8uXL7fcf/Xq1YqIiJC3t7eaNm2q4cOH6/fff7c6h3lIze+//66YmBjVr19fzZo107PPPiuTyWSDZ0X65ZdfdN9996lx48by8fFRz5499fnnn1u1MQ+JzMjIsNpuHiJ04VCm9PR0DR06VEFBQapXr55atmypBx54QHl5eZY2F88FYz7+1q1bNXnyZDVr1ky+vr669957dfz4catzlpWVacaMGWrevLl8fHzUr18/7du374rnl2nSpIk+/PBD1alTR6+88ople0lJiaZPn66IiAj5+/vL19dXUVFR2rx5s6VNRkaGpVfEzJkzLT9/83w0//3vfzVy5Ehdd911qlevnoKCgvTYY4/p5MmTVjUUFBRo4sSJCgkJkZeXlwICAnTHHXdo165dVu127Nihu+66S/7+/vLx8VGfPn20detWy/4ZM2Zo6tSpkqTQ0FBLPRf//GwpKCjIMkTyQlW9Dl5++WW5u7tr06ZNVvcbM2aMPD09tXv37suqJSwsTIcPH75ku5ycHEt4Xa9ePXXp0kUrVqyw7K/q55yVlaVHH31ULVu2lJeXl4KDgzVkyJBqPe9ff/21oqKi5Ovrq4YNG2rIkCFKS0uz7B85cqT69OkjSbrvvvvk5uZWrZ5aTz31lBo1alStuZEqm0Opstfrd999p6efflrNmjVTw4YNNXbsWJWUlCg3N1ePPPKIGjVqpEaNGum5554rdz0tKyvTa6+9phtvvFH16tVTYGCgxo4dqz/++KPcuQcPHqyvvvpK3bt3l7e3t95+++0K65Kk3NxcTZo0yfIaatmypR555BGdOHFCUvVez7awf/9+xcXFqXHjxqpXr566d++u//znP1ZtTp06pWeffVbh4eGqX7++/Pz8NHDgQKvf+areayq7Dl48h5r52v3hhx/qxRdfVIsWLeTj46P8/HxJVV9jpOpfrwAA1UNPKQC4yuTl5enEiRMyDEM5OTl64403dPr0aau/ZhuGoXvuuUebN2/WqFGj1LVrV3311VeaOnWqfv/9dy1evFiStHfvXg0ePFidO3fWrFmz5OXlpYMHD1r+kx4WFqZZs2Zp+vTpGjNmjKKioiRJvXr1knT+Q9yjjz6qm2++WfPmzVN2drZef/11bd26VT/++KNVzweTyaQBAwaoR48eWrhwoTZu3KhFixapbdu2GjduXJWP22QyWT6AXejiD3uSlJ2drV69eqmwsFBPP/20mjRpohUrVuiee+5RfHy87r333uo/4Tr/gW/AgAEqLi7WU089paCgIP3+++9KTExUbm6u/P39L3l/8wfol19+WRkZGXrttdc0YcIEffTRR5Y206ZN0/z583X33XdrwIAB2r17twYMGKCzZ8/WqNaKtG7dWn369NHmzZuVn58vPz8/5efn65///KeGDRum0aNHq6CgQO+++64GDBignTt3qmvXrmrWrJneeustjRs3Tvfee69iY2MlSZ07d5Z0PtD85Zdf9OijjyooKEh79+7VsmXLtHfvXm3fvl1ubm6Szvcwio+P14QJE9SxY0edPHlS3333ndLS0iy9XL7++msNHDhQERERlgDnvffe02233aakpCTdcsstio2N1c8//6wPPvhAixcvVtOmTSXZbjjR2bNnLb9zZ86c0datW7VixQo9+OCDVqFUdV4HL774otauXatRo0Zpz549atCggb766iu98847mj17trp06VLj+s6dO6ejR4+qSZMmlbYpKipS3759dfDgQU2YMEGhoaFavXq1Ro4cqdzcXD3zzDNV/pyHDh2qvXv36qmnnlJISIhycnK0YcMGHTlyRCEhIZWee+PGjRo4cKCuu+46zZgxQ0VFRXrjjTfUu3dv7dq1SyEhIRo7dqxatGihuXPn6umnn9bNN9+swMDAKh+7n5+fJk2apOnTp9d6bynza3zmzJnavn27li1bpoYNG2rbtm1q3bq15s6dqy+++EILFixQp06dLEM8JWns2LGW34enn35ahw8f1j/+8Q/9+OOP2rp1q+rWrWtpe+DAAQ0bNkxjx47V6NGjdcMNN1RYz+nTpxUVFaW0tDQ99thj6tatm06cOKH//Oc/+u2339S0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2WeVmJiou+++u8avg6lTp+rDDz/Uzp07NXfuXHXs2LHaj6dHjx6aM2eO3Nzc5OPjo7CwsConB//111/Vvn37cq/ni68FlfHy8tLf/vY3TZkyRYGBgerZs6cGDx6sRx55REFBQZc8r1Tx8xIWFqavvvpKZ86cka+v7yXPX5VnnnlGixcv1owZM/TZZ59d0bHMLn69ml/jrVq1Krf9wutXenq68vLyFBAQUOFxL36NVPd1dujQIQ0dOrTKdlf6eq5I+/btK7zu7ty5U4Zh6KWXXtJLL71U4X1zcnLUokULlZWV6fXXX9eSJUt0+PBhq3kELzX09Epc/Jhrco2p6noFAKgZQikAuMq5u7urX79+ev3115Wenq4bb7yx2vf19vbWt99+q82bN+vzzz/Xl19+qY8++ki33Xab1q9fLw8Pj1qrszaPVVsu7A1xoYomX1+0aJFGjhypzz77TOvXr9fTTz+tefPmafv27WrZsuUlz1PZYzcumiTZllJTU+Xh4WH5sLZy5UqNHDlSMTExmjp1qgICAuTh4aF58+bp0KFD1Trm/fffr23btmnq1Knq2rWr6tevr7KyMt11111WPZvuv/9+RUVF6dNPP9X69eu1YMEC/e1vf1NCQoIGDhxoabtgwYJK574x9/SqiYULF2rmzJkV7tu8eXO1JtS+2O233y5J+vbbb3X33XfX+P6//PKL5QPynj17anTfpk2bVhgQ2NrEiRN19913a82aNfrqq6/00ksvad68efr6669100032b2eC5l7S82YMaPGvaUqW2ShstdrRdsvfA2XlZUpICBA77//foX3vziUv7Anz5WqjddzTZhfs88++2ylvb3MIfvcuXP10ksv6bHHHtPs2bPVuHFjubu7a+LEidXuAXmpa3VFP5eLn9uaXGOqul4BAGqGUAoArgGlpaWS/tcbpk2bNtq4caMKCgqsesbs37/fst/M3d1dt99+u26//Xa9+uqrmjt3rl544QVt3rxZ/fv3r/TDgPkYBw4c0G233Wa178CBA1bnsLc2bdrowIED5bZf/PjNPW9yc3Ot2lXWeyQ8PFzh4eF68cUXtW3bNvXu3VtLly7VnDlzrrheSTp48KDVX/hPnjxZoyFTlTly5Ii++eYbRUZGWn4f4uPjdd111ykhIcHqZ/zyyy9b3beyn/8ff/yhTZs2aebMmZo+fbpluzlw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rfZNmjTJqh0A11TjUOr06dM6ePCg5fbhw4f1008/qXHjxmrdurUmTpyoOXPmqH379goNDdVLL72k5s2bW1boCwsL01133aXRo0dr6dKlOnfunCZMmKAHHnigWivvuaKEhATFxcVp8ODB+uCDD9SpUyelpqZq7ty5iouLU3x8PMGUDbRs2VJ79uyRJLVo0ULbt2+3vGG1bNlSv/32m+V7AIDtpaen6/rrr7f5eYYPH26zY//8888EUwBgJ3379pWPj48KCwsrbePj48OiRYALczMMw6jJHbZs2aJ+/fqV2z5ixAgtX75chmHo5Zdf1rJly5Sbm6tbb71VS5YssfpP6KlTpzRhwgStXbtW7u7uGjp0qP7+97+rfv361aqhuksLOgOTyaR27dopPDxca9assRoLXVZWppiYGKWmpio9PZ2hfLWsZ8+e2rFjhyRZhuqZXXi7R48e2r59u0NqBIBrya5duxQREVHjOZ+q63JX36sO83xVTIoOAPZTUlKievXq6VIfWd3c3HT27Fl5enrasTIAValublPjnlJ9+/at8qIwa9YszZo1q9I2jRs31qpVq2p6apeUlJSkjIwMffDBBxVOzjdt2jT16tVLSUlJJPy17NixY5bvTSaTWrdura5du+qnn37SkSNHKmwHALA9W8751Lt3b5scFwBgf2+88YYMw1CzZs106tSpcn9kbtSokU6cOKE33niD1fcAF+USq++5sszMTElSp06dKtxv3m5uh9rTokULHT161HL7yJEjVmHUhe0AAAAAOJfvvvtOknTixAkNGjRI7dq1U1FRkby9vXXw4EF98cUXlnaEUoBrIpSyMfMqhKmpqerZs2e5/ampqVbtUHsGDx5sGZZXt25dnTt3zrLvwtusvAcAAAA4Hx8fH0nn54Ddu3evPv/8c8u+kJAQtWzZUkePHrW0A+B63KtugisRFRWlkJAQzZ07V2VlZVb7ysrKNG/ePIWGhioqKspBFV69fv/9d8v3FwZSF9++sB0AAAAA52Be0f3o0aPq1KmTkpOTVVBQoOTkZHXq1MkyKsLcDoDrIZSyMQ8PDy1atEiJiYmKiYmxupDGxMQoMTFRCxcuZJJzG6jukEiGTgIAAADOJygoyPL9zp079d///lf5+fn673//q507d1bYDoBrYfieHcTGxio+Pl5TpkxRr169LNtDQ0MVHx+v2NhYB1Z39bpwYvmtW7cqNjZWubm5atiwoRISEiyT4V48AT0AAAAAxzt58qTl++PHj2vs2LGW225ubhW2A+BaCKXsJDY2VoMHD9aSJUt06NAhtW3bVk8++SRLl9pQQkKC5fsLV2PKzs62un1hOwAAAADOoVmzZpKkm266SSdOnLBaxKhVq1Zq0qSJfvzxR0s7AK6HUMpOEhISNGXKFGVkZFi2vf7661q0aBE9pQAA14yg+m7yzv1ZOuZavVS9c39WUH23qhsCAGqNeZXsH3/8UdHR0YqNjbVafc888TmraQOui1DKDhISEhQXF6fBgwfrgw8+UKdOnZSamqq5c+cqLi6OIXw24ubmJsMwJEmNGzdWo0aNLG9if/zxh06dOmVpBwCwj7ERngr7dqz0raMrqZkwna8dAGA/5kWjPDw8tG7dOquFo9zd3dW2bVuVlZWxaBTgwgilbMxkMmnKlCkaPHiwPvnkE23dulVr165VcHCwPvnkEw0dOlTPPvushgwZwmTntSwmJkaffvqpJOnUqVOWEKqidgAA+3g7pUR/mr5cYR06OLqUGknbv19vL3pQ9zi6EAC4hnh4eOi+++7TggULKpwH9tChQ5o6dSqfowAXRihlY0lJScrIyNDYsWN1/fXXWw3fCwkJ0ZgxY7R27VolJSWpb9++DqvzanTmzJly29q3b6/09PQq2wEAbCPrtKGihtdLzbs6upQaKcoqU9Zpw9FlAMA1xWQyafny5ZIkLy8vFRUVWfbVq1dPhYWFWrFihebNm0cwBbgo15rQwQVlZmZKkqZNm6bw8HAlJyeroKBAycnJCg8P1/PPP2/VDrWnTZs25bZdHEhV1g4AAACAY23ZskXHjx/Xrbfeqry8PG3evFmrVq3S5s2blZubq1tvvVU5OTnasmWLo0sFcJkIpWwsICBAknTrrbdqzZo16tmzp+rXr6+ePXtqzZo1llXgzO1Qe8xzRbm7u+uHH36w3HZzc9MPP/xg6QLMnFIAAACA8zGHTTNnzlTdunXVt29fDRs2TH379lXdunX18ssvW7UD4HoIpRyMQMR2zEMly8rK1KtXL02dOlUHDhzQ1KlT1atXL8tEiRcOqQQAAAAAAPZBKGVjOTk5kqStW7cqJibGavheTEyMtm7datUOtad9+/aSpHbt2qmkpETz58/XDTfcoPnz56ukpETt2rWzagcAAADAeZjn3H355Zd17tw5bdmyRR988IG2bNmic+fOacaMGVbtALgeJjq3seDgYEnS3Llz9fbbb6tXr16WfaGhoXrllVf0/PPPW9qh9ixYsEBvvvmmDh06VOF+8/YFCxbYsywAAAAA1dC3b18FBATou+++k5+fn86ePWvZV69ePZ09e1YBAQGEUoALo6eUjUVFRSkkJETbtm3Tzz//bDU534EDB5ScnKzQ0FBFRUU5utSrjre3t/z9/WUY51dLuvHGG/XZZ5/pxhtvlCQZhiF/f395e3s7skwAAAAAFfDw8NCIESMkSSUlJVb7zp07J0kaMWIEK+8BLoxQysY8PDy0aNEiJSYmaujQofLy8tLgwYPl5eWloUOHKjExUQsXLuRCagOnT59WXl6e5fbevXs1ZMgQ7d2717ItLy9Pp0+fdkR5AAAAAC7BZDJp9erV6t69u1q3bm21r3Xr1urevbvi4+NlMpkcVCGAK0UoZQexsbGKj4/Xnj171KtXL/n5+alXr15KTU1VfHy8YmNjHV3iVenhhx+WJLVs2bLC/S1atLBqBwAAAMB5JCUlKSMjQ2+88YYOHjxoNeokPT1df//733X48GElJSU5ulQAl4k5pewkNjZWQ4YMUVJSkjIzMxUcHKyoqCh6SNmQec6o3377TZ6enrrxxhvl4+OjwsJC7d27V7///rtVOwAAAADOIzMzU5LUqVMneXh4lJs7qlOnTlbtALgeekrhqtWmTRvL9yUlJfrxxx+1detW/fjjj1Zj0i9sBwAAAMA5mBeDSk1Nlclkslp9z2QyKTU11aodcDX56aef5ObmZvn66aefHF2STdBTyk4SEhI0ZcoUZWRkWLaFhIRo0aJFDN+zkaCgIMv3derU0bPPPqvHH39c//znP7Vw4UKVlpaWawcAAADAOZgXjXrqqad04sSJcp+lmjZtyqJRuCq5ubmV23bTTTdJkmUhr6sFPaXsICEhQXFxcQoPD1dycrIKCgqUnJys8PBwxcXFKSEhwdElXpUOHz5s+d5kMuno0aPKy8vT0aNHrSZDvLAdAAAAAOfg4eGh++67Tz/88IOOHDlite/IkSP64YcfFBcXx5QouKpUFEjVZL+rIZSyMZPJpClTpmjw4MH65JNPdPbsWa1du1Znz57VJ598osGDB+vZZ59lxQgbyM7OliT5+PjIMAy9//77ioiI0Pvvvy/DMOTj42PVDgAAAIDzMJlMWrFihSTJ09PTap+Xl5ckacWKFXyWwlWjukP0rqahfIRSNmZeMaJXr166/vrr1a9fPz344IPq16+frr/+ekVGRrJihI0EBgZKkgoLCyvcb95ubgcAAADAeWzZskU5OTm69dZblZ+fb7X6Xl5ennr37q2cnBxt2bLF0aUCtcI8RK+22rkCQikbM68E8fzzz1c4fO+FF16waofa06FDB6vbwcHBWr58ebmJEC9uBwAAAMDxzGHTzJkz5e5u/dHV3d1dM2bMsGoHwPUQStlYQECAJKl3794VDt/r3bu3VTvUnmnTplndzszM1MiRI8sFgBe3AwAAAOA8kpKS1K5dO6tRJ+3atdN3333n6NIAXCFW37OTEydOqH379vr1118t29q0aSNvb28HVnV1u+uuu6rdbs+ePTauBgBgHja9a9cumxy/qKhIGRkZCgkJqfX317S0tFo9HgCgan379tWcOXM0Y8YMDR48WB988IE6deqk1NRUvfLKK5o5c6alHXA1aNSokf74449qtbtaEErZWE5OjiRp//79CggI0P333y9fX1+dOXNGW7ZssYRU5naoPceOHavVdgCAK7N//35J0ujRox1cyeVr0KCBo0sAgGtGVFSU3N3dVVZWJkkyDMPyZebu7q6oqChHlXjVKykp0ZIlS3To0CG1bdtWTz75ZLlJ51F7qruy3tW0Ah+hlI2Zh+U1btxYOTk5+vjjj632N27cWKdOnWL4ng00adJEp06dkiRlZWVp9uzZSk9PV/v27fXSSy8pKCjI0g4AYHsxMTGSzs/lZ14BtTalpaVp+PDhWrlypcLCwmr9+A0aNFD79u1r/bgAgIpt27bNEkht2rRJiYmJln3m95GysjJt27aN3lI28Nxzz2nx4sUqLS21bJs6daomTZqk+fPnO7Cyq9eZM2dqtZ0rIJSyE3Pw9Mgjj+i6667TL7/8on//+9/0kLKhs2fPWr4vLi7WN998o2PHjunYsWN67rnnKmwHALCdpk2b6vHHH7f5ecLCwtStWzebnwcAYFvmuWBXrlypF154wWoqlICAAM2ZM0fDhw9n0SgbeO6557RgwQI1a9ZMzZs3V3Fxsby8vHTs2DEtWLBAkgimbODiCf2vtJ0rIJSysQuHht18882KjY21jINOS0vT559/Xq4daoe5l5R0fv6uC7dffBsA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",
"text/plain": [
""
]
@@ -1355,7 +1303,7 @@
},
{
"cell_type": "code",
- "execution_count": 13,
+ "execution_count": 19,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
@@ -1377,7 +1325,7 @@
"outputs": [
{
"data": {
- "image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAJOCAYAAABm7rQwAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjYsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvq6yFwwAAAAlwSFlzAAAPYQAAD2EBqD+naQAASVRJREFUeJzt3Quc1WWdP/BnBhRQYUpFxCso+NeE8pIZ6BR4zdU2QjJFXdPK3NT1QrZCqV0MukBamZrtrraaphHhhptdzAsqpqtuiVdUUEtQy4ARFXXm/F/f5/8/0xkYZcA5v2HmvN+v1+nM7/d75pzn3Izzme/z/dWVSqVSAgAAAIAC1Rd5ZwAAAAAQhFIAAAAAFE4oBQAAAEDhhFIAAAAAFE4oBQAAAEDhhFIAAAAAFE4oBQAAAEDhhFIAAAAAFE4oBQAAAEDhhFIAQFUMGTIkfeITn+jqaVDDxowZky/rg5hHXV1dvhx22GGpOxo3blzrYxgxYkRXTweAHkAoBUC3dMUVV7R+OSpftthiizR27Nj0y1/+smr3++yzz6YvfelL6X//939TV365fbMvhIsWLcrPxfTp01Mtq3xf9O7dO2266aZpzz33TKeddlp66KGH1vl2X3755fz633LLLWl9cOedd+b5LF26tKr3s+pnbeONN07vete70vnnn5+fk64IPFf97Dc2Nqaf//znnXL71Xqdd95553TllVemz33uc6sde/XVV9MFF1yQ9t5779TQ0JD69u2bdtppp3TKKaekxx57rHVczKvysW+wwQb5+fiXf/mXdt8HcWzVEKz8u5/61KfanecXvvCF1jF/+ctfWvefccYZef7xOACgM/TulFsBgC7yla98JQ0dOjSVSqX03HPP5bDqH/7hH9IvfvGLqlQjRCj15S9/OX/R22233Tr99nuSRx99NNXXd93fvw488MD0T//0T/m9sWzZsvSHP/wh/ehHP0oXX3xx+sY3vpHOPPPMdQor4vUP60MFToRSMZ+oSHvHO95RyPMZXnrppTR37tx0zjnn5Of1pz/9aSpafP4mTZrU+rn8wQ9+kMaPH58uueSSdNJJJ72t267W6zxo0KB0zDHHrLY/gp8PfehD6d57783/3Zo4cWLaZJNN8mfoJz/5SbrsssvSa6+91uZ34nHGmBUrVqSbbropfe9730v33Xdfuv322zs0lwi9fvazn+XPw4Ybbtjm2DXXXJOPR1BW6YMf/GC+/rd/+7c2YRUArCuhFADd2iGHHJLe+973tm5/8pOfzF/84ktVd10i01P06dOnS+8/qkxWDQC+/vWvpw9/+MM5zIhqjwgwWbfnM4KfCEpmzZqVw4sIMYq09dZbt5lPBGbDhg3L1UZvN5QqWoSK999/f5o5c2Y6/PDD2xz76le/miuXVjVhwoS0+eab558/85nPpCOPPDJde+216e67707ve9/71nifEYL913/9V64s/chHPtIm6Fy4cGGeR4RWAFBNlu8B0KNEtUi/fv3ykq1KUU0QQcS2226bw5L/83/+T17iFlU0lX7zm9+kfffdN99OVCHEuClTpuRjsZRnr732yj8ff/zxrctbojqrLCpGYplYzCG+MMaX5j//+c+rfQGN24790aMlfh44cGBe0tPc3FyV5+XJJ59MH/vYx/Iyto022ii9//3vTzfccEO7SyJjCWCleNyxv3Ip04IFC/KX1i233DKHEdtss03+UhwVSW/WU6p8+3fccUeuUorHHMvAPvrRj6YXXnihzX22tLTkZUpbbbVVnm8sy4xld2+3T9Vmm22WK0/i/fG1r32tdX+EK+eee25+7WLpVMwrloPdfPPNrWPieYk5h6iiKb/+Mc/wxz/+Mc9thx12yM9JPDcnnHBC+utf/9pmDk1NTen000/PjyXei7H0LKqQosql0u9///scHMR84jmIKpV47srifs8666z8c1QLluez6utXTfEYy0skK63pc3DeeeflKrqo8Kl04okn5qqdqL5al7nssssuOVB5K88//3xreB2v03ve855cQdfR13nJkiX58x/v+Xj9Bg8enEOddX3e43WOz2LMadVAKsR9dGQ5brxfwxNPPNHhUO8DH/hAuvrqq9vs//GPf5xGjhypZxQAhVApBUC3FiFILCOJcCm+bMYSllhaVFlBEcf+8R//MQcM8cUvlv386le/yl/o44tyVFaEBx98MFdXvfvd787LAuPL4OOPP94aBMQX3tgf4UV8eS5/CRw9enRr6BJfViO4mjZtWl5O+J3vfCf/flRBVC6vivDp4IMPzv1j4gvnb3/72zRjxoy04447pn/+539e4+OO329v+czf/va31fbFPGKOsSQp+s5EMBNfwuM5icqMCIXWRgQ4MfeVK1emU089NYcB8TzOmTMn97SJEOWtxO+8853vzMFEfJG/8MILc9+cqPIomzx5cvrmN7+Zq5riviKkiOtVlxOti+222y4HPPF+WL58eRowYEC+jiVJRx11VPr0pz+dg6N///d/z/cZlSfxnomgIpZMxesTz1ksFQvxfikHmhH+xXsgnpN4P8Wyq7i+6667crARooonnvd4zNGXKUKrWHL18MMPpz322COP+d3vfperACPYKQc4l19+edpvv/3ysrmohIn7j15DURUY7+Fy1Uw5UOls8dyX33MR8sb7Ot5HsdSsMpTqyOfgi1/8Yl5iG5/HBx54IPXv3z9/Jn/4wx/myqAIitbW66+/np555pn8/n4zr7zySl6OF5/reP4jzIsALcLEeO9Gz7E1vc4RHMVrGu/jCBbjvzvx2j/99NN5e21FtVI49thj09tRDsXis9VR8drFY47/ZkY4/sYbb+TnI0LjzvisAcAalQCgG7r88sujxGm1S58+fUpXXHFFm7GzZ8/Ox84///w2+ydMmFCqq6srPf7443n7ggsuyONeeOGFN73fe+65J4+J+6/02muvlbbYYovSiBEjSq+88krr/jlz5uTx5557buu+4447Lu/7yle+0uY2dt9999Kee+65xsf+wQ9+sN3HXnn51re+1Tr+9NNPz/vmzp3buq+pqak0dOjQ0pAhQ0rNzc1tntOFCxe2ub+bb74574/rcP/99+ftn/70p285z+233z4/1rLy7R9wwAGllpaW1v1nnHFGqVevXqWlS5fm7SVLlpR69+5dGjduXJvb+9KXvpR/v/I230yMO/nkk9/0+GmnnZbH/OEPf8jbb7zxRmnlypVtxvztb38rDRo0qHTCCSe07ov3Rvzeeeedt9ptvvzyy6vtu+aaa/L42267rXVfQ0PDW84tnpvhw4eXDj744DbPU9x+vGYHHnhg6754ndt7zTrbm73P4jV69dVX1+lz8MADD5Q23HDD0qc+9an8XG+99dal9773vaXXX399jfOJ99ZBBx2UX4+4xOt45JFH5vs49dRT23xW4lJ24YUX5jFXXXVVmzmPGjWqtMkmm5SWL1/+lq9zzHPVz1dHrTqXso9+9KP5NuO2OyLmFOMfffTRPM9FixaV/uM//qPUr1+/0sCBA0srVqxY7bk69NBD2/18vPjii/k1uPLKK/P+G264If83MW6zfD/t/fcwHseuu+66ls8AAKzO8j0A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7flGr544TX1UnsTSovjC/oc//CG/1lHF0dHqoFhiFdUnERRFkBa3Ec2wI+iJQCRutyz6AkWVTlQ4xesfz028xhHYVQZDUVUS+yLUiMcez1H044pLLKeKfjwRjG699db5PRa3Uymq9eL9FH3K4n0YQUgsF73nnntaK23i9YiAIl6veE3iPRW3F5VoUbEX7+tyGBQBVoj39pFHHpkrqOL9Xg6rOlP5+SyHM3fddVd+H0Xvr6guC3H/HfkcREAVAUhUSpUrha644oocAkcF2dpW+6xNk/0f/OAH+X7vvffePKeokrvjjjtygFiunHuz1zne6xGaxhK3OB7h6c9//vP8GOP5X1f/+Z//mQ466KDcwy6ej7iPeA3jv2XxGYzlyBFSvpV47uNzE326Ytlo5ft7TeK9uK7VcgDwtrRzRj4AWO9dfvnlq52evm/fvqXddtutdMkll5RaWlrajG9qaiqdccYZpa222qq0wQYblIYPH55P61457qabbip95CMfyWPiNOlxfdRRR5Uee+yxNrd1/fXXl971rneVevfune835lJ27bXXlnbfffdSnz59Sptuumnp6KOPLv3pT39q8/vHHXdcaeONN17tMZVPwb4mb3U69oULF7Z7yvonnniiNGHChNI73vGO/Dy9733vK82ZM2e1349xBxxwQJ7/oEGDSlOmTCn95je/ybd588035zFPPvlk6YQTTijtuOOO+bbicY4dO7b029/+drVT0cdjXfU1u+eee9qMi9utvP3wxhtvlM4555zSlltumU91v99++5Uefvjh0mabbVY66aST1vgcVb4v6uvr8+OO1+W0004rPfjgg6uNj/fB1KlT85zjscfYeH5i/rGv0p133lnac88983skbj9etxCv80c/+tF8Xw0NDaWPfexjpWeffbbNmJUrV5bOOuus0nve855S//798/sgfr744otXm9P9999fGj9+fH7MMaeYxxFHHJHfp5W++tWvlrbeeuv8OOO+4j3Q2Vb9rPXq1au0zTbblE488cTSc889t9r4t/ocxGu711575d9funRpm9/7zne+k28/fv+txHNx6KGHduizEpdKMd/jjz++tPnmm+fXcOTIkW0+w2/1Ov/lL38pnXzyyaWdd945v3bxOu+9996l6667bp3mUunll18uTZ8+PT83m2yySb7f+O/UqaeeWnr88cdX++/E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dNNNrcejR1SchW/UqFGdNWcAAAAAurneazP4jDPOSKNHj87L94444oh09913p8suuyxfQl1dXTr99NPT+eefn/tORUh1zjnn5DPyjRs3rlqPAQAAAICeHErttdde6ec//3nuA/WVr3wlh04XXnhhOvroo1vHfP7zn08rVqzI/aaWLl2a9t1333TjjTemvn37VmP+AAAAAHRDdaVSqZTWI7HcL87CF03P9ZcCAAAA6F46mu2sVU8pAAAAAOgMQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACte7+LsEAKhdzc3Nae7cuWnx4sVp8ODBqbGxMfXq1aurpwUAUDiVUgAABZk1a1YaNmxYGjt2bJo4cWK+ju3YDwBQa4RSAAAFiOBpwoQJaeTIkWnevHmpqakpX8d27BdMAQC1pq5UKpXSemT58uWpoaEhLVu2LA0YMKCrpwMA0ClL9qIiKgKo2bNnp/r6v/9dsKWlJY0bNy7Nnz8/LViwwFI+AKDb62i2o1IKAKDKoofUokWL0pQpU9oEUiG2J0+enBYuXJjHAQDUCqEUAECVRVPzMGLEiHaPl/eXxwEA1AKhFABAlcVZ9kIs0WtPeX95HABALRBKAQBUWWNjYxoyZEiaOnVq7iFVKbanTZuWhg4dmscBANQKoRQAQJVF8/IZM2akOXPm5KbmlWffi+3YP336dE3OAYCa0rurJwAAUAvGjx+fZs6cmSZNmpRGjx7duj8qpGJ/HAcAqCV1pVKplLrhaQMBALqj5ubmfJa9aGoePaRiyZ4KKQCgJ+lotqNSCgCgQBFAjRkzpqunAQDQ5fSUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwvYu/SwCA2tXc3Jzmzp2bFi9enAYPHpwaGxtTr169unpaAACFUykFAFCQWbNmpWHDhqWxY8emiRMn5uvYjv0AALVGKAUAUIAIniZMmJBGjhyZ5s2bl5qamvJ1bMd+wRQAUGvqSqVSKa1Hli9fnhoaGtKyZcvSgAEDuno6AACdsmQvKqIigJo9e3aqr//73wVbWlrSuHHj0vz589OCBQss5QMAur2OZjsqpQAAqix6SC1atChNmTKlTSAVYnvy5Mlp4cKFeRwAQK0QSgEAVFk0NQ8jRoxo93h5f3kcAEAtEEoBAFRZnGUvxBK99pT3l8cBANQCoRQAQJU1NjamIUOGpKlTp+YeUpVie9q0aWno0KF5HABArRBKAQBUWTQvnzFjRpozZ05ual559r3Yjv3Tp0/X5BwAqCm9u3oCAAC1YPz48WnmzJlp0qRJafTo0a37o0Iq9sdxAIBaUlcqlUqpG542EACgO2pubs5n2Yum5tFDKpbsqZACAHqSjmY7KqUAAAoUAdSYMWO6ehoAAF1OTykAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwvYu/SwCA2tXc3Jzmzp2bFi9enAYPHpwaGxtTr169unpaAACFUykFAFCQWbNmpWHDhqWxY8emiRMn5uvYjv0AALVGKAUAUIAIniZMmJBGjhyZ5s2bl5qamvJ1bMd+wRQAUGvqSqVSKa1Hli9fnhoaGtKyZcvSgAEDuno6AACdsmQvKqIigJo9e3aqr//73wVbWlrSuHHj0vz589OCBQss5QMAur2OZjsqpQAAqix6SC1atChNmTKlTSAVYnvy5Mlp4cKFeRwAQK0QSgEAVFk0NQ8jRoxo93h5f3kcAEAtEEoBAFRZnGUvxBK99pT3l8cBANQCoRQAQJU1NjamIUOGpKlTp+YeUpVie9q0aWno0KF5HABArXhbodTXv/71VFdXl04//fTWfa+++mo6+eST02abbZY22WSTdPjhh6fnnnuuM+YKANAtRfPyGTNmpDlz5uSm5pVn34vt2D99+nRNzgGAmrLOodQ999yTfvCDH6R3v/vdbfafccYZ6Re/+EX66U9/mm699db07LPPpvHjx3fGXAEAuq3499DMmTPTAw88kEaPHp3PRBPXsXQv9vv3EgBQa+pKpVJpbX/ppZdeSnvssUe6+OKL0/nnn5922223dOGFF+ZT/Q0cODBdffXVacKECXnsI488knbZZZf8l8D3v//9nXbaQACA7qi5uTmfZS+amkcPqViyp0IKAOhJOprtrFOlVCzPO/TQQ9MBBxzQZv+9996bXn/99Tb7d95557TddtvlUAoAoNZFADVmzJh01FFH5WuBFABQq3qv7S/85Cc/Sffdd19evreqJUuWpA033DC94x3vaLN/0KBB+Vh7Vq5cmS+VaRoAAAAAPdtaVUo988wz6bTTTks//vGPU9++fTtlAnG2mSjpKl+23XbbTrldAAAAAHpIKBXL855//vncT6p37975Es3Mv/vd7+afoyLqtddeS0uXLm3ze3H2vS233LLd25w8eXJeY1i+RPAFAAAAQM+2Vsv39t9//3zGmErHH3987hv1r//6r7nKaYMNNkg33XRTOvzww/PxRx99ND399NNp1KhR7d5mnz598gUAAACA2rFWoVT//v3TiBEj2uzbeOON02abbda6/5Of/GQ688wz06abbpo7rJ966qk5kOrImfcAAHo6Z98DAFjHRudrcsEFF6T6+vpcKRUNzA8++OB08cUXd/bdAAB0O7NmzUqTJk1KixYtat03ZMiQNGPGjDR+/PgunRsAQNHqSqVSKa1H4ux70fA8+ktFpRUAQE8JpCZMmJAOO+ywNGXKlFxlPn/+/DR16tQ0Z86cNHPmTMEUANAjdDTbEUoBABSwZG/YsGFp5MiRafbs2bmqvKylpSWNGzcuB1QLFiywlA8A6PY6mu2s1dn3AABYe9FDKpbsRYVU/D3wlltuSddcc02+ju04G/HChQvzOACAWtHpPaUAAGgrmpqHJ554Ih111FGr9ZQ6//zz24wDAKgFKqUAAKoszrIXjj322LyEb968eampqSlfx3bsrxwHAFAL9JQCAKiy1157LW288cZps802S3/6059S795/L1Z/44030jbbbJP++te/phUrVqQNN9ywS+cKAPB26SkFALCeuPPOO3P49Nxzz+Uz7FVWSsV27I/jMQ4AoFYIpQAAqqzcK+qqq65KDzzwQBo9enT+q2Fcx1n3Yn/lOACAWqDROQBAlZV7Re24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NTY2piFDhqQ777wzPfzww+nSSy9NTzzxRNpxxx1zT6kjjjgiDR06NI8DAKgVQikAgCrr1atXmjFjRpowYULadNNN81n3yqZMmZJeffXVNHPmzDwOAKBWWL4HANCFDc3r6uo0OgcAalJdaT37V9Dy5ctTQ0NDWrZsWe61AADQ3TU3N6dhw4alkSNHpuuuu67d5XvRW2rBggWqpQCAbq+j2c5aVUpFc8699tor9e/fP22xxRb5bDGPPvpomzFRfn7yySenzTbbLG2yySbp8MMPT88999y6PxIAgG5u7ty5adGiRbmx+S677JLOOOOMdNFFF+Xr2B41alRauHBhHgcAUCvWKpS69dZbc+B01113pd/85jfp9ddfTwcddFBasWJF65j4x9UvfvGL9NOf/jSPf/bZZ9P48eOrMXcAgG5h8eLF+Xry5Mm5WmrevHmpqakpX8d29JWqHAcAUAve1vK9F154IVdMRfj0gQ98IJdlDRw4MF199dW5kWd45JFH8l8A4x9d73//+9d4m5bvAQA9zU033ZQOOOCAtO+++6bf/e536Y477sgB1ODBg9M+++yTxo4dm/f99re/Tfvvv39XTxcA4G3paLbzts6+Fzce4iwy4d57783VU/GPrrKdd945bbfddh0OpQAAeqq//vWvafjw4empp55q3bf99tunfv36dem8AAC61dn3Wlpa0umnn57/ujdixIi8b8mSJWnDDTdM73jHO9qMHTRoUD7WnpUrV+YErfICANCTPP/88/n64Ycfzv03L7vsstziIK5jOyrLK8cBANSCda6Uit5ScZaY22+//W1NIJqnf/nLX35btwEAsD6LdgflCvIIoU488cTWY0OHDs37I5gqjwMAqAXrVCl1yimnpDlz5qSbb745bbPNNq37t9xyy/Taa6+lpUuXthkfZ9+LY+2Jhp+xDLB8eeaZZ9ZlSgAA673NN988V0tdcMEF+d9Tcf3QQw/l/QAAtWatKqWiJ/qpp56afv7zn6dbbrkl/2Wv0p577pk22GCD3Mzz8MMPz/seffTR9PTTT+dTHbenT58++QIA0FOVl+VFhXn04nzllVdaj8WZ98rblu8BALWk99ou2Ysz611//fWpf//+rX2ioqN6NOiM609+8pPpzDPPzP/gig7rEWJFIKXJOQBQq+Ise2WxfK9S5XblOACAnq6uFOVPHR1cV9fu/ssvvzx94hOfaP2H1aRJk9I111yTm5gffPDB6eKLL37T5XvretpAAIDuItobxB/w4kQx//AP/5AOPfTQvB0VUjfccEP67//+71RfX5+346QxAADdWUeznbVevrcmffv2Td///vfzBQCAlObOnZsDqfIf+eLfVOVL+Y9+cTzG7b///l08WwCA9fzsewAAdEz04gxHHHFE+tnPfparo8p69+6d91933XV5nFAKAKgV63T2PQAA1l4ET6suz4uTxMR+AIBaI5QCAKiyxsbG1p/322+/NG/evNTU1JSvY7u9cQAAPZ1QCgCgyipPFvNmPaVWHQcA0NPpKQUAUGW33XZb68833XRTmjNnTuv2Rhtt1GbcgQceWPj8AAC6gkopAICCfOlLX0oDBw5ssy+2zzvvvC6bEwBAVxFKAQBU2ZgxY/L1tdde2+4SvdhfOQ4AoBYIpQAAqizCpgEDBqSHH344vfrqq+myyy5Lzz77bL6O7UceeSQfF0oBALVETykAgAL07ds3LV++PF9OPPHE1XpKxXEAgFqiUgoAoMrmzp2bnn/++TRt2rS0xRZbtDkW21OnTs3HYxwAQK0QSgEAVNnixYvz9SmnnJKX8J188snpoIMOytcPPfRQ3l85DgCgFli+BwBQZYMHD87XJ510UvrJT36Smpub8/avf/3rdOmll6aPf/zjbcYBANSCulKpVErrkeiz0NDQkJYtW5YbfgIAdHcRQm266ab53zn19fWppaWl9Vh5O/7d8+KLL6ZevXp16VwBAIrKdlRKAQAUEEo1NTXlnzfffPN07LHHph122CE9+eST6corr8z9pOJ4jBNKAQC1QigFAFBlF110UYri9IEDB6YXXnghzZgxo/VYXV1dDqr+8pe/5HFnnnlml84VAKAoGp0DAFRZ+ax6EUi1JwKpynEAALVAKAUAUGUbb7xx689bbLFF+uEPf5jPtBfXsd3eOACAnk4oBQBQZbvuumvrz4899lh66aWX0te+9rV8HdvtjQMA6On0lAIAqLIHH3yw9ec4E02lM844o91xAAA9nUopAIAqW7FiRaeOAwDoCYRSAABVNmrUqE4dBwDQEwilAACq7I033ujUcQAAPYFQCgCgyq655ppOHQcA0BMIpQAAqmzp0qWdOg4AoCcQSgEAVNnAgQNbf+7Vq1ebY5XbleMAAHo6oRQAQJXttNNOrT83Nze3OVa5XTkOAKCnE0oBAFRZfX19p44DAOgJ/MsHAAAAgMIJpQAAqqyyAqqurq7NscptlVIAQC3xLx8AgCrbdtttW3/u06dPm2OV25XjAAB6OqEUAECVbb755q0/r1y5ss2xyu3KcQAAPZ1QCgCgyrbccsvWn0ulUptjlduV4wAAejqhFABAlXU0bBJKAQC1RCgFAFBlr7/+eqeOAwDoCXp39QQAAHq6q666qvXngQMHpl133TW1tLTks+09+OCD6YUXXmgd96EPfagLZwoAUByhFABAlS1atChfb7LJJjmAuuWWW9ocj/0vvfRS6zgAgFpg+R4AQJX169cvX0fwVFdX1+ZYbMf+ynEAALVAKAUAUGW77757h86+VzkOAKCnE0oBAFRZU1NTp44DAOgJhFIAAFX27LPPduo4AICeQCgFAFBlL7/8cqeOAwDoCYRSAABVNnDgwE4dBwDQEwilAACqbPvtt+/UcQAAPYFQCgCgyt75znd26jgAgJ5AKAUAUGX33Xdfp44DAOgJhFIAAFV21113deo4AICeQCgFAFBlTU1NnToOAKAn6N3VEwAA6Onq6//+d8APfehD6bDDDkv9+vVLr7zySpozZ0668cYbVxsHANDTCaUAAKrsjTfeaP3517/+dWsItWoQVTkOAKCnE0oBAD3Cyy+/nB555JG0PqoMnlpaWtocq9yOcetrs/Odd945bbTRRl09DQCgBxFKAQA9QgRSe+65Z+rOXnzxxfX2Mdx7771pjz326OppAAA9iFAKAOgRopIngpP10UsvvZQ++MEPrnHcrbfemjbZZJO0vj6/AACdSSgFAPQIsbRsfa7k2WuvvdI999zzlsc/8IEPFDonAICu5BQvAAAFuPvuu3Pw1J7YH8cBAGqJUAoAoCARPDU1NbUu5Yvr2BZIAQC1SCgFAFCg6Bn17W9/O/8c1+trDykAgGoTSgEAAABQOKEUAAAAAIUTSgEAAABQOKEUAAAAAIUTSgEAAABQOKEUAAAAAIUTSgEAAABQOKEUAAAAAIUTSgEAAABQOKEUAAAAAIUTSgEAAABQOKEUAAAAAIUTSgEAAABQOKEUAAAAAIUTSgEAAABQOKEUAAAAAIUTSgEAAABQOKEUAAAAAIUTSgEAAABQOKEUAAAAAIUTSgEAAABQuN7F3yUA0J0sWLAgNTU1dfU0epSHH364zTWdo3///mn48OFdPQ0AoIOEUgDAWwZSO+20U1dPo8c65phjunoKPc5jjz0mmAKAbkIoBQC8qXKF1FVXXZV22WWXrp5Oj/HKK6+kRYsWpSFDhqR+/fp19XR6hKg6i5BPVR8AdB9CKQBgjSKQ2mOPPbp6Gj3KPvvs09VTAADoUhqdAwAAAFA4oRQAAAAAhRNKAQAAAFA4oRQAAAAAhRNKAQAAAFA4oRQAAAAAhRNKAQAAAFA4oRQAAAAAhRNKAQAAAFA4oRQAAAAAhRNKAQAAANBzQqnvf//7aciQIalv375p7733TnfffXe17goAAACAbqYqodS1116bzjzzzHTeeeel++67L73nPe9JBx98cHr++eercXcAAAAAdDO9q3Gj3/72t9OnP/3pdPzxx+ftSy+9NN1www3pP/7jP9LZZ59djbsEAKpky03qUr+lj6X0rFX/rL/iPRrvVQCghkOp1157Ld17771p8uTJrfvq6+vTAQcckObNm9fZdwcAVNHLL7+cPrPnhmmX2z6T0m1dPRt4c7uklN+rAEANh1J/+ctfUnNzcxo0aFCb/bH9yCOPrDZ+5cqV+VK2fPnyzp4SALCO4v+7f3Dva+m/Hn29q6cCa7T4pVI6un//rp4GANCVy/fWxrRp09KXv/zlrp4GANCOcePG5eudd945bbTRRml99sorr6RFixZ19TR6rDiBTb9+/dL6rH///mn48OFdPQ0AoIPqSqVSKXXy8r34R+vMmTNb/yEbjjvuuLR06dJ0/fXXr7FSatttt03Lli1LAwYM6MypAQAAAFBlke00NDSsMdvp9I6lG264Ydpzzz3TTTfd1LqvpaUlb48aNWq18X369MkTrLwAAAAA0LNVZfnemWeemSuj3vve96b3ve996cILL0wrVqxoPRsfAAAAALWtKqHUxz/+8fTCCy+kc889Ny1ZsiTttttu6cYbb1yt+TkAAAAAtanTe0oVte4QAAAAgPVPl/WUAgAAAIA1EUoBAAAAUDihFAAAAACFE0oBAAAAUDihFAAAAACFE0oBAAAAUDihFAAAAACFE0oBAAAAUDihFAAAAACFE0oBAAAAUDihFAAAAACFE0oBAAAAUDihFAAAAACFE0oBAAAAUDihFAAAAACF653WM6VSKV8vX768q6cCAAAAwFoqZzrljKfbhFJNTU35etttt+3qqQAAAADwNjKehoaGNz1eV1pTbFWwlpaW9Oyzz6b+/funurq6rp4OAEBV/noYf4B75pln0oABA7p6OgAAnSqipgikttpqq1RfX999QikAgFoIpeKvhsuWLRNKAQA1S6NzAAAAAAonlAIAAACgcEIpAICC9enTJ5133nn5GgCgVukpBQAAAEDhVEoBAAAAUDihFAAAAACFE0oBAAAAUDihFAAAAACFE0oBAAAAUDihFABAJ1i5cmW+bmlp6eqpAAB0C0IpAIC36YEHHkg77LBDuv3221N9fb1gCgCgA4RSAABvQwRQ3/jGN9LixYvThz70oXTzzTcLpgAAOqB3RwYBANC+CKAOPvjg9Mwzz6RtttkmHXjggenGG29MBxxwQA6m4jgAAKvzryQAgLVUKpXaXI8ZMyY99thjaeedd05nnXVWOuSQQ9Lvfvc7FVMAAG9BKAUAsI5Nzevq6vL1tttum770pS+l+++/P3384x9Pxx57bK6espQPAODNCaUAANbCgw8+mHbaaad0wQUXpN/+9ret+9/97nenp556KvXq1Stdcskl6ZhjjkkHHXRQuuWWWwRTAADtEEoBAHTQ66+/nqZPn57+9Kc/pZ/85Cfpe9/7Xu4hFRVS73//+/OyvTPPPDMHU9H8/IQTTkj77bdfmjt3rt5SAACr0OgcAKCDImyK0Gnp0qXp1ltvTRdeeGG69NJL0+c///n00ksvpf333z81NTWlBQsWpF122SWdc845qU+fPmnzzTfv6qkDAKx36krlDp0AALQrmpjHsr2PfvSjeRlehE6f+MQncm+pWMIXQdQ111yTLr744lxFFUv2PvCBD+TfbW5uzmEWAABtCaUAAN5C/FPpq1/9am5kHkv2jjjiiLwvgqnoGxWBVIRQgwYNSo8++mhe4jdixIg8ptwIHQCA1QmlAADWYPny5enrX/967hP14x//OB155JGtwdQ//dM/pRdeeCHdeeedOZgCAKBjdNwEAFiDAQMGpH/9139NZ511Vjr66KPzUr2ogho+fHi68sorcxg1ZsyYtHjx4q6eKgBAt6FSCgBgFREu3XvvvTl42nXXXdOQIUNaK6amTp2avvWtb6WrrroqHXXUUbli6oknnkj/+I//mPr165fuvvtuPaQAADrA2fcAACo88MADuaH5Jptskv74xz+mAw88MFdJ7bfffrli6otf/GIeF/2kQgRTO+64Y/rFL36RwyiBFABAxwilAAD+vwihRo0alU477bR8mTdvXu4fFY3LI5QKEVZNmTIl/3z88cfnM/DFmfgimAIAoOMs3wMASCk9/vjjaffdd8+VT5dddlnr/ne96115Wd5tt92WNt5449b9sZRv8uTJ+Yx8CxcuTP3793e2PQCAtaDROQDA/w+lVqxYkRoaGvLPYdq0aemRRx5JvXv3Tp/5zGfS1772tXT11VfnYxFQff/7308PP/xwXtYnkAIAWDsqpQCAmvbCCy+kp556Km299da5n9QJJ5yQjjvuuLws7/LLL08XX3xx2m677dJjjz2WfvOb36Sbbrop9e3bN334wx9O3/nOd4RRAADrSCgFANSshx56KJ144olpo402yr2iZs2alf7zP/8znXXWWelvf/tbXsYX/aLKXnvttRxixf5jjz02DRs2rEvnDwDQnQmlAICa9OCDD6Z99903ffazn81L87baaqu8TC/87Gc/S6ecckqaOHFiOumkk9Lw4cPz/jfeeKN1DAAAb49QCgCoOS+++GL6yEc+kvbYY4+8BK+sMnS66qqr0tlnn50OP/zwdOqpp6qKAgDoZP7UBwDUnCVLlqTFixfnwKmlpSXV1/+/c79EIFX+e90xxxyT+0VNmTIlNTU1pS9+8Ytphx126OKZAwD0HM6+BwDUnP/93//Nzc0bGxtzIBXBVFkEUXF5+eWX05gxY3Il1V133ZXPtgcAQOcRSgEANWfIkCG5Kioam4dypVSlf/u3f0vHH398GjduXJo3b14aNGhQF8wUAKDnEkoBADVn++23TwMGDMhn2ouKqbLKVptPP/102m233fK+GAsAQOcSSgEANWfrrbdOl1xySfrVr36VzjnnnPTQQw/l/eVle9FHaubMmelTn/pU63I+AAA6l7PvAQA1KfpI/fCHP0ynnHJKPrPeqFGjUt++fdOf//zn3EPqxhtvTLvvvntXTxMAoMcSSgEANe3uu+9O3/rWt9Ljjz+e+vfvn0aPHp0++clPpuHDh3f11AAAejShFABQ85qbm1OvXr26ehoAADVFTykAoOZVnn3P3+sAAIqhUgoAAACAwqmUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAAKBwQikAAAAACieUAgAAACAV7f8CZwfdfR2RHNgAAAAASUVORK5CYII=",
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAJOCAYAAABm7rQwAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAAVJxJREFUeJzt3X2c1WWdP/7XzCA3gjOmIow3ATm2qMyqmZnUJKSmptaIrClparXmpmZK7gqtqWWyFmRtpa61m67mTdKsbrRaZqKjTtrXysRbTDDTEbCSwRtQZj6/P/wxMYEJyHyOMM/n43EennNd1+dz3ufMHB/D61zX9akqiqIIAAAAAJSoutIFAAAAAND3CKUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAgF4xcuTIHHfccZUugz5s3LhxGTduXKXLSPJqLVVVVamqqsohhxxS6XLWSXNzc/drGDNmTKXLAWAjIJQCYIN02WWXdf/jaMVt6623zvjx43PjjTf22vM+/fTTOeecc/Kb3/ym157j9YwbN+41/0E4f/78VFVVZfr06SVX9eay8u9Fv379ssUWW2SPPfbIqaeemgcffHCdz/viiy/mnHPOyezZs9dfsW/AXXfdlXPOOSfPPfdcrz7PX3/WBg8enJ133jnnnXdeXnzxxV597tUZOXLkKp/9pqam/M///M96OX9v/ZxHjx6dK664Ip/73OdW6Vu6dGkuvPDC7LXXXqmrq8vAgQPz9re/PSeffHIeffTR7nHnnHNOj9e+ySabZOTIkfnMZz6z2t+DkSNHrhKCrTj2k5/85Grr/PznP9895tlnn+1uP+2003LFFVdk9OjR6/gOAEBP/SpdAAC8EV/84hczatSoFEWRBQsW5LLLLssHP/jB/OhHP+qV2QhPP/10zj333IwcOTK77bbbej//xuSRRx5JdXXlvv/af//987GPfSxFUWTx4sW57777cvnll+eiiy7KBRdckNNPP32tz/niiy/m3HPPTZI3xQycu+66K+eee26OO+64bL755r36XCvezyR5/vnn09ramrPOOiv33Xdfrrvuul597tXZbbfdMnny5CSvfi7/4z/+IxMmTMjFF1+cE0888Q2du7d+zsOGDcvRRx+9Svuzzz6bAw88MPfee28OOeSQTJo0KUOGDMkjjzySa665JpdeemlefvnlHsdcfPHFGTJkSF544YXccsst+eY3v5lf/epXueOOO9aoloEDB+aHP/xhLrroovTv379H39VXX52BAwdm6dKlPdr32WefJMl3v/vdHmEVAKwroRQAG7SDDjoo73znO7sff+ITn8iwYcNy9dVXb7BLZDYWAwYMqOjzv/3tb18lAPi3f/u3HHrooZk8eXJGjx6dD37wgxWqbsPz1+/niSeemJdffjktLS1ZunRpBg4cWGo92267bY96Pvaxj6WhoSEXXnjhGw6lynbcccfl17/+dWbOnJnDDz+8R9+XvvSlfP7zn1/lmIkTJ2arrbZKknzqU5/KkUcemWuvvTb33HNP3vWud73ucx544IH53//939x444358Ic/3N1+1113Zd68eTn88MPzwx/+8A2+MgD42yzfA2Cjsvnmm2fQoEHp16/n9y4vvPBCJk+enO233z4DBgzI3/3d32X69OkpiqLHuJtvvjnvfe97s/nmm2fIkCH5u7/7u0ydOjVJMnv27Oy5555JkuOPP757ectll13Wffx1112XPfbYI4MGDcpWW22Vo48+Ok899VSP5zjuuOMyZMiQPPXUU2lubs6QIUMydOjQfO5zn0tnZ2cvvCvJ448/nn/4h3/IFltskU033TTvfve78+Mf/7jHmBVLIufPn9+jffbs2amqquqxlGnu3Lk5/PDDM3z48AwcODDbbbddjjzyyCxevLh7zF/vKbXi/HfeeWdOP/30DB06NIMHD85hhx2WRYsW9XjOrq6unHPOOdlmm22y6aabZvz48XnwwQff8D5VW265Za655pr069cvX/7yl7vbX3755XzhC1/IHnvskbq6ugwePDhNTU259dZbu8fMnz8/Q4cOTZKce+653T//c845J0ny29/+Nscdd1ze9ra3ZeDAgRk+fHg+/vGP549//GOPGpYsWZLPfvazGTlyZAYMGJCtt946+++/f371q1/1GHf33XfnwAMPTF1dXTbddNPss88+ufPOO7v7zznnnJxxxhlJklGjRnXX89c/v940fPjw7iWSK3u9z8HZZ5+d6urq3HLLLT2OO+GEE9K/f//cd99961TLTjvtlHnz5v3NcQsXLuwOrwcOHJhdd901l19+eXf/6/2cn3nmmRx//PHZbrvtMmDAgNTX1+fDH/7wOr/vd999d3784x/nE5/4xCqBVPJquLsmy3GbmpqSJL/73e/W6Hm33XbbvO9978tVV13Vo/373/9+Ghsb7RkFQCnMlAJgg7Z48eI8++yzKYoiCxcuzDe/+c08//zzPWZQFEWRD33oQ7n11lvziU98Irvttlt+8pOf5IwzzshTTz2VCy+8MEnywAMP5JBDDsnf//3f54tf/GIGDBiQxx57rDsI2GmnnfLFL34xX/jCF3LCCSd0/yNw7NixSV4NXY4//vjsueeemTZtWhYsWJBvfOMbufPOO/PrX/+6x/Kqzs7OHHDAAdlrr70yffr0/OxnP8uMGTOyww475J/+6Z9e93V3dnaudvnMn//851XaFixYkLFjx+bFF1/MZz7zmWy55Za5/PLL86EPfSgzZ87MYYcdtuZveF4NcA444IAsW7Ysp5xySoYPH56nnnoqs2bNynPPPZe6urq/efwpp5ySt7zlLTn77LMzf/78fP3rX8/JJ5+ca6+9tnvMlClT8pWvfCWHHnpoDjjggNx333054IADVllOtC7e+ta3Zp999smtt96ajo6O1NbWpqOjI9/97ndz1FFH5R//8R+zZMmS/Od//mcOOOCA3HPPPdltt90ydOjQXHzxxfmnf/qnHHbYYZkwYUKS5O///u+TvBpoPv744zn++OMzfPjwPPDAA7n00kvzwAMP5Be/+EWqqqqSvDrDaObMmTn55JOz8847549//GPuuOOOPPTQQ3nHO96RJPn5z3+egw46KHvssUd3gPO9730v73//+9Pa2pp3vetdmTBhQh599NFcffXVufDCC7tnzawIVNa3pUuXdv/OvfDCC7nzzjtz+eWXZ9KkST1CqTX5HPzrv/5rfvSjH+UTn/hE7r///my22Wb5yU9+ku985zv50pe+lF133XWt63vllVfy5JNPZsstt3zNMS+99FLGjRuXxx57LCeffHJGjRqV6667Lscdd1yee+65nHrqqa/7cz788MPzwAMP5JRTTsnIkSOzcOHC3Hzzzfn973+fkSNHrnXd//u//5skOeaYY9b62JWtCMXe8pa3rPExkyZNyqmnnprnn38+Q4YMyfLly3Pdddfl9NNPXy+fNQB4XQUAbIC+973vFUlWuQ0YMKC47LLLeoy9/vrriyTFeeed16N94sSJRVVVVfHYY48VRVEUF154YZGkWLRo0Ws+7y9/+csiSfG9732vR/vLL79cbL311sWYMWOKl156qbt91qxZRZLiC1/4QnfbscceWyQpvvjFL/Y4x+67717ssccer/va99lnn9W+9pVvX/3qV7vHf/azny2SFK2trd1tS5YsKUaNGlWMHDmy6OzsLIriL+/pvHnzejzfrbfeWiQpbr311qIoiuLXv/51kaS47rrr/madI0aMKI499tjuxyvOv99++xVdXV3d7aeddlpRU1NTPPfcc0VRFMUzzzxT9OvXr2hubu5xvnPOOadI0uOcryVJcdJJJ71m/6mnnlokKe67776iKIpi+fLlxbJly3qM+fOf/1wMGzas+PjHP97dtmjRoiJJcfbZZ69yzhdffHGVtquvvrpIUtx+++3dbXV1dX+ztq6urmLHHXcsDjjggB7v04svvliMGjWq2H///bvbvvrVr672Z7a+vdbvWXNzc7F06dLucWvzObj//vuL/v37F5/85CeLP//5z8W2225bvPOd7yxeeeWV161nxIgRxQc+8IFi0aJFxaJFi4r77ruvOPLII4skxSmnnNI9bp999in22Wef7sdf//rXiyTFlVde2aPmvffeuxgyZEjR0dFRFMVr/5z//Oc/r/L5WlN/XcsKhx12WJGk+POf/7xG5zn77LOLJMUjjzxSLFq0qJg/f37xX//1X8WgQYOKoUOHFi+88EKP8SNGjCgOPvjgHm0rPh9/+tOfiv79+xdXXHFFURRF8eMf/7ioqqoq5s+f3/08q/v/4T777FPssssua/bCAeBvsHwPgA3at7/97dx88825+eabc+WVV2b8+PH55Cc/mZaWlu4x//d//5eampp85jOf6XHs5MmTUxRF99X6VsxkuuGGG9LV1bVWdfy///f/snDhwnz605/usbfOwQcfnNGjR6+yVC7JKvveNDU15fHHH1+j5xs5cmT36175duWVV64y9v/+7//yrne9K+9973u724YMGZITTjgh8+fPX+ur0a2YCfWTn/xkna68dsIJJ3TPGkpefd2dnZ154oknkiS33HJLli9fnk9/+tM9jjvllFPW+rley5AhQ5K8upQuSWpqaro3e+7q6sqf/vSnLF++PO985ztXWVb3WgYNGtR9f8Wsone/+91J0uMcm2++ee6+++48/fTTqz3Pb37zm8ydOzeTJk3KH//4xzz77LN59tln88ILL2TffffN7bffvta/n+vDhz/84e7fsxtuuCFTpkzJTTfdlEmTJnUvg12bz8GYMWNy7rnn5rvf/W4OOOCAPPvss7n88stXWQr4Wn76059m6NChGTp0aHbddddcd911OeaYY3LBBRe85jH/93//l+HDh+eoo47qbttkk03ymc98Js8//3xuu+22v/mcgwYNSv/+/TN79uzVzkpcFx0dHUmSzTbbbK2O+7u/+7sMHTo0I0eOzMc//vE0NDTkxhtvzKabbrrG53jLW96SAw88MFdffXWS5KqrrsrYsWMzYsSItaoFANaV5XsAbNDe9a539djo/Kijjsruu++ek08+OYccckj69++fJ554Ittss80q/+jbaaedkqQ7DPnIRz6S7373u/nkJz+ZM888M/vuu28mTJiQiRMnvu5V5Fac4+/+7u9W6Rs9evQqV8QaOHDgKsus3vKWt6zxP3QHDx6c/fbbb5X21e1r88QTT2SvvfZapX3l1782+8eMGjUqp59+er72ta/l+9//fpqamvKhD30oRx999Osu3UteXT63shXLjVa89hXvZUNDQ49xW2yxxVotTfpbnn/++SQ9g4DLL788M2bMyMMPP5xXXnmlu33UqFFrdM4//elPOffcc3PNNddk4cKFPfpW3mvrK1/5So499thsv/322WOPPfLBD34wH/vYx/K2t70tyav7dSXJscce+5rPtXjx4rV+L55//vnu1/3Xtthii1WuwPbXtttuux6/cx/60Iey5ZZb5nOf+1xmzZqVQw89dK0/B2eccUauueaa3HPPPTn//POz8847r/Hr2WuvvXLeeeelqqoqm266aXbaaafXvQLhE088kR133HGVz/Nf/7/gtQwYMCAXXHBBJk+enGHDhuXd7353DjnkkHzsYx/L8OHD17j2ldXW1iZ5NSBdmyso/vCHP0xtbW0WLVqUf//3f8+8efN6BKNratKkSTnmmGPy+9//Ptdff32+8pWvrPU5AGBdmSkFwEaluro648ePT3t7e/c/7tfUoEGDcvvtt+dnP/tZjjnmmPz2t7/NRz7ykey///7rfQPympqa9Xq+9WHl2UsrW91rnzFjRn77299m6tSpeemll/KZz3wmu+yyS/7whz+87vO81msv/mrT+d40Z86c1NTUdAdOV155ZY477rjssMMO+c///M/cdNNNufnmm/P+979/jWclHXHEEfnOd76TE088MS0tLfnpT3+am266KUl6nOOII47I448/nm9+85vZZptt8tWvfjW77LJL94y9FWO/+tWvrnY23M0339w902ttTJ8+PfX19au93XXXXWt9viTZd999kyS33377Oh3/+OOPd39O77///rU6dquttsp+++2XfffdN3vvvfdaBTpvxGc/+9k8+uijmTZtWgYOHJizzjorO+20U37961+v0/lGjx6dZO1f//ve977st99+Oeqoo3LzzTdn0KBB+ehHP7rWs+g+9KEPZcCAATn22GOzbNmyHHHEEWt1PAC8EUIpADY6y5cvT/KX2TAjRozI008/3b1Ua4WHH364u3+F6urq7Lvvvvna176WBx98MF/+8pfz85//vPsqbK8V3Kw4xyOPPLJK3yOPPFLR5TAjRoxYbV1//fpXzLx57rnneox7rdkjjY2N+dd//dfcfvvtaW1tzVNPPZVLLrlkvdSbJI899liP9j/+8Y/rZcnU73//+9x2223Ze++9u2dKzZw5M29729vS0tKSY445JgcccED222+/VTZ7fq2f/5///OfccsstOfPMM3PuuefmsMMOy/777989++mv1dfX59Of/nSuv/76zJs3L1tuuWX31QB32GGHJK/OoNlvv/1We9tkk03+Zj2r87GPfew1Q6512Vg8Wf1nLVmzz0FXV1eOO+641NbWZurUqbn66qt7LLvtDSNGjMjcuXNXCW7++rPweu/rDjvskMmTJ+enP/1p5syZk5dffjkzZsxYp5oOPfTQJFnt0ts1NWTIkJx99tn5zW9+kx/84AdrdeygQYPS3Nyc2bNnZ//99+/eMB8AyiCUAmCj8sorr+SnP/1p+vfv370k54Mf/GA6OzvzrW99q8fYCy+8MFVVVTnooIOSvLr86q/ttttuSZJly5YleXXZXLJqcPPOd74zW2+9dS655JLusUly44035qGHHsrBBx+8Xl7fuvjgBz+Ye+65J21tbd1tL7zwQi699NKMHDmye8nUijBk5VkvnZ2dufTSS3ucr6OjozuMWKGxsTHV1dU9Xvu62nfffdOvX79cfPHFPdr/+ue3Lv70pz/lqKOOSmdnZz7/+c93t6+YvbXybK277767x3uWpHu/nr/++a/u+CT5+te/3uNxZ2dnj6V8SbL11ltnm2226X7v9thjj+ywww6ZPn36apfbLVq0qPv+a/0+rs7b3va21wy51nVZ5I9+9KMk6Q611uZz8LWvfS133XVXLr300nzpS1/K2LFj80//9E+rvark+vLBD34wzzzzTI8rPS5fvjzf/OY3M2TIkOyzzz5JXvvn/OKLL64SVO6www7ZbLPN1vl3f++9986BBx6Y7373u7n++utX6X/55Zfzuc997nXP89GPfjTbbbfd39xT67V87nOfy9lnn52zzjprrY8FgDfCnlIAbNBuvPHG7lkOCxcuzFVXXZW5c+fmzDPP7N6r5dBDD8348ePz+c9/PvPnz8+uu+6an/70p7nhhhvy2c9+tjuM+eIXv5jbb789Bx98cEaMGJGFCxfmoosuynbbbde9SfgOO+yQzTffPJdcckk222yzDB48OHvttVdGjRqVCy64IMcff3z22WefHHXUUVmwYEG+8Y1vZOTIkTnttNMq8wYlOfPMM3P11VfnoIMOymc+85lsscUWufzyyzNv3rz88Ic/7N5fZ5dddsm73/3uTJkyJX/605+yxRZb5JprrlklgPr5z3+ek08+Of/wD/+Qt7/97Vm+fHmuuOKK1NTU5PDDD3/D9Q4bNiynnnpqZsyYkQ996EM58MADc9999+XGG2/MVltttcazgx599NFceeWVKYoiHR0due+++3Ldddfl+eefz9e+9rUceOCB3WMPOeSQtLS05LDDDsvBBx+cefPm5ZJLLsnOO+/cIxgaNGhQdt5551x77bV5+9vfni222CJjxozJmDFj8r73vS9f+cpX8sorr2TbbbfNT3/608ybN69HTUuWLMl2222XiRMnZtddd82QIUPys5/9LL/85S+7Z9pUV1fnu9/9bg466KDssssuOf7447Ptttvmqaeeyq233pra2truMGiPPfZIknz+85/PkUcemU022SSHHnpod1i1Pq14P5NXw5lf/OIXufzyy9PQ0JBjjjkmyaubhq/J5+Chhx7KWWedleOOO657ptBll12W3XbbLZ/+9KfXerbPmjrhhBPyH//xHznuuONy7733ZuTIkZk5c2buvPPOfP3rX++eOfdaP+fly5dn3333zRFHHJGdd945/fr1y//8z/9kwYIFOfLII9e5rv/+7//OBz7wgUyYMCGHHnpo9t133wwePDhz587NNddck/b29kyfPv1vnmOTTTbJqaeemjPOOCM33XRTj9/v17Prrruu82w5AHhDKnnpPwBYV9/73vdWuTz9wIEDi9122624+OKLi66urh7jlyxZUpx22mnFNttsU2yyySbFjjvuWHz1q1/tMe6WW24pPvzhDxfbbLNN0b9//2KbbbYpjjrqqOLRRx/tca4bbrih2HnnnYt+/foVSYrvfe973X3XXnttsfvuuxcDBgwotthii+KjH/1o8Yc//KHH8ccee2wxePDgVV7Tikuwv56/dTn2efPmrfaS9b/73e+KiRMnFptvvnkxcODA4l3velcxa9asVY7/3e9+V+y3337FgAEDimHDhhVTp04tbr755iJJceuttxZFURSPP/548fGPf7zYYYcdioEDBxZbbLFFMX78+OJnP/tZj3ONGDGiOPbYY7sfr/iZ/fKXv+wx7tZbb+1x/qIoiuXLlxdnnXVWMXz48GLQoEHF+9///uKhhx4qttxyy+LEE0983fdo5d+L6urqYvPNNy9233334tRTTy0eeOCBVcZ3dXUV559/fjFixIhiwIABxe67717MmjWrOPbYY4sRI0b0GHvXXXcVe+yxR9G/f/8iSXH22WcXRVEUf/jDH4rDDjus2HzzzYu6urriH/7hH4qnn366x5hly5YVZ5xxRrHrrrsWm222WTF48OBi1113LS666KJVavr1r39dTJgwodhyyy2LAQMGFCNGjCiOOOKI4pZbbukx7ktf+lKx7bbbFtXV1UWSYt68ea/7/qytv/6s1dTUFNttt11xwgknFAsWLFhl/N/6HCxfvrzYc889i+2226547rnnehz3jW98o0hSXHvttX+znhEjRhQHH3zw69a9zz77FPvss0+PtgULFhTHH398sdVWWxX9+/cvGhsbe3yGV1jdz/nZZ58tTjrppGL06NHF4MGDi7q6umKvvfYqfvCDH6xTLSt78cUXi+nTpxd77rlnMWTIkKJ///7FjjvuWJxyyinFY4891j1uxf8nFi1atMo5Fi9eXNTV1fV4ntW9V0mKk0466W/W+7ee52/9PwgA1kZVUZS4qygAwDp67rnn8pa3vCXnnXdej6V3sCEYN25cXnnlldxwww3p379/90zODcmSJUuybNmyfPjDH87ixYszZ86cSpcEwAbOnlIAwJvOSy+9tErbiv2Zxo0bV24xsJ7cddddGTp0aCZNmlTpUtbJMccck6FDh67z1RoB4K+ZKQUAvOlcdtllueyyy/LBD34wQ4YMyR133JGr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Z/fdd88JJ5yQf/zHf8wll1yyzgVMmTIlixcv7r49+eST63wuAAAAADYMaxVK1dfXZ+edd+7RttNOO+X3v/99kmT48OFJkgULFvQYs2DBgu6+vzZgwIDU1tb2uAEAAACwcVurUOo973lPHnnkkR5tjz76aEaMGJEkGTVqVIYPH55bbrmlu7+joyN333139t577/VQLgAAAAAbg35rM/i0007L2LFjc/755+eII47IPffck0svvTSXXnppkqSqqiqf/exnc95552XHHXfMqFGjctZZZ2WbbbZJc3Nzb9QPAAAAwAZorUKpPffcM//zP/+TKVOm5Itf/GJGjRqVr3/96/noRz/aPeaf//mf88ILL+SEE07Ic889l/e+97256aabMnDgwPVePAAAAAAbpqqiKIpKF7Gyjo6O1NXVZfHixfaXAgAAANjArGm2s1Z7SgEAAADA+iCUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0/SpdAABAX9LZ2ZnW1ta0t7envr4+TU1NqampqXRZAAClM1MKAKAkLS0taWhoyPjx4zNp0qSMHz8+DQ0NaWlpqXRpAAClE0oBAJSgpaUlEydOTGNjY9ra2rJkyZK0tbWlsbExEydOFEwBAH1OVVEURaWLWFlHR0fq6uqyePHi1NbWVrocAIA3rLOzMw0NDWlsbMz111+f6uq/fC/Y1dWV5ubmzJkzJ3PnzrWUDwDY4K1ptmOmFABAL2ttbc38+fMzderUHoFUklRXV2fKlCmZN29eWltbK1QhAED5hFIAAL2svb09STJmzJjV9q9oXzEOAKAvEEoBAPSy+vr6JMmcOXNW27+ifcU4AIC+QCgFANDLmpqaMnLkyJx//vnp6urq0dfV1ZVp06Zl1KhRaWpqqlCFAADlE0oBAPSympqazJgxI7NmzUpzc3OPq+81Nzdn1qxZmT59uk3OAYA+pV+lCwAA6AsmTJiQmTNnZvLkyRk7dmx3+6hRozJz5sxMmDChgtUBAJSvqiiKotJFrGxNLxsIALAh6uzsTGtra9rb21NfX5+mpiYzpACAjcqaZjtmSgEAlKimpibjxo2rdBkAABVnTykAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAAStev0gUAAPQlnZ2daW1tTXt7e+rr69PU1JSamppKlwUAUDozpQAAStLS0pKGhoaMHz8+kyZNyvjx49PQ0JCWlpZKlwYAUDqhFABACVpaWjJx4sQ0Njamra0tS5YsSVtbWxobGzNx4kTBFADQ51QVRVFUuoiVdXR0pK6uLosXL05tbW2lywEAeMM6OzvT0NCQxsbGXH/99amu/sv3gl1dXWlubs6cOXMyd+5cS/kAgA3emmY7ZkoBAPSy1tbWzJ8/P1OnTu0RSCVJdXV1pkyZknnz5qW1tbVCFQIAlE8oBQDQy9rb25MkY8aMWW3/ivYV4wAA+gKhFABAL6uvr0+SzJkzZ7X9K9pXjAMA6AuEUgAAvaypqSkjR47M+eefn66urh59XV1dmTZtWkaNGpWmpqYKVQgAUD6hFABAL6upqcmMGTMya9asNDc397j6XnNzc2bNmpXp06fb5BwA6FP6VboAAIC+YMKECZk5c2YmT56csWPHdrePGjUqM2fOzIQJEypYHQBA+aqKoigqXcTK1vSygQAAG6LOzs60tramvb099fX1aWpqMkMKANiorGm2Y6YUAECJampqMm7cuEqXAQBQcfaUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAAStev0gUAAPQlnZ2daW1tTXt7e+rr69PU1JSamppKlwUAUDozpQAAStLS0pKGhoaMHz8+kyZNyvjx49PQ0JCWlpZKlwYAUDqhFABACVpaWjJx4sQ0Njamra0tS5YsSVtbWxobGzNx4kTBFADQ51QVRVFUuoiVdXR0pK6uLosXL05tbW2lywEAeMM6OzvT0NCQxsbGXH/99amu/sv3gl1dXWlubs6cOXMyd+5cS/kAgA3emmY7ZkoBAPSy1tbWzJ8/P1OnTu0RSCVJdXV1pkyZknnz5qW1tbVCFQIAlE8oBQDQy9rb25MkY8aMWW3/ivYV4wAA+gKhFABAL6uvr0+SzJkzZ7X9K9pXjAMA6AuEUgAAvaypqSkjR47M+eefn66urh59XV1dmTZtWkaNGpWmpqYKVQgAUL43FEr927/9W6qqqvLZz362u23p0qU56aSTsuWWW2bIkCE5/PDDs2DBgjdaJwDABqumpiYzZszIrFmz0tzc3OPqe83NzZk1a1amT59uk3MAoE9Z51Dql7/8Zf7jP/4jf//3f9+j/bTTTsuPfvSjXHfddbntttvy9NNPZ8KECW+4UACADdmECRMyc+bM3H///Rk7dmxqa2szduzYzJkzJzNnzvT3EgDQ51QVRVGs7UHPP/983vGOd+Siiy7Keeedl9122y1f//rXs3jx4gwdOjRXXXVVJk6cmCR5+OGHs9NOO6WtrS3vfve7X/fca3rZQACADVFnZ2daW1vT3t6e+vr6NDU1mSEFAGxU1jTbWaeZUieddFIOPvjg7Lfffj3a77333rzyyis92kePHp23vvWtaWtrW5enAgDYqNTU1GTcuHE56qijMm7cOIEUANBn9VvbA6655pr86le/yi9/+ctV+p555pn0798/m2++eY/2YcOG5Zlnnlnt+ZYtW5Zly5Z1P+7o6FjbkgAAAADYwKzVTKknn3wyp556ar7//e9n4MCB66WAadOmpa6urvu2/fbbr5fzAgAAAPDmtVah1L333puFCxfmHe94R/r165d+/frltttuy7//+7+nX79+GTZsWF5++eU899xzPY5bsGBBhg8fvtpzTpkyJYsXL+6+Pfnkk+v8YgAAAADYMKzV8r199903999/f4+2448/PqNHj86//Mu/ZPvtt88mm2ySW265JYcffniS5JFHHsnvf//77L333qs954ABAzJgwIB1LB8AAACADdFahVKbbbZZxowZ06Nt8ODB2XLLLbvbP/GJT+T000/PFltskdra2pxyyinZe++91+jKewAAGztX3wMAeNVab3T+ei688MJUV1fn8MMPz7Jly3LAAQfkoosuWt9PAwCwwWlpacnkyZMzf/787raRI0dmxowZ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LxBKAQD0si222CJJ8sILL6SzszO333572tvbU19fn/e85z156aWXeowDAOgLhFIAAL1s+PDhSZLf/va3qa2tXe3V91YeBwDQF1S//hAAAN6Ibbfdtvv+yy+/3KPvlVdeWe04AICNnVAKAKCXjR07Nv369UtdXV223377Hn3bb7996urq0q9fv4wdO7ZCFQIAlM/yPQCAXnbXXXdl+fLl6ejoSFNTU84444zuq+/ddNNN+fGPf5yiKHLXXXdl3LhxlS4XAKAUQikAgF7W3t6eJLniiivy+c9/PrNmzeruGzlyZK644oocffTR3eMAAPoCy/cAAHpZfX19kuTJJ59MVVXVKv2///3ve4wDAOgLhFIAAL2sqakpQ4cOzZQpUzJmzJi0tbVlyZIlaWtry5gxYzJ16tRsvfXWaWpqqnSpAAClsXwPAKAEK2ZIFUWRe++9Nw8++GBeeumlFEVR4coAACpDKAUA0MtaW1uzcOHCfPSjH821116bH//4x919/fr1y6RJk3LVVVeltbXVRucAQJ8hlAIA6GUrNjC/6qqrcvDBB+eggw7qvvrejTfemKuvvrrHOACAvkAoBQDQy7beeuskyXve857ccMMNqa7+y7aeJ554YvbZZ5/ccccd3eMAAPoCG50DAFSYfaUAgL5IKAUA0MsWLlyYJLnjjjvS3Nzc4+p7zc3NufPOO3uMAwDoC4RSAAC9rL6+Pkkybdq03H///Rk7dmxqa2szduzYzJkzJ+eff36PcQAAfYE9pQAAellTU1NGjhyZu+66Kw899FAuueSS/O53v8sOO+yQE088MUcccURGjRqVpqamSpcKAFAaoRQAQC+rqanJjBkzMnHixGyxxRZ56aWXuvumTp2apUuXZubMmampqalglQAA5bJ8DwCgJKvb0LyqqspG5wBAn1RVvMn+Curo6EhdXV0WL16c2traSpcDAPCGdXZ2pqGhIY2NjfnBD36w2uV7c+bMydy5c82WAgA2eGua7azVTKlp06Zlzz33zGabbZatt946zc3NeeSRR3qMWbp0aU466aRsueWWGTJkSA4//PAsWLBg3V4FAMBGoLW1NfPnz8/YsWOz00475bTTTsu3vvWtnHbaadlpp52y9957Z968eWltba10qQAApVmrUOq2227LSSedlF/84he5+eab88orr+QDH/hAXnjhhe4xp512Wn70ox/luuuuy2233Zann346EyZMWO+FAwBsKNrb25MkU6ZMSWNjY9ra2rJkyZK0tbWlsbExU6dO7TEOAKAveEPL9xYtWpStt946t912W973vvdl8eLFGTp0aK666qpMnDgxSfLwww9np512SltbW9797ne/7jkt3wMANja33HJL9ttvv7z3ve/Nz3/+89x5551pb29PfX193vOe92T8+PG5884787Of/Sz77rtvpcsFAHhD1jTbeUNX31u8eHGSZIsttkiS3HvvvXnllVey3377dY8ZPXp03vrWt65xKAUAsLH64x//mB133DFPPPFEd9uIESMyaNCgClYFAFAZ63z1va6urnz2s5/Ne97znowZMyZJ8swzz6R///7ZfPPNe4wdNmxYnnnmmdWeZ9myZeno6OhxAwDYmCxcuDBJ8tBDD2Xp0qW59NJL8/TTT+fSSy/N0qVL8/DDD/cYBwDQF6zzTKmTTjopc+bMyR133PGGCpg2bVrOPffcN3QOAIA3s6233jrJqzPIly5dmhNOOKG7b9SoURk9enQefvjh7nEAAH3BOs2UOvnkkzNr1qzceuut2W677brbhw8fnpdffjnPPfdcj/ELFizI8OHDV3uuKVOmZPHixd23J598cl1KAgB409tqq63y0EMP5cILL8zJJ5+cCy+8MA8++GC22mqrSpcGAFC6tZopVRRFTjnllPzP//xPZs+enVGjRvXo32OPPbLJJpvklltuyeGHH54keeSRR/L73/8+e++992rPOWDAgAwYMGAdywcAePNbsSzvjjvuyBZbbJGXXnqpu2/q1Kndjy3fAwD6krUKpU466aRcddVVueGGG7LZZpt17xNVV1eXQYMGpa6uLp/4xCdy+umnZ4sttkhtbW1OOeWU7L333jY5BwD6rPr6+u77S5cu7dG38uOVxwEAbOyqiqIo1nhwVdVq27/3ve/luOOOS/LqH1aTJ0/O1VdfnWXLluWAAw7IRRdd9JrL9/7aml42EABgQ/Hyyy9n0KBB6erqygc/+MEcfPDBGTRoUF566aX8+Mc/zv/93/+luro6L730Uvr371/pcgEA3pA1zXbWevne6xk4cGC+/e1v59vf/vbanBoAYKPV2tqarq6uJK9+yVcURfdtxZd+XV1daW1tzb777lvJUgEASrPOV98DAGDNzJ49O0lyxBFH5Ic//GF+/OMfd/f169cvRxxxRH7wgx9k9uzZQikAoM9Yp6vvAQCw9n7wgx+ssjxvk002yQ9+8IMKVQQAUDlCKQCAXtbU1NR9//3vf3/a2tqyZMmStLW15f3vf/9qxwEAbOyEUgAAvWzli8W81p5Sfz0OAGBjZ08pAIBedvvtt3ffv+WWWzJr1qzux5tuummPcfvvv3+ptQEAVIqZUgAAJTnnnHMydOjQHm1Dhw7N2WefXaGKAAAqRygFANDLxo0blyS59tprV7tE79prr+0xDgCgLxBKAQD0snHjxqW2tjYPPfRQli5dmksvvTRPP/10Lr300ixdujQPP/xwamtrhVIAQJ9iTykAgBIMHDgwHR0d6ejoyAknnNDdvmJPqYEDB1aqNACAijBTCgCgl7W2tmbhwoWZNm1att566x59W2+9dc4///wsXLgwra2tFaoQAKB8QikAgF7W3t6eJDn55JPz0EMP5aSTTsoHPvCBnHTSSXnwwQdz8skn9xgHANAXWL4HANDL6uvrkyQnnnhirrnmmnR2diZJfvrTn+aSSy7JRz7ykR7jAAD6gqqiKIpKF7Gyjo6O1NXVZfHixamtra10OQAAb1hnZ2e22GKLdHR0pLq6Ol1dXd19Kx7X1tbmT3/6U2pqaipYKQDAG7em2Y6ZUgAAvayzszNLlixJkmy11VY55phj8ra3vS2PP/54rrjiiixcuDBLlixJZ2enUAoA6DOEUgAAvexb3/pWiqLI0KFDs2jRosyYMaO7r6qqKltttVWeffbZfOtb38rpp59ewUoBAMpjo3MAgF624qp6ixYtWm3/s88+22McAEBfIJQCAOhlgwcP7r6/9dZb5zvf+U7a29vzne98J1tvvfVqxwEAbOyEUgAAvWyXXXbpvv/oo4/m+eefz5e//OU8//zzefTRR1c7DgBgY2dPKQCAXvbAAw9036+rq+vRd9ppp612HADAxs5MKQCAXvbCCy+s13EAABsDoRQAQC/be++91+s4AICNgVAKAKCXLV++fL2OAwDYGAilAAB62dVXX71exwEAbAyEUgAAvey5555br+MAADYGQikAgF42dOjQ7vs1NTU9+lZ+vPI4AICNnVAKAKCXvf3tb+++39nZ2aNv5ccrjwMA2NgJpQAAell19Zr9ybWm4wAANgb+8gEAAACgdEIpAIBetvIMqKqqqh59Kz82UwoA6Ev85QMA0Mu233777vsDBgzo0bfy45XHAQBs7IRSAAC9bKuttuq+v2zZsh59Kz9eeRwAwMZOKAUA0MuGDx/efb8oih59Kz9eeRwAwMZOKAUA0MvWNGwSSgEAfYlQCgCgl73yyivrdRwAwMagX6ULAADY2F155ZXd94cOHZpddtklXV1dqa6uzgMPPJBFixZ1jzvwwAMrVSYAQKmEUgAAvWz+/PlJkiFDhmTRokWZPXt2j/4hQ4bk+eef7x4HANAXWL4HANDLBg0alCR5/vnnU1VV1aOvqqoqzz//fI9xAAB9gVAKAKCX7b777t33/9bV91YeBwCwsRNKAQD0siVLlqzXcQAAGwOhFABAL3v66afX6zgAgI2BUAoAoJe9+OKL63UcAMDGQCgFANDLhg4dul7HAQBsDIRSAAC9bMSIEet1HADAxkAoBQDQy97ylres13EAABsDoRQAQC/71a9+tV7HAQBsDIRSAAC97Be/+MV6HQcAsDEQSgEA9LIlS5as13EAABuDfpUuAABgY1dd/ZfvAQ888MAccsghGTRoUF566aXMmjUrN9100yrjAAA2dkIpAIBetnz58u77P/3pT7tDqKRnELXyOACAjZ1QCgDYKLz44ot5+OGHK13Gaq0cPHV1dfXoW/lxdXX1m3az89GjR2fTTTetdBkAwEZEKAUAbBQefvjh7LHHHpUu4w3505/+9KZ9Dffee2/e8Y53VLoMAGAjIpQCADYKo0ePzr333lvpMlbr+eefzz777PO642677bYMGTKkhIrW3ujRoytdAgCwkRFKAQAbhU033fRNPZNnzz33zC9/+cu/2f++972vxIoAACrLJV4AAEpwzz33ZM8991xt35577pl77rmn5IoAACpLKAUAUJJ77rknS5Ys6V7Kt88++2TJkiUCKQCgTxJKAQCUaMiQIfna176WJPna1772pt1DCgCgtwmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAAChdv0oXAAC8uc2dOzdLliypdBkblYceeqjHf1k/Nttss+y4446VLgMAWENCKQDgNc2dOzdvf/vbK13GRuvoo4+udAkbnUcffVQwBQAbCKEUAPCaVsyQuvLKK7PTTjtVuJqNx0svvZT58+dn5MiRGTRoUKXL2Sg89NBDOfroo83qA4ANiFAKAHhdO+20U97xjndUuoyNynve855KlwAAUFE2OgcAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdL0WSn3729/OyJEjM3DgwOy111655557euupAAAAANjA9Eoode211+b000/P2WefnV/96lfZddddc8ABB2ThwoW98XQAAAAAbGD69cZJv/a1r+Uf//Efc/zxxydJLrnkkvz4xz/Of/3Xf+XMM8/sjacEAHrJ8CFVGfTco8nTVv3z5jXouUczfEhVpcsAANbCeg+lXn755dx7772ZMmVKd1t1dXX222+/tLW1re+nAwB60YsvvphP7dE/O93+qeT2SlcDr22nJJ/ao3+lywAA1sJ6D6WeffbZdHZ2ZtiwYT3ahw0blocffniV8cuWLcuyZcu6H3d0dKzvkgCAdfTwww/nP+59Of/7yCuVLgVeV/vzRT662WaVLgMAWEO9snxvbUybNi3nnntupcsAAFajubk5STJ69OhsuummlS3mdbz00kuZP39+pcvYaI0cOTKDBg2qdBl/02abbZYdd9yx0mUAAGuoqiiKYn2e8OWXX86mm26amTNndv8hmyTHHntsnnvuudxwww09xq9uptT222+fxYsXp7a2dn2WBgAAAEAv6+joSF1d3etmO+t9x9L+/ftnjz32yC233NLd1tXVlVtuuSV77733KuMHDBiQ2traHjcAAAAANm69snzv9NNPz7HHHpt3vvOdede73pWvf/3reeGFF7qvxgcAAABA39YrodRHPvKRLFq0KF/4whfyzDPPZLfddstNN920yubnAAAAAPRN631PqTdqTdcdAgAAAPDmU7E9pQAAAADg9QilAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0vWrdAF/rSiKJElHR0eFKwEAAABgba3IdFZkPK/lTRdKLVmyJEmy/fbbV7gSAAAAANbVkiVLUldX95r9VcXrxVYl6+rqytNPP53NNtssVVVVlS4HAGC96+joyPbbb58nn3wytbW1lS4HAGC9KooiS5YsyTbbbJPq6tfeOepNF0oBAGzsOjo6UldXl8WLFwulAIA+y0bnAAAAAJROKAUAAABA6YRSAAAlGzBgQM4+++wMGDCg0qUAAFSMPaUAAAAAKJ2ZUgAAAACUTigFAAAAQOmEUgAAAACUTigFAAAAQOmEUgAAAACUTigFALAeLFu2LEnS1dVV4UoAADYMQikAgDfo/vvvz9ve9rbccccdqa6uFkwBAKwBoRQAwBvQ1dWVCy64IO3t7TnwwANz6623CqYAANZAv0oXAACwIauurs4BBxyQJ598Mtttt13233//3HTTTdlvv/3S1dWV6mrfAQIArI6/kgAA1lJRFD3+O27cuDz66KMZPXp0zjjjjBx00EH5+c9/bsYUAMDfIJQCAFhLKzY1r6qqSpJsv/32Oeecc/LrX/86H/nIR3LMMcfkgAMOsJQPAOBvEEoBAKyFBx54IG9/+9tz4YUX5mc/+1l3+9///d/niSeeSE1NTS6++OIcffTR+cAHPpDZs2cLpgAAVkMoBQCwhl555ZVMnz49f/jDH3LNNdfkm9/8Zvbff//8+te/zrvf/e4cdNBBOf3001NTU5MLLrggH//4x/P+978/ra2t9pYCAPgrNjoHAFhDNTU1Of300/Pcc8/ltttuy9e//vVccskl+ed//uc8//zz2XfffbNkyZLMnTs3O+20U84666wMGDAgW221VaVLBwB406kqVuzQCQDAaj366KN54IEHcthhh6Wrqytz587Ncccdl2XLluVnP/tZlixZkquvvjoXXXRR/vCHP2T27Nl53/velyTp7OxMTU1NhV8BAMCbj1AKAOBvKIoiX/rSl3LOOefkmmuuyRFHHJGiKDJ37twcffTRWbJkSWbPnp1hw4blkUceySuvvJIxY8akKIrujdABAFiVUAoA4HV0dHTk3/7t33LBBRfk+9//fo488sjuYOpjH/tYFi1alLvuuivDhg2rdKkAABsMO24CALyO2tra/Mu//EvOOOOMfPSjH83VV1+dqqqq7LjjjrniiisybNiwjBs3Lu3t7ZUuFQBgg2GmFADAX2lvb8+9996bqqqq7LLLLhk5cmSSV2dMnX/++fnqV7+aK6+8MkcddVSKosjvfve7fOhDH8qgQYNyzz332EMKAGANuPoeAMBK7r///hx22GEZMmRIfvvb32b//ffPv/zLv+T9739/amtr86//+q9JkqOPPjpJctRRR2WHHXbIj370o9TU1AikAADWkFAKAOD/99vf/jZ77713Tj311Jx66qlpa2vLkUcemTFjxuT9739/kmTIkCGZOnVqkuT444/PsmXLctxxx2WHHXaoZOkAABscy/cAAJI89thj2X333XPUUUfl0ksv7W7feeedM2jQoNx+++0ZPHhwd3tHR0emTJmSa665JvPmzctmm23mansAAGvBRucAAHk1lHrhhRdSV1eXxx57LEkybdq0PPzww+nXr18+9alP5ctf/nKuuuqqJMngwYPz7W9/Ow899FBqa2sFUgAAa8lMKQCgT1u0aFGeeOKJbLvttrn//vvz8Y9/PMcee2yWLVuW733ve7nooovy1re+NY8++mhuvvnm3HLLLRk4cGAOPfTQfOMb3xBGAQCsI6EUANBnPfjggznhhBOy6aabZsiQIWlpacl///d/54wzzsif//znXHrppTnuuOO6x7/88stZtGhRLr300hxzzDFpaGioXPEAABs4oRQA0Cc98MADee9735tPf/rT+dSnPpVtttkm/fq9eg2YH/7whzn55JMzadKknHjiidlxxx2TJMuXL+8eAwDAGyOUAgD6nD/96U/58Ic/nHe84x35xje+0d2+cuh05ZVX5swzz8zhhx+eU045xawoAID1zFd9AECf88wzz6S9vT2HH354urq6Ul396rVf+vXrlxXf1x199NGpqqrK1KlTs2TJkvzrv/5r3va2t1WybACAjYqr7wEAfc5vfvObPPHEE2lqakp1dXW6urq6+6qqqlJVVZUXX3wx48aNyze+8Y384he/yODBgytYMQDAxkcoBQD0OSNHjky/fv3S0tKSJN0zpVb23e9+N8cff3yam5vT1taWYcOGlV0mAMBGTSgFAPQ5I0aMSG1tbf77v/87TzzxRHf7yltt/v73v89uu+2WoihSW1tbiTIBADZqQikAoM/Zdtttc/HFF+cnP/lJzjrrrDz44INJ0r1sb+rUqZk5c2Y++clPdi/nAwBg/XL1PQCgT+rq6sp3vvOdnHzyyWloaMjee++dgQMH5qmnnsovfvGL3HTTTdl9990rXSYAwEZLKAUA9Gn33HNPvvrVr+axxx7LZpttlrFjx+YTn/hEdtxxx0qXBgCwURNKAQB9XmdnZ2pqaipdBgBAn2JPKQCgz1v56nu+rwMAKIeZUgAAAACUzkwpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEr3/wFnB919Z4GaCQAAAABJRU5ErkJggg==",
"text/plain": [
""
]
@@ -1407,7 +1355,7 @@
},
{
"cell_type": "code",
- "execution_count": 14,
+ "execution_count": 20,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
@@ -1697,7 +1645,7 @@
"[66 rows x 14 columns]"
]
},
- "execution_count": 14,
+ "execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
@@ -1735,7 +1683,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 21,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
@@ -1758,30 +1706,40 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "TAX 欄位的 IQR 上限: 1246.5, 下限: -301.5\n",
+ "RM 欄位的 IQR 上限: 7.730500000000001, 下限: 4.778499999999999\n",
"\n",
- "TAX 欄位的異常值數量: 0\n",
+ "RM 欄位的異常值數量: 30\n",
"\n",
"部分異常值資料點:\n",
- " Empty DataFrame\n",
- "Columns: [CRIM, ZN, INDUS, CHAS, NOX, RM, AGE, DIS, RAD, TAX, PTRATIO, B, LSTAT, MEDV]\n",
- "Index: []\n"
+ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO \\\n",
+ "97 0.12083 0.0 2.89 0 0.445 8.069 76.0 3.4952 2 276.0 18.0 \n",
+ "98 0.08187 0.0 2.89 0 0.445 7.820 36.9 3.4952 2 276.0 18.0 \n",
+ "162 1.83377 0.0 19.58 1 0.605 7.802 98.2 2.0407 5 403.0 14.7 \n",
+ "163 1.51902 0.0 19.58 1 0.605 8.375 93.9 2.1620 5 403.0 14.7 \n",
+ "166 2.01019 0.0 19.58 0 0.605 7.929 96.2 2.0459 5 403.0 14.7 \n",
+ "\n",
+ " B LSTAT MEDV \n",
+ "97 396.90 4.21 38.7 \n",
+ "98 393.53 3.57 43.8 \n",
+ "162 389.61 1.92 50.0 \n",
+ "163 388.45 3.32 50.0 \n",
+ "166 369.30 3.70 50.0 \n"
]
}
],
"source": [
"# 任務 1 & 2\n",
- "selected_column = 'TAX' # 或其他欄位\n",
+ "selected_column = 'RM' # 或其他欄位\n",
"col_desc = df[selected_column].describe()\n",
- "# Q1 = ...\n",
- "# Q3 = ...\n",
- "# IQR = ...\n",
- "# lower_bound = ...\n",
- "# upper_bound = ...\n",
+ "Q1 = col_desc['25%']\n",
+ "Q3 = col_desc['75%']\n",
+ "IQR = Q3 - Q1\n",
+ "lower_bound = Q1 - 1.5 * IQR\n",
+ "upper_bound = Q3 + 1.5 * IQR\n",
"print(f\"{selected_column} 欄位的 IQR 上限: {upper_bound}, 下限: {lower_bound}\\n\")\n",
"\n",
"# 任務 3\n",
- "# outliers = ...\n",
+ "outliers = df[(df[selected_column] < lower_bound) | (df[selected_column] > upper_bound)]\n",
"print(f\"{selected_column} 欄位的異常值數量: {len(outliers)}\\n\")\n",
"print(\"部分異常值資料點:\\n\", outliers.head())"
]
@@ -1795,7 +1753,7 @@
},
{
"cell_type": "code",
- "execution_count": 15,
+ "execution_count": 22,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
@@ -2181,7 +2139,7 @@
"[288 rows x 29 columns]"
]
},
- "execution_count": 15,
+ "execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
@@ -2231,7 +2189,7 @@
},
{
"cell_type": "code",
- "execution_count": 16,
+ "execution_count": 23,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
@@ -2300,6 +2258,13 @@
"print(\"\\n移除重複後的資料:\")\n",
"print(df_cleaned)"
]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": []
}
],
"metadata": {
@@ -2307,7 +2272,7 @@
"provenance": []
},
"kernelspec": {
- "display_name": ".venv",
+ "display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
@@ -2321,9 +2286,9 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.13.6"
+ "version": "3.12.1"
}
},
"nbformat": 4,
- "nbformat_minor": 0
+ "nbformat_minor": 4
}
From 7027854f8959e25d993b35ad8009cde9d8c84fd6 Mon Sep 17 00:00:00 2001
From: happpycorn <135821359+happpycorn@users.noreply.github.com>
Date: Thu, 9 Oct 2025 02:49:50 +0000
Subject: [PATCH 2/2] other
---
.../ML_data_preprocessing-checkpoint.ipynb | 2294 +++++++++++++++++
1 file changed, 2294 insertions(+)
create mode 100644 .ipynb_checkpoints/ML_data_preprocessing-checkpoint.ipynb
diff --git a/.ipynb_checkpoints/ML_data_preprocessing-checkpoint.ipynb b/.ipynb_checkpoints/ML_data_preprocessing-checkpoint.ipynb
new file mode 100644
index 0000000..7ccef6f
--- /dev/null
+++ b/.ipynb_checkpoints/ML_data_preprocessing-checkpoint.ipynb
@@ -0,0 +1,2294 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {
+ "collapsed": true,
+ "jupyter": {
+ "outputs_hidden": true
+ }
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Requirement already satisfied: pandas in /home/codespace/.local/lib/python3.12/site-packages (2.3.1)\n",
+ "Requirement already satisfied: numpy in /home/codespace/.local/lib/python3.12/site-packages (2.3.1)\n",
+ "Requirement already satisfied: matplotlib in /home/codespace/.local/lib/python3.12/site-packages (3.10.3)\n",
+ "Requirement already satisfied: scikit-learn in /home/codespace/.local/lib/python3.12/site-packages (1.7.0)\n",
+ "Requirement already satisfied: python-dateutil>=2.8.2 in /home/codespace/.local/lib/python3.12/site-packages (from pandas) (2.9.0.post0)\n",
+ "Requirement already satisfied: pytz>=2020.1 in /home/codespace/.local/lib/python3.12/site-packages (from pandas) (2025.2)\n",
+ "Requirement already satisfied: tzdata>=2022.7 in /home/codespace/.local/lib/python3.12/site-packages (from pandas) (2025.2)\n",
+ "Requirement already satisfied: contourpy>=1.0.1 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (1.3.2)\n",
+ "Requirement already satisfied: cycler>=0.10 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (0.12.1)\n",
+ "Requirement already satisfied: fonttools>=4.22.0 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (4.58.5)\n",
+ "Requirement already satisfied: kiwisolver>=1.3.1 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (1.4.8)\n",
+ "Requirement already satisfied: packaging>=20.0 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (25.0)\n",
+ "Requirement already satisfied: pillow>=8 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (11.3.0)\n",
+ "Requirement already satisfied: pyparsing>=2.3.1 in /home/codespace/.local/lib/python3.12/site-packages (from matplotlib) (3.2.3)\n",
+ "Requirement already satisfied: scipy>=1.8.0 in /home/codespace/.local/lib/python3.12/site-packages (from scikit-learn) (1.16.0)\n",
+ "Requirement already satisfied: joblib>=1.2.0 in /home/codespace/.local/lib/python3.12/site-packages (from scikit-learn) (1.5.1)\n",
+ "Requirement already satisfied: threadpoolctl>=3.1.0 in /home/codespace/.local/lib/python3.12/site-packages (from scikit-learn) (3.6.0)\n",
+ "Requirement already satisfied: six>=1.5 in /home/codespace/.local/lib/python3.12/site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0)\n",
+ "\n",
+ "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m25.1.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m25.2\u001b[0m\n",
+ "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython3 -m pip install --upgrade pip\u001b[0m\n",
+ "Note: you may need to restart the kernel to use updated packages.\n"
+ ]
+ }
+ ],
+ "source": [
+ "%pip install pandas numpy matplotlib scikit-learn"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "bGPLRqx2-Of2"
+ },
+ "source": [
+ "# 載入與探索資料 (使用 Pandas 與 scikit-learn)\n",
+ "* 我們常用 Pandas DataFrame 來處理結構化的資料\n",
+ "\n",
+ "* 載入 CSV 檔案: 使用 pd.read_csv()\n",
+ "\n",
+ "* 載入 scikit-learn 內建資料集: scikit-learn 提供了一些範例資料集 (如波士頓房價資料集),這些資料集載入後通常是 dictionary 格式\n",
+ "\n",
+ "* 可以透過 `.keys()` 查看包含哪些內容 (如 data, target, feature_names, description)\n",
+ "* 需要將其轉換為 DataFrame 格式以便操作"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 206
+ },
+ "executionInfo": {
+ "elapsed": 59,
+ "status": "ok",
+ "timestamp": 1759734207925,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "9TwEcXWpw-wY",
+ "outputId": "e98e4a98-e588-4101-bc17-ddaadc5fbbca"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CRIM | \n",
+ " ZN | \n",
+ " INDUS | \n",
+ " CHAS | \n",
+ " NOX | \n",
+ " RM | \n",
+ " AGE | \n",
+ " DIS | \n",
+ " RAD | \n",
+ " TAX | \n",
+ " PTRATIO | \n",
+ " B | \n",
+ " LSTAT | \n",
+ " MEDV | \n",
+ " target | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 0.00632 | \n",
+ " 18.0 | \n",
+ " 2.31 | \n",
+ " 0 | \n",
+ " 0.538 | \n",
+ " 6.575 | \n",
+ " 65.2 | \n",
+ " 4.0900 | \n",
+ " 1 | \n",
+ " 296.0 | \n",
+ " 15.3 | \n",
+ " 396.90 | \n",
+ " 4.98 | \n",
+ " 24.0 | \n",
+ " 24.0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0.02731 | \n",
+ " 0.0 | \n",
+ " 7.07 | \n",
+ " 0 | \n",
+ " 0.469 | \n",
+ " 6.421 | \n",
+ " 78.9 | \n",
+ " 4.9671 | \n",
+ " 2 | \n",
+ " 242.0 | \n",
+ " 17.8 | \n",
+ " 396.90 | \n",
+ " 9.14 | \n",
+ " 21.6 | \n",
+ " 21.6 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 0.02729 | \n",
+ " 0.0 | \n",
+ " 7.07 | \n",
+ " 0 | \n",
+ " 0.469 | \n",
+ " 7.185 | \n",
+ " 61.1 | \n",
+ " 4.9671 | \n",
+ " 2 | \n",
+ " 242.0 | \n",
+ " 17.8 | \n",
+ " 392.83 | \n",
+ " 4.03 | \n",
+ " 34.7 | \n",
+ " 34.7 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 0.03237 | \n",
+ " 0.0 | \n",
+ " 2.18 | \n",
+ " 0 | \n",
+ " 0.458 | \n",
+ " 6.998 | \n",
+ " 45.8 | \n",
+ " 6.0622 | \n",
+ " 3 | \n",
+ " 222.0 | \n",
+ " 18.7 | \n",
+ " 394.63 | \n",
+ " 2.94 | \n",
+ " 33.4 | \n",
+ " 33.4 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 0.06905 | \n",
+ " 0.0 | \n",
+ " 2.18 | \n",
+ " 0 | \n",
+ " 0.458 | \n",
+ " 7.147 | \n",
+ " 54.2 | \n",
+ " 6.0622 | \n",
+ " 3 | \n",
+ " 222.0 | \n",
+ " 18.7 | \n",
+ " 396.90 | \n",
+ " 5.33 | \n",
+ " 36.2 | \n",
+ " 36.2 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO \\\n",
+ "0 0.00632 18.0 2.31 0 0.538 6.575 65.2 4.0900 1 296.0 15.3 \n",
+ "1 0.02731 0.0 7.07 0 0.469 6.421 78.9 4.9671 2 242.0 17.8 \n",
+ "2 0.02729 0.0 7.07 0 0.469 7.185 61.1 4.9671 2 242.0 17.8 \n",
+ "3 0.03237 0.0 2.18 0 0.458 6.998 45.8 6.0622 3 222.0 18.7 \n",
+ "4 0.06905 0.0 2.18 0 0.458 7.147 54.2 6.0622 3 222.0 18.7 \n",
+ "\n",
+ " B LSTAT MEDV target \n",
+ "0 396.90 4.98 24.0 24.0 \n",
+ "1 396.90 9.14 21.6 21.6 \n",
+ "2 392.83 4.03 34.7 34.7 \n",
+ "3 394.63 2.94 33.4 33.4 \n",
+ "4 396.90 5.33 36.2 36.2 "
+ ]
+ },
+ "execution_count": 3,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# 載入必要的套件、從 scikit-learn 套件中匯入 fetch_openml函式來從 OpenML 平台(一個公開的資料集儲存庫)下載各種資料集。\n",
+ "# name='boston':指定要下載的資料集名稱。version=1:指定版本號。\n",
+ "# as_frame=True:預設值為False True讓輸出的資料以 pandas DataFrame 格式呈現;False則是傳回 numpy 陣列\n",
+ "# fetch_openml() 回傳一個 Bunch 物件(類似字典)\n",
+ "#boston.frame:當 as_frame=True 時,包含所有欄位的 DataFrame。\n",
+ "import pandas as pd\n",
+ "from sklearn.datasets import fetch_openml\n",
+ "boston = fetch_openml(name='boston', version=1, as_frame=True)\n",
+ "df = boston.frame\n",
+ "df[\"target\"]=boston.target\n",
+ "df.head(5)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "Yte7XqeCiFy_"
+ },
+ "source": [
+ "# 課堂練習: 探索 DataFrame(上一周上課內容複習)\n",
+ "* 查看前/後幾筆資料:df.head() / df.tail() (預設顯示前/後 5 筆,可指定數字)\n",
+ "\n",
+ "* 查看資料的維度 (形狀):df.shape (回傳 (列數, 欄位數))\n",
+ "\n",
+ "* 查看資料的基本資訊 (欄位數、資料筆數、是否有缺失值、資料型態):df.info()\n",
+ "\n",
+ "* 查看數值欄位的敘述性統計 (平均值、標準差、最小值、最大值、四分位數等):df.describe()\n",
+ "\n",
+ "* 查看類別欄位中各類別的出現次數:df['欄位名稱'].value_counts()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 143
+ },
+ "executionInfo": {
+ "elapsed": 59,
+ "status": "ok",
+ "timestamp": 1759734496497,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "-T2gXjrbwsLi",
+ "outputId": "279e371d-e3d4-4a13-eb87-f51892af6000"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CRIM | \n",
+ " ZN | \n",
+ " INDUS | \n",
+ " CHAS | \n",
+ " NOX | \n",
+ " RM | \n",
+ " AGE | \n",
+ " DIS | \n",
+ " RAD | \n",
+ " TAX | \n",
+ " PTRATIO | \n",
+ " B | \n",
+ " LSTAT | \n",
+ " MEDV | \n",
+ " target | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 0.00632 | \n",
+ " 18.0 | \n",
+ " 2.31 | \n",
+ " 0 | \n",
+ " 0.538 | \n",
+ " 6.575 | \n",
+ " 65.2 | \n",
+ " 4.0900 | \n",
+ " 1 | \n",
+ " 296.0 | \n",
+ " 15.3 | \n",
+ " 396.90 | \n",
+ " 4.98 | \n",
+ " 24.0 | \n",
+ " 24.0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0.02731 | \n",
+ " 0.0 | \n",
+ " 7.07 | \n",
+ " 0 | \n",
+ " 0.469 | \n",
+ " 6.421 | \n",
+ " 78.9 | \n",
+ " 4.9671 | \n",
+ " 2 | \n",
+ " 242.0 | \n",
+ " 17.8 | \n",
+ " 396.90 | \n",
+ " 9.14 | \n",
+ " 21.6 | \n",
+ " 21.6 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 0.02729 | \n",
+ " 0.0 | \n",
+ " 7.07 | \n",
+ " 0 | \n",
+ " 0.469 | \n",
+ " 7.185 | \n",
+ " 61.1 | \n",
+ " 4.9671 | \n",
+ " 2 | \n",
+ " 242.0 | \n",
+ " 17.8 | \n",
+ " 392.83 | \n",
+ " 4.03 | \n",
+ " 34.7 | \n",
+ " 34.7 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO \\\n",
+ "0 0.00632 18.0 2.31 0 0.538 6.575 65.2 4.0900 1 296.0 15.3 \n",
+ "1 0.02731 0.0 7.07 0 0.469 6.421 78.9 4.9671 2 242.0 17.8 \n",
+ "2 0.02729 0.0 7.07 0 0.469 7.185 61.1 4.9671 2 242.0 17.8 \n",
+ "\n",
+ " B LSTAT MEDV target \n",
+ "0 396.90 4.98 24.0 24.0 \n",
+ "1 396.90 9.14 21.6 21.6 \n",
+ "2 392.83 4.03 34.7 34.7 "
+ ]
+ },
+ "execution_count": 4,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# 查看前三筆資料\n",
+ "df.head(3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 143
+ },
+ "executionInfo": {
+ "elapsed": 43,
+ "status": "ok",
+ "timestamp": 1759734499990,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "3Uc2bIHWjGA-",
+ "outputId": "8c3d6b5d-1f81-4063-88c3-68adc956fc64"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CRIM | \n",
+ " ZN | \n",
+ " INDUS | \n",
+ " CHAS | \n",
+ " NOX | \n",
+ " RM | \n",
+ " AGE | \n",
+ " DIS | \n",
+ " RAD | \n",
+ " TAX | \n",
+ " PTRATIO | \n",
+ " B | \n",
+ " LSTAT | \n",
+ " MEDV | \n",
+ " target | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 503 | \n",
+ " 0.06076 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.976 | \n",
+ " 91.0 | \n",
+ " 2.1675 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " 21.0 | \n",
+ " 396.90 | \n",
+ " 5.64 | \n",
+ " 23.9 | \n",
+ " 23.9 | \n",
+ "
\n",
+ " \n",
+ " | 504 | \n",
+ " 0.10959 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.794 | \n",
+ " 89.3 | \n",
+ " 2.3889 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " 21.0 | \n",
+ " 393.45 | \n",
+ " 6.48 | \n",
+ " 22.0 | \n",
+ " 22.0 | \n",
+ "
\n",
+ " \n",
+ " | 505 | \n",
+ " 0.04741 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.030 | \n",
+ " 80.8 | \n",
+ " 2.5050 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " 21.0 | \n",
+ " 396.90 | \n",
+ " 7.88 | \n",
+ " 11.9 | \n",
+ " 11.9 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO \\\n",
+ "503 0.06076 0.0 11.93 0 0.573 6.976 91.0 2.1675 1 273.0 21.0 \n",
+ "504 0.10959 0.0 11.93 0 0.573 6.794 89.3 2.3889 1 273.0 21.0 \n",
+ "505 0.04741 0.0 11.93 0 0.573 6.030 80.8 2.5050 1 273.0 21.0 \n",
+ "\n",
+ " B LSTAT MEDV target \n",
+ "503 396.90 5.64 23.9 23.9 \n",
+ "504 393.45 6.48 22.0 22.0 \n",
+ "505 396.90 7.88 11.9 11.9 "
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# 查看末三筆資料\n",
+ "df.tail(3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "executionInfo": {
+ "elapsed": 11,
+ "status": "ok",
+ "timestamp": 1759734504022,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "Z7tImjqTicrR",
+ "outputId": "a6665169-b8b9-4ca2-aecd-36bcc270a08a"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(506, 15)"
+ ]
+ },
+ "execution_count": 7,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# 查看資料集大小 (列、欄)\n",
+ "df.shape"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "executionInfo": {
+ "elapsed": 21,
+ "status": "ok",
+ "timestamp": 1750840600233,
+ "user": {
+ "displayName": "chen nicole",
+ "userId": "10741717251477288554"
+ },
+ "user_tz": -480
+ },
+ "id": "Eyu5B1QhjIvG",
+ "outputId": "b55b94d1-96d0-4672-f6a9-4872a82e86a5"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 8,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# 查看資料集的基本資訊\n",
+ "df.info"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 300
+ },
+ "executionInfo": {
+ "elapsed": 87,
+ "status": "ok",
+ "timestamp": 1750840601682,
+ "user": {
+ "displayName": "chen nicole",
+ "userId": "10741717251477288554"
+ },
+ "user_tz": -480
+ },
+ "id": "FoPykZm_jTGe",
+ "outputId": "822d2392-4326-4e17-96fa-b05423d1df67"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 9,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# 查看數值欄位的敘述性統計\n",
+ "df.describe"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 10,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 489
+ },
+ "executionInfo": {
+ "elapsed": 51,
+ "status": "ok",
+ "timestamp": 1759734719612,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "Tz47vFk0jdDH",
+ "outputId": "90e8f49c-2417-4a09-ad3f-c8aafc4a4794"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CRIM\n",
+ "0.01501 2\n",
+ "14.33370 2\n",
+ "0.03466 1\n",
+ "0.05083 1\n",
+ "0.03738 1\n",
+ " ..\n",
+ "1.27346 1\n",
+ "1.42502 1\n",
+ "1.34284 1\n",
+ "1.22358 1\n",
+ "0.13914 1\n",
+ "Name: count, Length: 504, dtype: int64"
+ ]
+ },
+ "execution_count": 10,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# 查看類別欄位 'MEDV' 中各類別的出現次數\n",
+ "df['CRIM'].value_counts()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "qlxCTqXzsAhi"
+ },
+ "source": [
+ "# 資料清理 - 處理遺失值 (Missing Values)\n",
+ "\n",
+ "* 使用 `df.info()` 可以快速查看每個欄位非空值的數量,從而推算遺失值.\n",
+ "* 使用 `df.isnull()` 或 `df.isna()`:回傳一個與 DataFrame 形狀相同的 boolean DataFrame,True 表示該位置是遺失值 (NaN),False 表示非遺失值.\n",
+ "* 搭配 .sum():`df.isnull().sum()` 可以快速計算每個欄位的遺失值數量.\n",
+ "* 搭配 .any():`df.isnull().any()` 可以快速判斷哪些欄位包含遺失值.\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "VeCLIqzSskcs"
+ },
+ "source": [
+ "# 課堂練習:刪除缺失值\n",
+ "\n",
+ "* 任務: 創建一個新的 DataFrame,其中包含幾列和幾行,並手動將一些值設為 np.nan。\n",
+ "\n",
+ "然後嘗試使用 `df.dropna()` 刪除包含遺失值的列。\n",
+ "\n",
+ "觀察刪除前後 DataFrame 的形狀 (.shape) 變化。"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "executionInfo": {
+ "elapsed": 50,
+ "status": "ok",
+ "timestamp": 1759735067024,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "HF5fimpQsk3b",
+ "outputId": "7c701a7f-f4db-4bd5-f634-66fdfe3f9b83"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "原始 DataFrame:\n",
+ " col1 col2 col3\n",
+ "0 1.0 5.0 9\n",
+ "1 2.0 NaN 10\n",
+ "2 NaN NaN 11\n",
+ "3 4.0 8.0 12\n",
+ "原始形狀: (4, 3)\n",
+ "\n",
+ "刪除遺失值後的 DataFrame:\n",
+ " col1 col2 col3\n",
+ "0 1.0 5.0 9\n",
+ "3 4.0 8.0 12\n",
+ "刪除遺失值後的形狀: (2, 3)\n"
+ ]
+ }
+ ],
+ "source": [
+ "import pandas as pd\n",
+ "import numpy as np\n",
+ "\n",
+ "# 創建範例 DataFrame\n",
+ "data = {\n",
+ " 'col1': [1, 2, np.nan, 4],\n",
+ " 'col2': [5, np.nan, np.nan, 8],\n",
+ " 'col3': [9, 10, 11, 12] # 補上 col3 的資料\n",
+ "}\n",
+ "test_df = pd.DataFrame(data)\n",
+ "\n",
+ "# 觀察原始 DataFrame\n",
+ "print(\"原始 DataFrame:\\n\", test_df)\n",
+ "print(\"原始形狀:\", test_df.shape)\n",
+ "\n",
+ "# 處理缺失值後再次觀察\n",
+ "test_df_dropped = test_df.dropna() # 刪除包含 NaN 的列\n",
+ "print(\"\\n刪除遺失值後的 DataFrame:\\n\", test_df_dropped)\n",
+ "print(\"刪除遺失值後的形狀:\", test_df_dropped.shape)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "executionInfo": {
+ "elapsed": 41,
+ "status": "ok",
+ "timestamp": 1759735290075,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "hs0fa40MZL7l",
+ "outputId": "d3cc8907-8db2-4a6e-9205-6820a66ddaa0"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "刪除遺失值後的 DataFrame:\n",
+ " col3\n",
+ "0 9\n",
+ "1 10\n",
+ "2 11\n",
+ "3 12\n",
+ "刪除遺失值後的形狀: (4, 1)\n"
+ ]
+ }
+ ],
+ "source": [
+ "# 處理缺失值後再次觀察\n",
+ "test_df_dropped_column = test_df.dropna(axis=1) # 刪除包含 NaN 的欄\n",
+ "print(\"\\n刪除遺失值後的 DataFrame:\\n\", test_df_dropped_column)\n",
+ "print(\"刪除遺失值後的形狀:\", test_df_dropped_column.shape)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "executionInfo": {
+ "elapsed": 13,
+ "status": "ok",
+ "timestamp": 1759735388528,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "mj_z0Q-8Zd2v",
+ "outputId": "3e1aacb8-96af-46aa-fa6d-9b8515723844"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "刪除遺失值後的 DataFrame:\n",
+ " col1 col2 col3\n",
+ "0 1.0 5.0 9\n",
+ "1 2.0 NaN 10\n",
+ "3 4.0 8.0 12\n",
+ "刪除遺失值後的形狀: (3, 3)\n"
+ ]
+ }
+ ],
+ "source": [
+ "# 處理缺失值後再次觀察\n",
+ "test_df_dropped_thresh2 = test_df.dropna(thresh=2) #刪除遺失值數量超過 N 的列\n",
+ "print(\"\\n刪除遺失值後的 DataFrame:\\n\", test_df_dropped_thresh2)\n",
+ "print(\"刪除遺失值後的形狀:\", test_df_dropped_thresh2.shape)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "49GtgmqdzJcf"
+ },
+ "source": [
+ "# 課堂練習: 填補缺失值"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 206
+ },
+ "executionInfo": {
+ "elapsed": 70,
+ "status": "ok",
+ "timestamp": 1750840650396,
+ "user": {
+ "displayName": "chen nicole",
+ "userId": "10741717251477288554"
+ },
+ "user_tz": -480
+ },
+ "id": "X8j4lT_YPBOp",
+ "outputId": "f8ffc8ac-f26c-4c14-bfa0-6c469c9ff9c0"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CRIM | \n",
+ " ZN | \n",
+ " INDUS | \n",
+ " CHAS | \n",
+ " NOX | \n",
+ " RM | \n",
+ " AGE | \n",
+ " DIS | \n",
+ " RAD | \n",
+ " TAX | \n",
+ " PTRATIO | \n",
+ " B | \n",
+ " LSTAT | \n",
+ " MEDV | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 0.00632 | \n",
+ " 18.0 | \n",
+ " 2.31 | \n",
+ " 0 | \n",
+ " 0.538 | \n",
+ " 6.575 | \n",
+ " 65.2 | \n",
+ " 4.0900 | \n",
+ " 1 | \n",
+ " 296.0 | \n",
+ " 15.3 | \n",
+ " 396.90 | \n",
+ " 4.98 | \n",
+ " 24.0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0.02731 | \n",
+ " 0.0 | \n",
+ " 7.07 | \n",
+ " 0 | \n",
+ " 0.469 | \n",
+ " 6.421 | \n",
+ " 78.9 | \n",
+ " 4.9671 | \n",
+ " 2 | \n",
+ " 242.0 | \n",
+ " 17.8 | \n",
+ " 396.90 | \n",
+ " 9.14 | \n",
+ " 21.6 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 0.02729 | \n",
+ " 0.0 | \n",
+ " 7.07 | \n",
+ " 0 | \n",
+ " 0.469 | \n",
+ " 7.185 | \n",
+ " 61.1 | \n",
+ " 4.9671 | \n",
+ " 2 | \n",
+ " 242.0 | \n",
+ " 17.8 | \n",
+ " 392.83 | \n",
+ " 4.03 | \n",
+ " 34.7 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 0.03237 | \n",
+ " 0.0 | \n",
+ " 2.18 | \n",
+ " 0 | \n",
+ " 0.458 | \n",
+ " 6.998 | \n",
+ " 45.8 | \n",
+ " 6.0622 | \n",
+ " 3 | \n",
+ " 222.0 | \n",
+ " 18.7 | \n",
+ " 394.63 | \n",
+ " 2.94 | \n",
+ " 33.4 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 0.06905 | \n",
+ " 0.0 | \n",
+ " 2.18 | \n",
+ " 0 | \n",
+ " 0.458 | \n",
+ " 7.147 | \n",
+ " 54.2 | \n",
+ " 6.0622 | \n",
+ " 3 | \n",
+ " 222.0 | \n",
+ " 18.7 | \n",
+ " 396.90 | \n",
+ " 5.33 | \n",
+ " 36.2 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO \\\n",
+ "0 0.00632 18.0 2.31 0 0.538 6.575 65.2 4.0900 1 296.0 15.3 \n",
+ "1 0.02731 0.0 7.07 0 0.469 6.421 78.9 4.9671 2 242.0 17.8 \n",
+ "2 0.02729 0.0 7.07 0 0.469 7.185 61.1 4.9671 2 242.0 17.8 \n",
+ "3 0.03237 0.0 2.18 0 0.458 6.998 45.8 6.0622 3 222.0 18.7 \n",
+ "4 0.06905 0.0 2.18 0 0.458 7.147 54.2 6.0622 3 222.0 18.7 \n",
+ "\n",
+ " B LSTAT MEDV \n",
+ "0 396.90 4.98 24.0 \n",
+ "1 396.90 9.14 21.6 \n",
+ "2 392.83 4.03 34.7 \n",
+ "3 394.63 2.94 33.4 \n",
+ "4 396.90 5.33 36.2 "
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ " # 載入必要的套件\n",
+ "import pandas as pd\n",
+ "from sklearn.datasets import fetch_openml\n",
+ "boston = fetch_openml(name='boston', version=1, as_frame=True)\n",
+ "df = boston.frame\n",
+ "df.head(5)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "executionInfo": {
+ "elapsed": 62,
+ "status": "ok",
+ "timestamp": 1759737346289,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "pvQAcwzvzJxh",
+ "outputId": "cd903fe8-3024-4206-aa27-d74f4463f0cf"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "原始資料:\n",
+ " CRIM RM AGE\n",
+ "0 0.1 6.5 65.0\n",
+ "1 NaN 7.1 72.0\n",
+ "2 0.3 NaN NaN\n",
+ "3 0.2 5.9 65.0\n",
+ "查看資料分布:\n",
+ " CRIM RM AGE\n",
+ "count 3.00 3.0 3.000000\n",
+ "mean 0.20 6.5 67.333333\n",
+ "std 0.10 0.6 4.041452\n",
+ "min 0.10 5.9 65.000000\n",
+ "25% 0.15 6.2 65.000000\n",
+ "50% 0.20 6.5 65.000000\n",
+ "75% 0.25 6.8 68.500000\n",
+ "max 0.30 7.1 72.000000\n",
+ "\n",
+ "平均值填補 CRIM 欄位:\n",
+ " CRIM RM AGE\n",
+ "0 0.1 6.5 65.0\n",
+ "1 0.2 7.1 72.0\n",
+ "2 0.3 NaN NaN\n",
+ "3 0.2 5.9 65.0\n",
+ "\n",
+ "中位數填補 RM 欄位:\n",
+ " CRIM RM AGE\n",
+ "0 0.1 6.5 65.0\n",
+ "1 0.2 7.1 72.0\n",
+ "2 0.3 6.5 NaN\n",
+ "3 0.2 5.9 65.0\n",
+ "\n",
+ "眾數填補 AGE 欄位:\n",
+ " CRIM RM AGE\n",
+ "0 0.1 6.5 65.0\n",
+ "1 0.2 7.1 72.0\n",
+ "2 0.3 6.5 65.0\n",
+ "3 0.2 5.9 65.0\n",
+ "\n",
+ "填補後的資料:\n",
+ " CRIM RM AGE\n",
+ "0 0.1 6.5 65.0\n",
+ "1 0.2 7.1 72.0\n",
+ "2 0.3 6.5 65.0\n",
+ "3 0.2 5.9 65.0\n"
+ ]
+ }
+ ],
+ "source": [
+ "#處理遺失值\n",
+ "import pandas as pd\n",
+ "import numpy as np\n",
+ "\n",
+ "# 建立模擬資料\n",
+ "data = {\n",
+ " 'CRIM': [0.1, np.nan, 0.3, 0.2],\n",
+ " 'RM': [6.5, 7.1, np.nan, 5.9],\n",
+ " 'AGE': [65, 72, np.nan, 65]\n",
+ "}\n",
+ "\n",
+ "df = pd.DataFrame(data)\n",
+ "\n",
+ "print(\"原始資料:\")\n",
+ "print(df)\n",
+ "#查看資料\n",
+ "print(\"查看資料分布:\\n\",df.describe())\n",
+ "\n",
+ "# 平均值填補 CRIM 欄位\n",
+ "df['CRIM'] = df['CRIM'].fillna(df['CRIM'].mean())\n",
+ "print(\"\\n平均值填補 CRIM 欄位:\\n\",df)\n",
+ "\n",
+ "# 中位數填補 RM 欄位\n",
+ "df['RM'] = df['RM'].fillna(df['RM'].median())\n",
+ "print(\"\\n中位數填補 RM 欄位:\\n\",df)\n",
+ "\n",
+ "# 眾數填補 AGE 欄位\n",
+ "df['AGE'] = df['AGE'].fillna(df['AGE'].mode()[0])\n",
+ "print(\"\\n眾數填補 AGE 欄位:\\n\",df)\n",
+ "\n",
+ "print(\"\\n填補後的資料:\")\n",
+ "print(df)\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "P2PPz4z25YDS"
+ },
+ "source": [
+ "# 課堂範例: 處理異常值(接續波士頓房價資料集)\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 1000
+ },
+ "executionInfo": {
+ "elapsed": 291,
+ "status": "ok",
+ "timestamp": 1759738143458,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "gTxpd_CFPFHK",
+ "outputId": "5f09f83f-95ae-4d6a-f21c-68a35d52e55a"
+ },
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAJOCAYAAABm7rQwAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAAqXZJREFUeJzs3XlclXX+//8noCCg4MriCqklJmpiKRpftSxTLAmpybK0TM20cslmbDG3dMYla5rMbJp0PmaLRDZSlktapKiF5YiioUlasrjEoiDI4fr94e+c8QgIKGfTx/124ybnut7nul7nwLmO58l7cTMMwxAAAAAAAABgR+6OLgAAAAAAAADXHkIpAAAAAAAA2B2hFAAAAAAAAOyOUAoAAAAAAAB2RygFAAAAAAAAuyOUAgAAAAAAgN0RSgEAAAAAAMDuCKUAAAAAAABgd4RSAAAAAAAAsDtCKQAA7CQkJEQjR450dBm4hvXt21d9+/Z1dBk19v3336tXr17y9fWVm5ubfvrpJ0eX5DC2vo64ublpxowZNjs+AAAXIpQCgKvE8uXL5ebmZvUVEBCgfv36ad26dTY777FjxzRjxgyHfkjs27evOnXqVOG+jIwMubm5aeHChXauyrlc+HtRp04dNW7cWBEREXrmmWe0b9++yz5uYWGhZsyYoS1bttResVdg27ZtmjFjhnJzc216notfa76+vurYsaPmzJmjwsJCm567IiEhIeVe+1FRUfr0009r5fiO/DmfO3dO9913n06dOqXFixfr//7v/9SmTZsK227ZssXyHKSkpJTbP3LkSNWvX9/WJV/1zNfVir569uxpk3M6w3sNAKD21XF0AQCA2jVr1iyFhobKMAxlZ2dr+fLlGjRokNauXavBgwfX+vmOHTummTNnKiQkRF27dq31419NDhw4IHd3x/096I477tAjjzwiwzCUl5en3bt3a8WKFVqyZIn+9re/afLkyTU+ZmFhoWbOnClJTtEDZ9u2bZo5c6ZGjhyphg0b2vRc5udTkk6fPq2kpCS99NJL2r17t1avXm3Tc1eka9eumjJliqTzr8u3335bsbGxeuutt/TEE09c0bEd+XM+dOiQfv31V73zzjt6/PHHq32/GTNmaO3atTaszDEcfR250LBhwzRo0CCrbc2aNbPJuXivAYCrE6EUAFxlBg4cqO7du1tujxo1SoGBgfrggw9sEkqh+ry8vBx6/uuvv17Dhw+32vbXv/5Vd999t6ZMmaIOHTqU+4CJyl38fD7xxBMqKSlRQkKCzp49q3r16tm1nhYtWljV88gjj6hdu3ZavHjxFYdSjpSTkyNJNQoZu3btqsTERO3atUvdunWzUWX2YxiGzp49K29vb4dfRy7UrVu3ctcUV3P27Fl5eno6TdAHANcarr4AcJVr2LChvL29VaeO9d8hzpw5oylTpqhVq1by8vLSDTfcoIULF8owDKt2GzZs0K233qqGDRuqfv36uuGGG/T8889LOj9U5uabb5YkPfroo5bhG8uXL7fcf/Xq1YqIiJC3t7eaNm2q4cOH6/fff7c6h3lIze+//66YmBjVr19fzZo107PPPiuTyWSDZ0X65ZdfdN9996lx48by8fFRz5499fnnn1u1MQ+JzMjIsNpuHiJ04VCm9PR0DR06VEFBQapXr55atmypBx54QHl5eZY2F88FYz7+1q1bNXnyZDVr1ky+vr669957dfz4catzlpWVacaMGWrevLl8fHzUr18/7du374rnl2nSpIk+/PBD1alTR6+88ople0lJiaZPn66IiAj5+/vL19dXUVFR2rx5s6VNRkaGpVfEzJkzLT9/83w0//3vfzVy5Ehdd911qlevnoKCgvTYY4/p5MmTVjUUFBRo4sSJCgkJkZeXlwICAnTHHXdo165dVu127Nihu+66S/7+/vLx8VGfPn20detWy/4ZM2Zo6tSpkqTQ0FBLPRf//GwpKCjIMkTyQlW9Dl5++WW5u7tr06ZNVvcbM2aMPD09tXv37suqJSwsTIcPH75ku5ycHEt4Xa9ePXXp0kUrVqyw7K/q55yVlaVHH31ULVu2lJeXl4KDgzVkyJBqPe9ff/21oqKi5Ovrq4YNG2rIkCFKS0uz7B85cqT69OkjSbrvvvvk5uZWrZ5aTz31lBo1alStuZEqm0Opstfrd999p6efflrNmjVTw4YNNXbsWJWUlCg3N1ePPPKIGjVqpEaNGum5554rdz0tKyvTa6+9phtvvFH16tVTYGCgxo4dqz/++KPcuQcPHqyvvvpK3bt3l7e3t95+++0K65Kk3NxcTZo0yfIaatmypR555BGdOHFCUvVez7awf/9+xcXFqXHjxqpXr566d++u//znP1ZtTp06pWeffVbh4eGqX7++/Pz8NHDgQKvf+areayq7Dl48h5r52v3hhx/qxRdfVIsWLeTj46P8/HxJVV9jpOpfrwAA1UNPKQC4yuTl5enEiRMyDEM5OTl64403dPr0aau/ZhuGoXvuuUebN2/WqFGj1LVrV3311VeaOnWqfv/9dy1evFiStHfvXg0ePFidO3fWrFmz5OXlpYMHD1r+kx4WFqZZs2Zp+vTpGjNmjKKioiRJvXr1knT+Q9yjjz6qm2++WfPmzVN2drZef/11bd26VT/++KNVzweTyaQBAwaoR48eWrhwoTZu3KhFixapbdu2GjduXJWP22QyWT6AXejiD3uSlJ2drV69eqmwsFBPP/20mjRpohUrVuiee+5RfHy87r333uo/4Tr/gW/AgAEqLi7WU089paCgIP3+++9KTExUbm6u/P39L3l/8wfol19+WRkZGXrttdc0YcIEffTRR5Y206ZN0/z583X33XdrwIAB2r17twYMGKCzZ8/WqNaKtG7dWn369NHmzZuVn58vPz8/5efn65///KeGDRum0aNHq6CgQO+++64GDBignTt3qmvXrmrWrJneeustjRs3Tvfee69iY2MlSZ07d5Z0PtD85Zdf9OijjyooKEh79+7VsmXLtHfvXm3fvl1ubm6Szvcwio+P14QJE9SxY0edPHlS3333ndLS0iy9XL7++msNHDhQERERlgDnvffe02233aakpCTdcsstio2N1c8//6wPPvhAixcvVtOmTSXZbjjR2bNnLb9zZ86c0datW7VixQo9+OCDVqFUdV4HL774otauXatRo0Zpz549atCggb766iu98847mj17trp06VLj+s6dO6ejR4+qSZMmlbYpKipS3759dfDgQU2YMEGhoaFavXq1Ro4cqdzcXD3zzDNV/pyHDh2qvXv36qmnnlJISIhycnK0YcMGHTlyRCEhIZWee+PGjRo4cKCuu+46zZgxQ0VFRXrjjTfUu3dv7dq1SyEhIRo7dqxatGihuXPn6umnn9bNN9+swMDAKh+7n5+fJk2apOnTp9d6bynza3zmzJnavn27li1bpoYNG2rbtm1q3bq15s6dqy+++EILFixQp06dLEM8JWns2LGW34enn35ahw8f1j/+8Q/9+OOP2rp1q+rWrWtpe+DAAQ0bNkxjx47V6NGjdcMNN1RYz+nTpxUVFaW0tDQ99thj6tatm06cOKH//Oc/+u2339S0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2WeVmJiou+++u8avg6lTp+rDDz/Uzp07NXfuXHXs2LHaj6dHjx6aM2eO3Nzc5OPjo7CwsConB//111/Vvn37cq/ni68FlfHy8tLf/vY3TZkyRYGBgerZs6cGDx6sRx55REFBQZc8r1Tx8xIWFqavvvpKZ86cka+v7yXPX5VnnnlGixcv1owZM/TZZ59d0bHMLn69ml/jrVq1Krf9wutXenq68vLyFBAQUOFxL36NVPd1dujQIQ0dOrTKdlf6eq5I+/btK7zu7ty5U4Zh6KWXXtJLL71U4X1zcnLUokULlZWV6fXXX9eSJUt0+PBhq3kELzX09Epc/Jhrco2p6noFAKgZQikAuMq5u7urX79+ev3115Wenq4bb7yx2vf19vbWt99+q82bN+vzzz/Xl19+qY8++ki33Xab1q9fLw8Pj1qrszaPVVsu7A1xoYomX1+0aJFGjhypzz77TOvXr9fTTz+tefPmafv27WrZsuUlz1PZYzcumiTZllJTU+Xh4WH5sLZy5UqNHDlSMTExmjp1qgICAuTh4aF58+bp0KFD1Trm/fffr23btmnq1Knq2rWr6tevr7KyMt11111WPZvuv/9+RUVF6dNPP9X69eu1YMEC/e1vf1NCQoIGDhxoabtgwYJK574x9/SqiYULF2rmzJkV7tu8eXO1JtS+2O233y5J+vbbb3X33XfX+P6//PKL5QPynj17anTfpk2bVhgQ2NrEiRN19913a82aNfrqq6/00ksvad68efr6669100032b2eC5l7S82YMaPGvaUqW2ShstdrRdsvfA2XlZUpICBA77//foX3vziUv7Anz5WqjddzTZhfs88++2ylvb3MIfvcuXP10ksv6bHHHtPs2bPVuHFjubu7a+LEidXuAXmpa3VFP5eLn9uaXGOqul4BAGqGUAoArgGlpaWS/tcbpk2bNtq4caMKCgqsesbs37/fst/M3d1dt99+u26//Xa9+uqrmjt3rl544QVt3rxZ/fv3r/TDgPkYBw4c0G233Wa178CBA1bnsLc2bdrowIED5bZf/PjNPW9yc3Ot2lXWeyQ8PFzh4eF68cUXtW3bNvXu3VtLly7VnDlzrrheSTp48KDVX/hPnjxZoyFTlTly5Ii++eYbRUZGWn4f4uPjdd111ykhIcHqZ/zyyy9b3beyn/8ff/yhTZs2aebMmZo+fbpluzlw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rfZNmjTJqh0A11TjUOr06dM6ePCg5fbhw4f1008/qXHjxmrdurUmTpyoOXPmqH379goNDdVLL72k5s2bW1boCwsL01133aXRo0dr6dKlOnfunCZMmKAHHnigWivvuaKEhATFxcVp8ODB+uCDD9SpUyelpqZq7ty5iouLU3x8PMGUDbRs2VJ79uyRJLVo0ULbt2+3vGG1bNlSv/32m+V7AIDtpaen6/rrr7f5eYYPH26zY//8888EUwBgJ3379pWPj48KCwsrbePj48OiRYALczMMw6jJHbZs2aJ+/fqV2z5ixAgtX75chmHo5Zdf1rJly5Sbm6tbb71VS5YssfpP6KlTpzRhwgStXbtW7u7uGjp0qP7+97+rfv361aqhuksLOgOTyaR27dopPDxca9assRoLXVZWppiYGKWmpio9PZ2hfLWsZ8+e2rFjhyRZhuqZXXi7R48e2r59u0NqBIBrya5duxQREVHjOZ+q63JX36sO83xVTIoOAPZTUlKievXq6VIfWd3c3HT27Fl5enrasTIAValublPjnlJ9+/at8qIwa9YszZo1q9I2jRs31qpVq2p6apeUlJSkjIwMffDBBxVOzjdt2jT16tVLSUlJJPy17NixY5bvTSaTWrdura5du+qnn37SkSNHKmwHALA9W8751Lt3b5scFwBgf2+88YYMw1CzZs106tSpcn9kbtSokU6cOKE33niD1fcAF+USq++5sszMTElSp06dKtxv3m5uh9rTokULHT161HL7yJEjVmHUhe0AAAAAOJfvvvtOknTixAkNGjRI7dq1U1FRkby9vXXw4EF98cUXlnaEUoBrIpSyMfMqhKmpqerZs2e5/ampqVbtUHsGDx5sGZZXt25dnTt3zrLvwtusvAcAAAA4Hx8fH0nn54Ddu3evPv/8c8u+kJAQtWzZUkePHrW0A+B63KtugisRFRWlkJAQzZ07V2VlZVb7ysrKNG/ePIWGhioqKspBFV69fv/9d8v3FwZSF9++sB0AAAAA52Be0f3o0aPq1KmTkpOTVVBQoOTkZHXq1MkyKsLcDoDrIZSyMQ8PDy1atEiJiYmKiYmxupDGxMQoMTFRCxcuZJJzG6jukEiGTgIAAADOJygoyPL9zp079d///lf5+fn673//q507d1bYDoBrYfieHcTGxio+Pl5TpkxRr169LNtDQ0MVHx+v2NhY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MOTj42PVDgAAAIDzMJlMWrFihSTJ09PTap+Xl5ckacWKFXyWwlWjukP0rqahfIRSNmZeMaJXr166/vrr1a9fPz344IPq16+frr/+ekVGRrJihI0EBgZKkgoLCyvcb95ubgcAAADAeWzZskU5OTm69dZblZ+fb7X6Xl5ennr37q2cnBxt2bLF0aUCtcI8RK+22rkCQikbM68E8fzzz1c4fO+FF16waofa06FDB6vbwcHBWr58ebmJEC9uBwAAAMDxzGHTzJkz5e5u/dHV3d1dM2bMsGoHwPUQStlYQECAJKl3794VDt/r3bu3VTvUnmnTplndzszM1MiRI8sFgBe3AwAAAOA8kpKS1K5dO6tRJ+3atdN3333n6NIAXCFW37OTEydOqH379vr1118t29q0aSNvb28HVnV1u+uuu6rdbs+ePTauBgBgHja9a9cumxy/qKhIGRkZCgkJqfX317S0tFo9HgCgan379tWcOXM0Y8YMDR48WB988IE6deqk1NRUvfLKK5o5c6alHXA1aNSokf74449qtbtaEErZWE5OjiRp//79CggI0P333y9fX1+dOXNGW7ZssYRU5naoPceOHavVdgCAK7N//35J0ujRox1cyeVr0KCBo0sAgGtGVFSU3N3dVVZWJkkyDMPyZebu7q6oqChHlXjVKykp0ZIlS3To0CG1bdtWTz75ZLlJ51F7qruy3tW0Ah+hlI2Zh+U1btxYOTk5+vjjj632N27cWKdOnWL4ng00adJEp06dkiRlZWVp9uzZSk9PV/v27fXSSy8pKCjI0g4AYHsxMTGSzs/lZ14BtTalpaVp+PDhWrlypcLCwmr9+A0aNFD79u1r/bgAgIpt27bNEkht2rRJiYmJln3m95GysjJt27aN3lI28Nxzz2nx4sUqLS21bJs6daomTZqk+fPnO7Cyq9eZM2dqtZ0rIJSyE3Pw9Mgjj+i6667TL7/8on//+9/0kLKhs2fPWr4vLi7WN998o2PHjunYsWN67rnnKmwHALCdpk2b6vHHH7f5ecLCwtStWzebnwcAYFvmuWBXrlypF154wWoqlICAAM2ZM0fDhw9n0SgbeO6557RgwQI1a9ZMzZs3V3Fxsby8vHTs2DEtWLBAkgimbODiCf2vtJ0rIJSysQuHht18882KjY21jINOS0vT559/Xq4daoe5l5R0fv6uC7dffBsA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",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ " # 載入必要的套件\n",
+ "import pandas as pd\n",
+ "import matplotlib.pyplot as plt\n",
+ "from sklearn.datasets import fetch_openml\n",
+ "boston = fetch_openml(name='boston', version=1, as_frame=True)\n",
+ "df = boston.frame\n",
+ "df.head(5)\n",
+ "\n",
+ "\n",
+ "# 只選擇數值型欄位\n",
+ "numeric_cols = df.select_dtypes(include='number').columns.tolist()\n",
+ "\n",
+ "# 畫出這些欄位的 boxplot\n",
+ "plt.figure(figsize=(max(12, len(numeric_cols) * 0.8), 6))\n",
+ "plt.boxplot(df[numeric_cols].values, tick_labels=numeric_cols, showfliers=True)\n",
+ "\n",
+ "plt.xticks(rotation=45, ha=\"right\")\n",
+ "plt.title(\"Boston Housing Dataset – Box Plots of Numerical Features\")\n",
+ "plt.tight_layout()\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 753
+ },
+ "executionInfo": {
+ "elapsed": 178,
+ "status": "ok",
+ "timestamp": 1759739619206,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "cRnRvCFziONd",
+ "outputId": "aff4d629-f559-4586-d1c8-37ae1482c4f6"
+ },
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAJOCAYAAABm7rQwAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAAVJxJREFUeJzt3X2c1WWdP/7XzCA3gjOmIow3ATm2qMyqmZnUJKSmptaIrClparXmpmZK7gqtqWWyFmRtpa61m67mTdKsbrRaZqKjTtrXysRbTDDTEbCSwRtQZj6/P/wxMYEJyHyOMM/n43EennNd1+dz3ufMHB/D61zX9akqiqIIAAAAAJSoutIFAAAAAND3CKUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAgF4xcuTIHHfccZUugz5s3LhxGTduXKXLSPJqLVVVVamqqsohhxxS6XLWSXNzc/drGDNmTKXLAWAjIJQCYIN02WWXdf/jaMVt6623zvjx43PjjTf22vM+/fTTOeecc/Kb3/ym157j9YwbN+41/0E4f/78VFVVZfr06SVX9eay8u9Fv379ssUWW2SPPfbIqaeemgcffHCdz/viiy/mnHPOyezZs9dfsW/AXXfdlXPOOSfPPfdcrz7PX3/WBg8enJ133jnnnXdeXnzxxV597tUZOXLkKp/9pqam/M///M96OX9v/ZxHjx6dK664Ip/73OdW6Vu6dGkuvPDC7LXXXqmrq8vAgQPz9re/PSeffHIeffTR7nHnnHNOj9e+ySabZOTIkfnMZz6z2t+DkSNHrhKCrTj2k5/85Grr/PznP9895tlnn+1uP+2003LFFVdk9OjR6/gOAEBP/SpdAAC8EV/84hczatSoFEWRBQsW5LLLLssHP/jB/OhHP+qV2QhPP/10zj333IwcOTK77bbbej//xuSRRx5JdXXlvv/af//987GPfSxFUWTx4sW57777cvnll+eiiy7KBRdckNNPP32tz/niiy/m3HPPTZI3xQycu+66K+eee26OO+64bL755r36XCvezyR5/vnn09ramrPOOiv33Xdfrrvuul597tXZbbfdMnny5CSvfi7/4z/+IxMmTMjFF1+cE0888Q2du7d+zsOGDcvRRx+9Svuzzz6bAw88MPfee28OOeSQTJo0KUOGDMkjjzySa665JpdeemlefvnlHsdcfPHFGTJkSF544YXccsst+eY3v5lf/epXueOOO9aoloEDB+aHP/xhLrroovTv379H39VXX52BAwdm6dKlPdr32WefJMl3v/vdHmEVAKwroRQAG7SDDjoo73znO7sff+ITn8iwYcNy9dVXb7BLZDYWAwYMqOjzv/3tb18lAPi3f/u3HHrooZk8eXJGjx6dD37wgxWqbsPz1+/niSeemJdffjktLS1ZunRpBg4cWGo92267bY96Pvaxj6WhoSEXXnjhGw6lynbcccfl17/+dWbOnJnDDz+8R9+XvvSlfP7zn1/lmIkTJ2arrbZKknzqU5/KkUcemWuvvTb33HNP3vWud73ucx544IH53//939x444358Ic/3N1+1113Zd68eTn88MPzwx/+8A2+MgD42yzfA2Cjsvnmm2fQoEHp16/n9y4vvPBCJk+enO233z4DBgzI3/3d32X69OkpiqLHuJtvvjnvfe97s/nmm2fIkCH5u7/7u0ydOjVJMnv27Oy5555JkuOPP757ectll13Wffx1112XPfbYI4MGDcpWW22Vo48+Ok899VSP5zjuuOMyZMiQPPXUU2lubs6QIUMydOjQfO5zn0tnZ2cvvCvJ448/nn/4h3/IFltskU033TTvfve78+Mf/7jHmBVLIufPn9+jffbs2amqquqxlGnu3Lk5/PDDM3z48AwcODDbbbddjjzyyCxevLh7zF/vKbXi/HfeeWdOP/30DB06NIMHD85hhx2WRYsW9XjOrq6unHPOOdlmm22y6aabZvz48XnwwQff8D5VW265Za655pr069cvX/7yl7vbX3755XzhC1/IHnvskbq6ugwePDhNTU259dZbu8fMnz8/Q4cOTZKce+653T//c845J0ny29/+Nscdd1ze9ra3ZeDAgRk+fHg+/vGP549//GOPGpYsWZLPfvazGTlyZAYMGJCtt946+++/f371q1/1GHf33XfnwAMPTF1dXTbddNPss88+ufPOO7v7zznnnJxxxhlJklGjRnXX89c/v940fPjw7iWSK3u9z8HZZ5+d6urq3HLLLT2OO+GEE9K/f//cd99961TLTjvtlHnz5v3NcQsXLuwOrwcOHJhdd901l19+eXf/6/2cn3nmmRx//PHZbrvtMmDAgNTX1+fDH/7wOr/vd999d3784x/nE5/4xCqBVPJquLsmy3GbmpqSJL/73e/W6Hm33XbbvO9978tVV13Vo/373/9+Ghsb7RkFQCnMlAJgg7Z48eI8++yzKYoiCxcuzDe/+c08//zzPWZQFEWRD33oQ7n11lvziU98Irvttlt+8pOf5IwzzshTTz2VCy+8MEnywAMP5JBDDsnf//3f54tf/GIGDBiQxx57rDsI2GmnnfLFL34xX/jCF3LCCSd0/yNw7NixSV4NXY4//vjsueeemTZtWhYsWJBvfOMbufPOO/PrX/+6x/Kqzs7OHHDAAdlrr70yffr0/OxnP8uMGTOyww475J/+6Z9e93V3dnaudvnMn//851XaFixYkLFjx+bFF1/MZz7zmWy55Za5/PLL86EPfSgzZ87MYYcdtuZveF4NcA444IAsW7Ysp5xySoYPH56nnnoqs2bNynPPPZe6urq/efwpp5ySt7zlLTn77LMzf/78fP3rX8/JJ5+ca6+9tnvMlClT8pWvfCWHHnpoDjjggNx333054IADVllOtC7e+ta3Zp999smtt96ajo6O1NbWpqOjI9/97ndz1FFH5R//8R+zZMmS/Od//mcOOOCA3HPPPdltt90ydOjQXHzxxfmnf/qnHHbYYZkwYUKS5O///u+TvBpoPv744zn++OMzfPjwPPDAA7n00kvzwAMP5Be/+EWqqqqSvDrDaObMmTn55JOz8847549//GPuuOOOPPTQQ3nHO96RJPn5z3+egw46KHvssUd3gPO9730v73//+9Pa2pp3vetdmTBhQh599NFcffXVufDCC7tnzawIVNa3pUuXdv/OvfDCC7nzzjtz+eWXZ9KkST1CqTX5HPzrv/5rfvSjH+UTn/hE7r///my22Wb5yU9+ku985zv50pe+lF133XWt63vllVfy5JNPZsstt3zNMS+99FLGjRuXxx57LCeffHJGjRqV6667Lscdd1yee+65nHrqqa/7cz788MPzwAMP5JRTTsnIkSOzcOHC3Hzzzfn973+fkSNHrnXd//u//5skOeaYY9b62JWtCMXe8pa3rPExkyZNyqmnnprnn38+Q4YMyfLly3Pdddfl9NNPXy+fNQB4XQUAbIC+973vFUlWuQ0YMKC47LLLeoy9/vrriyTFeeed16N94sSJRVVVVfHYY48VRVEUF154YZGkWLRo0Ws+7y9/+csiSfG9732vR/vLL79cbL311sWYMWOKl156qbt91qxZRZLiC1/4QnfbscceWyQpvvjFL/Y4x+67717ssccer/va99lnn9W+9pVvX/3qV7vHf/azny2SFK2trd1tS5YsKUaNGlWMHDmy6OzsLIriL+/pvHnzejzfrbfeWiQpbr311qIoiuLXv/51kaS47rrr/madI0aMKI499tjuxyvOv99++xVdXV3d7aeddlpRU1NTPPfcc0VRFMUzzzxT9OvXr2hubu5xvnPOOadI0uOcryVJcdJJJ71m/6mnnlokKe67776iKIpi+fLlxbJly3qM+fOf/1wMGzas+PjHP97dtmjRoiJJcfbZZ69yzhdffHGVtquvvrpIUtx+++3dbXV1dX+ztq6urmLHHXcsDjjggB7v04svvliMGjWq2H///bvbvvrVr672Z7a+vdbvWXNzc7F06dLucWvzObj//vuL/v37F5/85CeLP//5z8W2225bvPOd7yxeeeWV161nxIgRxQc+8IFi0aJFxaJFi4r77ruvOPLII4skxSmnnNI9bp999in22Wef7sdf//rXiyTFlVde2aPmvffeuxgyZEjR0dFRFMVr/5z//Oc/r/L5WlN/XcsKhx12WJGk+POf/7xG5zn77LOLJMUjjzxSLFq0qJg/f37xX//1X8WgQYOKoUOHFi+88EKP8SNGjCgOPvjgHm0rPh9/+tOfiv79+xdXXHFFURRF8eMf/7ioqqoq5s+f3/08q/v/4T777FPssssua/bCAeBvsHwPgA3at7/97dx88825+eabc+WVV2b8+PH55Cc/mZaWlu4x//d//5eampp85jOf6XHs5MmTUxRF99X6VsxkuuGGG9LV1bVWdfy///f/snDhwnz605/usbfOwQcfnNGjR6+yVC7JKvveNDU15fHHH1+j5xs5cmT36175duWVV64y9v/+7//yrne9K+9973u724YMGZITTjgh8+fPX+ur0a2YCfWTn/xkna68dsIJJ3TPGkpefd2dnZ154oknkiS33HJLli9fnk9/+tM9jjvllFPW+rley5AhQ5K8upQuSWpqaro3e+7q6sqf/vSnLF++PO985ztXWVb3WgYNGtR9f8Wsone/+91J0uMcm2++ee6+++48/fTTqz3Pb37zm8ydOzeTJk3KH//4xzz77LN59tln88ILL2TffffN7bffvta/n+vDhz/84e7fsxtuuCFTpkzJTTfdlEmTJnUvg12bz8GYMWNy7rnn5rvf/W4OOOCAPPvss7n88stXWQr4Wn76059m6NChGTp0aHbddddcd911OeaYY3LBBRe85jH/93//l+HDh+eoo47qbttkk03ymc98Js8//3xuu+22v/mcgwYNSv/+/TN79uzVzkpcFx0dHUmSzTbbbK2O+7u/+7sMHTo0I0eOzMc//vE0NDTkxhtvzKabbrrG53jLW96SAw88MFdffXWS5KqrrsrYsWMzYsSItaoFANaV5XsAbNDe9a539djo/Kijjsruu++ek08+OYccckj69++fJ554Ittss80q/+jbaaedkqQ7DPnIRz6S7373u/nkJz+ZM888M/vuu28mTJiQiRMnvu5V5Fac4+/+7u9W6Rs9evQqV8QaOHDgKsus3vKWt6zxP3QHDx6c/fbbb5X21e1r88QTT2SvvfZapX3l1782+8eMGjUqp59+er72ta/l+9//fpqamvKhD30oRx999Osu3UteXT63shXLjVa89hXvZUNDQ49xW2yxxVotTfpbnn/++SQ9g4DLL788M2bMyMMPP5xXXnmlu33UqFFrdM4//elPOffcc3PNNddk4cKFPfpW3mvrK1/5So499thsv/322WOPPfLBD34wH/vYx/K2t70tyav7dSXJscce+5rPtXjx4rV+L55//vnu1/3Xtthii1WuwPbXtttuux6/cx/60Iey5ZZb5nOf+1xmzZqVQw89dK0/B2eccUauueaa3HPPPTn//POz8847r/Hr2WuvvXLeeeelqqoqm266aXbaaafXvQLhE088kR133HGVz/Nf/7/gtQwYMCAXXHBBJk+enGHDhuXd7353DjnkkHzsYx/L8OHD17j2ldXW1iZ5NSBdmyso/vCHP0xtbW0WLVqUf//3f8+8efN6BKNratKkSTnmmGPy+9//Ptdff32+8pWvrPU5AGBdmSkFwEaluro648ePT3t7e/c/7tfUoEGDcvvtt+dnP/tZjjnmmPz2t7/NRz7ykey///7rfQPympqa9Xq+9WHl2UsrW91rnzFjRn77299m6tSpeemll/KZz3wmu+yyS/7whz+87vO81msv/mrT+d40Z86c1NTUdAdOV155ZY477rjssMMO+c///M/cdNNNufnmm/P+979/jWclHXHEEfnOd76TE088MS0tLfnpT3+am266KUl6nOOII47I448/nm9+85vZZptt8tWvfjW77LJL94y9FWO/+tWvrnY23M0339w902ttTJ8+PfX19au93XXXXWt9viTZd999kyS33377Oh3/+OOPd39O77///rU6dquttsp+++2XfffdN3vvvfdaBTpvxGc/+9k8+uijmTZtWgYOHJizzjorO+20U37961+v0/lGjx6dZO1f//ve977st99+Oeqoo3LzzTdn0KBB+ehHP7rWs+g+9KEPZcCAATn22GOzbNmyHHHEEWt1PAC8EUIpADY6y5cvT/KX2TAjRozI008/3b1Ua4WHH364u3+F6urq7Lvvvvna176WBx98MF/+8pfz85//vPsqbK8V3Kw4xyOPPLJK3yOPPFLR5TAjRoxYbV1//fpXzLx57rnneox7rdkjjY2N+dd//dfcfvvtaW1tzVNPPZVLLrlkvdSbJI899liP9j/+8Y/rZcnU73//+9x2223Ze++9u2dKzZw5M29729vS0tKSY445JgcccED222+/VTZ7fq2f/5///OfccsstOfPMM3PuuefmsMMOy/777989++mv1dfX59Of/nSuv/76zJs3L1tuuWX31QB32GGHJK/OoNlvv/1We9tkk03+Zj2r87GPfew1Q6512Vg8Wf1nLVmzz0FXV1eOO+641NbWZurUqbn66qt7LLvtDSNGjMjcuXNXCW7++rPweu/rDjvskMmTJ+enP/1p5syZk5dffjkzZsxYp5oOPfTQJFnt0ts1NWTIkJx99tn5zW9+kx/84AdrdeygQYPS3Nyc2bNnZ//99+/eMB8AyiCUAmCj8sorr+SnP/1p+vfv370k54Mf/GA6OzvzrW99q8fYCy+8MFVVVTnooIOSvLr86q/ttttuSZJly5YleXXZXLJqcPPOd74zW2+9dS655JLusUly44035qGHHsrBBx+8Xl7fuvjgBz+Ye+65J21tbd1tL7zwQi699NKMHDmye8nUijBk5VkvnZ2dufTSS3ucr6OjozuMWKGxsTHV1dU9Xvu62nfffdOvX79cfPHFPdr/+ue3Lv70pz/lqKOOSmdnZz7/+c93t6+YvbXybK277767x3uWpHu/nr/++a/u+CT5+te/3uNxZ2dnj6V8SbL11ltnm2226X7v9thjj+ywww6ZPn36apfbLVq0qPv+a/0+rs7b3va21wy51nVZ5I9+9KMk6Q611uZz8LWvfS133XVXLr300nzpS1/K2LFj80//9E+rvark+vLBD34wzzzzTI8rPS5fvjzf/OY3M2TIkOyzzz5JXvvn/OKLL64SVO6www7ZbLPN1vl3f++9986BBx6Y7373u7n++utX6X/55Zfzuc997nXP89GPfjTbbbfd39xT67V87nOfy9lnn52zzjprrY8FgDfCnlIAbNBuvPHG7lkOCxcuzFVXXZW5c+fmzDPP7N6r5dBDD8348ePz+c9/PvPnz8+uu+6an/70p7nhhhvy2c9+tjuM+eIXv5jbb789Bx98cEaMGJGFCxfmoosuynbbbde9SfgOO+yQzTffPJdcckk222yzDB48OHvttVdGjRqVCy64IMcff3z22WefHHXUUVmwYEG+8Y1vZOTIkTnttNMq8wYlOfPMM3P11VfnoIMOymc+85lsscUWufzyyzNv3rz88Ic/7N5fZ5dddsm73/3uTJkyJX/605+yxRZb5JprrlklgPr5z3+ek08+Of/wD/+Qt7/97Vm+fHmuuOKK1NTU5PDDD3/D9Q4bNiynnnpqZsyYkQ996EM58MADc9999+XGG2/MVltttcazgx599NFceeWVKYoiHR0due+++3Ldddfl+eefz9e+9rUceOCB3WMPOeSQtLS05LDDDsvBBx+cefPm5ZJLLsnOO+/cIxgaNGhQdt5551x77bV5+9vfni222CJjxozJmDFj8r73vS9f+cpX8sorr2TbbbfNT3/608ybN69HTUuWLMl2222XiRMnZtddd82QIUPys5/9LL/85S+7Z9pUV1fnu9/9bg466KDssssuOf7447Ptttvmqaeeyq233pra2truMGiPPfZIknz+85/PkUcemU022SSHHnpod1i1Pq14P5NXw5lf/OIXufzyy9PQ0JBjjjkmyaubhq/J5+Chhx7KWWedleOOO657ptBll12W3XbbLZ/+9KfXerbPmjrhhBPyH//xHznuuONy7733ZuTIkZk5c2buvPPOfP3rX++eOfdaP+fly5dn3333zRFHHJGdd945/fr1y//8z/9kwYIFOfLII9e5rv/+7//OBz7wgUyYMCGHHnpo9t133wwePDhz587NNddck/b29kyfPv1vnmOTTTbJqaeemjPOOCM33XRTj9/v17Prrruu82w5AHhDKnnpPwBYV9/73vdWuTz9wIEDi9122624+OKLi66urh7jlyxZUpx22mnFNttsU2yyySbFjjvuWHz1q1/tMe6WW24pPvzhDxfbbLNN0b9//2KbbbYpjjrqqOLRRx/tca4bbrih2HnnnYt+/foVSYrvfe973X3XXnttsfvuuxcDBgwotthii+KjH/1o8Yc//KHH8ccee2wxePDgVV7Tikuwv56/dTn2efPmrfaS9b/73e+KiRMnFptvvnkxcODA4l3velcxa9asVY7/3e9+V+y3337FgAEDimHDhhVTp04tbr755iJJceuttxZFURSPP/548fGPf7zYYYcdioEDBxZbbLFFMX78+OJnP/tZj3ONGDGiOPbYY7sfr/iZ/fKXv+wx7tZbb+1x/qIoiuXLlxdnnXVWMXz48GLQoEHF+9///uKhhx4qttxyy+LEE0983fdo5d+L6urqYvPNNy9233334tRTTy0eeOCBVcZ3dXUV559/fjFixIhiwIABxe67717MmjWrOPbYY4sRI0b0GHvXXXcVe+yxR9G/f/8iSXH22WcXRVEUf/jDH4rDDjus2HzzzYu6urriH/7hH4qnn366x5hly5YVZ5xxRrHrrrsWm222WTF48OBi1113LS666KJVavr1r39dTJgwodhyyy2LAQMGFCNGjCiOOOKI4pZbbukx7ktf+lKx7bbbFtXV1UWSYt68ea/7/qytv/6s1dTUFNttt11xwgknFAsWLFhl/N/6HCxfvrzYc889i+2226547rnnehz3jW98o0hSXHvttX+znhEjRhQHH3zw69a9zz77FPvss0+PtgULFhTHH398sdVWWxX9+/cvGhsbe3yGV1jdz/nZZ58tTjrppGL06NHF4MGDi7q6umKvvfYqfvCDH6xTLSt78cUXi+nTpxd77rlnMWTIkKJ///7FjjvuWJxyyinFY4891j1uxf8nFi1atMo5Fi9eXNTV1fV4ntW9V0mKk0466W/W+7ee52/9PwgA1kZVUZS4qygAwDp67rnn8pa3vCXnnXdej6V3sCEYN25cXnnlldxwww3p379/90zODcmSJUuybNmyfPjDH87ixYszZ86cSpcEwAbOnlIAwJvOSy+9tErbiv2Zxo0bV24xsJ7cddddGTp0aCZNmlTpUtbJMccck6FDh67z1RoB4K+ZKQUAvOlcdtllueyyy/LBD34wQ4YMyR133JGrr746H/jAB/KTn/yk0uXBWrv33nu7rx45dOjQDXIPp9/+9rdZuHBhklev+Pfud7+7whUBsKETSgEAbzq/+tWv8s///M/5zW9+k46OjgwbNiyHH354zjvvvAwZMqTS5QEAsB4IpQAAAAAonT2lAAAAACidUAoAAACA0vWrdAF/raurK08//XQ222yzVFVVVbocAAAAANZCURRZsmRJttlmm1RXv/Z8qDddKPX0009n++23r3QZAAAAALwBTz75ZLbbbrvX7H/ThVKbbbZZklcLr62trXA1AAAAAKyNjo6ObL/99t0Zz2t504VSK5bs1dbWCqUAAAAANlCvty2Tjc4BAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKF2/ShcAANCXdHZ2prW1Ne3t7amvr09TU1NqamoqXRYAQOnMlAIAKElLS0saGhoyfvz4TJo0KePHj09DQ0NaWloqXRoAQOmEUgAAJWhpacnEiRPT2NiYtra2LFmyJG1tbWlsbMzEiRMFUwBAn1NVFEVR6SJW1tHRkbq6uixevDi1tbWVLgcA4A3r7OxMQ0NDGhsbc/3116e6+i/fC3Z1daW5uTlz5szJ3LlzLeUDADZ4a5rtmCkFANDLWltbM3/+/EydOrVHIJUk1dXVmTJlSubNm5fW1tYKVQgAUD6hFABAL2tvb0+SjBkzZrX9K9pXjAMA6AuEUgAAvay+vj5JMmfOnNX2r2hfMQ4AoC8QSgEA9LKmpqaMHDky559/frq6unr0dXV1Zdq0aRk1alSampoqVCEAQPmEUgAAvaympiYzZszIrFmz0tzc3OPqe83NzZk1a1amT59uk3MAoE/pV+kCAAD6ggkTJmTmzJmZPHlyxo4d290+atSozJw5MxMmTKhgdQAA5asqiqKodBErW9PLBgIAbIg6OzvT2tqa9vb21NfXp6mpyQwpAGCjsqbZjplSAAAlqqmpybhx4ypdBgBAxdlTCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSCaUAAAAAKJ1QCgAAAIDSrVUo1dnZmbPOOiujRo3KoEGDssMOO+RLX/pSiqLoHlMURb7whS+kvr4+gwYNyn777Ze5c+eu98IBAAAA2HCtVSh1wQUX5OKLL863vvWtPPTQQ7ngggvyla98Jd/85je7x3zlK1/Jv//7v+eSSy7J3XffncGDB+eAAw7I0qVL13vxAAAAAGyYqoqVpzm9jkMOOSTDhg3Lf/7nf3a3HX744Rk0aFCuvPLKFEWRbbbZJpMnT87nPve5JMnixYszbNiwXHbZZTnyyCNf9zk6OjpSV1eXxYsXp7a2dh1eEgAAAACVsqbZzlrNlBo7dmxuueWWPProo0mS++67L3fccUcOOuigJMm8efPyzDPPZL/99us+pq6uLnvttVfa2tpWe85ly5alo6Ojxw0AAACAjVu/tRl85plnpqOjI6NHj05NTU06Ozvz5S9/OR/96EeTJM8880ySZNiwYT2OGzZsWHffX5s2bVrOPffcdakdAAAAgA3UWs2U+sEPfpDvf//7ueqqq/KrX/0ql19+eaZPn57LL798nQuYMmVKFi9e3H178skn1/lcAAAAAGwY1mqm1BlnnJEzzzyze2+oxsbGPPHEE5k2bVqOPfbYDB8+PEmyYMGC1NfXdx+3YMGC7Lbbbqs954ABAzJgwIB1LB8AAACADdFazZR68cUXU13d85Campp0dXUlSUaNGpXhw4fnlltu6e7v6OjI3Xffnb333ns9lAsAAADAxmCtZkodeuih+fKXv5y3vvWt2WWXXfLrX/86X/va1/Lxj388SVJVVZXPfvazOe+887Ljjjtm1KhROeuss7LNNtukubm5N+oHAAAAYAO0VqHUN7/5zZx11ln59Kc/nYULF2abbbbJpz71qXzhC1/oHvPP//zPeeGFF3LCCSfkueeey3vf+97cdNNNGThw4HovHgAAAIANU1VRFEWli1hZR0dH6urqsnjx4tTW1la6HAAAAADWwppmO2u1pxQAAAAArA9CKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABK16/SBQAA9CWdnZ1pbW1Ne3t76uvr09TUlJqamkqXBQBQOjOlAABK0tLSkoaGhowfPz6TJk3K+PHj09DQkJaWlkqXBgBQOqEUAEAJWlpaMnHixDQ2NqatrS1LlixJW1tbGhsbM3HiRMEUANDnVBVFUVS6iJV1dHSkrq4uixcvTm1tbaXLAQB4wzo7O9PQ0JDGxsZcf/31qa7+y/eCXV1daW5uzpw5czJ37lxL+QCADd6aZjtmSgEA9LLW1tbMnz8/U6dO7RFIJUl1dXWmTJmSefPmpbW1tUIVAgCUTygFANDL2tvbkyRjxoxZbf+K9hXjAAD6AqEUAEAvq6+vT5LMmTNntf0r2leMAwDoC4RSAAC9rKmpKSNHjsz555+frq6uHn1dXV2ZNm1aRo0alaampgpVCABQPqEUAEAvq6mpyYwZMzJr1qw0Nzf3uPpec3NzZs2alenTp9vkHADoU/pVugAAgL5gwoQJmTlzZiZPnpyxY8d2t48aNSozZ87MhAkTKlgdAED5qoqiKCpdxMrW9LKBAAAbos7OzrS2tqa9vT319fVpamoyQwoA2KisabZjphQAQIlqamoybty4SpcBAFBx9pQCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABK16/SBQAA9CWdnZ1pbW1Ne3t76uvr09TUlJqamkqXBQBQOjOlAABK0tLSkoaGhowfPz6TJk3K+PHj09DQkJaWlkqXBgBQOqEUAEAJWlpaMnHixDQ2NqatrS1LlixJW1tbGhsbM3HiRMEUANDnVBVFUVS6iJV1dHSkrq4uixcvTm1tbaXLAQB4wzo7O9PQ0JDGxsZcf/31qa7+y/eCXV1daW5uzpw5czJ37lxL+QCADd6aZjtmSgEA9LLW1tbMnz8/U6dO7RFIJUl1dXWmTJmSefPmpbW1tUIVAgCUTygFANDL2tvbkyRjxoxZbf+K9hXjAAD6AqEUAEAvq6+vT5LMmTNntf0r2leMAwDoC4RSAAC9rKmpKSNHjsz555+frq6uHn1dXV2ZNm1aRo0alaampgpVCABQPqEUAEAvq6mpyYwZMzJr1qw0Nzf3uPpec3NzZs2alenTp9vkHADoU/pVugAAgL5gwoQJmTlzZiZPnpyxY8d2t48aNSozZ87MhAkTKlgdAED5qoqiKCpdxMrW9LKBAAAbos7OzrS2tqa9vT319fVpamoyQwoA2KisabZjphQAQIlqamoybty4SpcBAFBx9pQCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKJ5QCAAAAoHRCKQAAAABKt9ah1FNPPZWjjz46W265ZQYNGpTGxsb8v//3/7r7i6LIF77whdTX12fQoEHZb7/9Mnfu3PVaNAAAAAAbtrUKpf785z/nPe95TzbZZJPceOONefDBBzNjxoy85S1v6R7zla98Jf/+7/+eSy65JHfffXcGDx6cAw44IEuXLl3vxQMAAACwYaoqiqJY08Fnnnlm7rzzzrS2tq62vyiKbLPNNpk8eXI+97nPJUkWL16cYcOG5bLLLsuRRx75us/R0dGRurq6LF68OLW1tWtaGgAAAABvAmua7azVTKn//d//zTvf+c78wz/8Q7beeuvsvvvu+c53vtPdP2/evDzzzDPZb7/9utvq6uqy1157pa2tbbXnXLZsWTo6OnrcAAAAANi4rVUo9fjjj+fiiy/OjjvumJ/85Cf5p3/6p3zmM5/J5ZdfniR55plnkiTDhg3rcdywYcO6+/7atGnTUldX133bfvvt1+V1AAAAALABWatQqqurK+94xzty/vnnZ/fdd88JJ5yQf/zHf8wll1yyzgVMmTIlixcv7r49+eST63wuAAAAADYMaxVK1dfXZ+edd+7RttNOO+X3v/99kmT48OFJkgULFvQYs2DBgu6+vzZgwIDU1tb2uAEAAACwcVurUOo973lPHnnkkR5tjz76aEaMGJEkGTVqVIYPH55bbrmlu7+joyN333139t577/VQLgAAAAAbg35rM/i0007L2LFjc/755+eII47IPffck0svvTSXXnppkqSqqiqf/exnc95552XHHXfMqFGjctZZZ2WbbbZJc3Nzb9QPAAAAwAZorUKpPffcM//zP/+TKVOm5Itf/GJGjRqVr3/96/noRz/aPeaf//mf88ILL+SEE07Ic889l/e+97256aabMnDgwPVePAAAAAAbpqqiKIpKF7Gyjo6O1NXVZfHixfaXAgAAANjArGm2s1Z7SgEAAADA+iCUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0/SpdAABAX9LZ2ZnW1ta0t7envr4+TU1NqampqXRZAAClM1MKAKAkLS0taWhoyPjx4zNp0qSMHz8+DQ0NaWlpqXRpAAClE0oBAJSgpaUlEydOTGNjY9ra2rJkyZK0tbWlsbExEydOFEwBAH1OVVEURaWLWFlHR0fq6uqyePHi1NbWVrocAIA3rLOzMw0NDWlsbMz111+f6uq/fC/Y1dWV5ubmzJkzJ3PnzrWUDwDY4K1ptmOmFABAL2ttbc38+fMzderUHoFUklRXV2fKlCmZN29eWltbK1QhAED5hFIAAL2svb09STJmzJjV9q9oXzEOAKAvEEoBAPSy+vr6JMmcOXNW27+ifcU4AIC+QCgFANDLmpqaMnLkyJx//vnp6urq0dfV1ZVp06Zl1KhRaWpqqlCFAADlE0oBAPSympqazJgxI7NmzUpzc3OPq+81Nzdn1qxZmT59uk3OAYA+pV+lCwAA6AsmTJiQmTNnZvLkyRk7dmx3+6hRozJz5sxMmDChgtUBAJSvqiiKotJFrGxNLxsIALAh6uzsTGtra9rb21NfX5+mpiYzpACAjcqaZjtmSgEAlKimpibjxo2rdBkAABVnTykAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAAStev0gUAAPQlnZ2daW1tTXt7e+rr69PU1JSamppKlwUAUDozpQAAStLS0pKGhoaMHz8+kyZNyvjx49PQ0JCWlpZKlwYAUDqhFABACVpaWjJx4sQ0Njamra0tS5YsSVtbWxobGzNx4kTBFADQ51QVRVFUuoiVdXR0pK6uLosXL05tbW2lywEAeMM6OzvT0NCQxsbGXH/99amu/sv3gl1dXWlubs6cOXMyd+5cS/kAgA3emmY7ZkoBAPSy1tbWzJ8/P1OnTu0RSCVJdXV1pkyZknnz5qW1tbVCFQIAlE8oBQDQy9rb25MkY8aMWW3/ivYV4wAA+gKhFABAL6uvr0+SzJkzZ7X9K9pXjAMA6AuEUgAAvaypqSkjR47M+eefn66urh59XV1dmTZtWkaNGpWmpqYKVQgAUD6hFABAL6upqcmMGTMya9asNDc397j6XnNzc2bNmpXp06fb5BwA6FP6VboAAIC+YMKECZk5c2YmT56csWPHdrePGjUqM2fOzIQJEypYHQBA+aqKoigqXcTK1vSygQAAG6LOzs60tramvb099fX1aWpqMkMKANiorGm2Y6YUAECJampqMm7cuEqXAQBQcfaUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAASieUAgAAAKB0QikAAAAAStev0gUAAPQlnZ2daW1tTXt7e+rr69PU1JSamppKlwUAUDozpQAAStLS0pKGhoaMHz8+kyZNyvjx49PQ0JCWlpZKlwYAUDqhFABACVpaWjJx4sQ0Njamra0tS5YsSVtbWxobGzNx4kTBFADQ51QVRVFUuoiVdXR0pK6uLosXL05tbW2lywEAeMM6OzvT0NCQxsbGXH/99amu/sv3gl1dXWlubs6cOXMyd+5cS/kAgA3emmY7ZkoBAPSy1tbWzJ8/P1OnTu0RSCVJdXV1pkyZknnz5qW1tbVCFQIAlE8oBQDQy9rb25MkY8aMWW3/ivYV4wAA+gKhFABAL6uvr0+SzJkzZ7X9K9pXjAMA6AuEUgAAvaypqSkjR47M+eefn66urh59XV1dmTZtWkaNGpWmpqYKVQgAUL43FEr927/9W6qqqvLZz362u23p0qU56aSTsuWWW2bIkCE5/PDDs2DBgjdaJwDABqumpiYzZszIrFmz0tzc3OPqe83NzZk1a1amT59uk3MAoE9Z51Dql7/8Zf7jP/4jf//3f9+j/bTTTsuPfvSjXHfddbntttvy9NNPZ8KECW+4UACADdmECRMyc+bM3H///Rk7dmxqa2szduzYzJkzJzNnzvT3EgDQ51QVRVGs7UHPP/983vGOd+Siiy7Keeedl9122y1f//rXs3jx4gwdOjRXXXVVJk6cmCR5+OGHs9NOO6WtrS3vfve7X/fca3rZQACADVFnZ2daW1vT3t6e+vr6NDU1mSEFAGxU1jTbWaeZUieddFIOPvjg7Lfffj3a77333rzyyis92kePHp23vvWtaWtrW5enAgDYqNTU1GTcuHE56qijMm7cOIEUANBn9VvbA6655pr86le/yi9/+ctV+p555pn0798/m2++eY/2YcOG5Zlnnlnt+ZYtW5Zly5Z1P+7o6FjbkgAAAADYwKzVTKknn3wyp556ar7//e9n4MCB66WAadOmpa6urvu2/fbbr5fzAgAAAPDmtVah1L333puFCxfmHe94R/r165d+/frltttuy7//+7+nX79+GTZsWF5++eU899xzPY5bsGBBhg8fvtpzTpkyJYsXL+6+Pfnkk+v8YgAAAADYMKzV8r199903999/f4+2448/PqNHj86//Mu/ZPvtt88mm2ySW265JYcffniS5JFHHsnvf//77L333qs954ABAzJgwIB1LB8AAACADdFahVKbbbZZxowZ06Nt8ODB2XLLLbvbP/GJT+T000/PFltskdra2pxyyinZe++91+jKewAAGztX3wMAeNVab3T+ei688MJUV1fn8MMPz7Jly3LAAQfkoosuWt9PAwCwwWlpacnkyZMzf/787raRI0dmxowZ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LxBKAQD0si222CJJ8sILL6SzszO333572tvbU19fn/e85z156aWXeowDAOgLhFIAAL1s+PDhSZLf/va3qa2tXe3V91YeBwDQF1S//hAAAN6Ibbfdtvv+yy+/3KPvlVdeWe04AICNnVAKAKCXjR07Nv369UtdXV223377Hn3bb7996urq0q9fv4wdO7ZCFQIAlM/yPQCAXnbXXXdl+fLl6ejoSFNTU84444zuq+/ddNNN+fGPf5yiKHLXXXdl3LhxlS4XAKAUQikAgF7W3t6eJLniiivy+c9/PrNmzeruGzlyZK644oocffTR3eMAAPoCy/cAAHpZfX19kuTJJ59MVVXVKv2///3ve4wDAOgLhFIAAL2sqakpQ4cOzZQpUzJmzJi0tbVlyZIlaWtry5gxYzJ16tRsvfXWaWpqqnSpAAClsXwPAKAEK2ZIFUWRe++9Nw8++GBeeumlFEVR4coAACpDKAUA0MtaW1uzcOHCfPSjH821116bH//4x919/fr1y6RJk3LVVVeltbXVRucAQJ8hlAIA6GUrNjC/6qqrcvDBB+eggw7qvvrejTfemKuvvrrHOACAvkAoBQDQy7beeuskyXve857ccMMNqa7+y7aeJ554YvbZZ5/ccccd3eMAAPoCG50DAFSYfaUAgL5IKAUA0MsWLlyYJLnjjjvS3Nzc4+p7zc3NufPOO3uMAwDoC4RSAAC9rL6+Pkkybdq03H///Rk7dmxqa2szduzYzJkzJ+eff36PcQAAfYE9pQAAellTU1NGjhyZu+66Kw899FAuueSS/O53v8sOO+yQE088MUcccURGjRqVpqamSpcKAFAaoRQAQC+rqanJjBkzMnHixGyxxRZ56aWXuvumTp2apUuXZubMmampqalglQAA5bJ8DwCgJKvb0LyqqspG5wBAn1RVvMn+Curo6EhdXV0WL16c2traSpcDAPCGdXZ2pqGhIY2NjfnBD36w2uV7c+bMydy5c82WAgA2eGua7azVTKlp06Zlzz33zGabbZatt946zc3NeeSRR3qMWbp0aU466aRsueWWGTJkSA4//PAsWLBg3V4FAMBGoLW1NfPnz8/YsWOz00475bTTTsu3vvWtnHbaadlpp52y9957Z968eWltba10qQAApVmrUOq2227LSSedlF/84he5+eab88orr+QDH/hAXnjhhe4xp512Wn70ox/luuuuy2233Zann346EyZMWO+FAwBsKNrb25MkU6ZMSWNjY9ra2rJkyZK0tbWlsbExU6dO7TEOAKAveEPL9xYtWpStt946t912W973vvdl8eLFGTp0aK666qpMnDgxSfLwww9np512SltbW9797ne/7jkt3wMANja33HJL9ttvv7z3ve/Nz3/+89x5551pb29PfX193vOe92T8+PG5884787Of/Sz77rtvpcsFAHhD1jTbeUNX31u8eHGSZIsttkiS3HvvvXnllVey3377dY8ZPXp03vrWt65xKAUAsLH64x//mB133DFPPPFEd9uIESMyaNCgClYFAFAZ63z1va6urnz2s5/Ne97znowZMyZJ8swzz6R///7ZfPPNe4wdNmxYnnnmmdWeZ9myZeno6OhxAwDYmCxcuDBJ8tBDD2Xp0qW59NJL8/TTT+fSSy/N0qVL8/DDD/cYBwDQF6zzTKmTTjopc+bMyR133PGGCpg2bVrOPffcN3QOAIA3s6233jrJqzPIly5dmhNOOKG7b9SoURk9enQefvjh7nEAAH3BOs2UOvnkkzNr1qzceuut2W677brbhw8fnpdffjnPPfdcj/ELFizI8OHDV3uuKVOmZPHixd23J598cl1KAgB409tqq63y0EMP5cILL8zJJ5+cCy+8MA8++GC22mqrSpcGAFC6tZopVRRFTjnllPzP//xPZs+enVGjRvXo32OPPbLJJpvklltuyeGHH54keeSRR/L73/8+e++992rPOWDAgAwYMGAdywcAePNbsSzvjjvuyBZbbJGXXnqpu2/q1Kndjy3fAwD6krUKpU466aRcddVVueGGG7LZZpt17xNVV1eXQYMGpa6uLp/4xCdy+umnZ4sttkhtbW1OOeWU7L333jY5BwD6rPr6+u77S5cu7dG38uOVxwEAbOyqiqIo1nhwVdVq27/3ve/luOOOS/LqH1aTJ0/O1VdfnWXLluWAAw7IRRdd9JrL9/7aml42EABgQ/Hyyy9n0KBB6erqygc/+MEcfPDBGTRoUF566aX8+Mc/zv/93/+luro6L730Uvr371/pcgEA3pA1zXbWevne6xk4cGC+/e1v59vf/vbanBoAYKPV2tqarq6uJK9+yVcURfdtxZd+XV1daW1tzb777lvJUgEASrPOV98DAGDNzJ49O0lyxBFH5Ic//GF+/OMfd/f169cvRxxxRH7wgx9k9uzZQikAoM9Yp6vvAQCw9n7wgx+ssjxvk002yQ9+8IMKVQQAUDlCKQCAXtbU1NR9//3vf3/a2tqyZMmStLW15f3vf/9qxwEAbOyEUgAAvWzli8W81p5Sfz0OAGBjZ08pAIBedvvtt3ffv+WWWzJr1qzux5tuummPcfvvv3+ptQEAVIqZUgAAJTnnnHMydOjQHm1Dhw7N2WefXaGKAAAqRygFANDLxo0blyS59tprV7tE79prr+0xDgCgLxBKAQD0snHjxqW2tjYPPfRQli5dmksvvTRPP/10Lr300ixdujQPP/xwamtrhVIAQJ9iTykAgBIMHDgwHR0d6ejoyAknnNDdvmJPqYEDB1aqNACAijBTCgCgl7W2tmbhwoWZNm1att566x59W2+9dc4///wsXLgwra2tFaoQAKB8QikAgF7W3t6eJDn55JPz0EMP5aSTTsoHPvCBnHTSSXnwwQdz8skn9xgHANAXWL4HANDL6uvrkyQnnnhirrnmmnR2diZJfvrTn+aSSy7JRz7ykR7jAAD6gqqiKIpKF7Gyjo6O1NXVZfHixamtra10OQAAb1hnZ2e22GKLdHR0pLq6Ol1dXd19Kx7X1tbmT3/6U2pqaipYKQDAG7em2Y6ZUgAAvayzszNLlixJkmy11VY55phj8ra3vS2PP/54rrjiiixcuDBLlixJZ2enUAoA6DOEUgAAvexb3/pWiqLI0KFDs2jRosyYMaO7r6qqKltttVWeffbZfOtb38rpp59ewUoBAMpjo3MAgF624qp6ixYtWm3/s88+22McAEBfIJQCAOhlgwcP7r6/9dZb5zvf+U7a29vzne98J1tvvfVqxwEAbOyEUgAAvWyXXXbpvv/oo4/m+eefz5e//OU8//zzefTRR1c7DgBgY2dPKQCAXvbAAw9036+rq+vRd9ppp612HADAxs5MKQCAXvbCCy+s13EAABsDoRQAQC/be++91+s4AICNgVAKAKCXLV++fL2OAwDYGAilAAB62dVXX71exwEAbAyEUgAAvey5555br+MAADYGQikAgF42dOjQ7vs1NTU9+lZ+vPI4AICNnVAKAKCXvf3tb+++39nZ2aNv5ccrjwMA2NgJpQAAell19Zr9ybWm4wAANgb+8gEAAACgdEIpAIBetvIMqKqqqh59Kz82UwoA6Ev85QMA0Mu233777vsDBgzo0bfy45XHAQBs7IRSAAC9bKuttuq+v2zZsh59Kz9eeRwAwMZOKAUA0MuGDx/efb8oih59Kz9eeRwAwMZOKAUA0MvWNGwSSgEAfYlQCgCgl73yyivrdRwAwMagX6ULAADY2F155ZXd94cOHZpddtklXV1dqa6uzgMPPJBFixZ1jzvwwAMrVSYAQKmEUgAAvWz+/PlJkiFDhmTRokWZPXt2j/4hQ4bk+eef7x4HANAXWL4HANDLBg0alCR5/vnnU1VV1aOvqqoqzz//fI9xAAB9gVAKAKCX7b777t33/9bV91YeBwCwsRNKAQD0siVLlqzXcQAAGwOhFABAL3v66afX6zgAgI2BUAoAoJe9+OKL63UcAMDGQCgFANDLhg4dul7HAQBsDIRSAAC9bMSIEet1HADAxkAoBQDQy97ylres13EAABsDoRQAQC/71a9+tV7HAQBsDIRSAAC97Be/+MV6HQcAsDEQSgEA9LIlS5as13EAABuDfpUuAABgY1dd/ZfvAQ888MAccsghGTRoUF566aXMmjUrN9100yrjAAA2dkIpAIBetnz58u77P/3pT7tDqKRnELXyOACAjZ1QCgDYKLz44ot5+OGHK13Gaq0cPHV1dfXoW/lxdXX1m3az89GjR2fTTTetdBkAwEZEKAUAbBQefvjh7LHHHpUu4w3505/+9KZ9Dffee2/e8Y53VLoMAGAjIpQCADYKo0ePzr333lvpMlbr+eefzz777PO642677bYMGTKkhIrW3ujRoytdAgCwkRFKAQAbhU033fRNPZNnzz33zC9/+cu/2f++972vxIoAACrLJV4AAEpwzz33ZM8991xt35577pl77rmn5IoAACpLKAUAUJJ77rknS5Ys6V7Kt88++2TJkiUCKQCgTxJKAQCUaMiQIfna176WJPna1772pt1DCgCgtwmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAAChdv0oXAAC8uc2dOzdLliypdBkblYceeqjHf1k/Nttss+y4446VLgMAWENCKQDgNc2dOzdvf/vbK13GRuvoo4+udAkbnUcffVQwBQAbCKEUAPCaVsyQuvLKK7PTTjtVuJqNx0svvZT58+dn5MiRGTRoUKXL2Sg89NBDOfroo83qA4ANiFAKAHhdO+20U97xjndUuoyNynve855KlwAAUFE2OgcAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdL0WSn3729/OyJEjM3DgwOy111655557euupAAAAANjA9Eoode211+b000/P2WefnV/96lfZddddc8ABB2ThwoW98XQAAAAAbGD69cZJv/a1r+Uf//Efc/zxxydJLrnkkvz4xz/Of/3Xf+XMM8/sjacEAHrJ8CFVGfTco8nTVv3z5jXouUczfEhVpcsAANbCeg+lXn755dx7772ZMmVKd1t1dXX222+/tLW1re+nAwB60YsvvphP7dE/O93+qeT2SlcDr22nJJ/ao3+lywAA1sJ6D6WeffbZdHZ2ZtiwYT3ahw0blocffniV8cuWLcuyZcu6H3d0dKzvkgCAdfTwww/nP+59Of/7yCuVLgVeV/vzRT662WaVLgMAWEO9snxvbUybNi3nnntupcsAAFajubk5STJ69OhsuummlS3mdbz00kuZP39+pcvYaI0cOTKDBg2qdBl/02abbZYdd9yx0mUAAGuoqiiKYn2e8OWXX86mm26amTNndv8hmyTHHntsnnvuudxwww09xq9uptT222+fxYsXp7a2dn2WBgAAAEAv6+joSF1d3etmO+t9x9L+/ftnjz32yC233NLd1tXVlVtuuSV77733KuMHDBiQ2traHjcAAAAANm69snzv9NNPz7HHHpt3vvOdede73pWvf/3reeGFF7qvxgcAAABA39YrodRHPvKRLFq0KF/4whfyzDPPZLfddstNN920yubnAAAAAPRN631PqTdqTdcdAgAAAPDmU7E9pQAAAADg9QilAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0gmlAAAAACidUAoAAACA0vWrdAF/rSiKJElHR0eFKwEAAABgba3IdFZkPK/lTRdKLVmyJEmy/fbbV7gSAAAAANbVkiVLUldX95r9VcXrxVYl6+rqytNPP53NNtssVVVVlS4HAGC96+joyPbbb58nn3wytbW1lS4HAGC9KooiS5YsyTbbbJPq6tfeOepNF0oBAGzsOjo6UldXl8WLFwulAIA+y0bnAAAAAJROKAUAAABA6YRSAAAlGzBgQM4+++wMGDCg0qUAAFSMPaUAAAAAKJ2ZUgAAAACUTigFAAAAQOmEUgAAAACUTigFAAAAQOmEUgAAAACUTigFALAeLFu2LEnS1dVV4UoAADYMQikAgDfo/vvvz9ve9rbccccdqa6uFkwBAKwBoRQAwBvQ1dWVCy64IO3t7TnwwANz6623CqYAANZAv0oXAACwIauurs4BBxyQJ598Mtttt13233//3HTTTdlvv/3S1dWV6mrfAQIArI6/kgAA1lJRFD3+O27cuDz66KMZPXp0zjjjjBx00EH5+c9/bsYUAMDfIJQCAFhLKzY1r6qqSpJsv/32Oeecc/LrX/86H/nIR3LMMcfkgAMOsJQPAOBvEEoBAKyFBx54IG9/+9tz4YUX5mc/+1l3+9///d/niSeeSE1NTS6++OIcffTR+cAHPpDZs2cLpgAAVkMoBQCwhl555ZVMnz49f/jDH3LNNdfkm9/8Zvbff//8+te/zrvf/e4cdNBBOf3001NTU5MLLrggH//4x/P+978/ra2t9pYCAPgrNjoHAFhDNTU1Of300/Pcc8/ltttuy9e//vVccskl+ed//uc8//zz2XfffbNkyZLMnTs3O+20U84666wMGDAgW221VaVLBwB406kqVuzQCQDAaj366KN54IEHcthhh6Wrqytz587Ncccdl2XLluVnP/tZlixZkquvvjoXXXRR/vCHP2T27Nl53/velyTp7OxMTU1NhV8BAMCbj1AKAOBvKIoiX/rSl3LOOefkmmuuyRFHHJGiKDJ37twcffTRWbJkSWbPnp1hw4blkUceySuvvJIxY8akKIrujdABAFiVUAoA4HV0dHTk3/7t33LBBRfk+9//fo488sjuYOpjH/tYFi1alLvuuivDhg2rdKkAABsMO24CALyO2tra/Mu//EvOOOOMfPSjH83VV1+dqqqq7LjjjrniiisybNiwjBs3Lu3t7ZUuFQBgg2GmFADAX2lvb8+9996bqqqq7LLLLhk5cmSSV2dMnX/++fnqV7+aK6+8MkcddVSKosjvfve7fOhDH8qgQYNyzz332EMKAGANuPoeAMBK7r///hx22GEZMmRIfvvb32b//ffPv/zLv+T9739/amtr86//+q9JkqOPPjpJctRRR2WHHXbIj370o9TU1AikAADWkFAKAOD/99vf/jZ77713Tj311Jx66qlpa2vLkUcemTFjxuT9739/kmTIkCGZOnVqkuT444/PsmXLctxxx2WHHXaoZOkAABscy/cAAJI89thj2X333XPUUUfl0ksv7W7feeedM2jQoNx+++0ZPHhwd3tHR0emTJmSa665JvPmzctmm23mansAAGvBRucAAHk1lHrhhRdSV1eXxx57LEkybdq0PPzww+nXr18+9alP5ctf/nKuuuqqJMngwYPz7W9/Ow899FBqa2sFUgAAa8lMKQCgT1u0aFGeeOKJbLvttrn//vvz8Y9/PMcee2yWLVuW733ve7nooovy1re+NY8++mhuvvnm3HLLLRk4cGAOPfTQfOMb3xBGAQCsI6EUANBnPfjggznhhBOy6aabZsiQIWlpacl///d/54wzzsif//znXHrppTnuuOO6x7/88stZtGhRLr300hxzzDFpaGioXPEAABs4oRQA0Cc98MADee9735tPf/rT+dSnPpVtttkm/fq9eg2YH/7whzn55JMzadKknHjiidlxxx2TJMuXL+8eAwDAGyOUAgD6nD/96U/58Ic/nHe84x35xje+0d2+cuh05ZVX5swzz8zhhx+eU045xawoAID1zFd9AECf88wzz6S9vT2HH354urq6Ul396rVf+vXrlxXf1x199NGpqqrK1KlTs2TJkvzrv/5r3va2t1WybACAjYqr7wEAfc5vfvObPPHEE2lqakp1dXW6urq6+6qqqlJVVZUXX3wx48aNyze+8Y384he/yODBgytYMQDAxkcoBQD0OSNHjky/fv3S0tKSJN0zpVb23e9+N8cff3yam5vT1taWYcOGlV0mAMBGTSgFAPQ5I0aMSG1tbf77v/87TzzxRHf7yltt/v73v89uu+2WoihSW1tbiTIBADZqQikAoM/Zdtttc/HFF+cnP/lJzjrrrDz44INJ0r1sb+rUqZk5c2Y++clPdi/nAwBg/XL1PQCgT+rq6sp3vvOdnHzyyWloaMjee++dgQMH5qmnnsovfvGL3HTTTdl9990rXSYAwEZLKAUA9Gn33HNPvvrVr+axxx7LZpttlrFjx+YTn/hEdtxxx0qXBgCwURNKAQB9XmdnZ2pqaipdBgBAn2JPKQCgz1v56nu+rwMAKIeZUgAAAACUzkwpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEonlAIAAACgdEIpAAAAAEr3/wFnB919Z4GaCQAAAABJRU5ErkJggg==",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "# 畫出這些欄位的 boxplot\n",
+ "# CRIM: 有非常多的點遠高於上界,表示有些地區的犯罪率極高。每人平均的城鎮犯罪率(per capita crime rate by town)\n",
+ "import pandas as pd\n",
+ "import matplotlib.pyplot as plt\n",
+ "from sklearn.datasets import fetch_openml\n",
+ "boston = fetch_openml(name='boston', version=1, as_frame=True)\n",
+ "df = boston.frame\n",
+ "#df.head(5)\n",
+ "#print(df[\"CRIM\"].values,\"type:\",type(df[\"CRIM\"].values))\n",
+ "plt.figure(figsize=(max(12, len(numeric_cols) * 0.8), 6))\n",
+ "plt.boxplot(df[\"CRIM\"].values, tick_labels=[\"CRIM\"])\n",
+ "\n",
+ "plt.xticks(rotation=45, ha=\"right\")\n",
+ "plt.title(\"Boston Housing Dataset – Box Plots [CRIM]\")\n",
+ "plt.tight_layout()\n",
+ "plt.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 20,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 496
+ },
+ "executionInfo": {
+ "elapsed": 15,
+ "status": "ok",
+ "timestamp": 1759739438598,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "mgjjj1EG5bBS",
+ "outputId": "e5487e9a-c071-48b7-f06a-2175420e4230"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "lower_bound: -5.31051125 upper_bound: 9.06963875\n",
+ "CRIM 欄位的異常值數量: 66\n",
+ "outliers data:\n",
+ "\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CRIM | \n",
+ " ZN | \n",
+ " INDUS | \n",
+ " CHAS | \n",
+ " NOX | \n",
+ " RM | \n",
+ " AGE | \n",
+ " DIS | \n",
+ " RAD | \n",
+ " TAX | \n",
+ " PTRATIO | \n",
+ " B | \n",
+ " LSTAT | \n",
+ " MEDV | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 367 | \n",
+ " 13.5222 | \n",
+ " 0.0 | \n",
+ " 18.1 | \n",
+ " 0 | \n",
+ " 0.631 | \n",
+ " 3.863 | \n",
+ " 100.0 | \n",
+ " 1.5106 | \n",
+ " 24 | \n",
+ " 666.0 | \n",
+ " 20.2 | \n",
+ " 131.42 | \n",
+ " 13.33 | \n",
+ " 23.1 | \n",
+ "
\n",
+ " \n",
+ " | 371 | \n",
+ " 9.2323 | \n",
+ " 0.0 | \n",
+ " 18.1 | \n",
+ " 0 | \n",
+ " 0.631 | \n",
+ " 6.216 | \n",
+ " 100.0 | \n",
+ " 1.1691 | \n",
+ " 24 | \n",
+ " 666.0 | \n",
+ " 20.2 | \n",
+ " 366.15 | \n",
+ " 9.53 | \n",
+ " 50.0 | \n",
+ "
\n",
+ " \n",
+ " | 373 | \n",
+ " 11.1081 | \n",
+ " 0.0 | \n",
+ " 18.1 | \n",
+ " 0 | \n",
+ " 0.668 | \n",
+ " 4.906 | \n",
+ " 100.0 | \n",
+ " 1.1742 | \n",
+ " 24 | \n",
+ " 666.0 | \n",
+ " 20.2 | \n",
+ " 396.90 | \n",
+ " 34.77 | \n",
+ " 13.8 | \n",
+ "
\n",
+ " \n",
+ " | 374 | \n",
+ " 18.4982 | \n",
+ " 0.0 | \n",
+ " 18.1 | \n",
+ " 0 | \n",
+ " 0.668 | \n",
+ " 4.138 | \n",
+ " 100.0 | \n",
+ " 1.1370 | \n",
+ " 24 | \n",
+ " 666.0 | \n",
+ " 20.2 | \n",
+ " 396.90 | \n",
+ " 37.97 | \n",
+ " 13.8 | \n",
+ "
\n",
+ " \n",
+ " | 375 | \n",
+ " 19.6091 | \n",
+ " 0.0 | \n",
+ " 18.1 | \n",
+ " 0 | \n",
+ " 0.671 | \n",
+ " 7.313 | \n",
+ " 97.9 | \n",
+ " 1.3163 | \n",
+ " 24 | \n",
+ " 666.0 | \n",
+ " 20.2 | \n",
+ " 396.90 | \n",
+ " 13.44 | \n",
+ " 15.0 | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 468 | \n",
+ " 15.5757 | \n",
+ " 0.0 | \n",
+ " 18.1 | \n",
+ " 0 | \n",
+ " 0.580 | \n",
+ " 5.926 | \n",
+ " 71.0 | \n",
+ " 2.9084 | \n",
+ " 24 | \n",
+ " 666.0 | \n",
+ " 20.2 | \n",
+ " 368.74 | \n",
+ " 18.13 | \n",
+ " 19.1 | \n",
+ "
\n",
+ " \n",
+ " | 469 | \n",
+ " 13.0751 | \n",
+ " 0.0 | \n",
+ " 18.1 | \n",
+ " 0 | \n",
+ " 0.580 | \n",
+ " 5.713 | \n",
+ " 56.7 | \n",
+ " 2.8237 | \n",
+ " 24 | \n",
+ " 666.0 | \n",
+ " 20.2 | \n",
+ " 396.90 | \n",
+ " 14.76 | \n",
+ " 20.1 | \n",
+ "
\n",
+ " \n",
+ " | 477 | \n",
+ " 15.0234 | \n",
+ " 0.0 | \n",
+ " 18.1 | \n",
+ " 0 | \n",
+ " 0.614 | \n",
+ " 5.304 | \n",
+ " 97.3 | \n",
+ " 2.1007 | \n",
+ " 24 | \n",
+ " 666.0 | \n",
+ " 20.2 | \n",
+ " 349.48 | \n",
+ " 24.91 | \n",
+ " 12.0 | \n",
+ "
\n",
+ " \n",
+ " | 478 | \n",
+ " 10.2330 | \n",
+ " 0.0 | \n",
+ " 18.1 | \n",
+ " 0 | \n",
+ " 0.614 | \n",
+ " 6.185 | \n",
+ " 96.7 | \n",
+ " 2.1705 | \n",
+ " 24 | \n",
+ " 666.0 | \n",
+ " 20.2 | \n",
+ " 379.70 | \n",
+ " 18.03 | \n",
+ " 14.6 | \n",
+ "
\n",
+ " \n",
+ " | 479 | \n",
+ " 14.3337 | \n",
+ " 0.0 | \n",
+ " 18.1 | \n",
+ " 0 | \n",
+ " 0.614 | \n",
+ " 6.229 | \n",
+ " 88.0 | \n",
+ " 1.9512 | \n",
+ " 24 | \n",
+ " 666.0 | \n",
+ " 20.2 | \n",
+ " 383.32 | \n",
+ " 13.11 | \n",
+ " 21.4 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
66 rows × 14 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX \\\n",
+ "367 13.5222 0.0 18.1 0 0.631 3.863 100.0 1.5106 24 666.0 \n",
+ "371 9.2323 0.0 18.1 0 0.631 6.216 100.0 1.1691 24 666.0 \n",
+ "373 11.1081 0.0 18.1 0 0.668 4.906 100.0 1.1742 24 666.0 \n",
+ "374 18.4982 0.0 18.1 0 0.668 4.138 100.0 1.1370 24 666.0 \n",
+ "375 19.6091 0.0 18.1 0 0.671 7.313 97.9 1.3163 24 666.0 \n",
+ ".. ... ... ... ... ... ... ... ... .. ... \n",
+ "468 15.5757 0.0 18.1 0 0.580 5.926 71.0 2.9084 24 666.0 \n",
+ "469 13.0751 0.0 18.1 0 0.580 5.713 56.7 2.8237 24 666.0 \n",
+ "477 15.0234 0.0 18.1 0 0.614 5.304 97.3 2.1007 24 666.0 \n",
+ "478 10.2330 0.0 18.1 0 0.614 6.185 96.7 2.1705 24 666.0 \n",
+ "479 14.3337 0.0 18.1 0 0.614 6.229 88.0 1.9512 24 666.0 \n",
+ "\n",
+ " PTRATIO B LSTAT MEDV \n",
+ "367 20.2 131.42 13.33 23.1 \n",
+ "371 20.2 366.15 9.53 50.0 \n",
+ "373 20.2 396.90 34.77 13.8 \n",
+ "374 20.2 396.90 37.97 13.8 \n",
+ "375 20.2 396.90 13.44 15.0 \n",
+ ".. ... ... ... ... \n",
+ "468 20.2 368.74 18.13 19.1 \n",
+ "469 20.2 396.90 14.76 20.1 \n",
+ "477 20.2 349.48 24.91 12.0 \n",
+ "478 20.2 379.70 18.03 14.6 \n",
+ "479 20.2 383.32 13.11 21.4 \n",
+ "\n",
+ "[66 rows x 14 columns]"
+ ]
+ },
+ "execution_count": 20,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# 使用 IQR 方法偵測異常值 (以波士頓房價資料集的 'CRIM' 欄位為例)\n",
+ "# 首先使用 describe() 獲取四分位數\n",
+ "desc = df['CRIM'].describe()\n",
+ "Q1 = desc['25%']\n",
+ "Q3 = desc['75%']\n",
+ "IQR = Q3 - Q1\n",
+ "lower_bound = Q1 - 1.5 * IQR\n",
+ "upper_bound = Q3 + 1.5 * IQR\n",
+ "print(\"lower_bound:\",lower_bound,\"upper_bound:\",upper_bound)\n",
+ "# 找出異常值\n",
+ "outliers = df[(df['CRIM'] < lower_bound) | (df['CRIM'] > upper_bound)]\n",
+ "\n",
+ "print(\"CRIM 欄位的異常值數量:\", len(outliers))\n",
+ "print(\"outliers data:\\n\")\n",
+ "outliers"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "ho7jb66g4vCI"
+ },
+ "source": [
+ "# 課堂練習:處理異常值(接續波士頓房價資料集)\n",
+ "\n",
+ "1. 任務: 繼續使用波士頓房價資料集 (df),偵測其他欄位(例如:'TAX' 或 'B')的異常值。\n",
+ "2. 任務: 使用四分位距 (IQR) 方法,計算該欄位的異常值上下限。\n",
+ "3. 任務: 找出並列出該欄位中被判定為異常值的資料點數量\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 21,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "executionInfo": {
+ "elapsed": 44,
+ "status": "ok",
+ "timestamp": 1759739862777,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "8rOk-tX64vVc",
+ "outputId": "7f9e2837-2587-4ae5-823b-1d857228b6eb"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "RM 欄位的 IQR 上限: 7.730500000000001, 下限: 4.778499999999999\n",
+ "\n",
+ "RM 欄位的異常值數量: 30\n",
+ "\n",
+ "部分異常值資料點:\n",
+ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO \\\n",
+ "97 0.12083 0.0 2.89 0 0.445 8.069 76.0 3.4952 2 276.0 18.0 \n",
+ "98 0.08187 0.0 2.89 0 0.445 7.820 36.9 3.4952 2 276.0 18.0 \n",
+ "162 1.83377 0.0 19.58 1 0.605 7.802 98.2 2.0407 5 403.0 14.7 \n",
+ "163 1.51902 0.0 19.58 1 0.605 8.375 93.9 2.1620 5 403.0 14.7 \n",
+ "166 2.01019 0.0 19.58 0 0.605 7.929 96.2 2.0459 5 403.0 14.7 \n",
+ "\n",
+ " B LSTAT MEDV \n",
+ "97 396.90 4.21 38.7 \n",
+ "98 393.53 3.57 43.8 \n",
+ "162 389.61 1.92 50.0 \n",
+ "163 388.45 3.32 50.0 \n",
+ "166 369.30 3.70 50.0 \n"
+ ]
+ }
+ ],
+ "source": [
+ "# 任務 1 & 2\n",
+ "selected_column = 'RM' # 或其他欄位\n",
+ "col_desc = df[selected_column].describe()\n",
+ "Q1 = col_desc['25%']\n",
+ "Q3 = col_desc['75%']\n",
+ "IQR = Q3 - Q1\n",
+ "lower_bound = Q1 - 1.5 * IQR\n",
+ "upper_bound = Q3 + 1.5 * IQR\n",
+ "print(f\"{selected_column} 欄位的 IQR 上限: {upper_bound}, 下限: {lower_bound}\\n\")\n",
+ "\n",
+ "# 任務 3\n",
+ "outliers = df[(df[selected_column] < lower_bound) | (df[selected_column] > upper_bound)]\n",
+ "print(f\"{selected_column} 欄位的異常值數量: {len(outliers)}\\n\")\n",
+ "print(\"部分異常值資料點:\\n\", outliers.head())"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# 課堂範例: 針對所有欄位計算異常值"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 478
+ },
+ "executionInfo": {
+ "elapsed": 129,
+ "status": "ok",
+ "timestamp": 1759742659739,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "2ClLvXDvq_1l",
+ "outputId": "88719d4e-32b8-45db-b7f1-95baf449a97c"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Index(['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX',\n",
+ " 'PTRATIO', 'B', 'LSTAT', 'MEDV', 'target'],\n",
+ " dtype='object')\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CRIM | \n",
+ " ZN | \n",
+ " INDUS | \n",
+ " CHAS | \n",
+ " NOX | \n",
+ " RM | \n",
+ " AGE | \n",
+ " DIS | \n",
+ " RAD | \n",
+ " TAX | \n",
+ " ... | \n",
+ " RMoutlier | \n",
+ " AGEoutlier | \n",
+ " DISoutlier | \n",
+ " TAXoutlier | \n",
+ " PTRATIOoutlier | \n",
+ " Boutlier | \n",
+ " LSTAToutlier | \n",
+ " MEDVoutlier | \n",
+ " targetoutlier | \n",
+ " out_sum | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 0.00632 | \n",
+ " 18.0 | \n",
+ " 2.31 | \n",
+ " 0 | \n",
+ " 0.538 | \n",
+ " 6.575 | \n",
+ " 65.2 | \n",
+ " 4.0900 | \n",
+ " 1 | \n",
+ " 296.0 | \n",
+ " ... | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0.02731 | \n",
+ " 0.0 | \n",
+ " 7.07 | \n",
+ " 0 | \n",
+ " 0.469 | \n",
+ " 6.421 | \n",
+ " 78.9 | \n",
+ " 4.9671 | \n",
+ " 2 | \n",
+ " 242.0 | \n",
+ " ... | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 0.02729 | \n",
+ " 0.0 | \n",
+ " 7.07 | \n",
+ " 0 | \n",
+ " 0.469 | \n",
+ " 7.185 | \n",
+ " 61.1 | \n",
+ " 4.9671 | \n",
+ " 2 | \n",
+ " 242.0 | \n",
+ " ... | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 0.03237 | \n",
+ " 0.0 | \n",
+ " 2.18 | \n",
+ " 0 | \n",
+ " 0.458 | \n",
+ " 6.998 | \n",
+ " 45.8 | \n",
+ " 6.0622 | \n",
+ " 3 | \n",
+ " 222.0 | \n",
+ " ... | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 0.06905 | \n",
+ " 0.0 | \n",
+ " 2.18 | \n",
+ " 0 | \n",
+ " 0.458 | \n",
+ " 7.147 | \n",
+ " 54.2 | \n",
+ " 6.0622 | \n",
+ " 3 | \n",
+ " 222.0 | \n",
+ " ... | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 501 | \n",
+ " 0.06263 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.593 | \n",
+ " 69.1 | \n",
+ " 2.4786 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " ... | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 502 | \n",
+ " 0.04527 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.120 | \n",
+ " 76.7 | \n",
+ " 2.2875 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " ... | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 503 | \n",
+ " 0.06076 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.976 | \n",
+ " 91.0 | \n",
+ " 2.1675 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " ... | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 504 | \n",
+ " 0.10959 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.794 | \n",
+ " 89.3 | \n",
+ " 2.3889 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " ... | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 505 | \n",
+ " 0.04741 | \n",
+ " 0.0 | \n",
+ " 11.93 | \n",
+ " 0 | \n",
+ " 0.573 | \n",
+ " 6.030 | \n",
+ " 80.8 | \n",
+ " 2.5050 | \n",
+ " 1 | \n",
+ " 273.0 | \n",
+ " ... | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " False | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
288 rows × 29 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX ... \\\n",
+ "0 0.00632 18.0 2.31 0 0.538 6.575 65.2 4.0900 1 296.0 ... \n",
+ "1 0.02731 0.0 7.07 0 0.469 6.421 78.9 4.9671 2 242.0 ... \n",
+ "2 0.02729 0.0 7.07 0 0.469 7.185 61.1 4.9671 2 242.0 ... \n",
+ "3 0.03237 0.0 2.18 0 0.458 6.998 45.8 6.0622 3 222.0 ... \n",
+ "4 0.06905 0.0 2.18 0 0.458 7.147 54.2 6.0622 3 222.0 ... \n",
+ ".. ... ... ... ... ... ... ... ... .. ... ... \n",
+ "501 0.06263 0.0 11.93 0 0.573 6.593 69.1 2.4786 1 273.0 ... \n",
+ "502 0.04527 0.0 11.93 0 0.573 6.120 76.7 2.2875 1 273.0 ... \n",
+ "503 0.06076 0.0 11.93 0 0.573 6.976 91.0 2.1675 1 273.0 ... \n",
+ "504 0.10959 0.0 11.93 0 0.573 6.794 89.3 2.3889 1 273.0 ... \n",
+ "505 0.04741 0.0 11.93 0 0.573 6.030 80.8 2.5050 1 273.0 ... \n",
+ "\n",
+ " RMoutlier AGEoutlier DISoutlier TAXoutlier PTRATIOoutlier Boutlier \\\n",
+ "0 False False False False False False \n",
+ "1 False False False False False False \n",
+ "2 False False False False False False \n",
+ "3 False False False False False False \n",
+ "4 False False False False False False \n",
+ ".. ... ... ... ... ... ... \n",
+ "501 False False False False False False \n",
+ "502 False False False False False False \n",
+ "503 False False False False False False \n",
+ "504 False False False False False False \n",
+ "505 False False False False False False \n",
+ "\n",
+ " LSTAToutlier MEDVoutlier targetoutlier out_sum \n",
+ "0 False False False 0 \n",
+ "1 False False False 0 \n",
+ "2 False False False 0 \n",
+ "3 False False False 0 \n",
+ "4 False False False 0 \n",
+ ".. ... ... ... ... \n",
+ "501 False False False 0 \n",
+ "502 False False False 0 \n",
+ "503 False False False 0 \n",
+ "504 False False False 0 \n",
+ "505 False False False 0 \n",
+ "\n",
+ "[288 rows x 29 columns]"
+ ]
+ },
+ "execution_count": 22,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# 載入必要的套件 \n",
+ "import pandas as pd\n",
+ "import matplotlib.pyplot as plt\n",
+ "from sklearn.datasets import fetch_openml\n",
+ "boston = fetch_openml(name='boston', version=1, as_frame=True)\n",
+ "df = boston.frame\n",
+ "df[\"target\"]=boston.target\n",
+ "print(df.columns)\n",
+ "\n",
+ "for col in df.select_dtypes(include=['float64', 'int64']).columns:\n",
+ " col_name = col + \"outlier\"\n",
+ " q1 = df[col].quantile(0.25)\n",
+ " q3 = df[col].quantile(0.75)\n",
+ " IQR = q3 - q1\n",
+ " lower_bound = q1 - 1.5 * IQR\n",
+ " upper_bound = q3 + 1.5 * IQR\n",
+ "\n",
+ " # 先全部設為 0(非離群值)\n",
+ " df[col_name] = False\n",
+ "\n",
+ " # 再將離群值的位置更新為 1\n",
+ " df.loc[(df[col] < lower_bound) | (df[col] > upper_bound), col_name] = True\n",
+ "df[\"out_sum\"]=0\n",
+ "for col in df.select_dtypes(include=['boolean']).columns:\n",
+ " if \"outlier\" in col:\n",
+ " #print(df[col],\"type\",type(df[col]))\n",
+ " df[\"out_sum\"] = df[\"out_sum\"] + df[col].astype(int)\n",
+ "\n",
+ "\n",
+ "df[df[\"out_sum\"]==0]\n",
+ "\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "jwPNMU6W7nXg"
+ },
+ "source": [
+ "# 課堂範例: 偵測並移除重複資料"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 23,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "executionInfo": {
+ "elapsed": 19,
+ "status": "ok",
+ "timestamp": 1759743153219,
+ "user": {
+ "displayName": "黃鈺晴",
+ "userId": "04936038635646045030"
+ },
+ "user_tz": -480
+ },
+ "id": "RSBbM8KK8b13",
+ "outputId": "cf9ec649-1977-46b2-f47c-5d751ab8041c"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "原始資料:\n",
+ " Name Score\n",
+ "0 Alice 90\n",
+ "1 Bob 85\n",
+ "2 Charlie 78\n",
+ "3 Bob 85\n",
+ "4 Alice 90\n",
+ "5 Eve 95\n",
+ "\n",
+ "重複資料筆數: 2\n",
+ "\n",
+ "重複資料:\n",
+ " Name Score\n",
+ "3 Bob 85\n",
+ "4 Alice 90\n",
+ "\n",
+ "移除重複後的資料:\n",
+ " Name Score\n",
+ "0 Alice 90\n",
+ "1 Bob 85\n",
+ "2 Charlie 78\n",
+ "5 Eve 95\n"
+ ]
+ }
+ ],
+ "source": [
+ "# 建立含重複資料的範例\n",
+ "data = {\n",
+ " 'Name': ['Alice', 'Bob', 'Charlie', 'Bob', 'Alice', 'Eve'],\n",
+ " 'Score': [90, 85, 78, 85, 90, 95]\n",
+ "}\n",
+ "df = pd.DataFrame(data)\n",
+ "\n",
+ "print(\"原始資料:\")\n",
+ "print(df)\n",
+ "\n",
+ "# 偵測重複資料\n",
+ "print(\"\\n重複資料筆數:\", df.duplicated().sum())\n",
+ "print(\"\\n重複資料:\")\n",
+ "print(df[df.duplicated()])\n",
+ "\n",
+ "# 移除重複資料(保留第一次出現)\n",
+ "df_cleaned = df.drop_duplicates()\n",
+ "print(\"\\n移除重複後的資料:\")\n",
+ "print(df_cleaned)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "colab": {
+ "provenance": []
+ },
+ "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.12.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}