{
"cells": [
{
"cell_type": "code",
"execution_count": 293,
"metadata": {},
"outputs": [],
"source": [
"\"\"\"\n",
"Name: Anand Panchdhari\n",
"Roll No.: C013\n",
"Aim: Perform Exploratory Data Analysis on real world dataset using Pandas library \n",
" i. Read different types of data files (.csv, excel, text file etc.)\n",
" ii. Obtain metadata of given dataset\n",
" iii. Handling Missing Values in dataset\n",
" iv. Handling Categorical data: Mapping ordinal features, Encoding class labels, Performing one-hot encoding on nominal features\n",
" v. Variable Transformation and Variable Creation\n",
" vi. Selecting meaningful features\n",
"\"\"\"\n",
"import math\n",
"import numpy as np\n",
"import pandas as pd\n",
"from sklearn.feature_selection import SelectKBest, f_classif\n",
"import seaborn as sns\n",
"import matplotlib.pyplot as plt\n",
"df = pd.read_csv(\"datasets/Bengaluru_House_Data.xls\")\n",
"data = pd.read_csv(\"datasets/Bengaluru_House_Data.xls\")"
]
},
{
"cell_type": "code",
"execution_count": 294,
"metadata": {},
"outputs": [],
"source": [
"def process_total_sqft(value):\n",
" try:\n",
" if '-' in value:\n",
" values = list(map(float, value.split('-')))\n",
" return np.mean(values)\n",
" return float(value)\n",
" except ValueError:\n",
" return np.nan\n",
" \n",
"df['total_sqft'] = df['total_sqft'].apply(process_total_sqft)\n",
"data['total_sqft'] = data['total_sqft'].apply(process_total_sqft)"
]
},
{
"cell_type": "code",
"execution_count": 295,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Size is 4941\n",
"Shape is (549, 9)\n",
"area_type object\n",
"availability object\n",
"location object\n",
"size float64\n",
"society object\n",
"total_sqft float64\n",
"bath float64\n",
"balcony float64\n",
"price float64\n",
"dtype: object\n"
]
}
],
"source": [
"df['size'] = df['size'].str.extract(r'(\\d+)').astype(float)\n",
"df['total_sqft'] = df['total_sqft'].astype(float)\n",
"data['size'] = data['size'].str.extract(r'(\\d+)').astype(float)\n",
"data['total_sqft'] = data['total_sqft'].astype(float)\n",
"print(\"Size is \",df.size)\n",
"print(\"Shape is \",df.shape)\n",
"print(df.dtypes)"
]
},
{
"cell_type": "code",
"execution_count": 296,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"area_type 0\n",
"availability 0\n",
"location 0\n",
"size 0\n",
"society 204\n",
"total_sqft 1\n",
"bath 4\n",
"balcony 25\n",
"price 0\n",
"dtype: int64"
]
},
"execution_count": 296,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.isna().sum()"
]
},
{
"cell_type": "code",
"execution_count": 297,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/tmp/ipykernel_361/2896540118.py:1: FutureWarning: A value is trying to be set on a copy of a DataFrame or Series through chained assignment using an inplace method.\n",
"The behavior will change in pandas 3.0. This inplace method will never work because the intermediate object on which we are setting values always behaves as a copy.\n",
"\n",
"For example, when doing 'df[col].method(value, inplace=True)', try using 'df.method({col: value}, inplace=True)' or df[col] = df[col].method(value) instead, to perform the operation inplace on the original object.\n",
"\n",
"\n",
" data['society'].fillna(\"Society not known\", inplace=True)\n",
"/tmp/ipykernel_361/2896540118.py:2: FutureWarning: A value is trying to be set on a copy of a DataFrame or Series through chained assignment using an inplace method.\n",
"The behavior will change in pandas 3.0. This inplace method will never work because the intermediate object on which we are setting values always behaves as a copy.\n",
"\n",
"For example, when doing 'df[col].method(value, inplace=True)', try using 'df.method({col: value}, inplace=True)' or df[col] = df[col].method(value) instead, to perform the operation inplace on the original object.\n",
"\n",
"\n",
" data['bath'].fillna(value=math.floor(data['bath'].mean()), inplace=True)\n",
"/tmp/ipykernel_361/2896540118.py:3: FutureWarning: A value is trying to be set on a copy of a DataFrame or Series through chained assignment using an inplace method.\n",
"The behavior will change in pandas 3.0. This inplace method will never work because the intermediate object on which we are setting values always behaves as a copy.\n",
"\n",
"For example, when doing 'df[col].method(value, inplace=True)', try using 'df.method({col: value}, inplace=True)' or df[col] = df[col].method(value) instead, to perform the operation inplace on the original object.\n",
"\n",
"\n",
" data['balcony'].fillna(value=math.floor(data['balcony'].mean()), inplace=True)\n"
]
},
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" area_type \n",
" availability \n",
" location \n",
" size \n",
" society \n",
" total_sqft \n",
" bath \n",
" balcony \n",
" price \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" Super built-up Area \n",
" 19-Dec \n",
" Electronic City Phase II \n",
" 2.0 \n",
" Coomee \n",
" 1056.0 \n",
" 2.0 \n",
" 1.0 \n",
" 39.07 \n",
" \n",
" \n",
" 1 \n",
" Plot Area \n",
" Ready To Move \n",
" Chikka Tirupathi \n",
" 4.0 \n",
" Theanmp \n",
" 2600.0 \n",
" 5.0 \n",
" 3.0 \n",
" 120.00 \n",
" \n",
" \n",
" 2 \n",
" Built-up Area \n",
" Ready To Move \n",
" Uttarahalli \n",
" 3.0 \n",
" Society not known \n",
" 1440.0 \n",
" 2.0 \n",
" 3.0 \n",
" 62.00 \n",
" \n",
" \n",
" 3 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Lingadheeranahalli \n",
" 3.0 \n",
" Soiewre \n",
" 1521.0 \n",
" 3.0 \n",
" 1.0 \n",
" 95.00 \n",
" \n",
" \n",
" 4 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Kothanur \n",
" 2.0 \n",
" Society not known \n",
" 1200.0 \n",
" 2.0 \n",
" 1.0 \n",
" 51.00 \n",
" \n",
" \n",
" 5 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Whitefield \n",
" 2.0 \n",
" DuenaTa \n",
" 1170.0 \n",
" 2.0 \n",
" 1.0 \n",
" 38.00 \n",
" \n",
" \n",
" 6 \n",
" Super built-up Area \n",
" 18-May \n",
" Old Airport Road \n",
" 4.0 \n",
" Jaades \n",
" 2732.0 \n",
" 4.0 \n",
" 1.0 \n",
" 204.00 \n",
" \n",
" \n",
" 7 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Rajaji Nagar \n",
" 4.0 \n",
" Brway G \n",
" 3300.0 \n",
" 4.0 \n",
" 1.0 \n",
" 600.00 \n",
" \n",
" \n",
" 8 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Marathahalli \n",
" 3.0 \n",
" Society not known \n",
" 1310.0 \n",
" 3.0 \n",
" 1.0 \n",
" 63.25 \n",
" \n",
" \n",
" 9 \n",
" Plot Area \n",
" Ready To Move \n",
" Gandhi Bazar \n",
" 6.0 \n",
" Society not known \n",
" 1020.0 \n",
" 6.0 \n",
" 1.0 \n",
" 370.00 \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" area_type availability location size \\\n",
"0 Super built-up Area 19-Dec Electronic City Phase II 2.0 \n",
"1 Plot Area Ready To Move Chikka Tirupathi 4.0 \n",
"2 Built-up Area Ready To Move Uttarahalli 3.0 \n",
"3 Super built-up Area Ready To Move Lingadheeranahalli 3.0 \n",
"4 Super built-up Area Ready To Move Kothanur 2.0 \n",
"5 Super built-up Area Ready To Move Whitefield 2.0 \n",
"6 Super built-up Area 18-May Old Airport Road 4.0 \n",
"7 Super built-up Area Ready To Move Rajaji Nagar 4.0 \n",
"8 Super built-up Area Ready To Move Marathahalli 3.0 \n",
"9 Plot Area Ready To Move Gandhi Bazar 6.0 \n",
"\n",
" society total_sqft bath balcony price \n",
"0 Coomee 1056.0 2.0 1.0 39.07 \n",
"1 Theanmp 2600.0 5.0 3.0 120.00 \n",
"2 Society not known 1440.0 2.0 3.0 62.00 \n",
"3 Soiewre 1521.0 3.0 1.0 95.00 \n",
"4 Society not known 1200.0 2.0 1.0 51.00 \n",
"5 DuenaTa 1170.0 2.0 1.0 38.00 \n",
"6 Jaades 2732.0 4.0 1.0 204.00 \n",
"7 Brway G 3300.0 4.0 1.0 600.00 \n",
"8 Society not known 1310.0 3.0 1.0 63.25 \n",
"9 Society not known 1020.0 6.0 1.0 370.00 "
]
},
"execution_count": 297,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data['society'].fillna(\"Society not known\", inplace=True)\n",
"data['bath'].fillna(value=math.floor(data['bath'].mean()), inplace=True)\n",
"data['balcony'].fillna(value=math.floor(data['balcony'].mean()), inplace=True)\n",
"data.head(10)"
]
},
{
"cell_type": "code",
"execution_count": 298,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(331, 9)\n"
]
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" area_type \n",
" availability \n",
" location \n",
" size \n",
" society \n",
" total_sqft \n",
" bath \n",
" balcony \n",
" price \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" Super built-up Area \n",
" 19-Dec \n",
" Electronic City Phase II \n",
" 2.0 \n",
" Coomee \n",
" 1056.0 \n",
" 2.0 \n",
" 1.0 \n",
" 39.07 \n",
" \n",
" \n",
" 1 \n",
" Plot Area \n",
" Ready To Move \n",
" Chikka Tirupathi \n",
" 4.0 \n",
" Theanmp \n",
" 2600.0 \n",
" 5.0 \n",
" 3.0 \n",
" 120.00 \n",
" \n",
" \n",
" 3 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Lingadheeranahalli \n",
" 3.0 \n",
" Soiewre \n",
" 1521.0 \n",
" 3.0 \n",
" 1.0 \n",
" 95.00 \n",
" \n",
" \n",
" 5 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Whitefield \n",
" 2.0 \n",
" DuenaTa \n",
" 1170.0 \n",
" 2.0 \n",
" 1.0 \n",
" 38.00 \n",
" \n",
" \n",
" 11 \n",
" Plot Area \n",
" Ready To Move \n",
" Whitefield \n",
" 4.0 \n",
" Prrry M \n",
" 2785.0 \n",
" 5.0 \n",
" 3.0 \n",
" 295.00 \n",
" \n",
" \n",
" 12 \n",
" Super built-up Area \n",
" Ready To Move \n",
" 7th Phase JP Nagar \n",
" 2.0 \n",
" Shncyes \n",
" 1000.0 \n",
" 2.0 \n",
" 1.0 \n",
" 38.00 \n",
" \n",
" \n",
" 14 \n",
" Plot Area \n",
" Ready To Move \n",
" Sarjapur \n",
" 3.0 \n",
" Skityer \n",
" 2250.0 \n",
" 3.0 \n",
" 2.0 \n",
" 148.00 \n",
" \n",
" \n",
" 15 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Mysore Road \n",
" 2.0 \n",
" PrntaEn \n",
" 1175.0 \n",
" 2.0 \n",
" 2.0 \n",
" 73.50 \n",
" \n",
" \n",
" 16 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Bisuvanahalli \n",
" 3.0 \n",
" Prityel \n",
" 1180.0 \n",
" 3.0 \n",
" 2.0 \n",
" 48.00 \n",
" \n",
" \n",
" 17 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Raja Rajeshwari Nagar \n",
" 3.0 \n",
" GrrvaGr \n",
" 1540.0 \n",
" 3.0 \n",
" 3.0 \n",
" 60.00 \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" area_type availability location size \\\n",
"0 Super built-up Area 19-Dec Electronic City Phase II 2.0 \n",
"1 Plot Area Ready To Move Chikka Tirupathi 4.0 \n",
"3 Super built-up Area Ready To Move Lingadheeranahalli 3.0 \n",
"5 Super built-up Area Ready To Move Whitefield 2.0 \n",
"11 Plot Area Ready To Move Whitefield 4.0 \n",
"12 Super built-up Area Ready To Move 7th Phase JP Nagar 2.0 \n",
"14 Plot Area Ready To Move Sarjapur 3.0 \n",
"15 Super built-up Area Ready To Move Mysore Road 2.0 \n",
"16 Super built-up Area Ready To Move Bisuvanahalli 3.0 \n",
"17 Super built-up Area Ready To Move Raja Rajeshwari Nagar 3.0 \n",
"\n",
" society total_sqft bath balcony price \n",
"0 Coomee 1056.0 2.0 1.0 39.07 \n",
"1 Theanmp 2600.0 5.0 3.0 120.00 \n",
"3 Soiewre 1521.0 3.0 1.0 95.00 \n",
"5 DuenaTa 1170.0 2.0 1.0 38.00 \n",
"11 Prrry M 2785.0 5.0 3.0 295.00 \n",
"12 Shncyes 1000.0 2.0 1.0 38.00 \n",
"14 Skityer 2250.0 3.0 2.0 148.00 \n",
"15 PrntaEn 1175.0 2.0 2.0 73.50 \n",
"16 Prityel 1180.0 3.0 2.0 48.00 \n",
"17 GrrvaGr 1540.0 3.0 3.0 60.00 "
]
},
"execution_count": 298,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.dropna(inplace=True)\n",
"print(df.shape)\n",
"df.head(10)"
]
},
{
"cell_type": "code",
"execution_count": 299,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" area_type \n",
" availability \n",
" location \n",
" size \n",
" society \n",
" total_sqft \n",
" bath \n",
" balcony \n",
" price \n",
" \n",
" \n",
" \n",
" \n",
" 0 \n",
" Super built-up Area \n",
" 19-Dec \n",
" Electronic City Phase II \n",
" 2.0 \n",
" Coomee \n",
" 1056.0 \n",
" 2.0 \n",
" 1.0 \n",
" 39.07 \n",
" \n",
" \n",
" 1 \n",
" Plot Area \n",
" Ready To Move \n",
" Chikka Tirupathi \n",
" 4.0 \n",
" Theanmp \n",
" 2600.0 \n",
" 5.0 \n",
" 3.0 \n",
" 120.00 \n",
" \n",
" \n",
" 3 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Lingadheeranahalli \n",
" 3.0 \n",
" Soiewre \n",
" 1521.0 \n",
" 3.0 \n",
" 1.0 \n",
" 95.00 \n",
" \n",
" \n",
" 5 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Whitefield \n",
" 2.0 \n",
" DuenaTa \n",
" 1170.0 \n",
" 2.0 \n",
" 1.0 \n",
" 38.00 \n",
" \n",
" \n",
" 11 \n",
" Plot Area \n",
" Ready To Move \n",
" Whitefield \n",
" 4.0 \n",
" Prrry M \n",
" 2785.0 \n",
" 5.0 \n",
" 3.0 \n",
" 295.00 \n",
" \n",
" \n",
" 12 \n",
" Super built-up Area \n",
" Ready To Move \n",
" 7th Phase JP Nagar \n",
" 2.0 \n",
" Shncyes \n",
" 1000.0 \n",
" 2.0 \n",
" 1.0 \n",
" 38.00 \n",
" \n",
" \n",
" 14 \n",
" Plot Area \n",
" Ready To Move \n",
" Sarjapur \n",
" 3.0 \n",
" Skityer \n",
" 2250.0 \n",
" 3.0 \n",
" 2.0 \n",
" 148.00 \n",
" \n",
" \n",
" 15 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Mysore Road \n",
" 2.0 \n",
" PrntaEn \n",
" 1175.0 \n",
" 2.0 \n",
" 2.0 \n",
" 73.50 \n",
" \n",
" \n",
" 16 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Bisuvanahalli \n",
" 3.0 \n",
" Prityel \n",
" 1180.0 \n",
" 3.0 \n",
" 2.0 \n",
" 48.00 \n",
" \n",
" \n",
" 17 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Raja Rajeshwari Nagar \n",
" 3.0 \n",
" GrrvaGr \n",
" 1540.0 \n",
" 3.0 \n",
" 3.0 \n",
" 60.00 \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" area_type availability location size \\\n",
"0 Super built-up Area 19-Dec Electronic City Phase II 2.0 \n",
"1 Plot Area Ready To Move Chikka Tirupathi 4.0 \n",
"3 Super built-up Area Ready To Move Lingadheeranahalli 3.0 \n",
"5 Super built-up Area Ready To Move Whitefield 2.0 \n",
"11 Plot Area Ready To Move Whitefield 4.0 \n",
"12 Super built-up Area Ready To Move 7th Phase JP Nagar 2.0 \n",
"14 Plot Area Ready To Move Sarjapur 3.0 \n",
"15 Super built-up Area Ready To Move Mysore Road 2.0 \n",
"16 Super built-up Area Ready To Move Bisuvanahalli 3.0 \n",
"17 Super built-up Area Ready To Move Raja Rajeshwari Nagar 3.0 \n",
"\n",
" society total_sqft bath balcony price \n",
"0 Coomee 1056.0 2.0 1.0 39.07 \n",
"1 Theanmp 2600.0 5.0 3.0 120.00 \n",
"3 Soiewre 1521.0 3.0 1.0 95.00 \n",
"5 DuenaTa 1170.0 2.0 1.0 38.00 \n",
"11 Prrry M 2785.0 5.0 3.0 295.00 \n",
"12 Shncyes 1000.0 2.0 1.0 38.00 \n",
"14 Skityer 2250.0 3.0 2.0 148.00 \n",
"15 PrntaEn 1175.0 2.0 2.0 73.50 \n",
"16 Prityel 1180.0 3.0 2.0 48.00 \n",
"17 GrrvaGr 1540.0 3.0 3.0 60.00 "
]
},
"execution_count": 299,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.head(10)"
]
},
{
"cell_type": "code",
"execution_count": 300,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" \n",
" area_type \n",
" availability \n",
" location \n",
" size \n",
" society \n",
" total_sqft \n",
" bath \n",
" balcony \n",
" price \n",
" \n",
" \n",
" \n",
" \n",
" 537 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Magadi Road \n",
" 3.0 \n",
" Bilya A \n",
" 1282.0 \n",
" 2.0 \n",
" 2.0 \n",
" 49.00 \n",
" \n",
" \n",
" 538 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Mico Layout \n",
" 9.0 \n",
" Amsomun \n",
" 5000.0 \n",
" 9.0 \n",
" 3.0 \n",
" 210.00 \n",
" \n",
" \n",
" 540 \n",
" Super built-up Area \n",
" Ready To Move \n",
" Kanakpura Road \n",
" 2.0 \n",
" Shdhia \n",
" 1135.0 \n",
" 2.0 \n",
" 1.0 \n",
" 39.73 \n",
" \n",
" \n",
" 542 \n",
" Built-up Area \n",
" Ready To Move \n",
" Byatarayanapura \n",
" 3.0 \n",
" Foconna \n",
" 1325.0 \n",
" 2.0 \n",
" 1.0 \n",
" 90.00 \n",
" \n",
" \n",
" 543 \n",
" Super built-up Area \n",
" 18-Apr \n",
" Electronic City \n",
" 3.0 \n",
" Prarkun \n",
" 1599.0 \n",
" 3.0 \n",
" 2.0 \n",
" 99.00 \n",
" \n",
" \n",
"
\n",
"
"
],
"text/plain": [
" area_type availability location size society \\\n",
"537 Super built-up Area Ready To Move Magadi Road 3.0 Bilya A \n",
"538 Super built-up Area Ready To Move Mico Layout 9.0 Amsomun \n",
"540 Super built-up Area Ready To Move Kanakpura Road 2.0 Shdhia \n",
"542 Built-up Area Ready To Move Byatarayanapura 3.0 Foconna \n",
"543 Super built-up Area 18-Apr Electronic City 3.0 Prarkun \n",
"\n",
" total_sqft bath balcony price \n",
"537 1282.0 2.0 2.0 49.00 \n",
"538 5000.0 9.0 3.0 210.00 \n",
"540 1135.0 2.0 1.0 39.73 \n",
"542 1325.0 2.0 1.0 90.00 \n",
"543 1599.0 3.0 2.0 99.00 "
]
},
"execution_count": 300,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.tail()"
]
},
{
"cell_type": "code",
"execution_count": 301,
"metadata": {},
"outputs": [],
"source": [
"# DO 8"
]
},
{
"cell_type": "code",
"execution_count": 302,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Features Ranked by ANOVA F-Test:\n",
" Feature Score\n",
"1 total_sqft 16.968933\n",
"2 bath 6.715310\n",
"0 size 6.295508\n",
"3 balcony 1.150606\n"
]
}
],
"source": [
"numerical_features = ['size', 'total_sqft', 'bath', 'balcony']\n",
"X = df[numerical_features]\n",
"y = df['price']\n",
"selector = SelectKBest(score_func=f_classif, k='all')\n",
"X_new = selector.fit_transform(X, y)\n",
"scores = selector.scores_\n",
"feature_scores = pd.DataFrame({'Feature': numerical_features, 'Score': scores})\n",
"feature_scores = feature_scores.sort_values(by='Score', ascending=False)\n",
"print(\"Features Ranked by ANOVA F-Test:\")\n",
"print(feature_scores)"
]
},
{
"cell_type": "code",
"execution_count": 303,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAnEAAAIQCAYAAADuJTjHAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAjvNJREFUeJzs3Xd0VOXWx/HvzCSZFNJDEmpCDb0FqSIISBFBwHtFRUEE9CpgyfWqiIJiib4qYgMEaXYsICpKkaIiCNKLdAIBJCGB9J6Zef+IDgwJGIaEMOb3WWvWIs8855x9EpLs7Kccg81msyEiIiIiLsVY0QGIiIiIyKVTEiciIiLigpTEiYiIiLggJXEiIiIiLkhJnIiIiIgLUhInIiIi4oKUxImIiIi4ICVxIiIiIi5ISZyIiIiIC1ISJ+Li5s2bh8Fg4MiRI2V2ziNHjmAwGJg3b16ZnVNERMqWkjiREhw6dIj77ruPunXr4unpiZ+fH507d+aNN94gJyenosMrMx9//DFTp06t6DAc3H333VSpUuWC7xsMBsaOHVuuMUybNk0JrIhc9dwqOgCRq82SJUv497//jdlsZtiwYTRr1oz8/HzWrl3L//73P3bv3s3MmTMrOswy8fHHH7Nr1y4efvhhh/aIiAhycnJwd3evmMAq2LRp0wgJCeHuu++u6FBERC5ISZzIOeLi4rjtttuIiIhg1apVVKtWzf7emDFjOHjwIEuWLLns69hsNnJzc/Hy8ir2Xm5uLh4eHhiNFVcoNxgMeHp6Vtj1RUTk72k4VeQc//d//0dmZiazZ892SOD+Ur9+fR566CH7x4WFhTz33HPUq1cPs9lMZGQkTz75JHl5eQ7HRUZGctNNN7Fs2TLatm2Ll5cX7777LmvWrMFgMPDpp5/y1FNPUaNGDby9vUlPTwdgw4YN9OnTB39/f7y9venatSu//PLL397H4sWL6devH9WrV8dsNlOvXj2ee+45LBaLvU+3bt1YsmQJR48exWAwYDAYiIyMBC48J27VqlV06dIFHx8fAgICuPnmm9mzZ49Dn2eeeQaDwcDBgwe5++67CQgIwN/fnxEjRpCdnf23sTsjLy+PSZMmUb9+fcxmM7Vq1eKxxx4r9nWYO3cu3bt3JzQ0FLPZTJMmTZg+fbpDn8jISHbv3s2PP/5o/7x069YNODv/cO3atTz44INUrVqVgIAA7rvvPvLz80lNTWXYsGEEBgYSGBjIY489hs1mczj/q6++SqdOnQgODsbLy4vo6Gi++OKLYvf017DxRx99RFRUFJ6enkRHR/PTTz+V7SdPRFyWKnEi5/jmm2+oW7cunTp1KlX/UaNGMX/+fP71r3/x3//+lw0bNhAbG8uePXtYtGiRQ999+/Zx++23c9999zF69GiioqLs7z333HN4eHjw6KOPkpeXh4eHB6tWraJv375ER0czadIkjEajPQn5+eefadeu3QXjmjdvHlWqVCEmJoYqVaqwatUqJk6cSHp6Oq+88goAEyZMIC0tjePHj/P6668DXHQu2g8//EDfvn2pW7cuzzzzDDk5Obz11lt07tyZLVu22BPAv9x6663UqVOH2NhYtmzZwnvvvUdoaCgvv/xyqT63ycnJpepntVoZMGAAa9eu5d5776Vx48bs3LmT119/nf379/PVV1/Z+06fPp2mTZsyYMAA3Nzc+Oabb3jggQewWq2MGTMGgKlTpzJu3DiqVKnChAkTAAgLC3O45rhx4wgPD+fZZ5/l119/ZebMmQQEBLBu3Tpq167Niy++yHfffccrr7xCs2bNGDZsmP3YN954gwEDBjB06FDy8/P59NNP+fe//823335Lv379HK7z448/smDBAh588EHMZjPTpk2jT58+bNy4kWbNmpXq8yMi/2A2EbHZbDZbWlqaDbDdfPPNpeq/bds2G2AbNWqUQ/ujjz5qA2yrVq2yt0VERNgA29KlSx36rl692gbY6tata8vOzra3W61WW4MGDWy9e/e2Wa1We3t2dratTp06thtuuMHeNnfuXBtgi4uLc+h3vvvuu8/m7e1ty83Ntbf169fPFhERUaxvXFycDbDNnTvX3taqVStbaGio7fTp0/a27du324xGo23YsGH2tkmTJtkA2z333ONwzkGDBtmCg4OLXet8w4cPtwEXfY0ZM8be/4MPPrAZjUbbzz//7HCeGTNm2ADbL7/8ctHPS+/evW1169Z1aGvatKmta9euxfr+9bk+/+vSsWNHm8FgsP3nP/+xtxUWFtpq1qxZ7Dznx5Cfn29r1qyZrXv37g7tf93rpk2b7G1Hjx61eXp62gYNGlQsNhGpfDScKvKnv4YwfX19S9X/u+++AyAmJsah/b///S9AsblzderUoXfv3iWea/jw4Q7z47Zt28aBAwe4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ROQyZGVl0bJlS955551S9Y+Li6Nfv35cf/31bNu2jYcffphRo0axbNmyS7quVqeKiIiIlBGDwcCiRYsYOHDgBfs8/vjjLFmyxOExj7fddhupqaksXbq01NdSJU5ERETkPHl5eaSnpzu88vLyyuTc69evL/ZIxd69e7N+/fpLOo+e2CAiIiIuaYl7VLmd+7cJtxd7OsqkSZPK5Ak1CQkJhIWFObSFhYWRnp5OTk4OXl5epTrPVZXElecXQ0qvX8E+cr+dXtFhCOB50/0cH3drRYchQM23PmP4xISKDkP+NH9yOPsOHavoMASIqlerokMoF+PHjycmJsahzWw2V1A0JbuqkjgRERGR0jK4G8rt3GazudyStvDwcBITEx3aEhMT8fPzK3UVDjQnTkREROSK6tixIytXrnRoW7FiBR07dryk86gSJyIiIi7J6FZ+lbhLkZmZycGDB+0fx8XFsW3bNoKCgqhduzbjx4/nxIkTvP/++wD85z//4e233+axxx7jnnvuYdWqVXz22WcsWbLkkq6rSpyIiIjIZdi0aROtW7emdevWAMTExNC6dWsmTpwIwMmTJ4mPj7f3r1OnDkuWLGHFihW0bNmS1157jffee4/evXtf0nVViRMRERGXZHC/OmpR3bp142Lb7pb0NIZu3bqxdevWy7qukjgRERFxSVfLcGpFuTpSWBERERG5JKrEiYiIiEsqzy1GXIEqcSIiIiIuSJU4ERERcUmaEyciIiIiLkeVOBEREXFJmhMnIiIiIi5HlTgRERFxSZV9TpySOBEREXFJBlPlTuI0nCoiIiLiglSJExEREZdkVCVORERERFyNKnEiIiLikgxGVeJERERExMWoEiciIiIuyWCq3LWoyn33IiIiIi5KlTgRERFxSZV9daqSOBEREXFJWtggIiIiIi5HlTgRERFxSZV9OFWVOBEREREXpEqciIiIuCSDKnEiIiIi4mpUiRMRERGXZDBW7lpU5b57ERERERelSpyIiIi4pMq+T5ySOBEREXFJ2mLkMuTn57Nv3z4KCwvLKh4RERERKQWnkrjs7GxGjhyJt7c3TZs2JT4+HoBx48bx0ksvlWmAIiIiIiUxGA3l9nIFTiVx48ePZ/v27axZswZPT097e8+ePVmwYEGZBSciIiIiJXNqTtxXX33FggUL6NChAwbD2Wy1adOmHDp0qMyCExER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vENkZCSenp60b9+ejRs3XrBvQUEBkydPpl69enh6etKyZUuWLr20eXhOJXFbtmyhS5cuAHzxxReEhYVx9OhR3n//fd58801nTikiIiJySa6mzX4XLFhATEwMkyZNYsuWLbRs2ZLevXtz6tSpEvs/9dRTvPvuu7z11lv8/vvv/Oc//2HQoEFs3Vr6vWOdSuKys7Px9fUFYPny5QwePBij0UiHDh04evSoM6cUERERcVlTpkxh9OjRjBgxgiZNmjBjxgy8vb2ZM2dOif0/+OADnnzySW688Ubq1q3L/fffz4033shrr71W6ms6lcTVr1+fr776imPHjrFs2TJ69eoFwKlTp/Dz83PmlCIiIiKXxGA0ltvrUuTn57N582Z69uxpbzMajfTs2ZP169eXeExeXh6enp4ObV5eXqxdu7bE/iVxKombOHEijz76KJGRkbRv356OHYseJbV8+XJat27tzClFRERErhp5eXmkp6c7vPLy8krsm5ycjMViISwszKE9LCyMhISS95fs3bs3U6ZM4cCBA1itVlasWMHChQs5efJkqWN0Kon717/+RXx8PJs2bXKYhNejRw9ef/11Z04pIiIicknKc05cbGws/v7+Dq/Y2Ngyi/2NN96gQYMGNGrUCA8PD8aOHcuIESMwXkIV0OlnDIWHhxMeHu7Q1q5dO2dPJyIiInJJyvPZqePHjycmJsahzWw2l9g3JCQEk8lEYmKiQ3tiYmKxXOkvVatW5auvviI3N5fTp09TvXp1nnjiCerWrVvqGCv3VsciIiIiJTCbzfj5+Tm8LpTEeXh4EB0dzcqVK+1tVquVlStX2qecXYinpyc1atSgsLCQL7/8kptvvrnUMepp3yIiIuKSrqbHbsXExDB8+HDatm1Lu3btmDp1KllZWYwYMQKAYcOGUaNGDfuQ7IYNGzhx4gStWrXixIkTPPPMM1itVh577LFSX1NJnIiIiMhlGjJkCElJSUycOJGEhARatWrF0qVL7Ysd4uPjHea75ebm8tRTT3H48GGqVKnCjTfeyAcffEBAQECpr6kkTkRERFxSec6Jc8bYsWMZO3Zsie+tWbPG4eOuXbvy+++/X9b1rp46pIiIiIiUmipxIiIi4pKupjlxFaFy372IiIiIi1IlTkRERFyT4eqaE3elqRInIiIi4oJUiRMRERGXdLWtTr3SlMSJiIiIS9LCBhERERFxOarEiYiIiEuq7MOpqsSJiIiIuCBV4kRERMQlaU6ciIiIiLgcVeJERETEJWlOnIiIiIi4HFXiRERExCVV9kqckjgRERFxTVrYICIiIiKuRpU4ERERcUkGQ+UeTlUlTkRERMQFqRInIiIiLkmb/YqIiIiIy1ElTkRERFxSZd9iRJU4ERERERekSpyIiIi4pko+J05JnIiIiLgkDaeKiIiIiMtRJU5ERERcksFQuWtRBpvNZqvoIEREREQuVcoL95fbuQMnTC+3c5eVq6oSl/vt1f8Jqww8b7qfJe5RFR2GAP0K9pH17oSKDkMAn/te4Ob791V0GPKnxdOjODXh7ooOQ4DQF+ZV3MU1J05EREREXM1VVYkTERERKS09dktEREREXI4qcSIiIuKSKvs+cUriRERExDVV8i1GKvfdi4iIiLgoVeJERETEJVX24VRV4kRERERckCpxIiIi4pq0xYiIiIiIuBpV4kRERMQlGQyaEyciIiIiLkaVOBEREXFNlXxOnJI4ERERcUnaYsQJdevW5fTp08XaU1NTqVu37mUHJSIiIiIX51Ql7siRI1gslmLteXl5nDhx4rKDEhEREflblfyxW5eUxH399df2fy9btgx/f3/7xxaLhZUrVxIZGVlmwYmIiIhIyS4piRs4cKD938OHD3d4z93dncjISF577bUyCUxERETkoir5nLhSJ3E7duygoKAAk8lEnTp1+O233wgJCSnP2ERERETkAkqdxLVu3ZqEhASqVq2KwWCo9BvsiYiISMUyVPI5caW++4CAAA4fPgzA0aNHsVqt5RaUiIiIiKt55513iIyMxNPTk/bt27Nx48aL9p86dSpRUVF4eXlRq1YtHnnkEXJzc0t9vVJX4m655Ra6du1KtWrVAGjbti0mk6nEvn8leyIiIiLl5iqaE7dgwQJiYmKYMWMG7du3Z+rUqfTu3Zt9+/YRGhparP/HH3/ME088wZw5c+jUqRP79+/n7rvvxmAwMGXKlFJds9RJ3MyZMxk8eDAHDx7kwQcfZPTo0fj6+pb+7kRERETKkOEqemLDlClTGD16NCNGjABgxowZLFmyhDlz5vDEE08U679u3To6d+7MHXfcAUBkZCS33347GzZsKPU1L2l1ap8+fQDYvHkzDz30kJI4ERER+UfKy8sjLy/Poc1sNmM2m4v1zc/PZ/PmzYwfP97eZjQa6dmzJ+vXry/x/J06deLDDz9k48aNtGvXjsOHD/Pdd99x1113lTpGp1LYuXPnKoETERGRimUwlNsrNjYWf39/h1dsbGyJYSQnJ2OxWAgLC3NoDwsLIyEhocRj7rjjDiZPnsy1116Lu7s79erVo1u3bjz55JOlvn2nntgwePDgUvdduHChM5cQERERqTDjx48nJibGoa2kKpyz1qxZw4svvsi0adNo3749Bw8e5KGHHuK5557j6aefLtU5nEri/Pz8WLRoEf7+/rRt2xYoGmJNS0tj4MCB2n5EREREyl85zom70NBpSUJCQjCZTCQmJjq0JyYmEh4eXuIxTz/9NHfddRejRo0CoHnz5mRlZXHvvfcyYcIEjKW4N6eSuLCwMG699VZmzJhhX6FqsVh44IEH8PPz45VXXnHmtCIiIiIux8PDg+joaFauXGl/upXVamXlypWMHTu2xGOys7OLJWp/5VQ2m61U13UqiZszZw5r16512GLEZDIRExNDp06dlMSJiIhI+buKRv5iYmIYPnw4bdu2pV27dkydOpWsrCz7atVhw4ZRo0YN+7y6/v37M2XKFFq3bm0fTn366afp37//BbdwO59TSVxhYSF79+4lKirKoX3v3r3aBFhEREQqnSFDhpCUlMTEiRNJSEigVatWLF261L7YIT4+3qHy9tRTT2EwGHjqqac4ceIEVatWpX///rzwwgulvqZTSdyIESMYOXIkhw4dol27dgBs2LCBl156yZ5xioiIiJSnq2mfOICxY8decPh0zZo1Dh+7ubkxadIkJk2a5PT1nEriXn31VcLDw3nttdc4efIkANWqVeN///sf//3vf50ORkRERKTUKvmzU51K4oxGI4899hiPPfYY6enpQNGKVRERERG5MpxKYXNycsjOzgaKkreUlBSmTp3K8uXLyzQ4ERERkQsyGsrv5QKcSuJuvvlm3n//fQBSU1Np164dr732GjfffDPTp08v0wBFREREpDinkrgtW7bQpUsXAL744gvCw8M5evQo77//Pm+++WaZBigiIiJSEoPBWG4vV+BUlNnZ2fZnpy5fvpzBgwdjNBrp0KEDR48eLdMARURERKQ4p5K4+vXr89VXX3Hs2DGWLVtGr169ADh16pQWOIiIiMiVUcnnxDm1OnXixInccccdPPLII/To0YOOHTsCRVW51q1bl2mA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QcWfViAiIiJS5ozG8nu5AKdWp86cOROrtehBvWPGjCE4OJh169YxYMAA7rvvvjINUERERESKcyqJO378OLVq1bJ/fNttt3Hbbbdhs9k4duwYtWvXLrMARURERErkIqtIy4tT9cI6deqQlJRUrP3MmTPUqVPnsoMSERER+Vta2HDpbDYbhhKy38zMTDw9PS87KBERERG5uEsaTo2JiQHAYDDw9NNP4+3tbX/PYrGwYcMGWrVqVaYBioiIiJSokg+nXlISt3XrVqCoErdz5048PDzs73l4eNCyZUseffTRso1QRERERIq5pCRu9erVQNG2Im+88QZ+fn7lEpSIiIjI33KRrUDKi1OrU+fOnWv/9/HjxwGoWbNm2UQkIiIiIn/LqRTWarUyefJk/P39iYiIICIigoCAAJ577jn7/nEiIiIi5clmMJTbyxU4VYmbMGECs2fP5qWXXqJz584ArF27lmeeeYbc3FxeeOGFMg1SRERERBw5lcTNnz+f9957jwEDBtjbWrRoQY0aNXjggQeUxImIiEj5c5H93MqLU0ncmTNnaNSoUbH2Ro0acebMmcsOSkRERORvVfIkzqm7b9myJW+//Xax9rfffpuWLVtedlAiIiIicnFOVeL+7//+j379+vHDDz/QsWNHANavX8+xY8f47rvvyjRAERERkZK4ygKE8uL0s1P379/PoEGDSE1NJTU1lcGDB7Nv3z4iIiLKOkYREREROY9Tlbg6depw8uTJYgsYTp8+Ta1atbBYLGUSnIiIiMgFaU7cpbPZbCW2Z2Zm4unpeVkBiYiIiMjfu6RKXExMDAAGg4GJEyfi7e1tf89isbBhwwZatWpVpgGKiIiIlKiSz4m7pCRu69atQFElbufOnXh4eNjf8/DwoGXLljz66KNlG6GIiIiIFHNJSdzq1asBGDFiBG+88QZ+fn7lEpSIiIjI3zJW7jlxTi1smDt3blnHISIiInJJtMWIiIiIiFy2d955h8jISDw9PWnfvj0bN268YN9u3bphMBiKvfr161fq6ymJExEREddkMJbf6xItWLCAmJgYJk2axJYtW2jZsiW9e/fm1KlTJfZfuHAhJ0+etL927dqFyWTi3//+d6mvqSRORERE5DJNmTKF0aNHM2LECJo0acKMGTPw9vZmzpw5JfYPCgoiPDzc/lqxYgXe3t5K4kREROSfz2YwltvrUuTn57N582Z69uxpbzMajfTs2ZP169eX6hyzZ8/mtttuw8fHp9TXdWphg4iIiMg/WV5eHnl5eQ5tZrMZs9lcrG9ycjIWi4WwsDCH9rCwMPbu3fu319q4cSO7du1i9uzZlxSjKnEiIiLimgyGcnvFxsbi7+/v8IqNjS2X25g9ezbNmzenXbt2l3ScKnEiIiIi5xk/frz9SVV/KakKBxASEoLJZCIxMdGhPTExkfDw8IteJysri08//ZTJkydfcoyqxImIiIhLKs85cWazGT8/P4fXhZI4Dw8PoqOjWblypb3NarWycuVKOnbseNF7+Pzzz8nLy+POO++85PtXJU5ERERc01W02W9MTAzDhw+nbdu2tGvXjqlTp5KVlcWIESMAGDZsGDVq1Cg2JDt79mwGDhxIcHDwJV9TSZyIiIjIZRoyZAhJSUlMnDiRhIQEWrVqxdKlS+2LHeLj4zGe95iwffv2sXbtWpYvX+7UNZXEiYiIiGtyYlPe8jR27FjGjh1b4ntr1qwp1hYVFYXNZnP6egbb5RwtIiIiUkEyNi0tt3P7tu1TbucuK1dVJe74uFsrOgQBar71GVnvTqjoMATwue8FlrhHVXQYAvQr2MfoF09XdBjyp1lPBpfrL3ApvYpMdmxX0Zy4inB11SFFREREpFSuqkqciIiISKldZXPirrTKffciIiIiLkqVOBEREXFJNir3nDglcSIiIuKSbBpOFRERERFXo0qciIiIuCZV4kRERETE1agSJyIiIi5Jm/2KiIiIiMtRJU5ERERcklanioiIiIjLUSVOREREXFMlnxOnJE5ERERckoZTRURERMTlqBInIiIiLqmyPztVlTgRERERF6RKnIiIiLgkzYkTEREREZejSpyIiIi4pkq+xYgqcSIiIiIuSJU4ERERcUm2Sl6LUhInIiIiLsmm4VQRERERcTWqxImIiIhL0hYjIiIiIuJyVIkTERERl6THbomIiIiIy1ElTkRERFyS5sSJiIiIiMtRJU5ERERckvaJExERERGX43QlbuXKlaxcuZJTp05htVod3pszZ85lByYiIiJyMZV9dapTSdyzzz7L5MmTadu2LdWqVcNQycuZIiIicuVV9oUNTiVxM2bMYN68edx1111lHY+IiIiIlIJTSVx+fj6dOnUq61hERERESq2yD6c6VYccNWoUH3/8cVnHIiIiIiKl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/fv3U61atVIlcOBkEjdx4kQeeugh+vfvz+eff87nn39O//79eeSRR5g4caIzpxQRERG5JOU5J+5SxcTEMGvWLObPn8+ePXu4//77ycrKsq9WHTZsmMPTqe6//37OnDnDQw89xP79+1myZAkvvvgiY8aMKfU1nRpOnT59OrNmzeL222+3tw0YMIAWLVowbtw4Jk+e7MxpRURERFzSkCFDSEpKYuLEiSQkJNCqVSuWLl1qX+wQHx+P8Zxn5daqVYtly5bxyCOP0KJFC2rUqMFDDz3E448/XuprOpXEFRQU0LZt22Lt0dHRFBYWOnNKERERkUtytT12a+zYsYwdO7bE99asWVOsrWPHjvz6669OX8+p4dS77rqL6dOnF2ufOXMmQ4cOdToYERERESmdUlfizl1mazAYeO+991i+fDkdOnQAYMOGDcTHxzNs2LCyj1JERETkPOW5OtUVlDqJ27p1q8PH0dHRABw6dAgoWl4bEhLC7t27yzA8ERERkZIpiSul1atXl2ccIiIiInIJnFrYICIiIlLRKnslzunNfkVERESk4qgSJyIiIi7patti5EpTJU5ERETEBakSJyIiIi7JqjlxIiIiIuJqVIkTERERl1TZV6cqiRMRERGXpIUNIiIiIuJyVIkTERERl1TZh1NViRMRERFxQarEiYiIiEvSnDgRERERcTmqxImIiIhL0pw4EREREXE5qsSJiIiIS6rsc+KUxImIiIhLslZ0ABVMw6kiIiIiLkiVOBEREXFJlX04VZU4ERERERekSpyIiIi4JG0xIiIiIiIuR5U4ERERcUmaEyciIiIiLkeVOBEREXFJlX1OnJI4ERERcUlWW0VHULE0nCoiIiLiglSJExEREZdU2YdTDTabrZIXI0VERMQV/bg7u9zO3bWpd7mdu6xcVZW44RMTKjoEAeZPDufm+/dVdBgCLJ4exegXT1d0GALMejKYJe5RFR2G/KlfwT6u7f9jRYchwNpvulbYtbXFiIiIiIi4nKuqEiciIiJSWpV9QpgqcSIiIiIuSJU4ERERcUnWSr46VUmciIiIuCQtbBARERERl6NKnIiIiLgkLWwQEREREZejSpyIiIi4pMr+2C1V4kRERERckCpxIiIi4pKsmhMnIiIiIq5GlTgRERFxSZV9nzglcSIiIuKStMWIiIiIiFy2d955h8jISDw9PWnfvj0b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effdd2nXrh1Tp07ls88+Y+/evYSFhTFs2DBq1KhhH5KNjY2lbdu21KtXj7y8PL777jueeOIJpk+fzqhRo0p1zVJX4v5KzAoKCnj22Wd5+umnqVOnziXdoIiIiEhZuVpWpwIMGTKEpKQkJk6cSEJCAq1atWLp0qX2xQ7x8fEYzxnBy8rK4oEHHuD48eN4eXnRqFEjPvzwQ4YMGXKhSxRzyatT3d3d+fLLL3n66acv9VARERGRMuPMprzlaezYsRccPj1/wcLzzz/P888/f1nXc2p16sCBA/nqq68u68IiIiIi4jyn9olr0KABkydP5pdffiE6OhofHx+H9x988MEyCU5ERETkQq62StyV5lQSN3v2bAICAti8eTObN292eM9gMCiJExERESlnTiVxcXFx9n//NanQcM62AiIiIiLlzXr+xu6VjNNPbJg9ezbNmjXD09MTT09PmjVrxnvvvVeWsYmIiIjIBThViZs4cSJTpkxh3LhxdOxY9FiQ9evX88gjjxAfH8/kyZPLNEgRERGR82lOnBOmT5/OrFmzuP322+1tAwYMoEWLFowbN05JnIiIiEg5cyqJKygooG3btsXao6OjKSzUw5JFRESk/FX2SpxTc+Luuusupk+fXqx95syZDB069LKDEhEREfk7Nput3F6uwKlKHBQtbFi+fDkdOnQAYMOGDcTHxzNs2DBiYmLs/aZMmXL5UYqIiIiIA6eSuF27dtGmTRsADh06BEBISAghISHs2rXL3k/bjoiIiEh5sVor9xYjTiVxq1evLus4REREROQSOD2cKiIiIlKRtLBBRERERFyOKnEiIiLikmx67JaIiIiIuBpV4kRERMQlVfY5cUriRERExCVV9iROw6kiIiIiLkiVOBEREXFJVi1sEBERERFXo0qciIiIuCTNiRMRERERl6NKnIiIiLgkm1Vz4kRERETExagSJyIiIi5Jc+JERERExOWoEiciIiIuyVbJ94lTEiciIiIuyarhVBERERFxNarEiYiIiEvSFiMiIiIi4nJUiRMRERGXpC1GRERERMTlqBInIiIiLqmybzGiSpyIiIiIC1IlTkRERFxSZZ8TpyROREREXJK2GBERERERl2Ow2WyVuxZZRvLy8oiNjWX8+PGYzeaKDqfS09fj6qGvxdVDX4urh74WUhaUxJWR9PR0/P39SUtLw8/Pr6LDqfT0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",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# numerical_features2 = ['size', 'total_sqft', 'bath', 'balcony', 'price']\n",
"correlation = df[['size', 'total_sqft', 'bath', 'balcony', 'price']].corr()\n",
"plt.figure(figsize=(8, 6))\n",
"sns.heatmap(correlation, annot=True, cmap=\"coolwarm\", fmt=\".2f\", linewidths=0.5)\n",
"plt.title(\"Correlation Heatmap\")\n",
"plt.show()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "venv",
"language": "python",
"name": "venv"
},
"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.8"
}
},
"nbformat": 4,
"nbformat_minor": 2
}