2438 lines
448 KiB
Plaintext
2438 lines
448 KiB
Plaintext
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"## Датасет: [Tesla Insider Trading](https://www.kaggle.com/datasets/ilyaryabov/tesla-insider-trading).\n",
|
||
"\n",
|
||
"### Описание датасета:\n",
|
||
"Датасет представляет собой выборку операций с ценными бумагами компании Tesla, совершённых инсайдерами, и является частью более крупного проекта \"Insider Trading S&P500 – Inside Info\". Данные охватывают транзакции с участием крупных акционеров и должностных лиц компании, включая такие операции, как покупка, продажа и опционы, начиная с 10 ноября 2021 года и до 27 июля 2022 года.\n",
|
||
"\n",
|
||
"---\n",
|
||
"\n",
|
||
"### Анализ сведений:\n",
|
||
"**Проблемная область:**\n",
|
||
"Проблемная область данного датасета касается анализа инсайдерских сделок в публичных компаниях, а также их влияния на ценообразование акций. Инсайдерские транзакции, совершаемые людьми с доступом к непубличной информации (такими как руководители, крупные акционеры или члены совета директоров), могут быть индикаторами будущих изменений стоимости акций. Исследование таких транзакций помогает понять, как информация внутри компании отражается в действиях ключевых участников, и может выявить паттерны поведения, которые влияют на рынки.\n",
|
||
"\n",
|
||
"**Актуальность:**\n",
|
||
"Анализ инсайдерских сделок становится особенно важным в условиях высокой волатильности рынка и неопределенности. Инвесторы, аналитики и компании используют такие данные, чтобы лучше понимать сигналы от крупных акционеров и должностных лиц. Действия инсайдеров, такие как покупки и продажи акций, нередко рассматриваются как индикаторы доверия к компании, что может оказывать значительное влияние на рыночные ожидания и прогнозы.\n",
|
||
"\n",
|
||
"**Объекты наблюдений:**\n",
|
||
"Объектами наблюдений в датасете являются инсайдеры компании Tesla — лица, имеющие значительное влияние на управление и информацию компании. Каждый объект характеризуется различными параметрами, включая должность, тип транзакции, количество акций и общую стоимость сделок.\n",
|
||
"\n",
|
||
"**Атрибуты объектов:**\n",
|
||
"- Insider Trading: ФИО лица, совершившего транзакцию.\n",
|
||
"- Relationship: Должность или статус данного лица в компании Tesla.\n",
|
||
"- Date: Дата завершения транзакции.\n",
|
||
"- Transaction: Тип транзакции.\n",
|
||
"- Cost: Цена одной акции на момент совершения транзакции.\n",
|
||
"- Shares: Количество акций, участвующих в транзакции.\n",
|
||
"- Value ($): Общая стоимость транзакции в долларах США.\n",
|
||
"- Shares Total: Общее количество акций, принадлежащих этому лицу после завершения данной транзакции.\n",
|
||
"- SEC Form 4: Дата записи транзакции в форме SEC Form 4, обязательной для отчётности о сделках инсайдеров.\n",
|
||
"\n",
|
||
"---\n",
|
||
"\n",
|
||
"## Бизнес-цели:\n",
|
||
"1. **Прогнозирование цен на акции Tesla на основе действий инсайдеров:**\n",
|
||
"Одна из ключевых бизнес-целей состоит в создании модели для прогнозирования динамики акций Tesla, используя данные о транзакциях инсайдеров. Поскольку инсайдеры обладают глубоким знанием внутреннего состояния компании, их действия могут предсказывать изменения в стоимости акций. На основе анализа паттернов и частоты инсайдерских покупок и продаж можно разработать предсказательную модель, которая поможет инвесторам и аналитикам принимать более обоснованные решения.\n",
|
||
"2. **Анализ влияния транзакций инсайдеров на динамику цены акций Tesla для оценки краткосрочных и долгосрочных рисков:**\n",
|
||
"Цель – исследовать, как действия инсайдеров (особенно крупных акционеров и ключевых лиц) влияют на цену акций Tesla. Выявление корреляций между объёмом, типом и частотой инсайдерских сделок и изменениями цены акций позволит оценить риски и тенденции в динамике акций.\n",
|
||
"---\n",
|
||
"\n",
|
||
"## Технические цели:\n",
|
||
"**Для бизнес-цели №1:**\n",
|
||
"- Сбор и подготовка данных:\n",
|
||
" - Очистка данных от пропусков, выбросов и дубликатов, приведение данных к единому формату.\n",
|
||
" - Преобразование категориальных переменных (тип транзакции, должность инсайдера и др.) в числовые значения с использованием кодирования (one-hot encoding).\n",
|
||
" - Добавление временных характеристик, таких как сезонные факторы и тренды.\n",
|
||
" - Разделение данных на обучающую и тестовую выборки для создания и тестирования прогнозной модели.\n",
|
||
"- Разработка и обучение модели:\n",
|
||
" - Исследование различных алгоритмов прогнозирования, таких как линейная регрессия, деревья решений, градиентный бустинг и рекуррентные нейронные сети (RNN).\n",
|
||
" - Проведение кросс-валидации для подбора гиперпараметров и выбора наиболее эффективного алгоритма.\n",
|
||
" - Обучение моделей на обучающей выборке и оценка качества на тестовой выборке с помощью метрик (RMSE, MAE и др.) для измерения точности предсказаний.\n",
|
||
"- Развертывание и мониторинг модели:\n",
|
||
" - Разработка и настройка дашборда для отслеживания прогноза стоимости акций в реальном времени на основе новых инсайдерских данных.\n",
|
||
" - Настройка системы уведомлений и мониторинга для оповещения о значимых транзакциях инсайдеров.\n",
|
||
" - Регулярное обновление модели и тестирование её точности по мере поступления новых данных.\n",
|
||
"\n",
|
||
"**Для бизнес-цели №2:**\n",
|
||
"- Сбор и подготовка данных:\n",
|
||
" - Очистка данных от пропусков и выбросов, приведение категориальных признаков (типы транзакций, роли инсайдеров и др.) к числовым форматам с помощью методов кодирования.\n",
|
||
" - Интеграция с данными по историческим ценам акций Tesla, чтобы включить изменения цен в различные периоды после инсайдерских сделок.\n",
|
||
" - Создание дополнительных признаков, например, накопительного объема акций и частоты транзакций для каждого инсайдера, чтобы выявить более глубокие взаимосвязи с ценами.\n",
|
||
"- Разработка и обучение модели:\n",
|
||
" - Использование методов временных рядов (ARIMA, Prophet) и регрессионных моделей для анализа корреляций между объёмом и типом инсайдерских транзакций и изменением цены акций.\n",
|
||
" - Применение методов машинного обучения (случайный лес, градиентный бустинг) для определения ключевых факторов транзакций, наиболее значимых для изменений цен на акции.\n",
|
||
" - Оценка моделей на тестовой выборке с использованием метрик (MAE, RMSE и др.) для точного измерения влияния и предсказательной способности.\n",
|
||
"- Визуализация и мониторинг рисков:\n",
|
||
" - Разработка интерактивного дашборда, отображающего связь между действиями инсайдеров и изменениями в цене акций Tesla с возможностью фильтрации по типу транзакций и роли инсайдера.\n",
|
||
" - Настройка автоматических уведомлений о потенциальных рисках — например, при значительном росте объемов продажи акций инсайдерами и заметном снижении цены акций в краткосрочной перспективе.\n",
|
||
" - Регулярное обновление и мониторинг модели для повышения точности прогнозов и своевременного обнаружения новых трендов.\n",
|
||
"\n",
|
||
"**Входные данные:**\n",
|
||
"Инсайдер, должность, дата, тип транзакции, количество акций, общая стоимость сделки, общее количество акций у инсайдера, дата регистрации транзакции.\n",
|
||
"\n",
|
||
"**Целевой признак:**\n",
|
||
"Cost – цена одной акции на момент транзакции.\n",
|
||
"\n",
|
||
"---"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Выгрузка данных из файла в DataFrame:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 639,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"from typing import Any\n",
|
||
"from math import ceil\n",
|
||
"import time\n",
|
||
"\n",
|
||
"import pandas as pd\n",
|
||
"from pandas import DataFrame, Series\n",
|
||
"from sklearn.model_selection import train_test_split\n",
|
||
"from sklearn.preprocessing import MinMaxScaler, StandardScaler\n",
|
||
"from sklearn.model_selection import train_test_split, cross_val_score\n",
|
||
"from sklearn.linear_model import LinearRegression\n",
|
||
"from sklearn.metrics import root_mean_squared_error, r2_score, mean_absolute_error\n",
|
||
"from sklearn.ensemble import RandomForestRegressor\n",
|
||
"from imblearn.over_sampling import SMOTE\n",
|
||
"import featuretools as ft\n",
|
||
"from featuretools.entityset.entityset import EntitySet\n",
|
||
"import matplotlib.pyplot as plt\n",
|
||
"\n",
|
||
"\n",
|
||
"df: DataFrame = pd.read_csv('..//static//csv//TSLA.csv')"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Краткая информация о DataFrame:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 640,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"<class 'pandas.core.frame.DataFrame'>\n",
|
||
"RangeIndex: 156 entries, 0 to 155\n",
|
||
"Data columns (total 9 columns):\n",
|
||
" # Column Non-Null Count Dtype \n",
|
||
"--- ------ -------------- ----- \n",
|
||
" 0 Insider Trading 156 non-null object \n",
|
||
" 1 Relationship 156 non-null object \n",
|
||
" 2 Date 156 non-null object \n",
|
||
" 3 Transaction 156 non-null object \n",
|
||
" 4 Cost 156 non-null float64\n",
|
||
" 5 Shares 156 non-null object \n",
|
||
" 6 Value ($) 156 non-null object \n",
|
||
" 7 Shares Total 156 non-null object \n",
|
||
" 8 SEC Form 4 156 non-null object \n",
|
||
"dtypes: float64(1), object(8)\n",
|
||
"memory usage: 11.1+ KB\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>count</th>\n",
|
||
" <th>mean</th>\n",
|
||
" <th>std</th>\n",
|
||
" <th>min</th>\n",
|
||
" <th>25%</th>\n",
|
||
" <th>50%</th>\n",
|
||
" <th>75%</th>\n",
|
||
" <th>max</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>Cost</th>\n",
|
||
" <td>156.0</td>\n",
|
||
" <td>478.785641</td>\n",
|
||
" <td>448.922903</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>50.5225</td>\n",
|
||
" <td>240.225</td>\n",
|
||
" <td>934.1075</td>\n",
|
||
" <td>1171.04</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" count mean std min 25% 50% 75% max\n",
|
||
"Cost 156.0 478.785641 448.922903 0.0 50.5225 240.225 934.1075 1171.04"
|
||
]
|
||
},
|
||
"execution_count": 640,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"# Краткая информация о DataFrame\n",
|
||
"df.info()\n",
|
||
"\n",
|
||
"# Статистическое описание числовых столбцов\n",
|
||
"df.describe().transpose()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Конвертация данных:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 641,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Выборка данных:\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>Insider Trading</th>\n",
|
||
" <th>Relationship</th>\n",
|
||
" <th>Date</th>\n",
|
||
" <th>Transaction</th>\n",
|
||
" <th>Cost</th>\n",
|
||
" <th>Shares</th>\n",
|
||
" <th>Value ($)</th>\n",
|
||
" <th>Shares Total</th>\n",
|
||
" <th>SEC Form 4</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>Kirkhorn Zachary</td>\n",
|
||
" <td>Chief Financial Officer</td>\n",
|
||
" <td>2022-03-06</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>196.72</td>\n",
|
||
" <td>10455</td>\n",
|
||
" <td>2056775</td>\n",
|
||
" <td>203073</td>\n",
|
||
" <td>Mar 07 07:58 PM</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>Taneja Vaibhav</td>\n",
|
||
" <td>Chief Accounting Officer</td>\n",
|
||
" <td>2022-03-06</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>195.79</td>\n",
|
||
" <td>2466</td>\n",
|
||
" <td>482718</td>\n",
|
||
" <td>100458</td>\n",
|
||
" <td>Mar 07 07:57 PM</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>Baglino Andrew D</td>\n",
|
||
" <td>SVP Powertrain and Energy Eng.</td>\n",
|
||
" <td>2022-03-06</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>195.79</td>\n",
|
||
" <td>1298</td>\n",
|
||
" <td>254232</td>\n",
|
||
" <td>65547</td>\n",
|
||
" <td>Mar 07 08:01 PM</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>Taneja Vaibhav</td>\n",
|
||
" <td>Chief Accounting Officer</td>\n",
|
||
" <td>2022-03-05</td>\n",
|
||
" <td>Option Exercise</td>\n",
|
||
" <td>0.00</td>\n",
|
||
" <td>7138</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>102923</td>\n",
|
||
" <td>Mar 07 07:57 PM</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>Baglino Andrew D</td>\n",
|
||
" <td>SVP Powertrain and Energy Eng.</td>\n",
|
||
" <td>2022-03-05</td>\n",
|
||
" <td>Option Exercise</td>\n",
|
||
" <td>0.00</td>\n",
|
||
" <td>2586</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>66845</td>\n",
|
||
" <td>Mar 07 08:01 PM</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>5</th>\n",
|
||
" <td>Kirkhorn Zachary</td>\n",
|
||
" <td>Chief Financial Officer</td>\n",
|
||
" <td>2022-03-05</td>\n",
|
||
" <td>Option Exercise</td>\n",
|
||
" <td>0.00</td>\n",
|
||
" <td>16867</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>213528</td>\n",
|
||
" <td>Mar 07 07:58 PM</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>6</th>\n",
|
||
" <td>Baglino Andrew D</td>\n",
|
||
" <td>SVP Powertrain and Energy Eng.</td>\n",
|
||
" <td>2022-02-27</td>\n",
|
||
" <td>Option Exercise</td>\n",
|
||
" <td>20.91</td>\n",
|
||
" <td>10500</td>\n",
|
||
" <td>219555</td>\n",
|
||
" <td>74759</td>\n",
|
||
" <td>Mar 01 07:29 PM</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>7</th>\n",
|
||
" <td>Baglino Andrew D</td>\n",
|
||
" <td>SVP Powertrain and Energy Eng.</td>\n",
|
||
" <td>2022-02-27</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>202.00</td>\n",
|
||
" <td>10500</td>\n",
|
||
" <td>2121000</td>\n",
|
||
" <td>64259</td>\n",
|
||
" <td>Mar 01 07:29 PM</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>8</th>\n",
|
||
" <td>Kirkhorn Zachary</td>\n",
|
||
" <td>Chief Financial Officer</td>\n",
|
||
" <td>2022-02-06</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>193.00</td>\n",
|
||
" <td>3750</td>\n",
|
||
" <td>723750</td>\n",
|
||
" <td>196661</td>\n",
|
||
" <td>Feb 08 06:14 PM</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>9</th>\n",
|
||
" <td>Baglino Andrew D</td>\n",
|
||
" <td>SVP Powertrain and Energy Eng.</td>\n",
|
||
" <td>2022-01-27</td>\n",
|
||
" <td>Option Exercise</td>\n",
|
||
" <td>20.91</td>\n",
|
||
" <td>10500</td>\n",
|
||
" <td>219555</td>\n",
|
||
" <td>74759</td>\n",
|
||
" <td>Jan 31 07:34 PM</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" Insider Trading Relationship Date \\\n",
|
||
"0 Kirkhorn Zachary Chief Financial Officer 2022-03-06 \n",
|
||
"1 Taneja Vaibhav Chief Accounting Officer 2022-03-06 \n",
|
||
"2 Baglino Andrew D SVP Powertrain and Energy Eng. 2022-03-06 \n",
|
||
"3 Taneja Vaibhav Chief Accounting Officer 2022-03-05 \n",
|
||
"4 Baglino Andrew D SVP Powertrain and Energy Eng. 2022-03-05 \n",
|
||
"5 Kirkhorn Zachary Chief Financial Officer 2022-03-05 \n",
|
||
"6 Baglino Andrew D SVP Powertrain and Energy Eng. 2022-02-27 \n",
|
||
"7 Baglino Andrew D SVP Powertrain and Energy Eng. 2022-02-27 \n",
|
||
"8 Kirkhorn Zachary Chief Financial Officer 2022-02-06 \n",
|
||
"9 Baglino Andrew D SVP Powertrain and Energy Eng. 2022-01-27 \n",
|
||
"\n",
|
||
" Transaction Cost Shares Value ($) Shares Total SEC Form 4 \n",
|
||
"0 Sale 196.72 10455 2056775 203073 Mar 07 07:58 PM \n",
|
||
"1 Sale 195.79 2466 482718 100458 Mar 07 07:57 PM \n",
|
||
"2 Sale 195.79 1298 254232 65547 Mar 07 08:01 PM \n",
|
||
"3 Option Exercise 0.00 7138 0 102923 Mar 07 07:57 PM \n",
|
||
"4 Option Exercise 0.00 2586 0 66845 Mar 07 08:01 PM \n",
|
||
"5 Option Exercise 0.00 16867 0 213528 Mar 07 07:58 PM \n",
|
||
"6 Option Exercise 20.91 10500 219555 74759 Mar 01 07:29 PM \n",
|
||
"7 Sale 202.00 10500 2121000 64259 Mar 01 07:29 PM \n",
|
||
"8 Sale 193.00 3750 723750 196661 Feb 08 06:14 PM \n",
|
||
"9 Option Exercise 20.91 10500 219555 74759 Jan 31 07:34 PM "
|
||
]
|
||
},
|
||
"execution_count": 641,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"# Преобразование типов данных\n",
|
||
"df['Insider Trading'] = df['Insider Trading'].astype('category') # Преобразование в категорию\n",
|
||
"df['Relationship'] = df['Relationship'].astype('category') # Преобразование в категорию\n",
|
||
"df['Transaction'] = df['Transaction'].astype('category') # Преобразование в категорию\n",
|
||
"df['Cost'] = pd.to_numeric(df['Cost'], errors='coerce') # Преобразование в float\n",
|
||
"df['Shares'] = pd.to_numeric(df['Shares'].str.replace(',', ''), errors='coerce') # Преобразование в float с удалением запятых\n",
|
||
"df['Value ($)'] = pd.to_numeric(df['Value ($)'].str.replace(',', ''), errors='coerce') # Преобразование в float с удалением запятых\n",
|
||
"df['Shares Total'] = pd.to_numeric(df['Shares Total'].str.replace(',', ''), errors='coerce') # Преобразование в float с удалением запятых\n",
|
||
"\n",
|
||
"print('Выборка данных:')\n",
|
||
"df.head(10)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Проблема пропущенных данных:\n",
|
||
"\n",
|
||
"**Проблема пропущенных данных** — это отсутствие значений в наборе данных, что может искажать результаты анализа и статистические выводы.\n",
|
||
"\n",
|
||
"Проверка на отсутствие значений, представленная ниже, показала, что DataFrame не имеет пустых значений признаков. Нет необходимости использовать методы заполнения пропущенных данных."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 642,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Присутствуют ли пустые значения признаков в колонке:\n",
|
||
"Insider Trading False\n",
|
||
"Relationship False\n",
|
||
"Date False\n",
|
||
"Transaction False\n",
|
||
"Cost False\n",
|
||
"Shares False\n",
|
||
"Value ($) False\n",
|
||
"Shares Total False\n",
|
||
"SEC Form 4 False\n",
|
||
"dtype: bool \n",
|
||
"\n",
|
||
"Количество пустых значений признаков в колонке:\n",
|
||
"Insider Trading 0\n",
|
||
"Relationship 0\n",
|
||
"Date 0\n",
|
||
"Transaction 0\n",
|
||
"Cost 0\n",
|
||
"Shares 0\n",
|
||
"Value ($) 0\n",
|
||
"Shares Total 0\n",
|
||
"SEC Form 4 0\n",
|
||
"dtype: int64 \n",
|
||
"\n",
|
||
"Процент пустых значений признаков в колонке:\n",
|
||
"\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"# Проверка пропущенных данных\n",
|
||
"def check_null_columns(dataframe: DataFrame) -> None:\n",
|
||
" # Присутствуют ли пустые значения признаков\n",
|
||
" print('Присутствуют ли пустые значения признаков в колонке:')\n",
|
||
" print(dataframe.isnull().any(), '\\n')\n",
|
||
"\n",
|
||
" # Количество пустых значений признаков\n",
|
||
" print('Количество пустых значений признаков в колонке:')\n",
|
||
" print(dataframe.isnull().sum(), '\\n')\n",
|
||
"\n",
|
||
" # Процент пустых значений признаков\n",
|
||
" print('Процент пустых значений признаков в колонке:')\n",
|
||
" for column in dataframe.columns:\n",
|
||
" null_rate: float = dataframe[column].isnull().sum() / len(dataframe) * 100\n",
|
||
" if null_rate > 0:\n",
|
||
" print(f\"{column} процент пустых значений: {null_rate:.2f}%\")\n",
|
||
" print()\n",
|
||
" \n",
|
||
"\n",
|
||
"# Проверка пропущенных данных\n",
|
||
"check_null_columns(df)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Проблема зашумленности данных:\n",
|
||
"\n",
|
||
"**Зашумленность** – это наличие случайных ошибок или вариаций в данных, которые могут затруднить выявление истинных закономерностей. Шум может возникать из-за ошибок измерений, неправильных записей или других факторов.\n",
|
||
"\n",
|
||
"**Выбросы** – это значения, которые значительно отличаются от остальных наблюдений в наборе данных. Выбросы могут указывать на ошибки в данных или на редкие, но важные события. Их наличие может повлиять на статистические методы анализа.\n",
|
||
"\n",
|
||
"Представленный ниже код помогает определить наличие выбросов в наборе данных и устранить их (при наличии), заменив значения ниже нижней границы (рассматриваемого минимума) на значения нижней границы, а значения выше верхней границы (рассматриваемого максимума) – на значения верхней границы."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 643,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Проверка наличия выбросов в колонках:\n",
|
||
"Колонка Cost:\n",
|
||
"\tЕсть выбросы: Нет\n",
|
||
"\tКоличество выбросов: 0\n",
|
||
"\tМинимальное значение: 0.0\n",
|
||
"\tМаксимальное значение: 1171.04\n",
|
||
"\t1-й квартиль (Q1): 50.5225\n",
|
||
"\t3-й квартиль (Q3): 934.1075\n",
|
||
"\n",
|
||
"Колонка Shares:\n",
|
||
"\tЕсть выбросы: Да\n",
|
||
"\tКоличество выбросов: 25\n",
|
||
"\tМинимальное значение: 121\n",
|
||
"\tМаксимальное значение: 11920000\n",
|
||
"\t1-й квартиль (Q1): 3500.0\n",
|
||
"\t3-й квартиль (Q3): 301797.75\n",
|
||
"\n",
|
||
"Колонка Value ($):\n",
|
||
"\tЕсть выбросы: Да\n",
|
||
"\tКоличество выбросов: 23\n",
|
||
"\tМинимальное значение: 0\n",
|
||
"\tМаксимальное значение: 2278695421\n",
|
||
"\t1-й квартиль (Q1): 271008.0\n",
|
||
"\t3-й квартиль (Q3): 148713213.25\n",
|
||
"\n",
|
||
"Колонка Shares Total:\n",
|
||
"\tЕсть выбросы: Да\n",
|
||
"\tКоличество выбросов: 21\n",
|
||
"\tМинимальное значение: 49\n",
|
||
"\tМаксимальное значение: 455467432\n",
|
||
"\t1-й квартиль (Q1): 25103.5\n",
|
||
"\t3-й квартиль (Q3): 1507273.75\n",
|
||
"\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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MmWKbr31VpnNZsXGxmrcuHHVPlbPnj311ltvqaysrNov9HESDOAEzZ4925BkfP311y7tl112mdG1a1eXtoULFxqSjIKCAsMwDOPAgQNGu3btjP79+xuSjIULFzpj//rrryrnWrp0qSHJWLdunbNt0qRJhiTj999/d5vjZZddZkgyZs6c6WyrqKgwevToYQQFBRmVlZWGYRjGoUOHjIqKCpdj//zzTyM4ONi47bbbnG0FBQWGJOPGG280fHx8jOLiYmdfnz59jMGDBxuSjCeffLJKnjfeeKORkJDgbP/5558Nb29v48Ybb6zyPKp7De68806jSZMmxoEDB9w+3yPPd/XVV7u033PPPVX+vao7T9++fY1zzjnnmOd47bXXDEnGl19+6WyTZKSkpBg+Pj4u7cOHD3e+LiNHjnS2HzhwwLDZbC6PW1BQYPj6+hpTp051aX///fcNScbjjz9u/PTTT4a/v7+RlJTkEjN69GhDkmGxWJxt5eXlRnh4uBEWFuY819q1aw1Jxtq1a11y8fb2Nu65555jPm+HCRMmGJKMXbt2Odu6du1qXHbZZVViv//+e0OSsXjxYmeb49/IYf/+/Ya3t7dx5513uhw7dOhQo2nTpieUkzvXXHONIcn4888/Tyje8bPxxx9/ONu+/vprw9vb27jlllucbYGBgS7/ntUZMGCA0b59+7+TNoDjYAxmDGYMrvtj8F9//WWcf/75hiSjffv2xq233mq8/PLLRklJSZXYoUOHGpKqvP4XXHCB0bNnzyqPe6TKykojIiLCuPzyy13aJRne3t7G5s2bXdqHDx9uhISEuLyGhmEYN9xwgxEYGOh8/MTExCq/TwAcxjjMOMw4XPfHYcMwjPvvv9+QZGzbts3ZVlpaavj5+Rk33nijs+1E3w+XXXaZy3M9+ufb4ejX2m63G+eee67Rt29fw263u5w3PDzcuOKKK475PD788ENDkvHOO+9U6QsODjaGDBliGMbh1+3If9/qZGRkGJKM9evXHzMOx8dyLjhhjkvKWrdufdLHzpkzR3/88YcmTZpUpa9x48bO/z9w4IB27drlXPPp73wT6ePjozvvvNN5v1GjRrrzzju1c+dO5eXlSZJMJpMaNWok6fCldbt379ahQ4fUq1evas954YUXqmvXrvrvf/8rSfr555+1du1a567Q1bntttu0cuVKFRcXS5IWL16s6OhonXfeeVVij3wNysvLtWvXLpnNZv3111/aunXrCT3vo78tvffeeyVJ7777brXnKS0t1a5du3TZZZfpp59+Umlpqcvxf/31l3bt2qWNGzdq/vz5Cg4OrpJ7cHCwBgwYoIULFzqPee211zRs2LAq+fn6+jpnSthsNv3xxx/y9/fX+eefX+U1v/LKK3XnnXdq6tSpSk5Olp+fn1588UWXmHfffVcXXXSRLrnkEmebv7+/RowYocLCQn377bcu8Y7nu337ds2YMUN2u12XX355Na9kVY7ZEieypuiJzFLZt2+f7Ha7WrZseULnPxllZWWSpDPPPPO4sUVFRdq4caNuvfVWtWjRwtnerVs3XXHFFS7vnWbNmmn9+vUulxACqD2MwYzBjMF1fwxu3Lix1q9fr/vvv1/S4dmVw4cPV0hIiO69995qN/666667XO6bzWb99NNPVR7X4c8//1RpaanMZnO1Py+XXXaZunTp4rxvGIbeeOMNDRw4UIZhaNeuXc5b3759VVpa6nycZs2a6ddff9UXX3zx918EoJ5iHGYcZhyu++OwdHhJF0kuS5G98cYbOnDggHMpF+nk3g9/x8aNG/X9999r8ODB+uOPP5xj7759+9SnTx+tW7dOdrvd7fGO3znNmzev0jds2DBlZGTouuuu07fffnvcz+iOx2D/hn+OIjpO2M8//ywfH5+T/sOhtLRU06ZN09ixYxUcHFylf/fu3brvvvsUHBysxo0bq3Xr1goPD3cee7JCQ0PVtGlTlzbHgHfkulWLFy9Wt27d5Ofnp5YtW6p169bOdbKqM2zYMOcAuWjRIsXExOjcc891m0ePHj0UERGhV155RYZhaNGiRdUOqJK0efNmXXPNNQoMDFRAQIBat27t/OV/oq/B0bl06NBB3t7eLs/5k08+UXx8vHPt69atW2vChAnVnmfq1Klq3bq1LrjgAhUWFio3N7fawqzjF3hFRYVef/11NW/evNoB2W63a9asWTr33HPl6+urVq1aqXXr1vrmm2+qfY7p6elq0aKFNm7cqGeeeabK5h8///yzzj///CrHde7c2dl/pKSkJLVu3Vrt27fX5MmT9cgjj1S7Znh1du3apTPOOMPl8j139uzZI+nYS5m0bNlS5557rl566SV98MEH2rlzp3bt2nXMXbVPlOPyrPLy8uPGOl4jd6+jY5CXpBkzZig/P19t27bVRRddpMmTJ1f5kA/8XevWrdPAgQMVGhpa7bqbx+Nurcajx4LTGWMwYzBjcN0fgyUpMDBQM2bMUGFhoQoLC/Xyyy/r/PPP13PPPafHHnvMJdbPz6/Kz3Tz5s31559/urTl5OQoKipKfn5+atGihVq3bq0XXnih2n87x8+vw++//649e/Zo3rx5at26tcvN8TOxc+dOSdKDDz4of39/XXTRRTr33HM1cuTIE163FfXfPx2rJem1115Tjx491KRJE7Vv3/6El+qoCxiHGYcZh0+Pcbhbt26KiIjQ0qVLnW0ZGRlq1aqV+vbt62w7mffD3/H9999LOrx0zdHj70svvaSKiooTOo9Rzdr1TzzxhF544QUVFBQoLy9PQ4YMUZs2bfTkk09WW5h3PMbxlpnD8VFExwnbtm2bzjnnHJfNS07E9OnT5e3t7ZyVc7TrrrtO8+fP11133aWsrCx98MEHzk2QjvXN3D/x6quv6tZbb1WHDh308ssva+XKlVq1apUuv/xyt+e86aab9MMPP+izzz7T4sWL3f4RcKTbbrtNCxcu1EcffaTi4mJdd911VWL27Nmjyy67TF9//bWmTp2qd955R6tWrdL06dMl/f3X4OhfkD/++KP69OmjXbt26amnntKKFSu0atUqjRkzptrz3H777frggw+0YMEC+fn5adCgQdX+kh8wYIAaNWqk7OxsLVy4UEOHDq12wx3HH4+XXnqpXn31Vb3//vtatWqVunbtWu1z/Oqrr5wf6qpbP/Bkpaena9WqVXr33Xc1adIkTZ8+XVOmTDmhYwsLC9WuXbsTGnQcsy3atGlzzLjly5erZcuW6tu3r4KDg9W6detqN0A5WZ06dZJUM6/Zka677jr99NNPevbZZxUaGqonn3xSXbt21XvvvVej50HDtG/fPnXv3l1z5sz5W8ePHz9eRUVFLrcuXbro2muvreFMPYcxmDGYMbjuj8FHa9++vW677TZ98sknatasmZYsWeLSbzKZjvsYFotFV199tfz8/PT888/r3Xff1apVqzR48OBqP1gfObNO+v/31k033aRVq1ZVe3NshNq5c2dt27ZNy5Yt0yWXXKI33nhDl1xySbWzZ9Hw/NOx+r333tOQIUN01113KT8/X88//7xmzZql5557roYzPTUYhxmHGYdPn3H4pptu0nfffacvv/xSxcXF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UKA33nijyjfqq1at0q+//qqDBw/qiy++0JIlS3T11Ve7fW9Khy8zGz9+vHx9fbV//36X935paalsNpuys7OVlJSkDz/8UI8++qi++eYbvfPOO24f02HkyJHav3+/XnrppePGnqxXXnlFV155pZKTkzVw4ED16dNHTZs21ffff69ly5apqKhI6enpkg5fXta/f39FR0dr+PDh2r9/v5599lkFBgZq8uTJkg6vr3722WcrJSVF3bt3l7+/vz788EN98cUXmjlzpvO8PXv21PLlyzV27Fj961//kr+/vwYOHFjjzw8Ny/bt27Vw4UJt375doaGhkg4v37Jy5UotXLhQ06ZNc4k/cOCAlixZUmUGxumIMdgVYzBjsENdHYNXrVqlSZMm6eqrr1ZUVJT8/f31008/acGCBaqoqHCOqydjwIABeuqpp9SvXz8NHjxYO3fu1Jw5c9SxY0d98803J/QY//nPf7R27Vr17t1bd9xxh7p06aLdu3drw4YN+vDDD7V7925Jh9+nbdq00cUXX6zg4GBt2bJFzz33nAYMGHBCG5aj4TqRsbpv374aM2aMbr31VsXFxemHH35w/h1ZVFTknDFclzAOu2IcZhx2qKvj8JFuuukmjRgxQjt27NDDDz/s0nei74fqdO3aVVFRUUpNTdXu3bvVokULLVu2rMoXEt7e3nrppZfUv39/de3aVcOGDdNZZ52l3377TWvXrlVAQMBxX6vExES9+eabMgzD5aqRDh06aNiwYYqNjdXOnTuVm5urZ555Rt9++61eeOEFl8c4ePCgPvroI91zzz0n8rLheAzgGAoKCgxJJ3xbu3atYRiGsXDhQkOS0aNHD8Nut1d5vIULFzrbfv31V+Oaa64xmjVrZgQGBhrXXnutsWPHDkOSMWnSJGfcpEmTDEnG77//7jbfyy67zOjatavx5ZdfGtHR0Yafn5/Rvn1747nnnnOJs9vtxrRp04z27dsbvr6+xgUXXGDk5OQYQ4cONdq3b18l3yeffPKYr8+R/cfLs7r+Tz75xIiKijIaN25shIaGGg888IDx/vvvu7ym7jge79tvvzVSUlKMM88802jevLkxatQoY//+/S6xb7/9ttGtWzfDz8/PCAsLM6ZPn24sWLDAkGQUFBQYhmEY+fn5xpVXXmm0bNnSaNSokdG2bVvjhhtuML755huXx5JkjBw50m1eR/cfOHDAGDdunBESEmI0btzYuPjiiw2r1WpcdtllxmWXXWYYhmGUlZUZ7du3Ny688ELj4MGDLo83ZswYw9vb27Barc62H3/80UhJSTGaNWtm+Pn5GRdddJGRk5PjctzatWtd3qM+Pj5G+/btjX//+9/Gn3/+eczXtn379sd9zzveL/fee69x6aWXGitXrqzyOI5/I4elS5caXl5eVWKHDh1qNG3a9Jg5nai//vrLSE9PN/71r38Z/v7+RqNGjYxzzz3XuPfee40ffvjBJfbDDz80Lr74YqNx48ZGQECAMXDgQOPbb7919ldUVBj333+/0b17d+PMM880mjZtanTv3t14/vnnXR5n7969xuDBg41mzZq5vDbAyZBkvPnmm877OTk5hiSjadOmLjcfHx/juuuuq3J8RkaG4ePjYxQXF9di1qcGYzBjMGPw6TUG//TTT8bEiRONqKgoIygoyPDx8TFat25tDBgwwFizZs0Jne/ofA3DMF5++WXj3HPPNXx9fY1OnToZCxcurDbuWO+LkpISY+TIkUbbtm2NM844w2jTpo3Rp08fY968ec6YF1980bj00kuNli1bGr6+vkaHDh2M+++/3ygtLf27Lwnqqb8zVtvtduOBBx4w/Pz8DJPJZDRv3tyYPHmyIcn47LPPPPRMjo1xmHGYcfj0GoePtHv3bsPX19f5/jjaibwfDMNw+Tdy+PHHH434+HjD19fXCA4ONiZMmGCsWrWq2vfsV199ZSQnJzvH1vbt2xvXXXedsXr16uM+hw0bNhiSDIvF4tI+b948o0+fPkabNm0MLy8vo3HjxkZERESVz+eGYRjvvfeeIcn4/vvvj3s+HB9FdByTY2A83uB1onGnmuMPh4bkRP6gwt/Tvn17lz9yj7Z27VoKxUANO/qD+bJlywyTyWRs3brV+P77711uRUVFVY6//PLLjaSkpFrM+NRhDK77GINPHcZgoO76J2P1oUOHjF9//dWoqKgw3n33XUOSsXPnzlp+BieGcbjuYxw+dRiH64bLL7/cuOmmm9z2Dx069Ji/exITE+vNZ6O6gOVcAABAnXXBBRfIZrNp586dx13jvKCgQGvXrtXbb79dS9kBAICTGatNJpPOOussSdLSpUsVHR2t1q1b10aaAHDamTZtmsxmsx5//PEqG8Yez5YtW5STk6ONGzeemuQaIIroOCZ/f38NGTLEZW23fxIHnE6uueYa58Yh1QkODna7Nh6AE7d371798MMPzvsFBQXauHGjWrRoofPOO09DhgzRLbfcopkzZ+qCCy7Q77//rtWrV6tbt24aMGCA87gFCxYoJCTEuYnU6Y4xGA0ZYzBQt/zTsXrXrl3KzMxUbGysDhw4oIULF+r111/XRx995MFndWyMw2jIGIfrht69e6uystJtf1JSkts9JTp37nzczWNxcrwM4yR3bADqsNjYWO3atUv5+fmeTqXWTJ48WVOmTNHvv//udsMWAKjLcnNzFRcXV6V96NChWrRokQ4ePKjHH39cr7zyin777Te1atVKUVFRmjJliiIjIyVJdrtd7du31y233KInnniitp8CxBjMGAygPvunY/WuXbs0cOBAbdq0SYZhKDo6Wk888YR69+7tgWdTPzEOMw4DOLUoogMAAAAAAAAA4Ia3pxMAAAAAAAAAAKCuoogOAABqnWEYKisrExfEAQDqM8Y7AADqh3q7sajdbteOHTt05plnysvLy9PpAABwShiGofLycoWGhsrb+/T5brysrEzNmjXTL7/8ooCAAE+nAwDAKVFWVqa2bdtqz549CgwM9HQ6J4XP1ACAhuBEP1PX2yL6jh071LZtW0+nAQBArfjll1909tlnezqNE1ZeXi5JjNUAgAahvLz8tCui85kaANCQHO8zdb0top955pmSxAw3AEC95pjh5hj3TheM0wCAhuB0HaclxmoAQMNwomN1vS2iOy43CwgIYMAHANR7p9tl1ozTAICG5HQbpyXGagBAw3K8sfr0WTwVAAAAAAAAAIBaRhEdAAAAAAAAAAA3TrqIvm7dOg0cOFChoaHy8vJSdna2s+/gwYN68MEHFRkZqaZNmyo0NFS33HKLduzY4fIYu3fv1pAhQxQQEKBmzZpp+PDh2rt3r0vMN998I7PZLD8/P7Vt21YzZsz4e88QAAAAAAAAAIC/6aSL6Pv27VP37t01Z86cKn1//fWXNmzYoEcffVQbNmxQVlaWtm3bpquvvtolbsiQIdq8ebNWrVqlnJwcrVu3TiNGjHD2l5WV6corr1T79u2Vl5enJ598UpMnT9a8efP+xlMEAAAAAAAAAODvOemNRfv376/+/ftX2xcYGKhVq1a5tD333HO66KKLtH37drVr105btmzRypUr9cUXX6hXr16SpGeffVZXXXWV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AAAAblBEBwAAAAAAAADADYroAAAAAAAAAAC4QREdAAAAAAAAAAA3KKIDAAAAAAAAAOAGRXQAAAAAAAAAANygiA4AAAAAAAAAgBsU0QEAAAAAAAAAcIMiOgAAAAAAAAAAblBEBwAAAAAAAADADYroAAAAAAAAAAC4QREdAAAAAAAAAAA3KKIDAAAAAAAAAOAGRXQAAAAAAAAAANygiA4AAAAAAAAAgBsU0QEAAAAAAAAAcIMiOgAAAAAAAAAAblBEBwAAAAAAAADADYroAAAAAAAAAAC44ePpBAAAAAAAAICGrLKyUs8//7x+/PFHdejQQffcc48aNWrk6bQA/A9FdAAAAAAAAMBDHnjgAc2aNUuHDh1ytt1///0aM2aMZsyY4cHMADiwnAsAAAAAAADgAQ888ICefPJJtWzZUvPnz1dRUZHmz5+vli1b6sknn9QDDzzg6RQBiCI6AAAAAAB1Wlpamv71r3/pzDPPVFBQkJKSkrRt27bjHvf666+rU6dO8vPzU2RkpN59991ayBbAiaqsrNSsWbMUHBysX3/9VbfffrvatGmj22+/Xb/++quCg4M1a9YsVVZWejpVoMGjiA4AAAAAQB320UcfaeTIkfrss8+0atUqHTx4UFdeeaX27dvn9phPP/1UN954o4YPH66vvvpKSUlJSkpKUn5+fi1mDuBYnn/+eR06dEiPP/64fHxcV1z28fHR1KlTdejQIT3//PMeyhCAA2uiAwAAAABQh61cudLl/qJFixQUFKS8vDxdeuml1R7z9NNPq1+/frr//vslSY899phWrVql5557TnPnzj3lOQM4vh9//FGSlJCQUG2/o90RB8BzmIkOAAAAAMBppLS0VJLUokULtzFWq1Xx8fEubX379pXVaq02vqKiQmVlZS43AKdWhw4dJEk5OTnV9jvaHXEAPIciOgAAAAAApwm73a7Ro0fr4osvVkREhNu44uJiBQcHu7QFBweruLi42vi0tDQFBgY6b23btq3RvAFUdc8998jHx0ePPPKIDh065NJ36NAhTZw4UT4+Prrnnns8lCEAB4roAAAAAACcJkaOHKn8/HwtW7asRh83NTVVpaWlztsvv/xSo48PoKpGjRppzJgxKikp0dlnn6158+Zpx44dmjdvns4++2yVlJRozJgxatSokadTBRo81kQHAAAAAOA0MGrUKOXk5Gjd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N954owoLC519YWFhevzxx13iAHgOM9EBAACAeigkJESSlJ+fX22/o90RBwAAapdjDL755purXRP95ptvdokD4DkU0QEAAIB6yGw2KywsTNOmTZPdbnfps9vtSktLU3h4uMxms4cyBACgYYuJiZGPj4+CgoKUlZXlsiZ6VlaWgoKC5OPjo5iYGE+nCjR4FNEBAACAeshkMmnmzJnKyclRUlKSy+y2pKQk5eTkKD09XSaTydOpAgDQIH366ac6dOiQSkpKlJyc7DJWJycnq6SkRIcOHdKnn37q6VSBBo8iOgAAAFBPJScnKzMzU5s2bVJMTIwCAgIUExOj/Px8ZWZmKjk52dMpAgDQYDnWOn/11VerHatfffVVlzgAnsPGogAAAEA9lpycrMTERFksFhUVFSkkJERms5kZ6AAAeJhjrfMOHTpo27Ztev755/Xjjz+qQ4cOuueee5SXl+cSB8BzTvlM9P/85z/y8vLS6NGjnW0HDhzQyJEj1bJlS/n7+2vQoEEqKSlxOW779u0aMGCAmjRpoqCgIN1///06dOjQqU4XAAAAqHdMJpNiY2N14403KjY2lgI6AAB1gGP/knvvvVfnn3++xowZo+eee05jxozR+eefr3//+9/sXwLUEae0iP7FF1/oxRdfVLdu3Vzax4wZo3feeUevv/66PvroI+3YscPlUlKbzaYBAwaosrJSn376qRYvXqxFixZp4sSJpzJdAAAAAAAAoFaYTCZde+21+vLLL7V//37NmzdPO3bs0Lx587R//359+eWXSklJ4ctvoA44ZUX0vXv3asiQIZo/f76aN2/ubC8tLdXLL7+sp556Spdffrl69uyphQsX6tNPP9Vnn30mSfrggw/07bff6tVXX1WPHj3Uv39/PfbYY5ozZ44qKytPVcoAADRoc+bMUVhYmPz8/NS7d299/vnnJ3TcsmXL5OXlpaSkpFObIAAAAFCP2Gw2vf766+rVq5d8fX01YsQIhYaGasSIEfLz81OvXr2UmZkpm83m6VSBBu+UFdFHjhypAQMGKD4+3qU9Ly9PBw8edGnv1KmT2rVrJ6vVKkmyWq2KjIxUcHCwM6Zv374qKyvT5s2bqz1fRUWFysrKXG4AAODELF++XGPHjtWkSZO0YcMGde/eXX379tXOnTuPeVxhYaHGjx/PJaYAAADASbJYLCosLNSgQYPk7e1aovPy8lJycrIKCgpksVg8lCEAh1NSRF+2bJk2bNigtLS0Kn3FxcVq1KiRmjVr5tIeHBys4uJiZ8yRBXRHv6OvOmlpaQoMDHTe2rZtWwPPBACAhuGpp57SHXfcoWHDhqlLly6aO3eumjRpogULFrg9xmazaciQIZoyZYrOOeecWswWAAAAOP0VFRVJklJTUxUZGSmr1ary8nLn5NIJEya4xAHwnBovov/yyy+67777tGTJEvn5+dX0w7uVmpqq0tJS5+2XX36ptXMDAHA6q6ysVF5enstVYt7e3oqPj3deJVadqVOnKigoSMOHDz/uObhiDAAAAHAVFBQkSbrkkkv0xhtv6MCBA3rnnXd04MABvfHGG7r44otd4gB4jk9NP2BeXp527typCy+80Nlms9m0bt06Pffcc3r//fdVWVmpPXv2uMxGLykpUZs2bSRJbdq0qbIOa0lJibOvOr6+vvL19a3hZwMAQP23a9cu2Wy2aq8C27p1a7XHfPzxx3r55Ze1cePGEzpHWlqapkyZ8k9TBQAAAOqdP/74Q+eee65+/vlnZ1v79u3VuHFjD2YF4Eg1PhO9T58+2rRpkzZu3Oi89erVS0OGDHH+/xlnnKHVq1c7j9m2bZu2b9+u6OhoSVJ0dLQ2bdrksg7rqlWrFBAQoC5dutR0ygAA4CSUl5fr5ptv1vz589WqVasTOoYrxgAAAABXjrrXli1bdODAAc2bN087duzQvHnzdODAAeeEluPtUwTg1KvxmehnnnmmIiIiXNqaNm2qli1bOtuHDx+usWPHqkWLFgoICNC9996r6OhoRUVFSZKuvPJKdenSRTfffLNmzJih4uJiPfLIIxo5ciSzzQEAqGGtWrWSyWRyXvXlcORVYkf68ccfVVhYqIEDBzrb7Ha7JMnHx0fbtm1Thw4dXI7hijEAAADAlWOZlk6dOunAgQMaMWKEsy88PFydOnXS1q1bWc4FqANqvIh+ImbNmiVvb28NGjRIFRUV6tu3r55//nlnv8lkUk5Oju6++25FR0eradOmGjp0qKZOneqJdAEAqNcaNWqknj17avXq1UpKSpJ0uCi+evVqjRo1qkp8p06dtGnTJpe2Rx55ROXl5Xr66afZ3BsAAAA4Ca1atdKaNWv0ySefqKioSCEhIbr44ot1+eWXezo1AP9TK0X03Nxcl/t+fn6aM2eO5syZ4/aY9u3b69133z3FmQEAAEkaO3ashg4dql69eumiiy7S7NmztW/fPg0bNkySdMstt+iss85SWlqa/Pz8qlx15tjn5Oh2AAAAANVzLNPyySefaNCgQUpNTVVCQoLy8/M1aNAgffLJJy5xADzHIzPRAQBA3XL99dfr999/18SJE1VcXKwePXpo5cqVzs1Gt2/fLm/vGt9KBQAAAGiwQkJCJEnTpk3Tiy++qJiYGGdfeHi4nnjiCU2YMMEZB8BzKKIDAABJ0qhRo6pdvkWqelXZ0RYtWlTzCQEAAAD1mNlsVlhYmD799FN99913VZZzGTRokMLDw2U2mz2dKtDgMaUMAAAAAAAAqGUmk0kzZ85UTk6OBg0aJF9fXyUkJMjX11eDBg1STk6O0tPTZTKZPJ0q0OAxEx0AAAAAAADwgOTkZGVmZmrs2LEuy7mEhYUpMzNTycnJHswOgAMz0QEAAAAAAAAP8vLy8nQKAI6BIjoAAAAAAADgAVlZWUpJSVFkZKSsVqvKy8tltVoVGRmplJQUZWVleTpFAKKIDgAAAAAAANQ6m82mcePGKSEhQdnZ2YqKipK/v7+ioqKUnZ2thIQEjR8/XjabzdOpAg0eRXQAAAAAAACgllksFhUWFmrChAny9nYt0Xl7eys1NVUFBQWyWCweyhCAA0V0AAAAAAAAoJYVFRVJkiIiIqrtd7Q74gB4DkV0AAAAAAAAoJaFhIRIkvLz86vtd7Q74gB4DkV0AAAAAAAAoJaZzWaFhYVp2rRpstvtLn12u11paWkKDw+X2Wz2UIYAHHw8nQAAAAAAAADQ0JhMJs2cOVMpKSlKTExUv3791LhxY+3fv18rV67UihUrlJmZKZPJ5OlUgQaPIjoAAAAAAADgAcnJyRo/frxmzZqlnJwcZ7uPj4/Gjx+v5ORkD2YHwIEiOgAAAAAAAOABWVlZSk9P14ABA9S/f3/nTPT33ntP6enpioqKopAO1AEU0QEAAIB6zmazyWKxqKioSCEhITKbzVwaDgCAh9lsNo0bN04JCQnKzs6Wt/f/b1141113KSkpSePHj1diYiLjNuBhbCwKAAAA1GNZWVnq2LGj4uLiNHjwYMXFxaljx47KysrydGoAADRoFotFhYWFmjBhgksBXZK8vb2VmpqqgoICWSwWD2UIwIEiOgAAAFBPZWVlKSUlRZGRkbJarSovL5fValVkZKRSUlIopAMA4EFFRUWSpIiIiGr7He2OOACeQxEdAAAAqIeOvkQ8KipK/v7+ioqKUnZ2thISEjR+/HjZbDZPpwoAQIMUEhIiScrPz1dlZaVmz56te++9V7Nnz1ZlZaXy8/Nd4gB4DmuiAwAAAPWQ4xLxpUuXur1EPCYmRhaLRbGxsZ5JEgCABsxsNissLEw33XSTCgsLXb7YHj9+vMLCwhQeHi6z2ezBLAFIzEQHAAAA6iUuEQcAoG4zmUzq3r27fvzxR5lMJj300EP6/vvv9dBDD8lkMunHH39Ut27d2FQUqAMoogMAAAD10JGXiFeHS8QBAPCsyspKrVixQoGBgQoNDdV//vMfnXvuufrPf/6js846S4GBgVqxYoUqKys9nSrQ4FFEBwAAAOohxyXi06ZNk91ud+mz2+1KS0vjEnEAADzo+eef16FDh5Senq4ffvhBa9euVUZGhtauXavvv/9eM2bM0KFDh/T88897OlWgwWNNdAAAAKAeMplMmjlzplJSUpSUlKTU1FRFREQoPz9faWlpysnJUWZmJpeIAwDgIT/++KMkKSEhQSaTqcoeJQkJCS5xADyHmegAAABAPZWcnKzMzExt2rRJMTExCggIUExMjPLz85WZmank5GRPpwgAQIPVoUMHSVJOTo5sNptyc3O1dOlS5ebmymazKScnxyUOgOcwEx0AAACox5KTk5WYmCiLxaKioiKFhITIbDYzAx0AAA+75557dP/992v8+PF64oknVFhY6OwLCwvTn3/+KR8fH91zzz2eSxKAJGaiAwAAAPWe4xLxG2+8UbGxsRTQAQCoAxo1aqQBAwaotLRUO3bs0IMPPqjvvvtODz74oHbs2KHS0lINGDBAjRo18nSqQIPHTHQAAAAAAACgltlsNn399dfq0KGDCgsLNX36dE2fPl3S4S/AO3TooG+++UY2m40vwAEPYyY6AAAAAAAAUMssFosKCwt1++2366yzznLpO+usszR8+HAVFBTIYrF4KEMADsxEBwAAAAAAAGpZUVGRJCk1NVUJCQl68MEH1bhxY+3fv1/vvfeeJkyY4BIHwHMoogMAAAAAAAC1LCgoSJLUqVMn5efnKycnx9kXFhamTp06aevWrc44AJ7Dci4AAAAAAACAh2zdulURERGyWq0qLy+X1WpVRESEtm7d6unUAPwPRXQAAAAAAACglhUXF7vcNwzDeTtWHIDaRxEdAAAAqOdsNptyc3O1dOlS5ebmymazeTolAAAavN9//12SdPfddys/P18xMTEKCAhQTEyMNm/erDvvvNMlDoDnUEQHAAAA6rGsrCx17NhRcXFxGjx4sOLi4tSxY0dlZWV5OjUAJ2HOnDkKCwuTn5+fevfurc8//9xt7KJFi+Tl5eVy8/Pzq8VsAZyI1q1bS5IKCwv13Xffae3atcrIyNDatWu1bds2bd++3SUOgOdQRAcAAADqqaysLKWkpCgyMtJlndXIyEilpKRQSAdOE8uXL9fYsWM1adIkbdiwQd27d1ffvn21c+dOt8cEBASoqKjIefv5559rMWMAJ+Kss86SJL333nsaNGiQfH19lZCQIF9fXw0aNEjvvfeeSxwAz/HxdAIAAAAAap7NZtO4ceOUkJCg7OxseXsfnj8TFRWl7OxsJSUlafz48UpMTJTJZPJwtgCO5amnntIdd9yhYcOGSZLmzp2rFStWaMGCBXrooYeqPcbLy0tt2rSpzTQBnCSz2aywsDC1atVK33zzjWJiYpx9YWFh6tWrl/744w+ZzWYPZglAYiY6AAAAUC9ZLBYVFhZqwoQJzgK6g7e3t1JTU1VQUCCLxeKhDAGciMrKSuXl5Sk+Pt7Z5u3trfj4eFmtVrfH7d27V+3bt1fbtm2VmJiozZs3H/M8FRUVKisrc7kBOLVMJpNmzpypvLw8RUZG6rnnntPLL7+s5557ThEREcrLy1N6ejpfdgN1ADPRAQAAgHqoqKhIkhQREVFtv6PdEQegbtq1a5dsNpuCg4Nd2oODg7V169Zqjzn//PO1YMECdevWTaWlpUpPT3duVHj22WdXe0xaWpqmTJlS4/kDOLbk5GRlZmZq3LhxysnJcbaHh4crMzNTycnJHswOgANFdAAAAKAeCgkJkSTl5+crKiqqSn9+fr5LHID6Izo6WtHR0c77MTEx6ty5s1588UU99thj1R6TmpqqsWPHOu+XlZWpbdu2pzxXAIcL6YmJibJYLCoqKlJISIjMZjMz0IE6hCI6AAAAUA851lmdNm2ay5rokmS325WWlqbw8HDWWQXquFatWslkMqmkpMSlvaSk5ITXPD/jjDN0wQUX6IcffnAb4+vrK19f33+UK4C/z2QyKTY21tNpAHCDNdEBAACAesixzmpOTo6SkpJktVpVXl4uq9WqpKQk5eTksM4qcBpo1KiRevbsqdWrVzvb7Ha7Vq9e7TLb/FhsNps2bdrElScAAPxNzEQH6pE2/l6KbLRDZ3g13A/DBxvtkPy9PJ0GAAB1wpHrrMbExDjbWWcVOL2MHTtWQ4cOVa9evXTRRRdp9uzZ2rdvn4YNGyZJuuWWW3TWWWcpLS1NkjR16lRFRUWpY8eO2rNnj5588kn9/PPPuv322z35NAAAOG1RRAfqkTt7NtLk0LmeTsOzQqXJPRt5OgsAAOoM1lkFTn/XX3+9fv/9d02cOFHFxcXq0aOHVq5c6dxsdPv27S5LNv3555+64447VFxcrObNm6tnz5769NNP1aVLF089BQAATmsU0YF65MW8Sn163n06o2XD3QDo4B+/aFPek7ra04kAAAAANWjUqFEaNWpUtX25ubku92fNmqVZs2bVQlYAADQMFNGBeqR4ryFVhsrXCPd0Kh5TUWk7/DoAAABJUlZWlsaNG6fCwkJnW1hYmGbOnMlyLgAAAMAJYGNRAAAAoJ7KyspSSkqKIiMjXTYWjYyMVEpKirKysjydIgAAAFDnUUQHAAAA6iGbzaZx48YpISFBS5cu1auvvqpBgwbp1Vdf1dKlS5WQkKDx48fLZrN5OlUAAACgTmM5FwAAAKAeslgsKiwsVNu2beXv7+9s/+CDDzRnzhyZzWYVFBTIYrEoNjbWc4kCAADZbDY2AQfqMGaiAwAAAPVQUVGRpMPF9Oo42h1xAADAM7KystSxY0fFxcVp8ODBiouLU8eOHVl2DahDKKIDAAAA9VCzZs1qNA4AANQ89i8BTg8U0QEAAIB66PXXX3f+f79+/Vw+mPfr16/aOAAAUHuO3L8kOztbUVFR8vf3V1RUlLKzs9m/BKhDaryInpaWpn/9618688wzFRQUpKSkJG3bts0l5sCBAxo5cqRatmwpf39/DRo0SCUlJS4x27dv14ABA9SkSRMFBQXp/vvv16FDh2o6XQAAAKBeeuONN5z/7+PjI8MwnDcfH59q4wAAQO1x7F8yYcIEeXu7lui8vb2Vmprq3L8EgGfVeBH9o48+0siRI/XZZ59p1apVOnjwoK688krt27fPGTNmzBi98847ev311/XRRx9px44dSk5OdvbbbDYNGDBAlZWV+vTTT7V48WItWrRIEydOrOl0AQDA/8yZM0dhYWHy8/NT79699fnnn7uNnT9/vsxms5o3b67mzZsrPj7+mPEAal9lZaUkqXv37srPz1dMTIwCAgIUExOjzZs3q1u3bi5xAACgdjn2JYmIiKi239HO/iWA5/kcP+TkrFy50uX+okWLFBQUpLy8PF166aUqLS3Vyy+/rIyMDF1++eWSpIULF6pz58767LPPFBUVpQ8++EDffvutPvzwQwUHB6tHjx567LHH9OCDD2ry5Mlq1KhRTacNAECDtnz5co0dO1Zz585V7969NXv2bPXt21fbtm1TUFBQlfjc3FzdeOONiomJkZ+fn6ZPn64rr7xSmzdv1llnneWBZwDgaGeddZZ+/PFHffPNN9q3b5/Wr1+voqIihYSEqHfv3mratKkzDgAA1L6QkBBJUn5+vqKioqr05+fnu8QB8JxTviZ6aWmpJKlFixaSpLy8PB08eFDx8fHOmE6dOqldu3ayWq2S5NxAITg42BnTt29flZWVafPmzdWep6KiQmVlZS43AABwYp566indcccdGjZsmLp06aK5c+eqSZMmWrBgQbXxS5Ys0T333KMePXqoU6dOeumll2S327V69epazhyAOzNnzpQkGYahgIAAvffee+rZs6fee+89BQQEyDAMlzgAAFC7zGazwsLCNG3aNNntdpc+u92utLQ0hYeHy2w2eyhDAA6ntIhut9s1evRoXXzxxc5LUIqLi9WoUSM1a9bMJTY4OFjFxcXOmCML6I5+R1910tLSFBgY6Ly1bdu2hp8NAAD1U2VlpfLy8ly+4Pb29lZ8fLzzC+7j+euvv3Tw4EHnl+ZH48tuoPYlJCQ41z4/dOiQZsyYofPPP18zZsxw7jXk4+OjhIQET6YJAECDZTKZNHPmTOXk5CgpKcllE/CkpCTl5OQoPT1dJpPJ06kCDd4pLaKPHDlS+fn5WrZs2ak8jSQpNTVVpaWlztsvv/xyys8JAEB9sGvXLtlstmq/wHb35fXRHnzwQYWGhroU4o/El91A7TOZTFq+fPkxY5YvX84HcwAAPCg5OVmZmZnatGmTy/4l+fn5yszMdNlDEIDnnLIi+qhRo5STk6O1a9fq7LPPdra3adNGlZWV2rNnj0t8SUmJ2rRp44wpKSmp0u/oq46vr68CAgJcbgAA4NT7z3/+o2XLlunNN9+Un59ftTF82Q14RnJyst544w2Xv8clqW3btnrjjTf4YA4AQB2QnJysH374QWvXrlVGRobWrl2r77//nnEaqENqfGNRwzB077336s0331Rubq7Cw8Nd+nv27KkzzjhDq1ev1qBBgyRJ27Zt0/bt2xUdHS1Jio6O1hNPPKGdO3c6NzNbtWqVAgIC1KVLl5pOGQCABq1Vq1YymUzVfoHt7strh/T0dP3nP//Rhx9+qG7durmN8/X1la+vb43kC+DkJCcnKzExURaLxbmxqNlsZgY6AAB1iMlkUmxsrKfTAOBGjRfRR44cqYyMDL311ls688wznZeBBwYGqnHjxgoMDNTw4cM1duxYtWjRQgEBAbr33nsVHR3t3In4yiuvVJcuXXTzzTdrxowZKi4u1iOPPKKRI0fyARwAgBrWqFEj9ezZU6tXr1ZSUpIkOTcJHTVqlNvjZsyYoSeeeELvv/++evXqVUvZAvg7+GAOAAAA/H01XkR/4YUXJKnKH+kLFy7UrbfeKkmaNWuWvL29NWjQIFVUVKhv3756/vnnnbEmk0k5OTm6++67FR0draZNm2ro0KGaOnVqTacLAAAkjR07VkOHDlWvXr100UUXafbs2dq3b5+GDRsmSbrlllt01llnKS0tTZI0ffp0TZw4URkZGQoLC3N+ae7v7y9/f3+PPQ8AAAAAAGraKVnO5Xj8/Pw0Z84czZkzx21M+/bt9e6779ZkagAAwI3rr79ev//+uyZOnKji4mL16NFDK1eudG42un37dnl7//9WKi+88IIqKyuVkpLi8jiTJk3S5MmTazN1AAAAwOP++usvbd269R89xv79+1VYWKiwsDA1btz4Hz1Wp06d1KRJk3/0GAD+X40X0QEAwOlp1KhRbpdvyc3NdblfWFh46hMCAAAAThNbt25Vz549PZ2GU15eni688EJPpwHUGxTRAQAAgHrOZrOxsSgAAKdQp06dlJeX948eY8uWLbrpppv06quvqnPnzv84HwA1hyI6AAAAUI9lZWVp7Nix+vnnn51t7du311NPPaXk5GQPZgYAQP3RpEmTGpv53blzZ2aRA3WM9/FDAAAAAJyOsrKyNGjQIO3cudOlfefOnRo0aJCysrI8lBkAAABw+qCIDgAAANRDNptNd911lySpT58+slqtKi8vl9VqVZ8+fSRJd999t2w2myfTBAAAAOo8iugAAABAPZSbm6vff/9dl1xyid566y1FRUXJ399fUVFReuutt3TJJZdo586dVTYOBgAAAOCKIjoAAABQDzmK41OmTJG3t+uf/d7e3po0aZJLHAAAAIDqUUQHAAAAAAAAAMANiugAAABAPRQbGytJmjRpkux2u0uf3W7X5MmTXeIAAAAAVI8iOgAAAFAPxcbGKigoSB9//LESExNdNhZNTEzUJ598oqCgIIroAAAAwHH4eDoBAAAAADXPZDLphRdeUEpKilavXq2cnBxnX5MmTeTl5aUXXnhBJpPJg1kCAAAAdR8z0QEAAIB6Kjk5WZmZmQoODnZpDw4OVmZmppKTkz2UGQAAAHD6YCY6AAAAUI8lJycrMTFRFotFRUVFCgkJkdlsZgY6AAAAcIKYiQ4AAAAAAAAAgBsU0QEAAIB6LCsrSx07dlRcXJwGDx6suLg4dezYUVlZWZ5ODQAAADgtUEQHAAAA6qmsrCylpKQoMjJSVqtV5eXlslqtioyMVEpKCoV0AAAA4ARQRAcAAADqIZvNpnHjxikhIUHZ2dmKioqSv7+/oqKilJ2drYSEBI0fP142m83TqQIAAAB1GkV0AAAAoB6yWCwqLCzUhAkT5O3t+me/t7e3UlNTVVBQIIvF4qEMAQAAgNODj6cTAAAAAFDzioqKJEkRERGy2WyyWCwqKipSSEiIzGazIiIiXOIAAAAAVI8iOgAAAFAPhYSESJKee+45vfjiiyosLHT2hYWFacSIES5xAAAAAKrHci4AAABAPWQ2mxUUFKTU1FRFRES4bCwaERGhCRMmKCgoSGaz2dOpAgAAAHUaM9EBAACAesowDOd/8/Ly9O2332r//v3OdgAAAADHRxEdAAAAqIcsFot+//13DRkyRMuXL9eKFSucfT4+Pho8eLAyMjJksVgUGxvruUQBAACAOo7lXAAAAIB6yLFhaEZGhnx8XOfO+Pj4aOnSpS5xAAAAAKpHER0AAACoh4KCgiQdXsolPj7eZU30+Ph455IujjgAAAAA1aOIDgAAANRDdrtdktS8eXNlZmbqwIEDeuedd3TgwAFlZmaqefPmLnEAAAAAqsea6AAAAEA9tG7dOknSn3/+qebNm2v//v3OvsaNGzvvr1u3TldccYVHcgQAAABOB8xEBwAAAOq5AwcOHPM+AAAAAPeYiQ4AAADUQ2az2fn//fv314ABA5wz0FesWKF33323ShwAAACAqpiJDgAAANRDXl5eLv9/wQUXKCUlRRdccEGVPgAAAADuMRMdAAAAqIcca6JL0po1a7RixQrn/SZNmrjEsSY6AADS9u3btWvXLo+df8uWLS7/9ZRWrVqpXbt2Hs0BqGsoogMAAACngb/++ktbt2494fiioiJJ0p133qm3337bZWPRZs2aaciQIZo/f76Kioq0YcOGk8qlU6dOLoV4AABOd9u3b9f5nTrrwP6/PJ2KbrrpJo+e369xE23buoVCOnAEiugAAADAaWDr1q3q2bPn/7V35+FWlXX/+N8HkJlzkFkSRHEWnHCkBwGjgFBAMMyhQCktUUvz+RY+OWCDqWlpUo6B5jxFZaWSivIo5ZTzrOAQqIB6GERQzv794Y/zeISlzIfh9bqufcm+173W+ux19jm313vf+14rvN8ll1yyVNv06dNz2WWXJUmuuOKKXHHFFSt0zEceeSS77777CtcCAOuqWbNm5YMF76flAT/IJi071EoNpY8W5aPKt1Kvom3K6tWvlRo+nP16Zt92XmbNmiVEh08QogMAwHpg++23zyOPPLLc/RcvXpy+ffvm3XffTY8ePbL//vtnzJgxOf3003P33Xdn8uTJadGiRW6//fbUrVt3hWsBgA3RJi07pEG7rWuvgM13rL1zA4WE6AAAsB5o3LjxCs/+vvzyyzN06NA8/PDDmTx5cpJkzJgx1UuxXHbZZdlzzz1Xe60AALAhqVPbBQAAAGvGkCFDcsstt6RNmzY12tu0aZNbbrklQ4YMqaXKAABg/SFEBwCADdiQIUPy8ssvV6+Nfskll+Sll14SoAMAwHISogMAwAaubt262WOPPZIke+yxxwqvgQ4AABsza6LDBubD2a/X2rnXlTuJAwAAAMDqIkSHDUSrVq3SsFHjzL7tvNoupdY1bNQ4rVq1qu0yAAAAANgACNFhA9GxY8c8/9yzmTVrVq3V8Oyzz+aII47I1VdfnR122KHW6mjVqlU6duxYa+cHAAAAYMMhRIcNSMeOHdeJ8HiHHXbI7rvvXttlAAAAAMAqc2NRAAAAAAAoIEQHAAAAAIAClnMBAIC14LXXXqv1e5d88r+1yf1LAABYnwjRAQBgDXvttdey3fY75IMF79d2KTniiCNqu4Q0bNQ4zz/3rCAdAID1ghAdAADWsFmzZuWDBe+n5QE/yCYtO9RKDaWPFuWjyrdSr6JtyurVr5UakuTD2a9n9m3nZdasWUJ0AADWC0J0AABYSzZp2SEN2m1dewVsvmPtnRsAANZTbiwKAAAAAAAFhOgAAAAAAFBAiA4AAAAAAAXW6RB97Nix6dSpUxo2bJi99947Dz74YG2XBAAbrBUdd2+66aZsv/32adiwYbp27Zq//e1va6lSANj4GKcBoPassyH6DTfckJNOOimnn356Hn300eyyyy7p27dv3n777douDQA2OCs67j7wwAM59NBDM3LkyPz73//O4MGDM3jw4Dz11FNruXIA2PAZpwGgdpWVSqVSbRexLHvvvXf23HPPXHTRRUmSqqqqdOjQIccff3x+9KMfLdV/4cKFWbhwYfXzOXPmpEOHDqmsrEx5eflaqxvWV++//36ee+65VTrGs88+myOOOCJXX311dthhh5U+zvbbb5/GjRuvUi2wsZgzZ04qKipWebxb0XH3kEMOyfz583PbbbdVt+2zzz7Zddddc/HFFy/V3zjNxu7RRx/NgJ57ZIf+30y95m1X6hilxR9m8dx3VnNlK6dusxYpq7vJSu370Xtv5dm/X5W/3vtwdt9999VcGaxb1pdxOjFWw6qO1evSOJ2s/FhtnGZjs7xjdb21WNNyW7RoUR555JGMHj26uq1OnTrp06dPpkyZssx9zjrrrIwZM2ZtlQgbnOeeey7dunVbLcc64ogjVmn/Rx55xGANa9HKjLtTpkzJSSedVKOtb9++mTBhwjL7G6fZ2LVq1Sqj9mmSH+/4x9oupfa1T376bpO0atWqtiuB9cLaGKcTYzUYq/9/xmlYpnUyRJ81a1YWL16ctm1rfvLXtm3bwpmyo0ePrvE/CUs+NQeWz/bbb59HHnlklY6xYMGCTJs2LZ06dUqjRo1WqRZg7VmZcffNN99cZv8333xzmf2N02zsOnbsmBG/mZRnp7+40sdYuHBhpk+fvvqKWgXt27dPgwYNVnr/EV/fJpt37LgaK4IN19oYpxNjNazqWL0ujdPJqo3VxmlY2joZoq+MBg0arNL/yMPGrnHjxqtl9vcXv/jF1VANsKExTkOy+fbdku1X7Vtfu66eUgCWYqyGVR+rd119pQDrmHXyxqKtWrVK3bp189Zbb9Vof+utt9KuXbtaqgoANkwrM+62a9fOOA0Aa4FxGgBq3zoZotevXz/dunXLXXfdVd1WVVWVu+66K/vuu28tVgYAG56VGXf33XffGv2TZOLEicZpAFjNjNMAUPvW2eVcTjrppAwfPjx77LFH9tprr/z617/O/Pnzc+SRR9Z2aQCwwfm8cfeb3/xmvvCFL+Sss85Kknzve99Lz549c95552XAgAG5/vrr8/DDD+fSSy+tzZcBABsk4zQA1K51NkQ/5JBDMnPmzJx22ml58803s+uuu+b2229f6uYoAMCq+7xx97XXXkudOv/3Bbbu3bvn2muvzY9//OOccsop2WabbTJhwoR06dKltl4CAGywjNMAULvKSqVSqbaLWBPmzJmTioqKVFZWpry8vLbLAYA1Yn0d79bXugFgRazP4936XDsALK/lHe/WyTXRAQAAAABgXSBEBwAAAACAAkJ0AAAAAAAoIEQHAAAAAIACQnQAAAAAACggRAcAAAAAgAJCdAAAAAAAKCBEBwAAAACAAkJ0AAAAAAAoUK+2C1hTSqVSkmTOnDm1XAkArDlLxrkl4976wjgNwMZgfR2nE2M1ABuH5R2rN9gQfe7cuUmSDh061HIlALDmzZ07NxUVFbVdxnIzTgOwMVnfxunEWA3AxuXzxuqy0vr4kfhyqKqqyvTp09OsWbOUlZXVdjmwUZgzZ046dOiQ119/PeXl5bVdDmwUSqVS5s6dm/bt26dOnfVnlTbjNKx9xmlY+9bXcToxVkNtMFbD2re8Y/UGG6IDa9+cOXNSUVGRyspKAz4ArGOM0wCwbjNWw7pr/fooHAAAAAAA1iIhOgAAAAAAFBCiA6tNgwYNcvrpp6dBgwa1XQoA8CnGaQBYtxmrYd1lTXQAAAAAAChgJjoAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDq+y+++7LgQcemPbt26esrCwTJkyo7ZIAgE8wVgPAuss4Des+ITqwyubPn59ddtklY8eOre1SAIBlMFYDwLrLOA3rvnq1XQCw/uvfv3/69+9f22UAAAWM1QCw7jJOw7rPTHQAAAAAACggRAcAAAAAgAJCdAAAAAAAKCBEBwAAAACAAkJ0AAAAAAAoUK+2CwDWf/PmzctLL71U/Xzq1Kl57LHH0qJFi3Ts2LEWKwMAEmM1AKzLjNOw7isrlUql2i4CWL9NmjQpvXv3Xqp9+PDhGT9+/NovCACowVgNAOsu4zSs+4ToAAAAAABQwJroAAAAAABQQIgOAAAAAAAFhOgAAAAAAFBAiA4AAAAAAAWE6AAAAAAAUECIDgAAAAAABYToAAAAAABQQIgOAADrobKyskyYMKG2ywAACvTq1Svf//7318q5Tj311Bx99NHL3DZixIhltu+zzz655ZZb1mBVsOEQogOF3nzzzRx//PHZaqut0qBBg3To0CEHHnhg7rrrrlU+9vjx49O8efNVLxIANlAzZ87Md7/73XTs2DENGjRIu3bt0rdv39x///21XRoAbNAOPPDA9OvXb5nbJk+enLKysjzxxBNruapib775Zi644IL8z//8zwrt9+Mf/zg/+tGPUlVVtYYqgw2HEB1YpmnTpqVbt265++67c+655+bJJ5/M7bffnt69e2fUqFG1XR4AbPCGDh2af//737nyyivzwgsv5M9//nN69eqV2bNnr7FzLlq0aI0dGwDWFyNHjszEiRPzxhtvLLVt3Lhx2WOPPbLzzjvXQmXLdvnll6d79+7ZYostqttmzZqV4cOHp2PHjrnuuuuy9dZb52tf+1qNsb5///6ZO3du/v73v9dG2bBeEaIDy3TsscemrKwsDz74YIYOHZptt902O+20U0466aT885//TJK89tprGTRoUJo2bZry8vIMGzYsb731VvUxHn/88fTu3TvNmjVLeXl5unXrlocffjiTJk3KkUcemcrKypSVlaWsrCxnnHFGLb1SAFj3vPfee5k8eXLOPvvs9O7dO1tssUX22muvjB49OgMHDqzuN2vWrBx00EFp3Lhxttlmm/z5z3+u3rZ48eKMHDkyW265ZRo1apTtttsuF1xwQY3zjBgxIoMHD87PfvaztG/fPtttt12S5PXXX8+wYcPSvHnztGjRIoMGDcq0adOq95s0aVL22muvNGnSJM2bN88Xv/jFvPrqq2v2ogDAWnLAAQekdevWGT9+fI32efPm5aabbsrIkSMze/bsHHroofnCF76Qxo0bp2vXrrnuuus+87jLWoqtefPmNc7zeWPwslx//fU58MADa7SdeOKJ+ec//5k//OEP+epXv5rLLrssW221VY1Z53Xr1s1Xv/rVXH/99Z95fECIDizDO++8k9tvvz2jRo1KkyZNltrevHnzVFVVZdCgQXnnnXdy7733ZuLEiXnllVdyyCGHVPc7/PDDs/nmm+ehhx7KI488kh/96EfZZJNN0r179/z6179OeXl5ZsyYkRkzZuTkk09emy8RANZpTZs2TdOmTTNhwoQsXLiwsN+YMWMybNiwPPHEE/nqV7+aww8/PO+8806SpKqqKptvvnluuummPPPMMznttNNyyimn5MYbb6xxjLvuuivPP/98Jk6cmNtuuy0ffvhh+vbtm2bNmmXy5Mm5//7707Rp0/Tr1y+LFi3KRx99lMGDB6dnz5554oknMmXKlBx99NEpKytbo9cEANaWevXq5Zvf/GbGjx+fUqlU3X7TTTdl8eLFOfTQQ/PBBx+kW7du+etf/5qnnnoqRx99dL7xjW/kwQcfXOnzft4YvCzvvPNOnnnmmeyxxx412v/973/nm9/8Znr27JmKior07t07Z599dho2bFij31577ZXJkyevdM2wsahX2wUA656XXnoppVIp22+/fWGfu+66K08++WSmTp2aDh06JEmuuuqq7LTTTnnooYey55575rXXXst///d/Vx9nm222qd6/oqIiZWVladeu3Zp9MQCwHqpXr17Gjx+fb3/727n44ouz++67p2fPnvn6179e4+vjI0aMyKGHHpok+fnPf54LL7wwDz74YPr165dNNtkkY8aMqe675ZZbZsqUKbnxxhszbNiw6vYmTZrk8ssvT/369ZMkV199daqqqnL55ZdXB+Pjxo1L8+bNM2nSpOyxxx6prKzMAQcckM6dOydJdthhhzV+TQBgbTrqqKNy7rnn5t57702vXr2SfDweDh06NBUVFamoqKgxGez444/PHXfckRtvvDF77bXXSp3zhhtu+Mwx+Ctf+cpS+7z22msplUpp3759jfYvfvGLGTduXHbZZZfPPGf79u3z+uuvp6qqKnXqmGsLRfx2AEv55CftRZ599tl06NChOkBPkh133DHNmzfPs88+myQ56aST8q1vfSt9+vTJL37xi7z88strrGYA2NAMHTo006dPz5///Of069cvkyZNyu67717jK9+fDNSbNGmS8vLyvP3229VtY8eOTbdu3dK6des0bdo0l156aV577bUa5+natWt1gJ58vBzbSy+9lGbNmlXPiG/RokU++OCDvPzyy2nRokVGjBiRvn375sADD8wFF1yQGTNmrLkLAQC1YPvtt0/37t3z+9//PsnHk80mT56ckSNHJvl42bSf/OQn6dq1a1q0aJGmTZvmjjvuWGqcXRGfNwYvy4IFC5JkqRnm559/fg455JCceOKJueqqq7Lrrrvm4osvXmr/Ro0apaqq6jO/+QYI0YFl2GabbVJWVpbnnntulY5zxhln5Omnn86AAQNy9913Z8cdd8wf//jH1VQlAGz4GjZsmC9/+cs59dRT88ADD2TEiBE5/fTTq7dvsskmNfqXlZVVr3V6/fXX5+STT87IkSNz55135rHHHsuRRx651NfBP71027x589KtW7c89thjNR4vvPBCDjvssCQfz4qbMmVKunfvnhtuuCHbbrtt9T1TAGBDMXLkyNxyyy2ZO3duxo0bl86dO6dnz55JknPPPTcXXHBBfvjDH+aee+7JY489lr59+37mTbrLysqWmrT24YcfVv97ecbgT2vVqlWS5N13363R3qRJk/zsZz/Liy++mIEDB+a73/1uTjrppFx66aU1+r3zzjtp0qRJGjVqtPwXBjZCQnRgKS1atEjfvn0zduzYzJ8/f6nt7733XnbYYYe8/vrref3116vbn3nmmbz33nvZcccdq9u23XbbnHjiibnzzjszZMiQjBs3LklSv379LF68eM2/GADYgOy4447LHJuX5f7770/37t1z7LHHZrfddsvWW2+9XN8K23333fPiiy+mTZs22XrrrWs8KioqqvvttttuGT16dB544IF06dIl11577Uq/LgBYFw0bNix16tTJtddem6uuuipHHXVU9TIr999/fwYNGpQjjjgiu+yyS7baaqu88MILn3m81q1b1/j21osvvpj333+/+vnyjsGf1Llz55SXl+eZZ54pPG/z5s1zzDHHpH///kutf/7UU09lt912+9xrARs7ITqwTGPHjs3ixYuz11575ZZbbsmLL76YZ599NhdeeGH23Xff9OnTJ127ds3hhx+eRx99NA8++GD1TUv22GOPLFiwIMcdd1wmTZqUV199Nffff38eeuih6jVTO3XqlHnz5uWuu+7KrFmzavyPAwBs7GbPnp39998/V199dZ544olMnTo1N910U84555wMGjRouY6xzTbb5OGHH84dd9yRF154Iaeeemoeeuihz93v8MMPT6tWrTJo0KBMnjw5U6dOzaRJk3LCCSfkjTfeyNSpUzN69OhMmTIlr776au688868+OKL1kUHYIPTtGnTHHLIIRk9enRmzJiRESNGVG/bZpttMnHixDzwwAN59tlnc8wxx+Stt976zOPtv//+ueiii/Lvf/87Dz/8cL7zne/U+FbZ543By1KnTp306dMn//u//1uj/cQTT8y9996bysrKLF68OPfcc0/uvffedOvWrUa/yZMnL3OtdaAmITqwTFtttVUeffTR9O7dOz/4wQ/SpUuXfPnLX85dd92V3/3udykrK8uf/vSnbLrpptlvv/3Sp0+fbLXVVrnhhhuSJHXr1s3s2bPzzW9+M9tuu22GDRuW/v37V9/grHv37vnOd76TQw45JK1bt84555xTmy8XANYpTZs2zd57751f/epX2W+//dKlS5eceuqp+fa3v52LLrpouY5xzDHHZMiQITnkkEOy9957Z/bs2Tn22GM/d7/GjRvnvvvuS8eOHTNkyJDssMMOGTlyZD744IOUl5encePGee655zJ06NBsu+22OfroozNq1Kgcc8wxq/qyAWCdM3LkyLz77rvp27dvjZt3/vjHP87uu++evn37plevXmnXrl0GDx78mcc677zz0qFDh/To0SOHHXZYTj755DRu3Lh6++eNwUW+9a1v5frrr69e0i1JOnbsmJNOOikdOnTItddem29+85s56qijcvzxx1f3+c9//pMHHnggRx555EpcGdi4lJWW5w6CAAAAAMA6p1QqZe+9986JJ56YQw89dKntI0aMqHFj8iV++MMf5t13311qnXRgaWaiAwAAAMB6qqysLJdeemk++uijFdqvTZs2+clPfrKGqoINi5noAAAAAABQwEx0AAAAAAAoIEQHAAAAAIACQnQAAAAAACggRAcAAAAAgAJCdAAAAAAAKCBEBwAAAACAAkJ0AAAAAAAoIEQHAAAAAIACQnQAAAAAACggRAcAAAAAgAJCdAAAAAAAKCBEBwAAAACAAkJ0AAAAAAAoIEQHAAAAAIACQnQAAAAAACggRAcAAAAAgAJCdAAAAAAAKCBEBwAAAACAAkJ0AAAAAAAoIEQHAAAAAIACQnQAAAAAACggRAcAAAAAgAJCdAAAAAAAKCBEBwAAAACAAkJ0AAAAAAAoIEQHAAAAAIACQnQAAAAAACggRAcAAAAAgAJCdAAAAAAAKCBEBwAAAACAAkJ0gFoyYsSING3atLbL2OCUlZXljDPOqO0yAAAAgA2EEH09cvPNN6esrGyZjy5dutR2ebDR6NWrV0aMGJHk4yC8V69eNbbPmzcvp59+erp06ZImTZqkZcuW2XXXXfO9730v06dPX/sFr2G9evUq/Nv0ycfyBNvXXnttfv3rX6/W+saPH5+ysrIkyaRJk1JWVpZp06at1nMAAAAAG656tV0AK+6UU07JDjvsUP38Zz/7WS1WA3zShx9+mP322y/PPfdchg8fnuOPPz7z5s3L008/nWuvvTYHHXRQ2rdvX9tlrlb/8z//k29961vVzx966KFceOGFS/2t2nnnnT/3WNdee22eeuqpfP/7318TpQIAAACsMCH6eujLX/5yjZmvl19+eWbNmlV7BQHVJkyYkH//+9+55pprcthhh9XY9sEHH2TRokVrtZ6qqqosWrQoDRs2XGPn+PKXv1zjecOGDXPhhRcu9bcKAAAAYH1kOZf1yJLwrU6dz/+xLVm+4JNLFlRVVWXnnXdOWVlZxo8fX93+xBNPZMSIEdlqq63SsGHDtGvXLkcddVRmz55d45hnnHHGMpdoqFfv/z6L6dWrV7p06ZJHHnkk3bt3T6NGjbLlllvm4osvXuq1nHbaaenWrVsqKirSpEmT9OjRI/fcc0+NftOmTas+z4QJE2ps++CDD7LpppumrKwsv/zlL5eqs02bNvnwww9r7HPddddVH++THzz86U9/yoABA9K+ffs0aNAgnTt3zk9+8pMsXrz4c6/1kvM999xzGTZsWMrLy9OyZct873vfywcffFCj77hx47L//vunTZs2adCgQXbcccf87ne/W+qYgwYNSqdOndKwYcO0adMmAwcOzJNPPlmjz5LXsaylL7bffvuUlZXluOOOq2575513cvLJJ6dr165p2rRpysvL079//zz++OM19h0+fHgaNmyYZ599tkZ73759s+mmm9ZYjuSVV17J1772tbRo0SKNGzfOPvvsk7/+9a819luyfMaSR4MGDbLtttvmrLPOSqlU+uyL+/8reu8tK6D95Hvm049PevvttzNy5Mh07NgxdevWre6zqmuUv/zyy0mSL37xi0tta9iwYcrLy5dq/89//pPBgwenadOmad26dU4++eSl3nu//OUv071797Rs2TKNGjVKt27dcvPNNy91rCU/92uuuSY77bRTGjRokNtvv736PEcddVTatm2bBg0aZKeddsrvf//7pY7xm9/8JjvttFMaN26cTTfdNHvssUeuvfbalboen/Tb3/62uqb27dtn1KhRee+996q39+rVK3/961/z6quvVv88OnXqlGT5/2YAAAAArG5moq9HloToDRo0WKn9//CHPywVxCbJxIkT88orr+TII49Mu3bt8vTTT+fSSy/N008/nX/+859LhY+/+93vagSNnw7133333Xz1q1/NsGHDcuihh+bGG2/Md7/73dSvXz9HHXVUkmTOnDm5/PLLc+ihh+bb3/525s6dmyuuuCJ9+/bNgw8+mF133bXGMRs2bJhx48Zl8ODB1W233nrrUiH1J82dOze33XZbDjrooOq2cePGpWHDhkvtN378+DRt2jQnnXRSmjZtmrvvvjunnXZa5syZk3PPPbfwHJ80bNiwdOrUKWeddVb++c9/5sILL8y7776bq666qsa122mnnTJw4MDUq1cvf/nLX3Lsscemqqoqo0aNqnG8o48+Ou3atcv06dNz0UUXpU+fPpk6dWoaN2681HX55NIXDzzwQF599dWl6nvllVcyYcKEfO1rX8uWW26Zt956K5dcckl69uyZZ555pnqJkQsuuCB33313hg8fnilTpqRu3bq55JJLcuedd+YPf/hDdb+33nor3bt3z/vvv58TTjghLVu2zJVXXpmBAwfm5ptvrnHdk/9bhmjBggW54YYbcsopp6RNmzYZOXLkcl3fJddvyXtv9OjRn9n36KOPTo8ePZJ8/F754x//WGP78OHD849//CPHH398dtlll9StWzeXXnppHn300eWuZ1m22GKLJMlVV12VH//4x0v9/nza4sWL07dv3+y999755S9/mX/84x8577zz0rlz53z3u9+t7nfBBRdk4MCBOfzww7No0aJcf/31+drXvpbbbrstAwYMqHHMu+++OzfeeGOOO+64tGrVKp06dcpbb72VffbZpzpkb926df7+979n5MiRmTNnTvV76LLLLssJJ5yQgw8+uPqDoCeeeCL/+te/lppZvyLOOOOMjBkzJn369Ml3v/vdPP/88/nd736Xhx56KPfff3822WST/M///E8qKyvzxhtv5Fe/+lWSVP+8V/RvBgAAAMBqU2K98etf/7qUpPT444/XaO/Zs2dpp512qtE2bty4UpLS1KlTS6VSqfTBBx+UOnbsWOrfv38pSWncuHHVfd9///2lznXdddeVkpTuu+++6rbTTz+9lKQ0c+bMwhp79uxZSlI677zzqtsWLlxY2nXXXUtt2rQpLVq0qFQqlUofffRRaeHChTX2fffdd0tt27YtHXXUUdVtU6dOLSUpHXrooaV69eqV3nzzzeptX/rSl0qHHXZYKUnp3HPPXarOQw89tHTAAQdUt7/66qulOnXqlA499NClXseyrsExxxxTaty4cemDDz4ofL2fPN/AgQNrtB977LFL/byWdZ6+ffuWttpqq888x4033lhKUnr44Yer25KUDj744FK9evVqtI8cObL6uowaNaq6/YMPPigtXry4xnGnTp1aatCgQenMM8+s0X7HHXeUkpR++tOfll555ZVS06ZNS4MHD67R5/vf/34pSWny5MnVbXPnzi1tueWWpU6dOlWf65577iklKd1zzz01aqlTp07p2GOP/czXvcQpp5xSSlKaNWtWddtOO+1U6tmz51J9X3zxxVKS0pVXXlndtuRntMSCBQtKderUKR1zzDE19h0+fHipSZMmy1VTkffff7+03XbblZKUtthii9KIESNKV1xxRemtt95aqu/w4cNLSZa6/rvttlupW7duSx33kxYtWlTq0qVLaf/996/RnqRUp06d0tNPP12jfeTIkaXNNtusxjUslUqlr3/966WKiorq4w8aNGipvycr6qabbqrxM3/77bdL9evXL33lK1+p8R686KKLSklKv//976vbBgwYUNpiiy2WOuby/s0olT6+BqeffvoqvQYAAACAJSznsh5ZsrxK69atV3jfsWPHZvbs2Tn99NOX2taoUaPqf3/wwQeZNWtW9tlnnyRZqVm59erVyzHHHFP9vH79+jnmmGPy9ttv55FHHkmS1K1bN/Xr10/y8TIz77zzTj766KPsscceyzzn7rvvnp122il/+MMfkiSvvvpq7rnnnowYMaKwjqOOOiq333573nzzzSTJlVdemX333TfbbrvtUn0/eQ3mzp2bWbNmpUePHnn//ffz3HPPLdfr/vRM8uOPPz5J8re//W2Z56msrMysWbPSs2fPvPLKK6msrKyx//vvv59Zs2blsccey2WXXZa2bdsuVXvbtm0zYMCAjBs3rnqfG2+8MUceeeRS9TVo0KD6WwOLFy/O7Nmz07Rp02y33XZLXfOvfOUrOeaYY3LmmWdmyJAhadiwYS655JIaff72t79lr732yn/9139VtzVt2jRHH310pk2blmeeeaZG/yWv97XXXss555yTqqqq7L///su4kktb8s2B5VnXe3m+sTF//vxUVVWlZcuWy3X+FdGoUaP861//yn//938n+fhbDiNHjsxmm22W448/PgsXLlxqn+985zs1nvfo0SOvvPLKUsdd4t13301lZWV69OixzN+Xnj17Zscdd6x+XiqVcsstt+TAAw9MqVTKrFmzqh99+/ZNZWVl9XGaN2+eN954Iw899NDKX4RP+cc//pFFixbl+9//fo1vrnz7299OeXn5UksALcuK/s0AAAAAWF2E6OuRV199NfXq1VvhEL2ysjI///nPc9JJJ6Vt27ZLbX/nnXfyve99L23btk2jRo3SunXrbLnlltX7rqj27dunSZMmNdqWhL+fXKP9yiuvzM4775yGDRumZcuWad26df76178WnvPII4+sDovHjx+f7t27Z5tttimsY9ddd02XLl1y1VVXpVQqZfz48csMl5Pk6aefzkEHHZSKioqUl5endevWOeKII5Is/zX4dC2dO3dOnTp1arzm+++/P3369EmTJk3SvHnztG7dOqeccsoyz3PmmWemdevW2W233TJt2rRMmjQpzZo1W+q8Rx55ZK699tosXLgwN910UzbddNNlhtNVVVX51a9+lW222SYNGjRIq1at0rp16zzxxBPLfI2//OUv06JFizz22GO58MIL06ZNmxrbX3311Wy33XZL7bfDDjtUb/+kwYMHp3Xr1tliiy1yxhln5Mc//nGGDh261P7LMmvWrGyyySY1lrIpsmSN7c9a27xly5bZZpttcvnll+fOO+/M22+/nVmzZi0z4F4ZFRUVOeecczJt2rRMmzYtV1xxRbbbbrtcdNFF+clPflKjb8OGDZf6nd50003z7rvv1mi77bbbss8++6Rhw4Zp0aJFWrdund/97nfL/Nkt+f1dYubMmXnvvfdy6aWXpnXr1jUeS34n3n777STJD3/4wzRt2jR77bVXttlmm4waNSr333//Kl2PJe+FT79f6tevn6222mqZyw8ty4r+zQAAAABYHTb4EP2+++7LgQcemPbt2y/z5pTL44477sg+++yTZs2apXXr1hk6dGiNYHRtef7557PVVlvVuJHn8jj77LNTp06d6pmxnzZs2LBcdtll+c53vpNbb701d955Z/WNCKuqqla57mW5+uqrM2LEiHTu3DlXXHFFbr/99kycODH7779/4TmPOOKIvPTSS/nnP/+ZK6+8sjAQ/6Sjjjoq48aNy7333ps333wzw4YNW6rPe++9l549e+bxxx/PmWeemb/85S+ZOHFizj777CQrfw0+vRb2yy+/nC996UuZNWtWzj///Pz1r3/NxIkTc+KJJy7zPN/61rdy55135ve//30aNmyYoUOHLjMsHDBgQOrXr58JEyZk3LhxGT58+DJvPrvkg5T99tsvV199de64445MnDgxO+200zJf47///e/qYHVZa+mvqF/+8peZOHFi/va3v+X000/P2WefnTFjxizXvtOmTUvHjh0/d33xJNXfPGjXrt1n9rvhhhvSsmXL9O3bN23btk3r1q1z/fXXL1c9K2KLLbbIUUcdlfvvvz/NmzfPNddcU2N73bp1P/cYkydPzsCBA9OwYcP89re/zd/+9rdMnDgxhx122DJvzvrJWevJ/723jjjiiEycOHGZjyU3Qt1hhx3y/PPP5/rrr89//dd/5ZZbbsl//dd/LfNbLGvTyvzNAAAAAFgdNvgbi86fPz+77LJLjjrqqAwZMmSF9586dWoGDRqUk046Kddcc00qKytz4oknZsiQIWt1CYGFCxfmscceq3FjzeUxffr0XHDBBTnrrLPSrFmz6iVhlnj33Xdz1113ZcyYMTnttNOq21988cWVrnX69OmZP39+jdnoL7zwQpKkU6dOSZKbb745W221VW699dYawehnBXUtW7bMwIEDq5eGGTZsWGbNmvWZtRx++OH57//+73zve9/LwQcfvMyZ3JMmTcrs2bNz6623Zr/99qtunzp16nK93iVefPHFGjOAX3rppVRVVVW/5r/85S9ZuHBh/vznP6djx47V/e65555lHm/rrbfO1ltvnSTp06dPOnbsmGuvvbbGzSaTj5fP+cY3vpGf/exnefrpp/P73/9+mce7+eab07t371xxxRU12t977720atWqRtv8+fNz5JFHZscdd0z37t1zzjnn5KCDDsqee+5Z3WeLLbbI888/v9R5lix/s+QGm0t069YtvXr1SpL0798///nPf3L22Wfn1FNPXWbov8RHH32Uxx9/PP369Svs80nPPPNMysrKljlL/pN22223XHbZZenRo0fOPPPM7LPPPjn33HNXedZ1kU033TSdO3fOU089tcL73nLLLWnYsGHuuOOOGsvULPlmxudp3bp1mjVrlsWLF6dPnz6f279JkyY55JBDcsghh2TRokUZMmRIfvazn2X06NHLtaTOpy15Lyz5IHCJRYsWZerUqTVqKvqgZGX+ZgAAAACsDhv8TPT+/fvnpz/9aQ466KBlbl+4cGFOPvnkfOELX0iTJk2y9957Z9KkSdXbH3nkkSxevDg//elP07lz5+y+++45+eST89hjj+XDDz9cS68i1ct1fOlLX1qh/caMGZO2bdsutebyEktmwX56Nuuvf/3rlaoz+Tj0/OT62YsWLcoll1yS1q1bp1u3boXn/de//pUpU6Z85rGPOuqoPPHEE/na1772mct1LNGiRYsMGjQoTzzxRI466qhl9llWLYsWLcpvf/vbzz3+J40dO7bG89/85jdJPn4PFp2nsrJyuYLQJR8WFC03ctRRR+XJJ5/MfvvtVyOk/KS6desu9XO+6aab8p///Gepvj/84Q/z2muv5corr8z555+fTp06Zfjw4TXO/9WvfjUPPvhgjZ/Z/Pnzc+mll6ZTp0411uRelgULFuSjjz7KRx999Jn97rzzzlRWVmbQoEGf2S/5+L13yy23ZK+99vrc98ecOXPyjW98IwMHDsyPf/zj9OnTJ5ttttnnnuPzPP7448v8cOfVV1/NM88887nh/rLUrVs3ZWVlWbx4cXXbtGnTlvubNXXr1s3QoUNzyy23LDPEnzlzZvW/P/1BW/369bPjjjumVCqt9N+8Pn36pH79+rnwwgtrvAevuOKKVFZWZsCAAdVtTZo0WeY3Llb2bwYAAADAqtrgZ6J/nuOOOy7PPPNMrr/++rRv3z5//OMf069fvzz55JPZZptt0q1bt9SpUyfjxo3LiBEjMm/evPzhD39Inz59sskmm6zx+ubPn5/f/OY3OfPMM6tD0KuvvrpGn7feeivz5s3L1VdfnS9/+cs11j2/8847c80111TfkO/TysvLs99+++Wcc87Jhx9+mC984Qu58847V3gW9ie1b98+Z599dqZNm5Ztt902N9xwQx577LFceuml1dfsgAMOyK233pqDDjooAwYMyNSpU3PxxRdnxx13zLx58wqP3a9fv8ycOXO5AvQlxo8fn7Fjxy4123qJ7t27Z9NNN83w4cNzwgknpKysLH/4wx+WuUzGZ5k6dWoGDhyYfv36ZcqUKbn66qtz2GGHZZdddkny8c0669evnwMPPDDHHHNM5s2bl8suuyxt2rTJjBkzqo/zt7/9LZdffnm6d++eFi1a5JVXXslll12WJk2aFH4YtMMOO2TWrFlLLePxSQcccEDOPPPMHHnkkenevXuefPLJXHPNNUuF7nfffXd++9vf5vTTT8/uu++e5OMZz7169cqpp56ac845J0nyox/9KNddd1369++fE044IS1atMiVV16ZqVOn5pZbbllqdvnEiRPzxhtv5MMPP8xDDz2Ua665JgMHDix8byYfL7ly8sknp0GDBlmwYEGN935lZWUWL16cCRMmZPDgwfnHP/6RU089NU888UT+8pe/FB5ziVGjRmXBggW5/PLLP7fvipg4cWJOP/30DBw4MPvss0+aNm2aV155Jb///e+zcOHCnHHGGSt8zAEDBuT8889Pv379cthhh+Xtt9/O2LFjs/XWW+eJJ55YrmP84he/yD333JO999473/72t7PjjjvmnXfeyaOPPpp//OMfeeedd5J8/D5t165dvvjFL6Zt27Z59tlnc9FFF2XAgAHL/CbH8mjdunVGjx6dMWPGpF+/fhk4cGCef/75/Pa3v82ee+5Zff+B5ONvLNxwww056aSTsueee6Zp06Y58MADV/pvBgAAAMAqK21EkpT++Mc/Vj9/9dVXS3Xr1i395z//qdHvS1/6Umn06NHVzydNmlRq06ZNqW7duqUkpX333bf07rvvrpWap06dWkqy3I977rmnVCqVSuPGjSslKe26666lqqqqpY43bty46rY33nijdNBBB5WaN29eqqioKH3ta18rTZ8+vZSkdPrpp1f3O/3000tJSjNnziyst2fPnqWddtqp9PDDD5f23XffUsOGDUtbbLFF6aKLLqrRr6qqqvTzn/+8tMUWW5QaNGhQ2m233Uq33XZbafjw4aUttthiqXrPPffcz7w+n9z+eXUua/v9999f2meffUqNGjUqtW/fvvT//t//K91xxx01rmmRJcd75plnSgcffHCpWbNmpU033bR03HHHlRYsWFCj75///OfSzjvvXGrYsGGpU6dOpbPPPrv0+9//vpSkNHXq1FKpVCo99dRTpa985Sulli1blurXr1/q0KFD6etf/3rpiSeeqHGsJKVRo0YV1vXp7R988EHpBz/4QWmzzTYrNWrUqPTFL36xNGXKlFLPnj1LPXv2LJVKpdKcOXNKW2yxRWn33XcvffjhhzWOd+KJJ5bq1KlTmjJlSnXbyy+/XDr44INLzZs3LzVs2LC01157lW677bYa+91zzz013qP16tUrbbHFFqUTTjjhc3+Ptthii899zy95vxx//PGl/fbbr3T77bcvdZwlP6MlrrvuulJZWdlSfYcPH15q0qTJZ9b0eV555ZXSaaedVtpnn31Kbdq0KdWrV6/UunXr0oABA0p33333cp3v0/WWSqXSFVdcUdpmm21KDRo0KG2//falcePGLbPfZ70v3nrrrdKoUaNKHTp0KG2yySaldu3alb70pS+VLr300uo+l1xySWm//fYrtWzZstSgQYNS586dS//93/9dqqysXO5rcNNNNy3zd+eiiy4qbb/99qVNNtmk1LZt29J3v/vdpd4D8+bNKx122GGl5s2b1/j5Lu/fjCXX4JN/uwAAAABWRVmptILTbddjZWVl+eMf/1i9rvhf//rXHHDAATXW7k4+XjJjyJAhueGGG/Lmm29mv/32y+DBg3PooYdm7ty5Oe2001KvXr1MnDhxuW50uCqmTZuWLbfcMvfcc0/1etKr0m9N69WrV2bNmrVS6z6vr84444yMGTMmM2fOLJztzsrp1KlTzjjjjIwYMWKZ2ydNmpQRI0bUyo1+AQAAANg4bNTLucybNy9169bNI488Ur3e7hJLlgsZO3ZsKioqqpewSJKrr746HTp0yL/+9a/ss88+a7VmAAAAAADWno06RN9tt92yePHivP322+nRo8cy+7z//vtLre28JHCvqqpa4zU2bdo0hx9+eI11zlelH6xPDjrooHTu3Llwe9u2bQvXiQcAAACA1WGDX85l3rx5eemll5J8HJqff/756d27d1q0aJGOHTvmiCOOyP3335/zzjsvu+22W2bOnJm77rorO++8cwYMGJC77747ffr0yRlnnFG9nMspp5yS5557Ls8+++xn3shxY2Q5F8u5AAAAAMCGZIMP0SdNmpTevXsv1T58+PCMHz8+H374YX7605/mqquuyn/+85+0atUq++yzT8aMGZOuXbsmSa6//vqcc845eeGFF9K4cePsu+++Ofvss7P99tuv7ZcDAAAAAMBatMGH6AAAAAAAsLLqfH4XAAAAAADYOG2wNxatqqrK9OnT06xZs5SVldV2OQCwRpRKpcydOzft27df6kbYAAAAwKrbYEP06dOnp0OHDrVdBgCsFa+//no233zz2i4DAAAANjgbbIjerFmzJB+HCuXl5bVcDQCsGXPmzEmHDh2qxz0AAABg9dpgQ/QlS7iUl5cL0QHY4Fm6DAAAANYMi6cCAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFKhX2wUAG4bFixdn8uTJmTFjRjbbbLP06NEjdevWre2yAAAAAGCVmIkOrLJbb701W2+9dXr37p3DDjssvXv3ztZbb51bb721tksDAAAAgFUiRAdWya233pqDDz44Xbt2zZQpUzJ37txMmTIlXbt2zcEHHyxIBwAAAGC9VlYqlUq1XcSaMGfOnFRUVKSysjLl5eW1XQ5skBYvXpytt946Xbt2zYQJE1Knzv99LldVVZXBgwfnqaeeyosvvmhpF1hDjHcAAACwZpmJDqy0yZMnZ9q0aTnllFNSKpUyadKkXHfddZk0aVJKpVJGjx6dqVOnZvLkybVdKgAAAACsFDcWBVbajBkzkiQvv/xyDj300EybNq16W6dOnfLTn/60Rj8AAAAAWN+YiQ6stM022yxJcsQRRyxzTfQjjjiiRj8AAAAAWN9YEx1YaYsWLUqTJk3SsmXLvPHGG6lX7/++3PLRRx9l8803z+zZszN//vzUr1+/FiuFDZfxDgAAANYsy7kAK+2BBx7IRx99lLfffjsHHXRQ+vXrl0aNGmXBggW5/fbb8/bbb6dUKuWBBx5Ir169artcAAAAAFhhQnRgpS1Z6/yEE07I2LFjc9ttt1Vvq1evXk444YRccMEF1kQHAAAAYL0lRAdW2pK1zi+44IIMGDAgW2+9dRYsWJBGjRrlpZdeygUXXFCjHwAAAACsb6yJDqy0JWuiN2nSJBUVFXnttdeqt3Xs2DGVlZWZP3++NdFhDTLeAQAAwJpVp7YLANZfS9ZEr6yszMKFC3PppZdm+vTpufTSS7Nw4cJUVlbmo48+ygMPPFDbpQIAAADASrGcC7DS/vOf/yRJdtttt7z77rs5+uijq7dtueWW2W233fLvf/+7uh8AAAAArG/MRAdW2syZM5Mkxx57bF566aXcc889ufbaa3PPPffkxRdfzHe+850a/QAAAABgfWMmOrDSWrdunSS59dZbc9RRR6VXr17V26qqqjJhwoQa/QAAAABgfWMmOrDSvvCFLyRJbr/99gwePDhTpkzJ3LlzM2XKlAwePDi33357jX4AAAAAsL4pK5VKpdouYk2YM2dOKioqUllZmfLy8touBzZIixcvztZbb51WrVpl1qxZmTZtWvW2LbfcMi1btszs2bPz4osvpm7durVXKGzAjHcAAACwZlnOBVhpdevWzXnnnZeDDz44AwYMyMknn5xGjRplwYIFuf322/PXv/41N998swAdAAAAgPWWEB1YJUOGDMnNN9+cH/zgB7ntttuq27fccsvcfPPNGTJkSC1WBwAAAACrxnIuwGqxaNGi/Pa3v83LL7+czp0759hjj039+vVruyzY4BnvAAAAYM0yEx1YZbfeemt+8IMf1FgT/YILLsh5551nJjoAAAAA67U6tV0AsH679dZbc/DBB6dr166ZMmVK5s6dmylTpqRr1645+OCDc+utt9Z2iQAAAACw0iznAqy0xYsXZ+utt07Xrl0zYcKE1Knzf5/LVVVVZfDgwXnqqafy4osvurkorCHGOwAAAFizzEQHVtrkyZMzbdq0nHLKKTUC9CSpU6dORo8enalTp2by5Mm1VCEAAAAArBprogMrbcaMGUmSLl26ZPHixZk8eXJmzJiRzTbbLD169EiXLl1q9AMAAACA9Y0QHVhpm222WZLkoosuyiWXXFLjxqKdOnXK0UcfXaMfAAAAAKxvLOcCrLQePXqkTZs2GT16dLp06VLjxqJdunTJKaeckjZt2qRHjx61XSoAAAAArBQhOrBKPnlv4lKpVP0AAAAAgA2BEB1YaZMnT87MmTNz1lln5amnnkr37t1TXl6e7t275+mnn87Pf/7zvP32224sCgAAAMB6S4gOrLQlNww97rjj8tJLL+Wee+7Jtddem3vuuScvvvhijjvuuBr9AAAAAGB948aiwEpbcsPQp556Kvvss0969epVY/tTTz1Vox8AAAAArG/MRAdWWo8ePdKpU6f8/Oc/T1VVVY1tVVVVOeuss7Llllu6sSgAAAAA6y0hOrDS6tatm/POOy+33XZbBg8enClTpmTu3LmZMmVKBg8enNtuuy2//OUvU7du3douFQAAAABWiuVcgFUyZMiQ3HzzzfnBD36Q7t27V7dvueWWufnmmzNkyJBarA4AAAAAVk1ZqVQq1XYRa8KcOXNSUVGRysrKlJeX13Y5sMFbvHhxJk+enBkzZmSzzTZLjx49zECHtcB4BwAAAGuWmejAalG3bt2lbiwKAAAAAOs7a6IDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABRYL0L0X/ziFykrK8v3v//92i4FAAAAAICNyDofoj/00EO55JJLsvPOO9d2KQAAAAAAbGTW6RB93rx5Ofzww3PZZZdl0003re1yAAAAAADYyKzTIfqoUaMyYMCA9OnT53P7Lly4MHPmzKnxAAAAAACAVVGvtgsocv311+fRRx/NQw89tFz9zzrrrIwZM2YNVwUAAAAAwMZknZyJ/vrrr+d73/terrnmmjRs2HC59hk9enQqKyurH6+//voarhIAAAAAgA1dWalUKtV2EZ82YcKEHHTQQalbt2512+LFi1NWVpY6depk4cKFNbYty5w5c1JRUZHKysqUl5ev6ZIBoFYY7wAAAGDNWieXc/nSl76UJ598skbbkUceme233z4//OEPPzdABwAAAACA1WGdDNGbNWuWLl261Ghr0qRJWrZsuVQ7AAAAAACsKevkmugAAAAAALAuWCdnoi/LpEmTarsEAAAAAAA2MmaiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAAAAAAFBCiAwAAAABAASE6AAAAAAAUEKIDAAAAAEABIToAAAAAABQQogMAAAAAQAEhOgAA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4Ac/yE477ZQZM2ZkxowZ1dvq1KmTCy+8ME8//XSuvPLK3H333fl//+//rdD5AQAAAOCTLOcC64l69epl/Pjx+fa3v52LL744u+++e3r27Jmvf/3r2XnnnWv0HTFiRA499NAkyc9//vNceOGFefDBB9OvX79ssskmGTNmTHXfLbfcMlOmTMmNN96YYcOGVbc3adIkl19+efUyLldffXWqqqpy+eWXVwfj48aNS/PmzTNp0qTsscceqayszAEHHJDOnTsnSXbYYYcVfp133XVXnnzyyUydOjUdOnRIklx11VXZaaed8tBDD2XPPfdM06ZNU69evbRr167Gvt///ver/92pU6f89Kc/zXe+85389re/XeE6AAAAACAxEx3WK0OHDs306dPz5z//Of369cukSZOy++67Vy9nssQnQ/UmTZqkvLw8b7/9dnXb2LFj061bt7Ru3TpNmzbNpZdemtdee63GMbp27VpjHfTHH388L730Upo1a1Y9K75Fixb54IMP8vLLL6dFixYZMWJE+vbtmwMPPDAXXHBBZsyYscKv8dlnn02HDh2qA/Qk2XHHHdO8efM8++yzn7nvP/7xj3zpS1/KF77whTRr1izf+MY3Mnv27Lz//vsrXAcAAAAAJEJ0WO80bNgwX/7yl3PqqafmgQceyIgRI3L66afX6LPJJpvUeF5WVpaqqqokyfXXX5+TTz45I0eOzJ133pnHHnssRx55ZBYtWlRjnyZNmtR4Pm/evHTr1i2PPfZYjccLL7yQww47LMnHM9OnTJmS7t2754Ybbsi2226bf/7zn6v7EizTtGnTcsABB2TnnXfOLbfckkceeSRjx45NkqVeGwAAAAAsL8u5wHpuxx13zIQJE5a7//3335/u3bvn2GOPrW57+eWXP3e/3XffPTfccEPatGmT8vLywn677bZbdtttt4wePTr77rtvrr322uyzzz7LXd8OO+yQ119/Pa+//nr1bPRnnnkm7733XnbcccckSf369bN48eIa+z3yyCOpqqrKeeedlzp1Pv588NPrvAMAAADAijITHdYTs2fPzv7775+rr746TzzxRKZOnZqbbrop55xzTgYNGrTcx9lmm23y8MMP54477sgLL7yQU089NQ899NDn7nf44YenVatWGTRoUCZPnpypU6dm0qRJOeGEE/LGG29k6tSpGT16dKZMmZJXX301d955Z1588cUVXhe9T58+6dq1aw4//PA8+uijefDBB/PNb34zPXv2zB577JHk4/XOp06dmsceeyyzZs3KwoULs/XWW+fDDz/Mb37zm7zyyiv5wx/+kIsvvniFzg0AAAAAnyZEh/VE06ZNs/fee+dXv/pV9ttvv3Tp0iWnnnpqvv3tb+eiiy5a7uMcc8wxGTJkSA455JDsvffemT17do1Z6UUaN26c++67Lx07dsyQIUOyww47ZOTIkfnggw9SXl6exo0b57nnnsvQoUOz7bbb5uijj86oUaNyzDHHrNDrLCsry5/+9Kdsuumm2W+//dKnT59stdVWueGGG6r7DB06NP369Uvv3r3TunXrXHfdddlll11y/vnn5+yzz06XLl1yzTXX5KyzzlqhcwMAAADAp5WVSqVSbRcBAAAAAADrIjPRAQAAAACggBAdAAAAAAAKCNEBAAAAAKCAEB0AAAAAAAoI0QEAAAAAoIAQHQAAAAAACgjRAQAAAACggBAdAAAAAAAKCNEBAAAAAKCAEB0AAAAAAAoI0QEAAAAAoMD/B34gqskc7INlAAAAAElFTkSuQmCC",
|
||
"text/plain": [
|
||
"<Figure size 1500x1000 with 4 Axes>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"# Проверка выбросов в DataFrame\n",
|
||
"def check_outliers(dataframe: DataFrame, columns: list[str]) -> None:\n",
|
||
" for column in columns:\n",
|
||
" if not pd.api.types.is_numeric_dtype(dataframe[column]): # Проверяем, является ли колонка числовой\n",
|
||
" continue\n",
|
||
" \n",
|
||
" Q1: float = dataframe[column].quantile(0.25) # 1-й квартиль (25%)\n",
|
||
" Q3: float = dataframe[column].quantile(0.75) # 3-й квартиль (75%)\n",
|
||
" IQR: float = Q3 - Q1 # Вычисляем межквартильный размах\n",
|
||
"\n",
|
||
" # Определяем границы для выбросов\n",
|
||
" lower_bound: float = Q1 - 1.5 * IQR # Нижняя граница\n",
|
||
" upper_bound: float = Q3 + 1.5 * IQR # Верхняя граница\n",
|
||
"\n",
|
||
" # Подсчитываем количество выбросов\n",
|
||
" outliers: DataFrame = dataframe[(dataframe[column] < lower_bound) | (dataframe[column] > upper_bound)]\n",
|
||
" outlier_count: int = outliers.shape[0]\n",
|
||
"\n",
|
||
" print(f\"Колонка {column}:\")\n",
|
||
" print(f\"\\tЕсть выбросы: {'Да' if outlier_count > 0 else 'Нет'}\")\n",
|
||
" print(f\"\\tКоличество выбросов: {outlier_count}\")\n",
|
||
" print(f\"\\tМинимальное значение: {dataframe[column].min()}\")\n",
|
||
" print(f\"\\tМаксимальное значение: {dataframe[column].max()}\")\n",
|
||
" print(f\"\\t1-й квартиль (Q1): {Q1}\")\n",
|
||
" print(f\"\\t3-й квартиль (Q3): {Q3}\\n\")\n",
|
||
"\n",
|
||
"# Визуализация выбросов\n",
|
||
"def visualize_outliers(dataframe: DataFrame, columns: list[str]) -> None:\n",
|
||
" # Диаграммы размахов\n",
|
||
" plt.figure(figsize=(15, 10))\n",
|
||
" rows: int = ceil(len(columns) / 3)\n",
|
||
" for index, column in enumerate(columns, 1):\n",
|
||
" plt.subplot(rows, 3, index)\n",
|
||
" plt.boxplot(dataframe[column], vert=True, patch_artist=True)\n",
|
||
" plt.title(f\"Диаграмма размахов для \\\"{column}\\\"\")\n",
|
||
" plt.xlabel(column)\n",
|
||
" \n",
|
||
" # Отображение графиков\n",
|
||
" plt.tight_layout()\n",
|
||
" plt.show()\n",
|
||
"\n",
|
||
"\n",
|
||
"# Числовые столбцы DataFrame\n",
|
||
"numeric_columns: list[str] = [\n",
|
||
" 'Cost',\n",
|
||
" 'Shares',\n",
|
||
" 'Value ($)',\n",
|
||
" 'Shares Total'\n",
|
||
"]\n",
|
||
"\n",
|
||
"# Проверка наличия выбросов в колонках\n",
|
||
"print('Проверка наличия выбросов в колонках:')\n",
|
||
"check_outliers(df, numeric_columns)\n",
|
||
"visualize_outliers(df, numeric_columns)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 644,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Проверка наличия выбросов в колонках после их устранения:\n",
|
||
"Колонка Cost:\n",
|
||
"\tЕсть выбросы: Нет\n",
|
||
"\tКоличество выбросов: 0\n",
|
||
"\tМинимальное значение: 0.0\n",
|
||
"\tМаксимальное значение: 1171.04\n",
|
||
"\t1-й квартиль (Q1): 50.5225\n",
|
||
"\t3-й квартиль (Q3): 934.1075\n",
|
||
"\n",
|
||
"Колонка Shares:\n",
|
||
"\tЕсть выбросы: Нет\n",
|
||
"\tКоличество выбросов: 0\n",
|
||
"\tМинимальное значение: 121.0\n",
|
||
"\tМаксимальное значение: 749244.375\n",
|
||
"\t1-й квартиль (Q1): 3500.0\n",
|
||
"\t3-й квартиль (Q3): 301797.75\n",
|
||
"\n",
|
||
"Колонка Value ($):\n",
|
||
"\tЕсть выбросы: Нет\n",
|
||
"\tКоличество выбросов: 0\n",
|
||
"\tМинимальное значение: 0.0\n",
|
||
"\tМаксимальное значение: 371376521.125\n",
|
||
"\t1-й квартиль (Q1): 271008.0\n",
|
||
"\t3-й квартиль (Q3): 148713213.25\n",
|
||
"\n",
|
||
"Колонка Shares Total:\n",
|
||
"\tЕсть выбросы: Нет\n",
|
||
"\tКоличество выбросов: 0\n",
|
||
"\tМинимальное значение: 49.0\n",
|
||
"\tМаксимальное значение: 3730529.125\n",
|
||
"\t1-й квартиль (Q1): 25103.5\n",
|
||
"\t3-й квартиль (Q3): 1507273.75\n",
|
||
"\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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ReIL91GvXr0SjwduNnrLy8nJUWpqqtUNQUrj5MmTmj17tmJjY1W7du0idws/e/asNm7cqFdeeUWTJ0821xd+23Y9Tp48qezsbKtvzv/73/9KknnjxI8++ki33XabPvnkE6tfXLY+ANStW1cPPPCAeSnbo48+etVLWYYMGaIJEyboueee08MPP1zst86bN2/Wr7/+qk8++UTdunUz1x87dqxUz7fQkSNHrM4u+uGHH1RQUGA+5y+++EI5OTn6/PPP1ahRIzPuj3dTL3THHXfojjvukCSFhISoUaNGSkhIsLqplXT5cr8nnnhCr732mvbv36/FixcXu7+PPvpI99xzjxYtWmS1/ty5c0V+AWdnZ2vEiBEKDAxU586dNX36dD344IO66667zBg/Pz8dPny4yHEKL9crvJFXoaCgIPNO4H379tXPP/+sN954Qy+//HKxf5wUunTpkv7zn/+oT58+JcZc6cCBA7Kzsyv2G/0rtW3bVu+//766du2qmJgYderUSW+++eafPqOrX79+io2N1bJly8wbspSk8DUq6XWsV6+e1c9RgwYN9Ne//lV//etflZGRoXbt2um1115T3759JfGNNFDRqNXUamp11ajVJalTp45uv/127du375q3/fjjj+Xs7Kx169ZZXQJfeMbn1dSvX1+1a9dWfn6+QkJCrhpfq1YtPfbYY3rssceUm5urhx56SK+99pqio6NLdbk+UFp9+/Y1/9YsTk5Ojv7+97/rX//6l86dO6cWLVrojTfeMH+XpKSkKD8/X6+++qr5e+T5559X//79lZeXp+rVq5fH0yiSM/Waek29vrrKUq8HDx6s6OhoJSQkyM/PT/n5+VbTulzr++FKhdOkFJ59X+iPVwHcfvvtki5fgV6aOv1HhSfcleZnoVOnTnrxxRfVqlUrffTRR3rxxRetxo8dOyZ7e/tip1bC/+GM9Ftc4eVFvXr1uqbtXnnlFXl5eRWZ17FQ4Rk2fzxTZtasWdeVp3T5l/OVc37l5ubqvffeU/369RUUFFTicXfs2KHk5GSb+x45cqS+//57PfLIIza/7Svk4eGh/v376/vvvzfvav5HxeWSm5urd99996r7v9Ifz9J45513JMn8w7O442RmZpbqA1bhHzUlXR41cuRI7d27V926ddNtt91WbEy1atWK/DuvWrVKP//8c5HYF154QWlpaVq6dKlmzJihxo0bKzw83Or49913n3bu3Gn1b5adna0FCxaocePGVvN+FufChQu6dOmSLl26ZDNu/fr1yszMVP/+/W3GSZffex9//LE6dOhw1fdHVlaWnnjiCT3wwAOaNGmSQkJC1KBBg6se42qCg4PVp08fLVy4sNhLX3Nzc/X8889LutwYb9OmjZYuXWpVuPft26f169frvvvuk3T52/A/njHh6ekpHx8fq3+TWrVqlcllawCuD7X6Mmo1tdqWylCr//Of/xTbMDp+/LgOHDhw1YZBcapVqyY7OzurM9h+/PHHUk+DUa1aNQ0cOFAff/xxsY38X375xfz/PzbvHB0dFRgYKMMwlJeXd825A39GZGSkkpOTtWLFCvN3f58+fczmcVBQkOzt7bVkyRLzb9p//vOfCgkJqZAmukS9LkS9pl7bUhnqdaFGjRqpa9euWrlypZYtWyZ/f3917tzZHP8z74fCBvnWrVvNdfn5+VqwYIFVXFBQkG6//Xa99dZbOn/+fJH9XFmni/OXv/xFvr6+2r17d5Gx4s5SNwxD+fn5Ra5gky5/Qdm8eXO5ubnZPOatjjPSb1HZ2dl65513FBMTY/6yXrZsmVVMenq6zp8/r2XLlunee++1mqtt/fr1Wr58uXnzkT9ydXVVt27dNH36dOXl5ekvf/mL1q9ff83fGF/Jx8dHb7zxhn788UfdeeedWrlypVJTU7VgwQLzj6X7779fn3zyiR588EGFhYXp2LFjmj9/vgIDA4v9pVSoT58++uWXX0pV6AvFx8crLi6uxMteOnfurDp16ig8PFzPPvus7Ozs9M9//rPYy3BtOXbsmB544AH16dNHycnJWrZsmR5//HG1bt1a0uWbjDg6Oqpfv3566qmndP78eb3//vvy9PTUqVOnzP18+eWXWrhwoTp37iwPDw8dPXpU77//vmrVqqUHH3yw2GMXzqdd3C/ZQvfff79iYmI0YsQIde7cWXv37tXy5cuL/HGwadMmvfvuu5oyZYratWsn6fLZVD169NDLL79sXlr04osv6l//+pf69u2rZ599Vh4eHlq6dKmOHTumjz/+uMg34UlJSfrpp5+Ul5enXbt2afny5XrggQdKfG9Kly8Re/755+Xk5KQLFy5YvfczMzOVn5+v1atXa8CAAdqwYYNefvllff/99/riiy9K3GehiIgIXbhwQQsXLrxq7LX64IMP1Lt3bz300EPq16+fevXqpVq1aunIkSNasWKFTp06pbfeekvS5UvD+vbtq+DgYI0aNUoXLlzQO++8Izc3N02dOlXS5fnWGzZsqIcfflitW7eWi4uLNmzYoF27duntt982jxsUFKSVK1cqKipKd911l1xcXNSvX78yf34ArFGrrVGrqdWFKmutTkpK0pQpU/TAAw+oU6dOcnFx0dGjR7V48WLl5OSY9fdahIWFacaMGerTp48ef/xxZWRkKC4uTnfccYe+//77Uu3jH//4h77++mt17NhRo0ePVmBgoM6cOaM9e/Zow4YNOnPmjKTL71Nvb2916dJFXl5eOnjwoObOnauwsLBS3ewcKCtpaWlasmSJ0tLS5OPjI+ny2eaJiYlasmSJXn/9dfn7+2v9+vV69NFH9dRTTyk/P1/BwcFWN40sL9Rra9Rr6nWhylqvrzR06FCNGTNGJ0+e1N///nersdK+H4rTvHlzderUSdHR0Tpz5ow8PDy0YsWKIl9K2Nvba+HCherbt6+aN2+uESNG6C9/+Yt+/vlnff3113J1db3qa9W/f399+umnMgzD6uqR22+/XSNGjFCPHj2UkZGhzZs3a86cOTpw4IDmzZtntY+8vDxt2bJFf/3rX0vzst3aDNySjh07Zkgq9fL1118bhmEYS5YsMSQZbdq0MQoKCorsb8mSJea6n376yXjwwQcNd3d3w83NzXjkkUeMkydPGpKMKVOmmHFTpkwxJBm//PJLifl2797daN68ubF7924jODjYcHZ2Nvz8/Iy5c+daxRUUFBivv/664efnZzg5ORlt27Y11qxZY4SHhxt+fn5F8n3zzTdtvj5Xjl8tz+LGv/32W6NTp05GjRo1DB8fH2PixInGunXrrF7TkhTu78CBA8bDDz9s1K5d26hTp44RGRlpXLhwwSr2888/N1q1amU4OzsbjRs3Nt544w1j8eLFhiTj2LFjhmEYxr59+4zevXsbdevWNRwdHQ1fX19j0KBBxvfff2+1L0lGREREiXn9cfzixYvG3/72N6NBgwZGjRo1jC5duhjJyclG9+7dje7duxuGYRhZWVmGn5+f0a5dOyMvL89qf+PHjzfs7e2N5ORkc93//vc/4+GHHzbc3d0NZ2dno0OHDsaaNWustvv666+t3qMODg6Gn5+f8eyzzxpnz561+dr6+fld9T1f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nRuCs9cAALixDMNQZGSkPv30U23atEn+/v5X3SY4OFgbN260WpeUlKTg4OAblSYAAJUKjXQAAKqQlJQUZWRkqF27dnJwcJCDg4O2bNmiOXPmyMHBQV5eXsrNzdW5c+estrvyjLGSzigrHLMV4+rqqho1aqhevXqqVq2azTPTvL29r5pLcZycnOTq6mq1AACAshMREaFly5YpISFBtWvXlsVikcVi0YULF8yYYcOGKTo62nz83HPPKTExUW+//bYOHTqkqVOnavfu3YqMjKyIpwAAQLmjkQ4AQBXSq1cv7d27V6mpqebSvn17DRkyxPz/6tWrW50xdvjwYaWlpZlnjAUHB2vv3r3KyMgwY5KSkuTq6qrAwEAzxtZZZ46OjgoKCrKKKSgo0MaNG82YoKCgq+YCAADK37x585SZmakePXqoQYMG5rJy5UozJi0tTadOnTIfd+7cWQkJCVqwYIFat26tjz76SKtXr7Z5g1IAAG4mN2SO9J9//lkvvPCCvvrqK/3++++64447tGTJErVv317S5cvIpkyZovfff1/nzp1Tly5dNG/ePDVp0sTcx5kzZzR27Fh98cUXsre318CBAzV79my5uLjciJQBAKgSateuXeQDa61atVS3bl1z/ahRoxQVFSUPDw+5urpq7NixCg4OVqdOnSRJvXv3VmBgoJ544glNnz5dFotFkyZNUkREhDmP6dNPP625c+dq4sSJGjlypDZt2qQPP/xQa9euNY8bFRWl8PBwtW/fXh06dNCsWbOUnZ2tESNGSJLc3NyumgsAACh/hmFcNWbz5s1F1j3yyCN65JFHbkBGAABUfmXeSD979qy6dOmie+65R1999ZXq16+vI0eOqE6dOmbM9OnTNWfOHC1dulT+/v56+eWXFRoaqgMHDpjzvQ4ZMkSnTp1SUlKS8vLyNGLECI0ZM0YJCQllnTIAADeVmTNnml9C5+TkKDQ0VO+++645Xq1aNa1Zs0bPPPOMgoODVatWLYWHhysmJsaM8ff319q1azV+/HjNnj1bDRs21MKFCxUaGmrGPPbYY/rll180efJkWSwWtWnTRomJiVY3IL1aLgAAAAAAVAV2Rmm+ir4GL774or799lt98803xY4bhiEfHx/97W9/0/PPPy9JyszMlJeXl+Lj4zVo0CAdPHhQgYGB2rVrl3kWe2Jiou677z799NNP8vHx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dJ3t/fr1y4033liPVcG6QZAO66F58+blhBNOyFZbbZXy8vJ06dIl++23X6ZOnfqxrz1x4sS0bdv24xcJAOu5V199Nccdd1y6du2a8vLydOrUKUOGDMm9997b2KUBAEn222+/7LPPPnU+d88996SsrCyPPvpoA1e1cvPmzcsFF1yQ//mf/1mt877//e/ne9/7Xqqrq+upMlg3CNJhPTN79uz07ds3d9xxR84555w89thjufXWW7PXXntl7NixjV0eAPD/HXjggXnkkUdy1VVX5Z///Gd+//vfZ9CgQXnttdfqbcylS5fW27UB4NNmzJgxmTJlSl588cUVnpswYUJ23XXX7LTTTo1QWd2uuOKKDBgwIN26datpW7BgQUaNGpWuXbvmN7/5TbbZZpt8+ctfrvX/CYYOHZq33norf/7znxujbFhrCNJhPfO1r30tZWVleeCBB3LggQdm2223zQ477JCTTjop999/f5Jk7ty5GTFiRFq3bp2KioocdNBBmT9/fs01/v73v2evvfZKmzZtUlFRkb59++ahhx7KtGnTcuSRR6aqqiplZWUpKyvL6aef3kh3CgDrrjfffDP33HNPzjrrrOy1117p1q1bdtttt4wbNy7Dhw+v6bdgwYLsv//+admyZbp3757f//73Nc8tW7YsY8aMyZZbbpkWLVpku+22ywUXXFBrnNGjR2fkyJH50Y9+lM6dO2e77bZLkrzwwgs56KCD0rZt27Rr1y4jRozI7Nmza86bNm1adtttt7Rq1Spt27bNHnvskTlz5tTviwIAa5l999037du3z8SJE2u1L1q0KDfccEPGjBmT1157LYccckg222yztGzZMjvuuGN+85vfFF63ru3b2rZtW2ucj5qr63Lttddmv/32q9X2zW9+M/fff39+9atf5Ytf/GJ+8YtfZKuttqq1+nyDDTbIF7/4xVx77bWF14dPO0E6rEdef/313HrrrRk7dmxatWq1wvNt27ZNdXV1RowYkddffz133XVXpkyZkueffz4HH3xwTb/DDjssm2++eR588MHMmDEj3/ve97LhhhtmwIABOf/881NRUZGXX345L7/8cr797W835C0CwKdC69at07p160yePDlLlixZab8zzjgjBx10UB599NF88YtfzGGHHZbXX389SVJdXZ3NN988N9xwQ5544omceuqpOfnkk3P99dfXusbUqVPz9NNPZ8qUKbnlllvy3nvvZciQIWnTpk3uueee3HvvvWndunX22WefLF26NO+//35GjhyZgQMH5tFHH8306dNzzDHHpKysrF5fEwBY2zRt2jRHHHFEJk6cmFKpVNN+ww03ZNmyZTnkkEPy7rvvpm/fvvnjH/+Yf/zjHznmmGPyX//1X3nggQfWeNyPmqvr8vrrr+eJJ57IrrvuWqv9kUceyRFHHJGBAwemsrIye+21V84666w0b968Vr/ddtst99xzzxrXDJ8GTRu7AKDhPPvssymVStl+++1X2mfq1Kl57LHHMmvWrHTp0iVJcvXVV2eHHXbIgw8+mM985jOZO3du/vu//7vmOt27d685v7KyMmVlZenUqVP93gwAfIo1bdo0EydOzNFHH51LL700ffr0ycCBA/Of//mftT4iPnr06BxyyCFJkh//+Me58MIL88ADD2SfffbJhhtumDPOOKOm75Zbbpnp06fn+uuvz0EHHVTT3qpVq1xxxRVp1qxZkuSaa65JdXV1rrjiippwfMKECWnbtm2mTZuWXXfdNVVVVdl3332z9dZbJ0l69OhR768JAKyNjjrqqJxzzjm56667MmjQoCQfzJsHHnhgKisrU1lZWWuB2QknnJDbbrst119/fXbbbbc1GvO6664rnKu/8IUvrHDO3LlzUyqV0rlz51rte+yxRyZMmJCdd965cMzOnTvnhRdeSHV1dZo0sS6X9ZN3PqxHPvwX8pV58skn06VLl5oQPUl69uyZtm3b5sknn0ySnHTSSfnKV76SwYMH53//93/z3HPP1VvNALC+OvDAA/PSSy/l97//ffbZZ59MmzYtffr0qfWx7g+H6q1atUpFRUVeeeWVmraLL744ffv2Tfv27dO6detcfvnlmTt3bq1xdtxxx5oQPflgC7dnn302bdq0qVkZ365du7z77rt57rnn0q5du4wePTpDhgzJfvvtlwsuuCAvv/xy/b0QALAW23777TNgwIBceeWVST5YwHbPPfdkzJgxST7Yau0HP/hBdtxxx7Rr1y6tW7fObbfdtsJ8vDo+aq6uyzvvvJMkK6w0/+lPf5qDDz443/zmN3P11Vdnl112yaWXXrrC+S1atEh1dXXhJ+Xg006QDuuR7t27p6ysLE899dTHus7pp5+exx9/PMOGDcsdd9yRnj175qabbvqEqgQAlmvevHn23nvvnHLKKbnvvvsyevTonHbaaTXPb7jhhrX6l5WV1expeu211+bb3/52xowZk9tvvz0zZ87MkUceucJHvv99u7dFixalb9++mTlzZq3jn//8Zw499NAkH6x6mz59egYMGJDrrrsu2267bc13rQDA+mbMmDG58cYb89Zbb2XChAnZeuutM3DgwCTJOeeckwsuuCDf/e53c+edd2bmzJkZMmRI4Rd8l5WVrbAQ7r333qv571WZq//dJptskiR54403arW3atUqP/rRj/LMM89k+PDhOe6443LSSSfl8ssvr9Xv9ddfT6tWrdKiRYtVf2HgU0aQDuuRdu3aZciQIbn44ouzePHiFZ5/880306NHj7zwwgt54YUXatqfeOKJvPnmm+nZs2dN27bbbptvfvObuf3223PAAQdkwoQJSZJmzZpl2bJl9X8zALAe6tmzZ51zeF3uvffeDBgwIF/72tfSu3fvbLPNNqv0KbI+ffrkmWeeSYcOHbLNNtvUOiorK2v69e7dO+PGjct9992XXr16ZdKkSWt8XwCwLjvooIPSpEmTTJo0KVdffXWOOuqomi1X7r333owYMSKHH354dt5552y11Vb55z//WXi99u3b1/q01zPPPJO333675vGqztUftvXWW6eioiJPPPHESsdt27Ztjj322AwdOnSF/dD/8Y9/pHfv3h/5WsCnmSAd1jMXX3xxli1blt122y033nhjnnnmmTz55JO58MIL079//wwePDg77rhjDjvssDz88MN54IEHar54ZNddd80777yT448/PtOmTcucOXNy77335sEHH6zZG3WLLbbIokWLMnXq1CxYsKDWZA8ArJrXXnstn/vc53LNNdfk0UcfzaxZs3LDDTfk7LPPzogRI1bpGt27d89DDz2U2267Lf/85z9zyimn5MEHH/zI8w477LBssskmGTFiRO65557MmjUr06ZNy9e//vW8+OKLmTVrVsaNG5fp06dnzpw5uf322/PMM8/YJx2A9Vbr1q1z8MEHZ9y4cXn55ZczevTomue6d++eKVOm5L777suTTz6ZY489NvPnzy+83uc+97lcdNFFeeSRR/LQQw/lq1/9aq1PoX3UXF2XJk2aZPDgwfnrX/9aq/2b3/xm7rrrrlRVVWXZsmW58847c9ddd6Vv3761+t1zzz117r0O6xNBOqxnttpqqzz88MPZa6+98q1vfSu9evXK3nvvnalTp+aSSy5JWVlZbr755my00UbZc889M3jw4Gy11Va57rrrkiQbbLBBXnvttRxxxBHZdtttc9BBB2Xo0KE1X2Y2YMCAfPWrX83BBx+c9u3b5+yzz27M2wWAdVLr1q2z++6757zzzsuee+6ZXr165ZRTTsnRRx+diy66aJWuceyxx+aAAw7IwQcfnN133z2vvfZavva1r33keS1btszdd9+drl275oADDkiPHj0yZsyYvPvuu6moqEjLli3z1FNP5cADD8y2226bY445JmPHjs2xxx77cW8bANZZY8aMyRtvvJEhQ4bU+kLP73//++nTp0+GDBmSQYMGpVOnThk5cmThtc4999x06dIln/3sZ3PooYfm29/+dlq2bFnz/EfN1Svzla98Jddee23NNnBJ0rVr15x00knp0qVLJk2alCOOOCJHHXVUTjjhhJo+//rXv3LfffflyCOPXINXBj49ykqr8u2DAAAAAMA6q1QqZffdd883v/nNHHLIISs8P3r06Fpfar7cd7/73bzxxhsr7JsO6xsr0gEAAADgU66srCyXX3553n///dU6r0OHDvnBD35QT1XBusOKdAAAAAAAKGBFOgAAAAAAFBCkAwAAAABAAUE6AAAAAAAUEKQDAAAAAEABQToAAAAAABQQpAMAAAAAQAFBOgAAAAAAFBCkAwAAAABAAUE6AAAAAAAUEKQDAAAAAEABQToAAAAAABQQpAMAAAAAQAFBOgAAAAAAFBCkAwAAAABAAUE6AAAAAAAUEKQDAAAAAEABQToAAAAAABQQpAMAAAAAQAFBOgAAAAAAFBCkAwAAAABAAUE6AAAAAAAUEKQDAAAAAEABQToAAAAAABQQpAMAAAAAQAFBOgAAAAAAFBCkAwAAAABAAUE6AAAAAAAUEKQDAAAAAEABQToAAAAAABQQpAMAAAAAQAFBOsAnbPTo0WndunVjl/GpU1ZWltNPP72xywAAAADWQ4L0tcBvf/vblJWV1Xn06tWrscuD9cagQYMyevToJB+E4YMGDar1/KJFi3LaaaelV69eadWqVTbeeOPssssuOfHEE/PSSy81fMH1bNCgQSv93fThY1XC7UmTJuX888//ROubOHFiysrKkiTTpk1LWVlZZs+e/YmOAQAAAJAkTRu7AP7PySefnB49etQ8/tGPftSI1QAf9t5772XPPffMU089lVGjRuWEE07IokWL8vjjj2fSpEnZf//907lz58Yu8xP1P//zP/nKV75S8/jBBx/MhRdeuMLvqp122ukjrzVp0qT84x//yDe+8Y36KBUAAACgXgnS1yJ77713rRWwV1xxRRYsWNB4BQE1Jk+enEceeSS//vWvc+ihh9Z67t13383SpUsbtJ7q6uosXbo0zZs3r7cx9t5771qPmzdvngsvvHCF31UAAAAAn3a2dlkLLA/gmjT56B/H8q0MPrx9QXV1dXbaaaeUlZVl4sSJNe2PPvpoRo8ena222irNmzdPp06dctRRR+W1116rdc3TTz+9zu0amjb9v7+zDBo0KL169cqMGTMyYMCAtGjRIltuuWUuvfTSFe7l1FNPTd++fVNZWZlWrVrls5/9bO68885a/WbPnl0zzuTJk2s99+6772ajjTZKWVlZfvKTn6xQZ4cOHfLee+/VOuc3v/lNzfU+/MeHm2++OcOGDUvnzp1TXl6erbfeOj/4wQ+ybNmyj3ytl4/31FNP5aCDDkpFRUU23njjnHjiiXn33Xdr9Z0wYUI+97nPpUOHDikvL0/Pnj1zySWXrHDNESNGZIsttkjz5s3ToUOHDB8+PI899litPsvvo65tMLbffvuUlZXl+OOPr2l7/fXX8+1vfzs77rhjWrdunYqKigwdOjR///vfa507atSoNG/ePE8++WSt9iFDhmSjjTaqtTXJ888/ny9/+ctp165dWrZsmX79+uWPf/xjrfOWb6Wx/CgvL8+2226b8ePHp1QqFb+4/9/K3nt1hbQffs/8+/Fhr7zySsaMGZOuXbtmgw02qOnzcfcsf+6555Ike+yxxwrPNW/ePBUVFSu0/+tf/8rIkSPTunXrtG/fPt/+9rdXeO/95Cc/yYABA7LxxhunRYsW6du3b37729+ucK3lP/df//rX2WGHHVJeXp5bb721ZpyjjjoqHTt2THl5eXbYYYdceeWVK1zjZz/7WXbYYYe0bNkyG220UXbddddMmjRpjV6PD/v5z39eU1Pnzp0zduzYvPnmmzXPDxo0KH/84x8zZ86cmp/HFltskWTVf2cAAAAANCYr0tcCy4P08vLyNTr/V7/61QphbJJMmTIlzz//fI488sh06tQpjz/+eC6//PI8/vjjuf/++1cIIC+55JJaYeO/B/tvvPFGvvjFL+aggw7KIYcckuuvvz7HHXdcmjVrlqOOOipJsnDhwlxxxRU55JBDcvTRR+ett97KL3/5ywwZMiQPPPBAdtlll1rXbN68eSZMmJCRI0fWtP3ud79bIaj+sLfeeiu33HJL9t9//5q2CRMmpHnz5iucN3HixLRu3TonnXRSWrdunTvuuCOnnnpqFi5cmHPOOWelY3zYQQcdlC222CLjx4/P/fffnwsvvDBvvPFGrr766lqv3Q477JDhw4enadOm+cMf/pCvfe1rqa6uztixY2td75hjjkmnTp3y0ksv5aKLLsrgwYMza9astGzZcoXX5cPbYNx3332ZM2fOCvU9//zzmTx5cr785S9nyy23zPz583PZZZdl4MCBeeKJJ2q2G7ngggtyxx13ZNSoUZk+fXo22GCDXHbZZbn99tvzq1/9qqbf/PnzM2DAgLz99tv5+te/no033jhXXXVVhg8fnt/+9re1Xvfk/7Ykeuedd3Ldddfl5JNPTocOHTJmzJhVen2Xv37L33vjxo0r7HvMMcfks5/9bJIP3is33XRTredHjRqVv/zlLznhhBOy8847Z4MNNsjll1+ehx9+eJXrqUu3bt2SJFdffXW+//3vr/Dv598tW7YsQ4YMye67756f/OQn+ctf/pJzzz03W2+9dY477riafhdccEGGDx+eww47LEuXLs21116bL3/5y7nlllsybNiwWte84447cv311+f444/PJptski222CLz589Pv379aoL29u3b589//nPGjBmThQsX1ryHfvGLX+TrX/96vvSlL9X8MejRRx/N3/72txVW2K+O008/PWeccUYGDx6c4447Lk8//XQuueSSPPjgg7n33nuz4YYb5n/+539SVVWVF198Meedd16S1Py8V/d3BgAAAECjKNHozj///FKS0t///vda7QMHDiztsMMOtdomTJhQSlKaNWtWqVQqld59991S165dS0OHDi0lKU2YMKGm79tvv73CWL/5zW9KSUp33313Tdtpp51WSlJ69dVXV1rjwIEDS0lK5557bk3bkiVLSrvsskupQ4cOpaVLl5ZKpVLp/fffLy1ZsqTWuW+88UapY8eOpaOOOqqmbdasWaUkpUMOOaTUtGnT0rx582qe+/znP1869NBDS0lK55xzzgp1HnLIIaV99923pn3OnDmlJk2alA455JAV7qOu1+DYY48ttWzZsvTuu++u9H4/PN7w4cNrtX/ta19b4edV1zhDhgwpbbXVVoVjXH/99aUkpYceeqimLUnpS1/6Uqlp06a12seMGVPzuowdO7am/d133y0tW7as1nVnzZpVKi8vL5155pm12m+77bZSktIPf/jD0vPPP19q3bp1aeTIkbX6fOMb3yglKd1zzz01bW+99VZpyy23LG2xxRY1Y915552lJKU777yzVi1NmjQpfe1rXyu87+VOPvnkUpLSggULatp22GGH0sCBA1fo+8wzz5SSlK666qqatuU/o+XeeeedUpMmTUrHHntsrXNHjRpVatWq1SrVtDJvv/12abvttislKXXr1q00evTo0i9/+cvS/PnzV+g7atSoUpIVXv/evXuX+vbtu8J1P2zp0qWlXr16lT73uc/Vak9SatKkSenxxx+v1T5mzJjSpptuWus1LJVKpf/8z/8sVVZW1lx/xIgRK/w+WV033HBDrZ/5K6+8UmrWrFnpC1/4Qq334EUXXVRKUrryyitr2oYNG1bq1q3bCtdc1d8ZpdIHr8Fpp532se4BAAAAYE3Y2mUtsHyrlfbt26/2uRdffHFee+21nHbaaSs816JFi5r/fvfdd7NgwYL069cvSdZodW7Tpk1z7LHH1jxu1qxZjj322LzyyiuZMWNGkmSDDTZIs2bNknyw5czrr7+e999/P7vuumudY/bp0yc77LBDfvWrXyVJ5syZkzvvvDOjR49eaR1HHXVUbr311sybNy9JctVVV6V///7ZdtttV+j74dfgrbfeyoIFC/LZz342b7/9dp566qlVuu9/X1F+wgknJEn+9Kc/1TlOVVVVFixYkIEDB+b5559PVVVVrfPffvvtLFiwIDNnzswvfvGLdOzYcYXaO3bsmGHDhmXChAk151x//fU58sgjV6ivvLy85tMDy5Yty2uvvZbWrVtnu+22W+E1/8IXvpBjjz02Z555Zg444IA0b948l112Wa0+f/rTn7LbbrvlP/7jP2raWrdunWOOOSazZ8/OE088Uav/8vudO3duzj777FRXV+dzn/tcHa/kipZ/gmBV9vlelU9uLF68ONXV1dl4441XafzV0aJFi/ztb3/Lf//3fyf54NMOY8aMyaabbpoTTjghS5YsWeGcr371q7Uef/azn83zzz+/wnWXe+ONN1JVVZXPfvazdf57GThwYHr27FnzuFQq5cYbb8x+++2XUqmUBQsW1BxDhgxJVVVVzXXatm2bF198MQ8++OCavwj/5i9/+UuWLl2ab3zjG7U+wXL00UenoqJihe2A6rK6vzMAAAAAGoMgfS0wZ86cNG3adLWD9Kqqqvz4xz/OSSedlI4dO67w/Ouvv54TTzwxHTt2TIsWLdK+fftsueWWNeeurs6dO6dVq1a12pYHwB/es/2qq67KTjvtlObNm2fjjTdO+/bt88c//nGlYx555JE1gfHEiRMzYMCAdO/efaV17LLLLunVq1euvvrqlEqlTJw4sc6AOUkef/zx7L///qmsrExFRUXat2+fww8/PMmqvwb/XsvWW2+dJk2a1Lrne++9N4MHD06rVq3Stm3btG/fPieffHKd45x55plp3759evfundmzZ2fatGlp06bNCuMeeeSRmTRpUpYsWZIbbrghG220UZ0BdXV1dc4777x079495eXl2WSTTdK+ffs8+uijdd7jT37yk7Rr1y4zZ87MhRdemA4dOtR6fs6cOdluu+1WOK9Hjx41z3/YyJEj0759+3Tr1i2nn356vv/97+fAAw9c4fy6LFiwIBtuuGGtbW1WZvme20V7nW+88cbp3r17rrjiitx+++155ZVXsmDBgjpD7jVRWVmZs88+O7Nnz87s2bPzy1/+Mtttt10uuuii/OAHP6jVt3nz5iv8m95oo43yxhtv1Gq75ZZb0q9fvzRv3jzt2rVL+/btc8kll9T5s1v+73e5V199NW+++WYuv/zytG/fvtax/N/EK6+8kiT57ne/m9atW2e33XZL9+7dM3bs2Nx7770f6/VY/l749/dLs2bNstVWW9W5FVFdVvd3BgAAAEBD+9QH6XfffXf222+/dO7cuc4vtlwVpVIpP/nJT7LtttumvLw8m222WX70ox99YjU+/fTT2WqrrWp9ueeqOOuss9KkSZOaFbL/7qCDDsovfvGLfPWrX83vfve73H777TVfTlhdXf2x667LNddck9GjR2frrbfOL3/5y9x6662ZMmVKPve5z610zMMPPzzPPvts7r///lx11VUrDcU/7KijjsqECRNy1113Zd68eTnooINW6PPmm29m4MCB+fvf/54zzzwzf/jDHzJlypScddZZSdb8Nfj3vbGfe+65fP7zn8+CBQvy05/+NH/84x8zZcqUfPOb36xznK985Su5/fbbc+WVV6Z58+Y58MAD6wwMhw0blmbNmmXy5MmZMGFCRo0aVecX0i7/Y8qee+6Za665JrfddlumTJmSHXbYoc57fOSRR2rC1br21l9dP/nJTzJlypT86U9/ymmnnZazzjorZ5xxxiqdO3v27HTt2vUj9xtPUvMJhE6dOhX2u+6667LxxhtnyJAh6dixY9q3b59rr712lepZHd26dctRRx2Ve++9N23bts2vf/3rWs9vsMEGH3mNe+65J8OHD0/z5s3z85//PH/6058yZcqUHHrooXV+YeuHV68n//feOvzwwzNlypQ6j+VfjtqjR488/fTTufbaa/Mf//EfufHGG/Mf//EfdX6apSGtye8MAAAAgIb2qf+y0cWLF2fnnXfOUUcdlQMOOGCNrnHiiSfm9ttvz09+8pPsuOOOef311/P6669/IvUtWbIkM2fOrPVlm6vipZdeygUXXJDx48enTZs2NdvDLPfGG29k6tSpOeOMM3LqqafWtD/zzDNrXOtLL72UxYsX11qV/s9//jNJssUWWyRJfvvb32arrbbK7373u1rhaFFYt/HGG2f48OE128QcdNBBWbBgQWEthx12WP77v/87J554Yr70pS/VuaJ72rRpee211/K73/0ue+65Z037rFmzVul+l3vmmWdqrQR+9tlnU11dXXPPf/jDH7JkyZL8/ve/T9euXWv63XnnnXVeb5tttsk222yTJBk8eHC6du2aSZMm1foCyuSDrXT+67/+Kz/60Y/y+OOP58orr6zzer/97W+z11575Ze//GWt9jfffDObbLJJrbbFixfnyCOPTM+ePTNgwICcffbZ2X///fOZz3ympk+3bt3y9NNPrzDO8q1wln/p5nJ9+/bNoEGDkiRDhw7Nv/71r5x11lk55ZRT6gz+l3v//ffz97//Pfvss89K+3zYE088kbKysjpXy39Y796984tf/CKf/exnc+aZZ6Zfv34555xzPvbq65XZaKONsvXWW+cf//jHap974403pnnz5rnttttqbVmz/BMaH6V9+/Zp06ZNli1blsGDB39k/1atWuXggw/OwQcfnKVLl+aAAw7Ij370o4wbN26Vttf5d8vfC8v/GLjc0qVLM2vWrFo1reyPJWvyOwMAAACgoX3qV6QPHTo0P/zhD7P//vvX+fySJUvy7W9/O5tttllatWqV3XffPdOmTat5/sknn8wll1ySm2++OcOHD8+WW26Zvn37Zu+99/5E6lu+dcfnP//51TrvjDPOSMeOHVfYg3m55ath/31V6/nnn79GdSYfBJ8f3k976dKlueyyy9K+ffv07dt3peP+7W9/y/Tp0wuvfdRRR+XRRx/Nl7/85cKtO5Zr165dRowYkUcffTRHHXVUnX3qqmXp0qX5+c9//pHX/7CLL7641uOf/exnST54b61snKqqqlUKQ5f/wWBlW48cddRReeyxx7LnnnvWCio/bIMNNljh53zDDTfkX//61wp9v/vd72bu3Lm56qqr8tOf/jRbbLFFRo0aVWv8L37xi3nggQdq/cwWL16cyy+/PFtssUWtPbrr8s477+T999/P+++/X9jv9ttvT1VVVUaMGFHYL/ngvXfjjTdmt912+8j3x8KFC/Nf//VfGT58eL7//e9n8ODB2XTTTT9yjI/y97//vc4/8MyZMydPPPHERwb8ddlggw1SVlaWZcuW1bTNnj17lT85s8EGG+TAAw/MjTfeWGeQ/+qrr9b897//sa1Zs2bp2bNnSqVS3nvvvdWuPfngD0HNmjXLhRdeWOs9+Mtf/jJVVVUZNmxYTVurVq3q/OTFmv7OAAAAAGhIn/oV6R/l+OOPzxNPPJFrr702nTt3zk033ZR99tknjz32WLp3754//OEP2WqrrXLLLbdkn332SalUyuDBg3P22WenXbt2azzu4sWL87Of/SxnnnlmTRB6zTXX1Oozf/78LFq0KNdcc0323nvvWvug33777fn1r39d8yV9/66ioiJ77rlnzj777Lz33nvZbLPNcvvtt6/2auwP69y5c84666zMnj072267ba677rrMnDkzl19+eTbccMMkyb777pvf/e532X///TNs2LDMmjUrl156aXr27JlFixat9Nr77LNPXn311VUK0ZebOHFiLr744hVWXS83YMCAbLTRRhk1alS+/vWvp6ysLL/61a/q3DKjyKxZszJ8+PDss88+mT59eq655poceuih2XnnnZN88AWezZo1y3777Zdjjz02ixYtyi9+8Yt06NAhL7/8cs11/vSnP+WKK67IgAED0q5duzz//PP5xS9+kVatWq30Dz09evTIggULVtjS48P23XffnHnmmTnyyCMzYMCAPPbYY/n1r3+9QvB+xx135Oc//3lOO+209OnTJ8kHK58HDRqUU045JWeffXaS5Hvf+15+85vfZOjQofn617+edu3a5aqrrsqsWbNy4403rrDKfMqUKXnxxRfz3nvv5cEHH8yvf/3rDB8+fKXvzeSD7Ve+/e1vp7y8PO+8806t935VVVWWLVuWyZMnZ+TIkfnLX/6SU045JY8++mj+8Ic/rPSay40dOzbvvPNOrrjiio/suzqmTJmS0047LcOHD0+/fv3SunXrPP/887nyyiuzZMmSnH766at9zWHDhuWnP/1p9tlnnxx66KF55ZVXcvHFF2ebbbbJo48+ukrX+N///d/ceeed2X333XP00UenZ8+eef311/Pwww/nL3/5S82nZ77whS+kU6dO2WOPPdKxY8c8+eSTueiiizJs2LA6P9GxKtq3b59x48bljDPOyD777JPhw4fn6aefzs9//vN85jOfqfk+guSDTy5cd911Oemkk/KZz3wmrVu3zn777bfGvzMAAAAAGlRpPZKkdNNNN9U8njNnTmmDDTYo/etf/6rV7/Of/3xp3LhxpVKpVDr22GNL5eXlpd1337109913l+68887SLrvsUtprr70+Vi2zZs0qJVnl48477yyVSqXShAkTSklKu+yyS6m6unqF602YMKGm7cUXXyztv//+pbZt25YqKytLX/7yl0svvfRSKUnptNNOq+l32mmnlZKUXn311ZXWO3DgwNIOO+xQeuihh0r9+/cvNW/evNStW7fSRRddVKtfdXV16cc//nGpW7dupfLy8lLv3r1Lt9xyS2nUqFGlbt26rVDvOeecU/j6fPj5j6qzrufvvffeUr9+/UotWrQode7cufSd73yndNttt9V6TVdm+fWeeOKJ0pe+9KVSmzZtShtttFHp+OOPL73zzju1+v7+978v7bTTTqXmzZuXtthii9JZZ51VuvLKK0tJSrNmzSqVSqXSP/7xj9IXvvCF0sYbb1xq1qxZqUuXLqX//M//LD366KO1rpWkNHbs2JXW9e/Pv/vuu6VvfetbpU033bTUokWL0h577FGaPn16aeDAgaWBAweWSqVSaeHChaVu3bqV+vTpU3rvvfdqXe+b3/xmqUmTJqXp06fXtD333HOlL33pS6W2bduWmjdvXtptt91Kt9xyS63z7rzzzlrv0aZNm5a6detW+vrXv1564403Cl/bbt26feR7fvn75YQTTijtueeepVtvvXWF6yz/GS33m9/8plRWVrZC31GjRpVatWpVWNNHef7550unnnpqqV+/fqUOHTqUmjZtWmrfvn1p2LBhpTvuuGOVxvv3ekulUumXv/xlqXv37qXy8vLS9ttvX5owYUKd/YreF/Pnzy+NHTu21KVLl9KGG25Y6tSpU+nzn/986fLLL6/pc9lll5X23HPP0sYbb1wqLy8vbb311qX//u//LlVVVa3ya3DDDTfU+W/noosuKm2//falDTfcsNSxY8fScccdt8J7YNGiRaVDDz201LZt21o/31X9nbH8Nfjw7y4AAACAhlJWKq3m8tx1WFlZWW666aaa/cj/+Mc/Zt99962153fywTYbBxxwQK677rocc8wx+cUvfpGnn3462267bZLk4YcfTt++ffPUU0+t0XYOyQfbN2y55Za58847a/aX/jj96tugQYOyYMGCNdoHel11+umn54wzzsirr7660lXvrJktttgip59+ekaPHl3n89OmTcvo0aMze/bsBq0LAAAAAOqyXm/tsmjRomywwQaZMWNGzT69yy3fYmTTTTdN06ZNa0L05IPtNpJk7ty5axykAwAAAACwblivg/TevXtn2bJleeWVV/LZz362zj577LFH3n///Tz33HPZeuutkyT//Oc/kyTdunVb47Fbt26dww47rNa+5x+nH6xL9t9//5p/T3Xp2LHjSveNBwAAAICG9qnf2mXRokV59tlnk3wQnP/0pz/NXnvtlXbt2qVr1645/PDDc++99+bcc89N79698+qrr2bq1KnZaaedMmzYsFRXV9d8Md7555+f6urqjB07NhUVFbn99tsb+e4ajq1dbO0CAAAAAOurT32QPm3atOy1114rtI8aNSoTJ07Me++9lx/+8Ie5+uqr869//SubbLJJ+vXrlzPOOCM77rhjkuSll17KCSeckNtvvz2tWrXK0KFDc+6556Zdu3YNfTsAAAAAADSwT32QDgAAAAAAH0eTxi4AAAAAAADWZp/aLxutrq7OSy+9lDZt2qSsrKyxywGAlEqlvPXWW+ncuXOaNPG3bAAAAFhXfGqD9JdeeildunRp7DIAYAUvvPBCNt9888YuAwAAAFhFn9ogvU2bNkk+CCsqKioauRoASBYuXJguXbrUzFEAAADAuuFTG6Qv386loqJCkA7AWsWWYwAAALBusUErAAAAAAAUEKQDAAAAAEABQToAAAAAABQQpAMAAAAAQAFBOgAAAAAAFBCkAwAAAABAAUE6AAAAAAAUEKQDAAAAAEABQToAAAAAABQQpAMAAAAAQAFBOgAAAAAAFBCkAwAAAABAAUE6AAAAAAAUEKQDAAAAAECBpo1dAFD/3n777Tz11FNrfP4777yT2bNnZ4sttkiLFi3W6Brbb799WrZsucY1AAAAAEBjEaTDeuCpp55K3759G7WGGTNmpE+fPo1aAwAAAACsCUE6rAe23377zJgxY43Pf/LJJ3P44YfnmmuuSY8ePda4BgAAAABYFwnSYT3QsmXLT2Q1eI8ePawqBwAAAGC948tGAQAAAACggCAdAAAAAAAKCNIBAAAAAKCAIB0AAAAAAAoI0gEAAAAAoIAgHQAAAAAACgjSAQAAAACggCAdAAAAAAAKCNIBAAAAAKCAIB0AAAAAAAoI0gEAAAAAoIAgHQAAAAAACgjSAQAAAACggCAdAAAAAAAKCNIBAAAAAKCAIB0AAAAAAArUe5B+ySWXZKeddkpFRUUqKirSv3///PnPf15p/4kTJ6asrKzW0bx58/ouEwAAAAAA6tS0vgfYfPPN87//+7/p3r17SqVSrrrqqowYMSKPPPJIdthhhzrPqaioyNNPP13zuKysrL7LBAAAAACAOtV7kL7ffvvVevyjH/0ol1xySe6///6VBullZWXp1KnTao2zZMmSLFmypObxwoULV79YAAAAAAD4Nw26R/qyZcty7bXXZvHixenfv/9K+y1atCjdunVLly5dMmLEiDz++OMfee3x48ensrKy5ujSpcsnWToAAAAAAOupBgnSH3vssbRu3Trl5eX56le/mptuuik9e/ass+92222XK6+8MjfffHOuueaaVFdXZ8CAAXnxxRcLxxg3blyqqqpqjhdeeKE+bgUAAAAAgPVMvW/tknwQjs+cOTNVVVX57W9/m1GjRuWuu+6qM0zv379/rdXqAwYMSI8ePXLZZZflBz/4wUrHKC8vT3l5eb3UDwAAAADA+qtBgvRmzZplm222SZL07ds3Dz74YC644IJcdtllH3nuhhtumN69e+fZZ5+t7zIBAAAAAGAFDbpH+nLV1dW1vhi0yLJly/LYY49l0003reeqAAAAAABgRfW+In3cuHEZOnRounbtmrfeeiuTJk3KtGnTcttttyVJjjjiiGy22WYZP358kuTMM89Mv379ss02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2W233TJu3LgMHz68Vt8FCxZk//33T8uWLdO9e/f8/ve/r3lu2bJlGTNmTLbccsu0aNEi2223XS644IJa548ePTojR47Mj370o3Tu3DnbbbddkuSFF17IQQcdlLZt26Zdu3YZMWJErZXj06ZNy2677ZZWrVqlbdu22WOPPTJnzpwV7qVFixbp1KlTzdGsWbO0bNmy5vHSpUtzwAEHpHXr1qmoqMhBBx2U+fPnJ/lgNfsZZ5yRv//97zWr1ydOnJgk+elPf5odd9wxrVq1SpcuXfK1r30tixYt+iRefgAAAABYJYJ0aEStW7dO69atM3ny5CxZsqSw7xlnnJGDDjoojz76aL74xS/msMMOy+uvv54kqa6uzuabb54bbrghTzzxRE499dScfPLJuf7662tdY+rUqXn66aczZcqU3HLLLXnvvfcyZMiQtGnTJvfcc0/uvffetG7dOvvss0+WLl2a999/PyNHjszAgQPz6KOPZvr06TnmmGNSVla2WvdZXV2dESNG5PXXX89dd92VKVOm5Pnnn8/BBx+c5IPV7N/61reyww475OWXX87LL79c81yTJk1y4YUX5vHHH89VV12VO+64I9/5zndWa3wAAAAA+Dhs7QKNqGnTppk4cWKOPvroXHrppenTp08GDhyY//zP/8xOO+1Uq+/o0aNzyCGHJEl+/OMf58ILL8wDDzyQffbZJxtuuGHOOOOMmr5bbrllpk+fnuuvvz4HHXRQTXurVq1yxRVX1Gzpcs0116S6ujpXXHFFTTg+YcKEtG3bNtOmTcuuu+6aqqqq7Lvvvtl6662TJD169Fjt+5w6dWoee+yxzJo1K126dEmSXH311dlhhx3y4IMP5jOf+Uxat26dpk2bplOnTrXO/cY3vlHz31tssUV++MMf5qtf/Wp+/vOfr3YdAAAAALAmrEiHRnbggQfmpZdeyu9///vss88+mTZtWvr06VOztclyHw7WW7VqlYqKirzyyis1bRdffHH69u2b9u3bp3Xr1rn88sszd+7cWtfYcccda+2L/ve//z3PPvts2rRpU7M6vl27dnn33Xfz3HPPpV27dhk9enSGDBmS/fbbLxdccEFefvnl1b7HJ598Ml26dKkJ0ZOkZ8+eadu2bZ588snCc//yl7/k85//fDbbbLO0adMm//Vf/5XXXnstb7/99mrXAQAAAABrQpAOa4HmzZtn7733zimnnJL77rsvo0ePzmmnnVarz4YbbljrcVlZWaqrq5Mk1157bb797W9nzJgxuf322zNz5swceeSRWbp0aa1zWrVqVevxokWL0rdv38ycObPW8c9//jOHHnpokg9WqE+fPj0DBgzIddddl2233Tb333//J/0S1Gn27NnZd999s9NOO+XGG2/MjBkzcvHFFyfJCvcGAAAAAPXF1i6wFurZs2cmT568yv3vvffeDBgwIF/72tdq2p577rmPPK9Pnz657rrr0qFDh1RUVKy0X+/evdO7d++MGzcu/fv3z6RJk9KvX79Vrq9Hjx554YUX8sILL9SsSn/iiSfy5ptvpmfPnkmSZs2aZdmyZbXOmzFjRqqrq3PuueemSZMP/u737/u+AwAAAEB9syIdGtFrr72Wz33uc7nmmmvy6KOPZtasWbnhhhty9tlnZ8SIEat8ne7du+ehhx7Kbbfdln/+85855ZRT8uCDD37keYcddlg22WSTjBgxIvfcc09mzZqVadOm5etf/3pefPHFzJo1K+PGjcv06dMzZ86c3H777XnmmWdWe5/0wYMHZ8cdd8xhhx2Whx9+OA888ECOOOKIDBw4MLvuumuSD/Y/nzVrVmbOnJkFCxZkyZIl2WabbfLee+/lZz/7WZ5//vn86le/yqWXXrpaYwMAAADAxyVIh0bUunXr7L777jnvvPOy5557plevXjnllFNy9NFH56KLLlrl6xx77LE54IADcvDBB2f33XfPa6+9Vmt1+sq0bNkyd999d7p27ZoDDjggPXr0yJgxY/Luu++moqIiLVu2zFNPPZUDDzww2267bY455piMHTs2xx577GrdZ1lZWW6++eZstNFG2XPPPTN48OBstdVWue6662r6HHjggdlnn32y1157pX379vnNb36TnXfeOT/96U9z1llnpVevXvn1r3+d8ePHr9bYAAAAAPBxlZVKpVJjFwEAAAAAAGsrK9IBAAAAAKCAIB0AAAAAAAoI0gEAAAAAoIAgHQAAAAAACgjSAQAAAACggCAdAAAAAAAKCNIBAAAAAKCAIB0AAAAAAAoI0gEAAAAAoIAgHQAAAAAACgjSAQAAAACgwP8DJ4M0a49S4pQAAAAASUVORK5CYII=",
|
||
"text/plain": [
|
||
"<Figure size 1500x1000 with 4 Axes>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"# Устранить выборсы в DataFrame\n",
|
||
"def remove_outliers(dataframe: DataFrame, columns: list[str]) -> DataFrame:\n",
|
||
" for column in columns:\n",
|
||
" if not pd.api.types.is_numeric_dtype(dataframe[column]): # Проверяем, является ли колонка числовой\n",
|
||
" continue\n",
|
||
" \n",
|
||
" Q1: float = dataframe[column].quantile(0.25) # 1-й квартиль (25%)\n",
|
||
" Q3: float = dataframe[column].quantile(0.75) # 3-й квартиль (75%)\n",
|
||
" IQR: float = Q3 - Q1 # Вычисляем межквартильный размах\n",
|
||
"\n",
|
||
" # Определяем границы для выбросов\n",
|
||
" lower_bound: float = Q1 - 1.5 * IQR # Нижняя граница\n",
|
||
" upper_bound: float = Q3 + 1.5 * IQR # Верхняя граница\n",
|
||
"\n",
|
||
" # Устраняем выбросы:\n",
|
||
" # Заменяем значения ниже нижней границы на нижнюю границу\n",
|
||
" # А значения выше верхней границы – на верхнюю\n",
|
||
" dataframe[column] = dataframe[column].apply(lambda x: lower_bound if x < lower_bound else upper_bound if x > upper_bound else x)\n",
|
||
" \n",
|
||
" return dataframe\n",
|
||
"\n",
|
||
"\n",
|
||
"# Устраняем выборсы\n",
|
||
"df: DataFrame = remove_outliers(df, numeric_columns)\n",
|
||
"\n",
|
||
"# Проверка наличия выбросов в колонках\n",
|
||
"print('Проверка наличия выбросов в колонках после их устранения:')\n",
|
||
"check_outliers(df, numeric_columns)\n",
|
||
"visualize_outliers(df, numeric_columns)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Разбиение набора данных на выборки:\n",
|
||
"\n",
|
||
"**Групповое разбиение данных** – это метод разделения данных на несколько групп или подмножеств на основе определенного признака или характеристики. При этом наблюдения для одного объекта должны попасть только в одну выборку.\n",
|
||
"\n",
|
||
"**Основные виды выборки данных**:\n",
|
||
"1. Обучающая выборка (60-80%). Обучение модели (подбор коэффициентов некоторой математической функции для аппроксимации).\n",
|
||
"2. Контрольная выборка (10-20%). Выбор метода обучения, настройка гиперпараметров.\n",
|
||
"3. Тестовая выборка (10-20% или 20-30%). Оценка качества модели перед передачей заказчику.\n",
|
||
"\n",
|
||
"Разделим выборку данных на 3 группы и проанализируем качество распределения данных.\n",
|
||
"\n",
|
||
"Стратифицированное разбиение требует, чтобы в каждом классе, по которому происходит стратификация, было минимум по два элемента, иначе метод не сможет корректно разделить данные на тренировочные, валидационные и тестовые наборы.\n",
|
||
"\n",
|
||
"Чтобы решить эту проблему введём категории для значения стоимости акций. Вместо того, чтобы использовать точные значения цен для стратификации, мы создадим категории цен, основываясь на квартилях (25%, 50%, 75%) и минимальном и максимальном значении стоимости акций. Это позволит создать более крупные классы, что устранит проблему с редкими значениями.\n",
|
||
"\n",
|
||
"Категории для разбиения цен:\n",
|
||
"- Низкая цена: цены ниже первого квартиля (25%) — это значения меньше 50.52.\n",
|
||
"- Средняя цена: цены между первым квартилем (25%) и третьим квартилем (75%) — от 50.52 до 934.11.\n",
|
||
"- Высокая цена: цены выше третьего квартиля (75%) и до максимального значения — это значения выше 934.11.\n",
|
||
"\n",
|
||
"Весь набор данных состоит из 156 объектов, из которых 78 (около 50%) относятся к категории средней цены (medium), 39 (около 25%) — к низкой цене (low), и 39 (около 25%) — к высокой цене (high).\n",
|
||
"\n",
|
||
"Все выборки показывают одинаковое распределение классов, что свидетельствует о том, что данные были отобраны случайным образом и не содержат явного смещения.\n",
|
||
"\n",
|
||
"Однако, несмотря на сбалансированность при разбиении данных, в целом данные обладают значительным дисбалансом между классами. Это может быть проблемой при обучении модели, так как она может иметь тенденцию игнорировать низкие или высокие цены (low или high), что следует учитывать при дальнейшем анализе и выборе методов обработки данных.\n",
|
||
"\n",
|
||
"Для получения более сбалансированных выборок данных необходимо воспользоваться методами приращения (аугментации) данных. В данном случае воспользуемся методом oversampling."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 645,
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"# Функция для создания выборок\n",
|
||
"def split_stratified_into_train_val_test(\n",
|
||
" df_input,\n",
|
||
" stratify_colname=\"y\",\n",
|
||
" frac_train=0.6,\n",
|
||
" frac_val=0.15,\n",
|
||
" frac_test=0.25,\n",
|
||
" random_state=None,\n",
|
||
") -> tuple[Any, Any, Any]:\n",
|
||
" \"\"\"\n",
|
||
" Splits a Pandas dataframe into three subsets (train, val, and test)\n",
|
||
" following fractional ratios provided by the user, where each subset is\n",
|
||
" stratified by the values in a specific column (that is, each subset has\n",
|
||
" the same relative frequency of the values in the column). It performs this\n",
|
||
" splitting by running train_test_split() twice.\n",
|
||
"\n",
|
||
" Parameters\n",
|
||
" ----------\n",
|
||
" df_input : Pandas dataframe\n",
|
||
" Input dataframe to be split.\n",
|
||
" stratify_colname : str\n",
|
||
" The name of the column that will be used for stratification. Usually\n",
|
||
" this column would be for the label.\n",
|
||
" frac_train : float\n",
|
||
" frac_val : float\n",
|
||
" frac_test : float\n",
|
||
" The ratios with which the dataframe will be split into train, val, and\n",
|
||
" test data. The values should be expressed as float fractions and should\n",
|
||
" sum to 1.0.\n",
|
||
" random_state : int, None, or RandomStateInstance\n",
|
||
" Value to be passed to train_test_split().\n",
|
||
"\n",
|
||
" Returns\n",
|
||
" -------\n",
|
||
" df_train, df_val, df_test :\n",
|
||
" Dataframes containing the three splits.\n",
|
||
" \"\"\"\n",
|
||
"\n",
|
||
" if frac_train + frac_val + frac_test != 1.0:\n",
|
||
" raise ValueError(\n",
|
||
" \"fractions %f, %f, %f do not add up to 1.0\"\n",
|
||
" % (frac_train, frac_val, frac_test)\n",
|
||
" )\n",
|
||
"\n",
|
||
" if stratify_colname not in df_input.columns:\n",
|
||
" raise ValueError(\"%s is not a column in the dataframe\" % (stratify_colname))\n",
|
||
"\n",
|
||
" X: DataFrame = df_input # Contains all columns.\n",
|
||
" y: DataFrame = df_input[\n",
|
||
" [stratify_colname]\n",
|
||
" ] # Dataframe of just the column on which to stratify.\n",
|
||
"\n",
|
||
" # Split original dataframe into train and temp dataframes.\n",
|
||
" df_train, df_temp, y_train, y_temp = train_test_split(\n",
|
||
" X, y, \n",
|
||
" stratify=y, \n",
|
||
" test_size=(1.0 - frac_train), \n",
|
||
" random_state=random_state\n",
|
||
" )\n",
|
||
"\n",
|
||
" # Split the temp dataframe into val and test dataframes.\n",
|
||
" relative_frac_test: float = frac_test / (frac_val + frac_test)\n",
|
||
" df_val, df_test, y_val, y_test = train_test_split(\n",
|
||
" df_temp,\n",
|
||
" y_temp,\n",
|
||
" stratify=y_temp,\n",
|
||
" test_size=relative_frac_test,\n",
|
||
" random_state=random_state,\n",
|
||
" )\n",
|
||
"\n",
|
||
" assert len(df_input) == len(df_train) + len(df_val) + len(df_test)\n",
|
||
"\n",
|
||
" return df_train, df_val, df_test"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 646,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Распределение количества наблюдений по меткам (классам):\n",
|
||
"Cost\n",
|
||
"0.00 18\n",
|
||
"6.24 10\n",
|
||
"62.72 8\n",
|
||
"20.91 7\n",
|
||
"52.38 4\n",
|
||
" ..\n",
|
||
"1098.24 1\n",
|
||
"1072.22 1\n",
|
||
"1019.03 1\n",
|
||
"1048.46 1\n",
|
||
"1068.09 1\n",
|
||
"Name: count, Length: 101, dtype: int64 \n",
|
||
"\n",
|
||
"Статистическое описание целевого признака:\n",
|
||
"count 156.000000\n",
|
||
"mean 478.785641\n",
|
||
"std 448.922903\n",
|
||
"min 0.000000\n",
|
||
"25% 50.522500\n",
|
||
"50% 240.225000\n",
|
||
"75% 934.107500\n",
|
||
"max 1171.040000\n",
|
||
"Name: Cost, dtype: float64 \n",
|
||
"\n",
|
||
"Распределение количества наблюдений по меткам (классам):\n",
|
||
"Cost_category\n",
|
||
"medium 78\n",
|
||
"low 39\n",
|
||
"high 39\n",
|
||
"Name: count, dtype: int64 \n",
|
||
"\n",
|
||
"Проверка сбалансированности выборок:\n",
|
||
"Обучающая выборка: (93, 184)\n",
|
||
"Распределение выборки данных по классам в колонке \"Cost_category\":\n",
|
||
" Cost_category\n",
|
||
"medium 47\n",
|
||
"low 23\n",
|
||
"high 23\n",
|
||
"Name: count, dtype: int64\n",
|
||
"Процент объектов класса \"medium\": 50.54%\n",
|
||
"Процент объектов класса \"low\": 24.73%\n",
|
||
"Процент объектов класса \"high\": 24.73%\n",
|
||
"\n",
|
||
"Контрольная выборка: (31, 184)\n",
|
||
"Распределение выборки данных по классам в колонке \"Cost_category\":\n",
|
||
" Cost_category\n",
|
||
"medium 15\n",
|
||
"low 8\n",
|
||
"high 8\n",
|
||
"Name: count, dtype: int64\n",
|
||
"Процент объектов класса \"medium\": 48.39%\n",
|
||
"Процент объектов класса \"low\": 25.81%\n",
|
||
"Процент объектов класса \"high\": 25.81%\n",
|
||
"\n",
|
||
"Тестовая выборка: (32, 184)\n",
|
||
"Распределение выборки данных по классам в колонке \"Cost_category\":\n",
|
||
" Cost_category\n",
|
||
"medium 16\n",
|
||
"low 8\n",
|
||
"high 8\n",
|
||
"Name: count, dtype: int64\n",
|
||
"Процент объектов класса \"medium\": 50.00%\n",
|
||
"Процент объектов класса \"low\": 25.00%\n",
|
||
"Процент объектов класса \"high\": 25.00%\n",
|
||
"\n",
|
||
"Проверка необходимости аугментации выборок:\n",
|
||
"Для обучающей выборки аугментация данных требуется\n",
|
||
"Для контрольной выборки аугментация данных требуется\n",
|
||
"Для тестовой выборки аугментация данных требуется\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "iVBORw0KGgoAAAANSUhEUgAABigAAAHmCAYAAADp3gZeAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAADrEklEQVR4nOzdd1xV9f8H8NdlbwRRQTFw71GalgszNUepqZmaq1Ir07Lh/uZKM9PcmqNyNxy5NfcG90JBRZbIHrK5cMfn94e/e+NyAQHhHu7l9Xw8eJSXw7mvu877nvP+nM+RCSEEiIiIiIiIiIiIiIiIDMhM6gBERERERERERERERFTxsEFBREREREREREREREQGxwYFEREREREREREREREZHBsURERERERERERERERkcGxQEBERERERERERERGRwbFBQUREREREREREREREBscGBRERERERERERERERGRwbFEREREREREREREREZHBsUBAR0XMplUrExcXh8ePHUkehUpaTk4OYmBhERUVJHYWIiIheUFpaGsLCwpCRkSF1FCIiIqIiYYOCiIjyFRQUhDFjxsDDwwNWVlaoVq0aXn/9dQghpI5mFLZt24awsDDtvzdt2oTIyEjpAuVy7do1DB06FG5ubrC2toaHhwcGDBggdSwiIqJyKT09HcuWLdP+Ozk5GatXr5YuUC5CCKxfvx6vvfYa7Ozs4OTkhFq1amHbtm1SRyMiIqJSIoRAUlISgoKCpI5SJorVoNi0aRNkMpn2x8bGBvXr18f48eMRGxtbVhmJTN7s2bPh7e0N4L/PWX727NmDnj17ws3NDVZWVqhevToGDRqEU6dOlUkuX19fzJ49G8nJyWWy/qIKCAjA7NmzdQ72moKwsDDIZDKcOXMGACCTybBp0yZJM2lcunQJbdq0walTpzB16lQcPXoUx48fx969ewt8f5Ku8+fPY/LkyQgLC8PRo0fx+eefw8ys7MYFFLVG79u3Dx06dEBAQADmz5+P48eP4/jx41i3bl2ZZSMyZqzRhWONporA1tYW//vf/7B9+3ZERERg9uzZOHDggNSxAABDhw7Fp59+ikaNGmHr1q04fvw4Tpw4gf79+0sdjYiIqNy7e/cu9u7dq/33rVu3cOjQIekC5ZKWlob//e9/aNCgAaysrFC5cmXUr18fDx48kDpaqbMoyR/NnTsXtWrV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",
|
||
"text/plain": [
|
||
"<Figure size 1500x500 with 3 Axes>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"# Оценка сбалансированности\n",
|
||
"def check_balance(dataframe: DataFrame, dataframe_name: str, column: str) -> None:\n",
|
||
" counts: Series[int] = dataframe[column].value_counts()\n",
|
||
" print(dataframe_name + \": \", dataframe.shape)\n",
|
||
" print(f\"Распределение выборки данных по классам в колонке \\\"{column}\\\":\\n\", counts)\n",
|
||
" total_count: int = len(dataframe)\n",
|
||
" for value in counts.index:\n",
|
||
" percentage: float = counts[value] / total_count * 100\n",
|
||
" print(f\"Процент объектов класса \\\"{value}\\\": {percentage:.2f}%\")\n",
|
||
" print()\n",
|
||
" \n",
|
||
"# Определение необходимости аугментации данных\n",
|
||
"def need_augmentation(dataframe: DataFrame,\n",
|
||
" column: str, \n",
|
||
" first_value: Any, second_value: Any) -> bool:\n",
|
||
" counts: Series[int] = dataframe[column].value_counts()\n",
|
||
" ratio: float = counts[first_value] / counts[second_value]\n",
|
||
" return ratio > 1.5 or ratio < 0.67\n",
|
||
" \n",
|
||
" # Визуализация сбалансированности классов\n",
|
||
"def visualize_balance(dataframe_train: DataFrame,\n",
|
||
" dataframe_val: DataFrame,\n",
|
||
" dataframe_test: DataFrame, \n",
|
||
" column: str) -> None:\n",
|
||
" fig, axes = plt.subplots(1, 3, figsize=(15, 5))\n",
|
||
"\n",
|
||
" # Обучающая выборка\n",
|
||
" counts_train: Series[int] = dataframe_train[column].value_counts()\n",
|
||
" axes[0].pie(counts_train, labels=counts_train.index, autopct='%1.1f%%', startangle=90)\n",
|
||
" axes[0].set_title(f\"Распределение классов \\\"{column}\\\" в обучающей выборке\")\n",
|
||
"\n",
|
||
" # Контрольная выборка\n",
|
||
" counts_val: Series[int] = dataframe_val[column].value_counts()\n",
|
||
" axes[1].pie(counts_val, labels=counts_val.index, autopct='%1.1f%%', startangle=90)\n",
|
||
" axes[1].set_title(f\"Распределение классов \\\"{column}\\\" в контрольной выборке\")\n",
|
||
"\n",
|
||
" # Тестовая выборка\n",
|
||
" counts_test: Series[int] = dataframe_test[column].value_counts()\n",
|
||
" axes[2].pie(counts_test, labels=counts_test.index, autopct='%1.1f%%', startangle=90)\n",
|
||
" axes[2].set_title(f\"Распределение классов \\\"{column}\\\" в тренировочной выборке\")\n",
|
||
"\n",
|
||
" # Отображение графиков\n",
|
||
" plt.tight_layout()\n",
|
||
" plt.show()\n",
|
||
" \n",
|
||
"\n",
|
||
"# Унитарное кодирование категориальных признаков (one-hot encoding)\n",
|
||
"df_encoded: DataFrame = pd.get_dummies(df)\n",
|
||
"\n",
|
||
"# Вывод распределения количества наблюдений по меткам (классам)\n",
|
||
"print('Распределение количества наблюдений по меткам (классам):')\n",
|
||
"print(df_encoded['Cost'].value_counts(), '\\n')\n",
|
||
"\n",
|
||
"# Статистическое описание целевого признака\n",
|
||
"print('Статистическое описание целевого признака:')\n",
|
||
"print(df_encoded['Cost'].describe().transpose(), '\\n')\n",
|
||
"\n",
|
||
"# Определим границы для каждой категории стоимости акций\n",
|
||
"bins: list[float] = [df_encoded['Cost'].min() - 1, \n",
|
||
" df_encoded['Cost'].quantile(0.25), \n",
|
||
" df_encoded['Cost'].quantile(0.75), \n",
|
||
" df_encoded['Cost'].max() + 1]\n",
|
||
"labels: list[str] = ['low', 'medium', 'high']\n",
|
||
"\n",
|
||
"# Создаем новую колонку с категориями стоимости акций\n",
|
||
"df_encoded['Cost_category'] = pd.cut(df_encoded['Cost'], bins=bins, labels=labels)\n",
|
||
"\n",
|
||
"# Вывод распределения количества наблюдений по меткам (классам)\n",
|
||
"print('Распределение количества наблюдений по меткам (классам):')\n",
|
||
"print(df_encoded['Cost_category'].value_counts(), '\\n')\n",
|
||
"\n",
|
||
"df_train, df_val, df_test = split_stratified_into_train_val_test(\n",
|
||
" df_encoded, \n",
|
||
" stratify_colname=\"Cost_category\", \n",
|
||
" frac_train=0.60, \n",
|
||
" frac_val=0.20, \n",
|
||
" frac_test=0.20\n",
|
||
")\n",
|
||
"\n",
|
||
"# Проверка сбалансированности выборок\n",
|
||
"print('Проверка сбалансированности выборок:')\n",
|
||
"check_balance(df_train, 'Обучающая выборка', 'Cost_category')\n",
|
||
"check_balance(df_val, 'Контрольная выборка', 'Cost_category')\n",
|
||
"check_balance(df_test, 'Тестовая выборка', 'Cost_category')\n",
|
||
"\n",
|
||
"# Проверка необходимости аугментации выборок\n",
|
||
"print('Проверка необходимости аугментации выборок:')\n",
|
||
"print(f\"Для обучающей выборки аугментация данных {'не ' if not need_augmentation(df_train, 'Cost_category', 'low', 'medium') else ''}требуется\")\n",
|
||
"print(f\"Для контрольной выборки аугментация данных {'не ' if not need_augmentation(df_val, 'Cost_category', 'low', 'medium') else ''}требуется\")\n",
|
||
"print(f\"Для тестовой выборки аугментация данных {'не ' if not need_augmentation(df_test, 'Cost_category', 'low', 'medium') else ''}требуется\")\n",
|
||
" \n",
|
||
"# Визуализация сбалансированности классов\n",
|
||
"visualize_balance(df_train, df_val, df_test, 'Cost_category')"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Приращение данных:\n",
|
||
"\n",
|
||
"**Аугментация данных** может быть полезна в том случае, когда имеется недостаточное количество данных и мы хотим сгенерировать новые данные на основе имеющихся, слегка модифицировав их.\n",
|
||
"\n",
|
||
"**Метод решения:**\n",
|
||
"**Выборка с избытком (oversampling)** – копирование наблюдений или генерация новых наблюдений на основе существующих с помощью алгоритмов SMOTE и ADASYN (нахождение k-ближайших соседей)."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 647,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Проверка сбалансированности выборок после применения метода oversampling:\n",
|
||
"Обучающая выборка: (141, 184)\n",
|
||
"Распределение выборки данных по классам в колонке \"Cost_category\":\n",
|
||
" Cost_category\n",
|
||
"low 47\n",
|
||
"medium 47\n",
|
||
"high 47\n",
|
||
"Name: count, dtype: int64\n",
|
||
"Процент объектов класса \"low\": 33.33%\n",
|
||
"Процент объектов класса \"medium\": 33.33%\n",
|
||
"Процент объектов класса \"high\": 33.33%\n",
|
||
"\n",
|
||
"Контрольная выборка: (45, 184)\n",
|
||
"Распределение выборки данных по классам в колонке \"Cost_category\":\n",
|
||
" Cost_category\n",
|
||
"low 15\n",
|
||
"medium 15\n",
|
||
"high 15\n",
|
||
"Name: count, dtype: int64\n",
|
||
"Процент объектов класса \"low\": 33.33%\n",
|
||
"Процент объектов класса \"medium\": 33.33%\n",
|
||
"Процент объектов класса \"high\": 33.33%\n",
|
||
"\n",
|
||
"Тестовая выборка: (48, 184)\n",
|
||
"Распределение выборки данных по классам в колонке \"Cost_category\":\n",
|
||
" Cost_category\n",
|
||
"low 16\n",
|
||
"medium 16\n",
|
||
"high 16\n",
|
||
"Name: count, dtype: int64\n",
|
||
"Процент объектов класса \"low\": 33.33%\n",
|
||
"Процент объектов класса \"medium\": 33.33%\n",
|
||
"Процент объектов класса \"high\": 33.33%\n",
|
||
"\n",
|
||
"Проверка необходимости аугментации выборок после применения метода oversampling:\n",
|
||
"Для обучающей выборки аугментация данных не требуется\n",
|
||
"Для контрольной выборки аугментация данных не требуется\n",
|
||
"Для тестовой выборки аугментация данных не требуется\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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tWopKirK5TlzcQ0pvD0q/N8DDzxQ5Hn3Sy+9RI//Hz2mx/T4L2b2uLKaKJXuOUivXr3Utm3bIl/reEwX/pmf/XxYOvOzO7ufhfcH3n33XTVs2FChoaHq2bOntm3bVuS2ytJFx3+RkZHq0qWLy/s4FJ7pfNuF4r6X4vaLynL/SNLHH3/sfMzVrVtXjzzySJFTsRXe/rZu3VqdOnXS5s2bi92uFqfXWc9Da9SooX79+hW5bx2/ByVxPLd3fA/r1q1zLuZ17txZISEhql69uu68804dPny4yNeX5edWmsfs2f3Lz8/Xtddeq2rVqmnHjh0uly3t8+vzqZDlY8cfKqpXry7pzIZ+5syZuu222xQbG6uTJ0/qs88+U8+ePbVjxw7VrVtXklRQUKDrrrtOv/76q+644w49/vjjSktL08KFC7Vt2zaXo03vvPNOXXvttS63O3LkyGLnef3112Wz2fTMM88oPj5e7733nnr37q1NmzYpNDRU0pkfXt++fdWpUye9/PLL8vPz04QJE3TFFVdo+fLlLuFyqF+/vsaMGSPpzBul/etf/yr2tl988UUNGDBADzzwgBISEvTBBx+oR48e2rhxY7FH2gwdOlTdu3eXJP3vf//Tjz/+6PL5hx56SBMnTtSQIUP02GOP6cCBA/rwww+1ceNGrVy5UoGBgcXeD2WRnJzs/N4Ks9vtuuGGG7RixQoNHTpUrVq10tatW/Xuu+9qz549xW6AzmXChAl64YUX9Pbbb5d4pM/57o/3339fN9xwg+6++27l5ubqu+++02233abZs2erX79+zsu98sorGjVqlLp166bRo0crKChIa9as0eLFi3X11VdLOrMRuO+++9SmTRuNHDlSVatW1caNG/XLL78453Pc9//4xz80ZswYnTx5Uu+//75WrlxZ5Gdao0YNvfvuu5Kko0eP6v3339e1116rI0eOlPvlnitWrFBSUpKGDRsmf3//817+5MmT6tatmzIzM/XYY4+pevXqmjRpkm644QZNnz5dN910kyTpiy++0GOPPaZbb73VuUHasmWL1qxZo7vuuks333yz9uzZo2+//VbvvvuuatSoIUmqWbNmqebesmWLunfvrsDAQA0dOlSNGjXS/v379fPPP+v111+XdGaju2rVKt1xxx2qX7++Dh48qE8++US9evXSjh07FBYWph49euixxx7T+PHj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rVNaWpr69eunO+64Q8OGDXNptOMl3aNHjy7S6OTkZB0/ftzlYzSaRtPo5DLNTKPP8LRGO3Tv3l2S1KFDBz311FN68803Xf54VdqWV6aPPvrI5d8ffPCBJDnv/5L2I4rrclpamubOnVvuc4I7FmrK+gfCOnXqqGPHjpo0aZLLY3fbtm1asGBBkc5JZ07ZeOmll+qGG24o16yFFRQUyDCMItvAlJQUl+fMjs9nZmbq66+/drmsn5+frrnmGs2aNcul60lJSZo0aZI6d+7s3L5Xq1atyLZn0qRJ+vTTT53bnunTpzu3PV9//bWaN2/ufM48ZcoUl1ZLZ7ahhRviOIJ95cqVzss4Xjm7atUq5+934R6ffeojekyPy4se0+PSKEuPS+t8TSzLc5CyOnjwoD755BONGjXqvIuzM2fOdOnL2rVrtWbNGuec5eliYQUFBcrNzXX+Hpd1u+Dn56e2bds6/1bQqVOnUt0Hxendu7eCgoI0fvx4l/v8yy+/VEpKSpHbTktL0+uvv64nnniiVK/mPB/H8/bzbdMc293inrv/7W9/U0xMTJH7b/ny5Vq/fr3zuW95fm7ne8w6dOvWTf7+/goPD9enn36q3377zaVzFf3YrpRXUFx33XUaPXq0hgwZom7dumnr1q2aOnWqy8qVdOao26+//lpPPvmk1q5dq+7duysjI0OLFi3Sww8/XOQNOEqrWrVquuyyyzRkyBCdPHlS7733npo2bep8ObOfn5/++9//qm/fvmrTpo2GDBmievXqKS4uTkuWLFFUVJR+/vlnZWRk6KOPPtL48ePVvHlzLV261Hkbjg32li1btHr1anXt2lVNmjTRa6+9ppEjR+rgwYO68cYbFRkZqQMHDujHH3/U0KFD9dRTT2nRokV68cUXtWXLFv3888/n/F569uyphx56SGPGjNGmTZt09dVXKzAwUHv37tW0adP0/vvv69Zbby3X/bRgwQJdddVV51xFv/fee/XDDz/on//8p5YsWaJLL71UBQUF2rVrl3744QfNnz//vEetFhYTE6OxY8fqgQce0D333KNrr722TPdHv3799M4776hPnz666667FB8fr48++khNmzbVli1bnJdr2rSpnn/+eb366qvq3r27br75ZgUHB2vdunWqW7euxowZo6ioKL377rt64IEH9I9//EN33XWXoqOjtXnzZmVmZmrSpEkKDAzUm2++qSFDhqhnz5668847dfLkSb3//vtq1KhRkfPBZ2RkuLxcdfLkycrOznZ589jyGDFihLZv3663335bS5Ys0a233qqYmBidOHFCM2fO1Nq1a7Vq1SpJZ548ffvtt+rbt68ee+wxVatWTZMmTdKBAwc0Y8YM55ECV199tWJiYnTppZeqdu3a2rlzpz788EP169fPeRSEIwrPP/+87rjjDgUGBur6668v1ZF348eP12WXXaa///3vGjp0qGJjY3Xw4EHNmTPHucJ93XXXafLkyapSpYpat26t1atXa9GiRUWOoOvYsaP8/f315ptvKiUlRcHBwbriiitUq1YtffLJJ7r33nv197//XXfccYdq1qypw4cPa86cObr00kudO01vvPGG+vfvr0svvVRDhgxx/uG1bdu2Ljtg119/vS6//HI9//zzOnjwoDp06KAFCxZo1qxZGjZsWLGnnClJv379VL16dU2bNk19+/Yt8by45bFw4UIdPXrU+XLVqVOn6oYbbnCe9784Q4cO1WeffeZ848RGjRpp+vTpziNVHD/3Nm3a6P7779fnn3+u06dPO1+e+NVXX6lv375FIlezZk316dNH06ZNU9WqVcu9IFDa3++zXXfddbriiiv0xhtvKC4uTl26dNHSpUs1bdo0PfTQQ0XO63r48GGXVxgkJCQoKyvL5WOOx+jatWvVrFkz1atXTyNGjNBPP/2k6667ToMHD1anTp2UkZGhrVu3avr06Tp48KDL0ZoLFizQgw8+WO6XKK9evVoBAQHOUzx98MEH+tvf/lbkyIbVq1crMTHReV7YdevWFXu0iXTmyURsbKwOHDigFi1aqHPnzlqzZo3279+vqKgo5+92hw4ddO+992ry5Ml68sknNXXqVAUEBGjNmjWqVatWkfP71qhRQ/fff7/WrVun2rVr66uvvlJ+fn6xb3ZYpUoVZ6Nr1qypjIwMRUREOBv9zDPP6Ntvv9XevXtVp04d9ezZU6Ghodq7d6+2bt2q3r17O8+lSaNpNI2m0VZpdHFefvllzZgxQw8++KBWrlwpPz+/Ure8Mh04cEA33HCD+vTpo9WrV2vKlCkup3Hs0KGDBg0apM8//1zJycnq2bOn1q5dq0mTJunGG2/U5ZdfLkn64Ycf9Morr+j06dN69tlnS3XbmzZtUkREhPLz8/XHH3/o66+/Vv/+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1ysgIED33XdfZX8bEO0GADPRbpQH7QYA89BuVBQWKCrB3r179dNPP+m///2vunfvrg4dOmjq1KmKi4tzruj16tXLuaP022+/6W9/+5vLx5YuXaqePXtW+qyzNsVp/vaTlX47AOBO7nzJafv27fXyyy+rWbNmGjhwoDp37qxff/21yOW++eYb2Ww2ffHFF2rdurX69u2rESNGFHudr7/+unr27KnWrVvr2Wef1apVq5SdnV3Z34pPo90AYC7ajbKi3QBgLtqNisICRSXYuXOnAgICdPHFFzs/Vr16dbVo0UI7d+6UJPXs2VM7duxQQkKCli1bpl69ejl3lPLy8rRq1Sr16tWrUudMSMvRqJ+2V+ptAIBZVsat1P/2/q/Sb6d9+/Yu/65Tp47i4+OLXG737t1q3769QkJCnB/r0qXLea/TcRqC4q4TFYd2A4D5aDfKgnYDgPloNyoCCxQmadeunapVq6Zly5a57CgtW7ZM69atU15enrp161apMzz/Iy8xBWBt7njJaWBgoMu/bTab7HZ7hV2nzWaTpAu+Tlw42g0AlY92oyLRbgCofLQbF4oFikrQqlUr5efna82aNc6PnTp1Srt371br1q0lnXngd+/eXbNmzdL27dt12WWXqX379srJydFnn32mzp07Kzw8vNJmnLkxTgt28BJTANaWnpeul1e9bPYYkqQWLVpo69atysnJcX5s3bp1Jk6Ewmg3AHgG2o3Sot0A4BloNy4UCxSVoFmzZurfv78efPBBrVixQps3b9Y999yjevXqqX///s7L9erVS99++606duyoiIgI+fn5qUePHpo6dWqlngczPi1bo37mJaYAfMOqY6s0fc90s8fQXXfdJbvdrqFDh2rnzp2aP3++xo0bJ+mvozVgHtoNAJ6DdqM0aDcAeA7ajQvBAkUlmTBhgjp16qTrrrtOXbt2lWEYmjt3rsvLh3r27KmCggKXc1726tWryMcq2ksztyuZl5gC8CHj1o/TyQxzj16LiorSzz//rE2bNqljx456/vnn9dJLL0mSy/kxYR7aDQCeg3ajNGg3AHgO2o3yshmGYZg9BNxn2Z4EDfpqrdljwEd1ahWnPfrA7DHgo/rG9tVbPd4yewwXU6dO1ZAhQ5SSkqLQ0FCzx4GHot0wE+2GmWg3vBXthploN8xEu1EevILCh+QV2PUKLzEF4KPmHZin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AAAAAAA0nAUFAAAAAADQcBYUAAAAAABAw1lQAAAAAAAADWdBAQAAAAAANJwFBQAAAAAA0HAWFAAAAAAAQMNZUABta9asWbn44os3/X7//ffPVVddVWweAGDbtBsAWot2Azurp/QAAI2yePHi9Pb2lh4DANhO2g0ArUW7gZGyoAA6xrRp00qPAACMgHYDQGvRbmCk3OIJaLhZs2bloosuysUXX5xdd901/f39+dznPpc1a9bk/PPPzy677JKDDjooN95446bPWbJkSc4888z09fWlv78/8+fPz+OPP77p42vWrMm73vWu9PX1Zfr06fnkJz/5kq/7wktNly1blkqlknvuuWfTx1etWpVKpZKFCxcmSRYuXJhKpZKbbropxx13XCZMmJDTTz89K1asyI033pjDDjsskyZNyrnnnpu1a9eOyt8VADQD7QaA1qLdQKuwoACKuPbaa7P77rvnjjvuyEUXXZT3ve99mTt3bl7zmtfk7rvvzuzZszN//vysXbs2q1atyumnn57jjjsud955Z/7jP/4jjz32WObNm7fp+S655JIsWrQo119/fW6++eYsXLgwd999d11mvfTSS3P11VfntttuyyOPPJJ58+blqquuyle+8pXccMMNufnmm/PpT3+6Ll8LAJqVdgNAa9FuoCVUARrs1FNPrZ500kmbfj84OFjt7e2tzp8/f9Njy5cvryapfv/7369+9KMfrc6ePXuz53jkkUeqSao//vGPq88880x17Nix1a9+9aubPv7EE09UJ0yYUP393//9TY/tt99+1SuvvLJarVarDz74YDVJ9Qc/+MGmj69cubKapLpgwYJqtVqtLliwoJqkesstt2z6Mx//+MerSapLly7d9Nh73/ve6utf//qd+SsBgKam3QDQWrQbaBV+BgVQxNFHH73p/e7u7kydOjVHHXXUpsf6+/uTJCtWrMi9996bBQsWpK+v7yXPs3Tp0qxbty4bN27MCSecsOnx3XbbLYceemjdZ+3v78/EiRNz4IEHbvbYHXfcUZevBQDNSrsBoLVoN9AKLCiAIsaMGbPZ7yuVymaPVSqVJMnw8HBWr16dOXPm5PLLL3/J80yfPj0//elPR/z1u7pqd7irVqubHhsYGHjZWV8853OPDQ8Pj3gGAGgl2g0ArUW7gVbgZ1AATe9Vr3pV7rvvvuy///456KCDNnvr7e3NjBkzMmbMmNx+++2bPmflypX5yU9+stXnnDZtWpJk+fLlmx574Q/uAgB2nHYDQGvRbqAUCwqg6V144YV58skn8/a3vz2LFy/O0qVLc9NNN+X888/P0NBQ+vr6csEFF+SSSy7Jd77znSxZsiTnnXfepldrbMmECRPy6le/Opdddlnuv//+LFq0KB/+8Icb+F0BQPvSbgBoLdoNlGJBATS9vfbaK7feemuGhoYye/bsHHXUUbn44oszZcqUTYehK664IieffHLmzJmTM844IyeddFJmzpy5zef94he/mMHBwcycOTMXX3xxPvaxjzXi2wGAtqfdANBatBsopVJ94Y3gAAAAAAAAGsAVFAAAAAAAQMNZUAAAAAAAAA1nQQEAAAAAADScBQUAAAAAANBwFhQAAAAAAEDDWVAAAAAAAAANZ0EBAAAAAAA0nAUFAAAAAADQcBYUAAAAAABAw1lQAAAAAAAADWdBAQAAAAAANJwFBQAAAAAA0HAWFAAAAAAAQMNZUAAAAAAAAA1nQQEAAAAAADScBQUAAAAAANBwFhQAAAAAAEDDWVAAAAAAAAANZ0EBAAAAAAA0nAUFAAAAAADQcBYUAAAAAABAw1lQAAAAAAAADWdBAQAAAAAANJwFBQAAAAAA0HAWFAAAAAAAQMNZUAAAAAAAAA1nQQEAAAAAADScBQUAAAAAANBwFhQAAAAAAEDDWVAAAAAAAAANZ0EBAAAAAAA0nAUFAAAAAADQcBYUAAAAAABAw/1/jZlIq5Iz+PMAAAAASUVORK5CYII=",
|
||
"text/plain": [
|
||
"<Figure size 1500x500 with 3 Axes>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"# Метод приращения с избытком (oversampling)\n",
|
||
"def oversample(df: DataFrame, column: str) -> DataFrame:\n",
|
||
" X: DataFrame = pd.get_dummies(df.drop(column, axis=1))\n",
|
||
" y: DataFrame = df[column] # type: ignore\n",
|
||
" \n",
|
||
" smote = SMOTE()\n",
|
||
" X_resampled, y_resampled = smote.fit_resample(X, y) # type: ignore\n",
|
||
" \n",
|
||
" df_resampled: DataFrame = pd.concat([X_resampled, y_resampled], axis=1)\n",
|
||
" return df_resampled\n",
|
||
"\n",
|
||
"\n",
|
||
"# Приращение данных (oversampling)\n",
|
||
"df_train_oversampled: DataFrame = oversample(df_train, 'Cost_category')\n",
|
||
"df_val_oversampled: DataFrame = oversample(df_val, 'Cost_category')\n",
|
||
"df_test_oversampled: DataFrame = oversample(df_test, 'Cost_category')\n",
|
||
"\n",
|
||
"# Проверка сбалансированности выборок\n",
|
||
"print('Проверка сбалансированности выборок после применения метода oversampling:')\n",
|
||
"check_balance(df_train_oversampled, 'Обучающая выборка', 'Cost_category')\n",
|
||
"check_balance(df_val_oversampled, 'Контрольная выборка', 'Cost_category')\n",
|
||
"check_balance(df_test_oversampled, 'Тестовая выборка', 'Cost_category')\n",
|
||
"\n",
|
||
"# Проверка необходимости аугментации выборок\n",
|
||
"print('Проверка необходимости аугментации выборок после применения метода oversampling:')\n",
|
||
"print(f\"Для обучающей выборки аугментация данных {'не ' if not need_augmentation(df_train_oversampled, 'Cost_category', 'low', 'medium') else ''}требуется\")\n",
|
||
"print(f\"Для контрольной выборки аугментация данных {'не ' if not need_augmentation(df_val_oversampled, 'Cost_category', 'low', 'medium') else ''}требуется\")\n",
|
||
"print(f\"Для тестовой выборки аугментация данных {'не ' if not need_augmentation(df_test_oversampled, 'Cost_category', 'low', 'medium') else ''}требуется\")\n",
|
||
" \n",
|
||
"# Визуализация сбалансированности классов\n",
|
||
"visualize_balance(df_train_oversampled, df_val_oversampled, df_test_oversampled, 'Cost_category')"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Конструирование признаков:\n",
|
||
"\n",
|
||
"**Конструирование признаков (feature engineering)** – процесс использования знаний об особенностях решаемой задачи и предметной области для определения признаков, которые будут использованы для обучения статистической модели.\n",
|
||
"\n",
|
||
"**Методы конструирования признаков:**\n",
|
||
"1. **Унитарное кодирование категориальных признаков (one-hot encoding)** – метод, который применяется для преобразования категориальных переменных в числовой формат. Каждая характеристика представляется в виде бинарного вектора, где для каждой категории выделяется отдельный признак (столбец) со значением 1 (True), если объект принадлежит этой категории, и 0 (False) в противном случае.\n",
|
||
"\n",
|
||
"В данном случае преобразование категориальных признаков уже было выполнено на этапе разбиения данных на выборки. Для этого использовался метод \"get_dummies\" из библиотеки \"pandas\"."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 648,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>Cost</th>\n",
|
||
" <th>Shares</th>\n",
|
||
" <th>Value ($)</th>\n",
|
||
" <th>Shares Total</th>\n",
|
||
" <th>Insider Trading_Baglino Andrew D</th>\n",
|
||
" <th>Insider Trading_DENHOLM ROBYN M</th>\n",
|
||
" <th>Insider Trading_Kirkhorn Zachary</th>\n",
|
||
" <th>Insider Trading_Musk Elon</th>\n",
|
||
" <th>Insider Trading_Musk Kimbal</th>\n",
|
||
" <th>Insider Trading_Taneja Vaibhav</th>\n",
|
||
" <th>...</th>\n",
|
||
" <th>SEC Form 4_Nov 30 04:42 PM</th>\n",
|
||
" <th>SEC Form 4_Oct 05 07:35 PM</th>\n",
|
||
" <th>SEC Form 4_Oct 31 07:06 PM</th>\n",
|
||
" <th>SEC Form 4_Sep 07 08:29 PM</th>\n",
|
||
" <th>SEC Form 4_Sep 07 08:33 PM</th>\n",
|
||
" <th>SEC Form 4_Sep 07 09:04 PM</th>\n",
|
||
" <th>SEC Form 4_Sep 12 09:44 PM</th>\n",
|
||
" <th>SEC Form 4_Sep 14 07:47 PM</th>\n",
|
||
" <th>SEC Form 4_Sep 30 07:03 PM</th>\n",
|
||
" <th>Cost_category</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>196.72</td>\n",
|
||
" <td>10455.0</td>\n",
|
||
" <td>2056775.0</td>\n",
|
||
" <td>203073.0</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>195.79</td>\n",
|
||
" <td>2466.0</td>\n",
|
||
" <td>482718.0</td>\n",
|
||
" <td>100458.0</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>195.79</td>\n",
|
||
" <td>1298.0</td>\n",
|
||
" <td>254232.0</td>\n",
|
||
" <td>65547.0</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>0.00</td>\n",
|
||
" <td>7138.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>102923.0</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>low</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>0.00</td>\n",
|
||
" <td>2586.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>66845.0</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>low</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>5</th>\n",
|
||
" <td>0.00</td>\n",
|
||
" <td>16867.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>213528.0</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>low</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>6</th>\n",
|
||
" <td>20.91</td>\n",
|
||
" <td>10500.0</td>\n",
|
||
" <td>219555.0</td>\n",
|
||
" <td>74759.0</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>low</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>7</th>\n",
|
||
" <td>202.00</td>\n",
|
||
" <td>10500.0</td>\n",
|
||
" <td>2121000.0</td>\n",
|
||
" <td>64259.0</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>8</th>\n",
|
||
" <td>193.00</td>\n",
|
||
" <td>3750.0</td>\n",
|
||
" <td>723750.0</td>\n",
|
||
" <td>196661.0</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>9</th>\n",
|
||
" <td>20.91</td>\n",
|
||
" <td>10500.0</td>\n",
|
||
" <td>219555.0</td>\n",
|
||
" <td>74759.0</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>low</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"<p>10 rows × 184 columns</p>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" Cost Shares Value ($) Shares Total Insider Trading_Baglino Andrew D \\\n",
|
||
"0 196.72 10455.0 2056775.0 203073.0 False \n",
|
||
"1 195.79 2466.0 482718.0 100458.0 False \n",
|
||
"2 195.79 1298.0 254232.0 65547.0 True \n",
|
||
"3 0.00 7138.0 0.0 102923.0 False \n",
|
||
"4 0.00 2586.0 0.0 66845.0 True \n",
|
||
"5 0.00 16867.0 0.0 213528.0 False \n",
|
||
"6 20.91 10500.0 219555.0 74759.0 True \n",
|
||
"7 202.00 10500.0 2121000.0 64259.0 True \n",
|
||
"8 193.00 3750.0 723750.0 196661.0 False \n",
|
||
"9 20.91 10500.0 219555.0 74759.0 True \n",
|
||
"\n",
|
||
" Insider Trading_DENHOLM ROBYN M Insider Trading_Kirkhorn Zachary \\\n",
|
||
"0 False True \n",
|
||
"1 False False \n",
|
||
"2 False False \n",
|
||
"3 False False \n",
|
||
"4 False False \n",
|
||
"5 False True \n",
|
||
"6 False False \n",
|
||
"7 False False \n",
|
||
"8 False True \n",
|
||
"9 False False \n",
|
||
"\n",
|
||
" Insider Trading_Musk Elon Insider Trading_Musk Kimbal \\\n",
|
||
"0 False False \n",
|
||
"1 False False \n",
|
||
"2 False False \n",
|
||
"3 False False \n",
|
||
"4 False False \n",
|
||
"5 False False \n",
|
||
"6 False False \n",
|
||
"7 False False \n",
|
||
"8 False False \n",
|
||
"9 False False \n",
|
||
"\n",
|
||
" Insider Trading_Taneja Vaibhav ... SEC Form 4_Nov 30 04:42 PM \\\n",
|
||
"0 False ... False \n",
|
||
"1 True ... False \n",
|
||
"2 False ... False \n",
|
||
"3 True ... False \n",
|
||
"4 False ... False \n",
|
||
"5 False ... False \n",
|
||
"6 False ... False \n",
|
||
"7 False ... False \n",
|
||
"8 False ... False \n",
|
||
"9 False ... False \n",
|
||
"\n",
|
||
" SEC Form 4_Oct 05 07:35 PM SEC Form 4_Oct 31 07:06 PM \\\n",
|
||
"0 False False \n",
|
||
"1 False False \n",
|
||
"2 False False \n",
|
||
"3 False False \n",
|
||
"4 False False \n",
|
||
"5 False False \n",
|
||
"6 False False \n",
|
||
"7 False False \n",
|
||
"8 False False \n",
|
||
"9 False False \n",
|
||
"\n",
|
||
" SEC Form 4_Sep 07 08:29 PM SEC Form 4_Sep 07 08:33 PM \\\n",
|
||
"0 False False \n",
|
||
"1 False False \n",
|
||
"2 False False \n",
|
||
"3 False False \n",
|
||
"4 False False \n",
|
||
"5 False False \n",
|
||
"6 False False \n",
|
||
"7 False False \n",
|
||
"8 False False \n",
|
||
"9 False False \n",
|
||
"\n",
|
||
" SEC Form 4_Sep 07 09:04 PM SEC Form 4_Sep 12 09:44 PM \\\n",
|
||
"0 False False \n",
|
||
"1 False False \n",
|
||
"2 False False \n",
|
||
"3 False False \n",
|
||
"4 False False \n",
|
||
"5 False False \n",
|
||
"6 False False \n",
|
||
"7 False False \n",
|
||
"8 False False \n",
|
||
"9 False False \n",
|
||
"\n",
|
||
" SEC Form 4_Sep 14 07:47 PM SEC Form 4_Sep 30 07:03 PM Cost_category \n",
|
||
"0 False False medium \n",
|
||
"1 False False medium \n",
|
||
"2 False False medium \n",
|
||
"3 False False low \n",
|
||
"4 False False low \n",
|
||
"5 False False low \n",
|
||
"6 False False low \n",
|
||
"7 False False medium \n",
|
||
"8 False False medium \n",
|
||
"9 False False low \n",
|
||
"\n",
|
||
"[10 rows x 184 columns]"
|
||
]
|
||
},
|
||
"execution_count": 648,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"df_encoded.head(10)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"2. **Дискретизация числовых признаков** – процесс преобразования непрерывных числовых значений в категориальные группы или интервалы (дискретные значения).\n",
|
||
"\n",
|
||
"В данном случае преобразование числовой колонки \"Cost\" уже было выполнено ранее для стратифицированного разбиения исходных данных на выборки (обучающую, контрольную и тестовую). Для этого использовался метод квартильной группировки.\n",
|
||
"\n",
|
||
"Границы интервалов определены следующим образом:\n",
|
||
"- Минус 1 от минимального значения стоимости акций (чтобы включить все значения в первый интервал).\n",
|
||
"- 25-й перцентиль (quantile(0.25)), разделяющий самый низкий 25% стоимостей от остальных.\n",
|
||
"- 75-й перцентиль (quantile(0.75)), разделяющий 25% с наиболее высокими стоимостью акций.\n",
|
||
"- Плюс 1 от максимального значения стоимости акций (чтобы включить максимальное значение в последний интервал)."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 649,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Обучающая выборка:\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>Cost</th>\n",
|
||
" <th>Cost_category</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>889.08</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>20.91</td>\n",
|
||
" <td>low</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>62.72</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>189.50</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>1026.75</td>\n",
|
||
" <td>high</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>5</th>\n",
|
||
" <td>935.75</td>\n",
|
||
" <td>high</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>6</th>\n",
|
||
" <td>913.26</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>7</th>\n",
|
||
" <td>62.72</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>8</th>\n",
|
||
" <td>0.00</td>\n",
|
||
" <td>low</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>9</th>\n",
|
||
" <td>269.39</td>\n",
|
||
" <td>medium</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" Cost Cost_category\n",
|
||
"0 889.08 medium\n",
|
||
"1 20.91 low\n",
|
||
"2 62.72 medium\n",
|
||
"3 189.50 medium\n",
|
||
"4 1026.75 high\n",
|
||
"5 935.75 high\n",
|
||
"6 913.26 medium\n",
|
||
"7 62.72 medium\n",
|
||
"8 0.00 low\n",
|
||
"9 269.39 medium"
|
||
]
|
||
},
|
||
"execution_count": 649,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"print('Обучающая выборка:')\n",
|
||
"df_train_oversampled[['Cost', 'Cost_category']].head(10)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"3. **«Ручной» синтез признаков** – процесс создания новых признаков на основе существующих данных. Это может включать в себя комбинирование нескольких признаков, использование математических операций (например, сложение, вычитание), а также создание полиномиальных или логарифмических признаков."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 650,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>Date</th>\n",
|
||
" <th>Year</th>\n",
|
||
" <th>Quarter</th>\n",
|
||
" <th>Month</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>2022-03-06</td>\n",
|
||
" <td>2022</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>3</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>2022-03-06</td>\n",
|
||
" <td>2022</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>3</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>2022-03-06</td>\n",
|
||
" <td>2022</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>3</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>2022-03-05</td>\n",
|
||
" <td>2022</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>3</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>2022-03-05</td>\n",
|
||
" <td>2022</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>3</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>5</th>\n",
|
||
" <td>2022-03-05</td>\n",
|
||
" <td>2022</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>3</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>6</th>\n",
|
||
" <td>2022-02-27</td>\n",
|
||
" <td>2022</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>2</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>7</th>\n",
|
||
" <td>2022-02-27</td>\n",
|
||
" <td>2022</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>2</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>8</th>\n",
|
||
" <td>2022-02-06</td>\n",
|
||
" <td>2022</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>2</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>9</th>\n",
|
||
" <td>2022-01-27</td>\n",
|
||
" <td>2022</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>1</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" Date Year Quarter Month\n",
|
||
"0 2022-03-06 2022 1 3\n",
|
||
"1 2022-03-06 2022 1 3\n",
|
||
"2 2022-03-06 2022 1 3\n",
|
||
"3 2022-03-05 2022 1 3\n",
|
||
"4 2022-03-05 2022 1 3\n",
|
||
"5 2022-03-05 2022 1 3\n",
|
||
"6 2022-02-27 2022 1 2\n",
|
||
"7 2022-02-27 2022 1 2\n",
|
||
"8 2022-02-06 2022 1 2\n",
|
||
"9 2022-01-27 2022 1 1"
|
||
]
|
||
},
|
||
"execution_count": 650,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"df['Date'] = pd.to_datetime(df['Date']) # Преобразование в datetime\n",
|
||
"df['Year'] = df['Date'].dt.year # Год\n",
|
||
"df['Quarter'] = df['Date'].dt.quarter # Квартал\n",
|
||
"df['Month'] = df['Date'].dt.month # Месяц\n",
|
||
"\n",
|
||
"df[['Date', 'Year', 'Quarter', 'Month']].head(10)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"4. **Масштабирование признаков на основе нормировки и стандартизации** – метод, который позволяет привести все числовые признаки к одинаковым или очень похожим диапазонам значений либо распределениям.\n",
|
||
"\n",
|
||
"**Методы масштабирования признаков:**\n",
|
||
"- **Нормировка** – обычно применяется для равномерного распределения;\n",
|
||
"- **Стандартизация** – обычно применяется для нормального распределения."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 651,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>Cost</th>\n",
|
||
" <th>Shares</th>\n",
|
||
" <th>Value ($)</th>\n",
|
||
" <th>Shares Total</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>-0.630340</td>\n",
|
||
" <td>-0.607179</td>\n",
|
||
" <td>-0.583446</td>\n",
|
||
" <td>-0.528366</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>-0.632418</td>\n",
|
||
" <td>-0.635043</td>\n",
|
||
" <td>-0.594307</td>\n",
|
||
" <td>-0.604905</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>-0.632418</td>\n",
|
||
" <td>-0.639117</td>\n",
|
||
" <td>-0.595883</td>\n",
|
||
" <td>-0.630945</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>-1.069956</td>\n",
|
||
" <td>-0.618748</td>\n",
|
||
" <td>-0.597637</td>\n",
|
||
" <td>-0.603067</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>-1.069956</td>\n",
|
||
" <td>-0.634624</td>\n",
|
||
" <td>-0.597637</td>\n",
|
||
" <td>-0.629977</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>5</th>\n",
|
||
" <td>-1.069956</td>\n",
|
||
" <td>-0.584816</td>\n",
|
||
" <td>-0.597637</td>\n",
|
||
" <td>-0.520567</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>6</th>\n",
|
||
" <td>-1.023228</td>\n",
|
||
" <td>-0.607022</td>\n",
|
||
" <td>-0.596122</td>\n",
|
||
" <td>-0.624074</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>7</th>\n",
|
||
" <td>-0.618541</td>\n",
|
||
" <td>-0.607022</td>\n",
|
||
" <td>-0.583003</td>\n",
|
||
" <td>-0.631906</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>8</th>\n",
|
||
" <td>-0.638653</td>\n",
|
||
" <td>-0.630565</td>\n",
|
||
" <td>-0.592643</td>\n",
|
||
" <td>-0.533148</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>9</th>\n",
|
||
" <td>-1.023228</td>\n",
|
||
" <td>-0.607022</td>\n",
|
||
" <td>-0.596122</td>\n",
|
||
" <td>-0.624074</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" Cost Shares Value ($) Shares Total\n",
|
||
"0 -0.630340 -0.607179 -0.583446 -0.528366\n",
|
||
"1 -0.632418 -0.635043 -0.594307 -0.604905\n",
|
||
"2 -0.632418 -0.639117 -0.595883 -0.630945\n",
|
||
"3 -1.069956 -0.618748 -0.597637 -0.603067\n",
|
||
"4 -1.069956 -0.634624 -0.597637 -0.629977\n",
|
||
"5 -1.069956 -0.584816 -0.597637 -0.520567\n",
|
||
"6 -1.023228 -0.607022 -0.596122 -0.624074\n",
|
||
"7 -0.618541 -0.607022 -0.583003 -0.631906\n",
|
||
"8 -0.638653 -0.630565 -0.592643 -0.533148\n",
|
||
"9 -1.023228 -0.607022 -0.596122 -0.624074"
|
||
]
|
||
},
|
||
"execution_count": 651,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"# scaler = MinMaxScaler()\n",
|
||
"scaler = StandardScaler()\n",
|
||
"\n",
|
||
"# Применяем масштабирование к выбранным признакам\n",
|
||
"df[numeric_columns] = scaler.fit_transform(df[numeric_columns])\n",
|
||
"\n",
|
||
"df[numeric_columns].head(10)\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"5. **С применением фреймворка FeatureTools** – библиотека для автоматизированного создания признаков (features) из структурированных данных. Подходит для задач машинного обучения, когда нужно быстро извлекать полезные признаки из больших объемов данных."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 664,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stderr",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n",
|
||
"d:\\ULSTU\\Семестр 5\\AIM-PIbd-31-Masenkin-M-S\\aimenv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" pd.to_datetime(\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>Insider Trading</th>\n",
|
||
" <th>Relationship</th>\n",
|
||
" <th>Transaction</th>\n",
|
||
" <th>Cost</th>\n",
|
||
" <th>DAY(Date)</th>\n",
|
||
" <th>MONTH(Date)</th>\n",
|
||
" <th>WEEKDAY(Date)</th>\n",
|
||
" <th>YEAR(Date)</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>Id</th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>154</th>\n",
|
||
" <td>Musk Elon</td>\n",
|
||
" <td>CEO</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>1019.03</td>\n",
|
||
" <td>10</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>2</td>\n",
|
||
" <td>2021</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>155</th>\n",
|
||
" <td>Musk Elon</td>\n",
|
||
" <td>CEO</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>1048.46</td>\n",
|
||
" <td>10</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>2</td>\n",
|
||
" <td>2021</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>156</th>\n",
|
||
" <td>Musk Elon</td>\n",
|
||
" <td>CEO</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>1068.09</td>\n",
|
||
" <td>10</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>2</td>\n",
|
||
" <td>2021</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>152</th>\n",
|
||
" <td>Musk Elon</td>\n",
|
||
" <td>CEO</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>1098.24</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>3</td>\n",
|
||
" <td>2021</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>153</th>\n",
|
||
" <td>Musk Elon</td>\n",
|
||
" <td>CEO</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>1072.22</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>3</td>\n",
|
||
" <td>2021</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>151</th>\n",
|
||
" <td>Musk Elon</td>\n",
|
||
" <td>CEO</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>1029.67</td>\n",
|
||
" <td>12</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>4</td>\n",
|
||
" <td>2021</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>148</th>\n",
|
||
" <td>Musk Elon</td>\n",
|
||
" <td>CEO</td>\n",
|
||
" <td>Option Exercise</td>\n",
|
||
" <td>6.24</td>\n",
|
||
" <td>15</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>2021</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>149</th>\n",
|
||
" <td>Musk Elon</td>\n",
|
||
" <td>CEO</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>992.72</td>\n",
|
||
" <td>15</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>2021</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>150</th>\n",
|
||
" <td>Musk Elon</td>\n",
|
||
" <td>CEO</td>\n",
|
||
" <td>Sale</td>\n",
|
||
" <td>1015.85</td>\n",
|
||
" <td>15</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>2021</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>145</th>\n",
|
||
" <td>Musk Elon</td>\n",
|
||
" <td>CEO</td>\n",
|
||
" <td>Option Exercise</td>\n",
|
||
" <td>6.24</td>\n",
|
||
" <td>16</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>2021</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" Insider Trading Relationship Transaction Cost DAY(Date) \\\n",
|
||
"Id \n",
|
||
"154 Musk Elon CEO Sale 1019.03 10 \n",
|
||
"155 Musk Elon CEO Sale 1048.46 10 \n",
|
||
"156 Musk Elon CEO Sale 1068.09 10 \n",
|
||
"152 Musk Elon CEO Sale 1098.24 11 \n",
|
||
"153 Musk Elon CEO Sale 1072.22 11 \n",
|
||
"151 Musk Elon CEO Sale 1029.67 12 \n",
|
||
"148 Musk Elon CEO Option Exercise 6.24 15 \n",
|
||
"149 Musk Elon CEO Sale 992.72 15 \n",
|
||
"150 Musk Elon CEO Sale 1015.85 15 \n",
|
||
"145 Musk Elon CEO Option Exercise 6.24 16 \n",
|
||
"\n",
|
||
" MONTH(Date) WEEKDAY(Date) YEAR(Date) \n",
|
||
"Id \n",
|
||
"154 11 2 2021 \n",
|
||
"155 11 2 2021 \n",
|
||
"156 11 2 2021 \n",
|
||
"152 11 3 2021 \n",
|
||
"153 11 3 2021 \n",
|
||
"151 11 4 2021 \n",
|
||
"148 11 0 2021 \n",
|
||
"149 11 0 2021 \n",
|
||
"150 11 0 2021 \n",
|
||
"145 11 1 2021 "
|
||
]
|
||
},
|
||
"execution_count": 664,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"df: DataFrame = pd.read_csv('..//static//csv//TSLA.csv')\n",
|
||
"\n",
|
||
"# Создание уникального идентификатора для каждой строки\n",
|
||
"df['Id'] = range(1, len(df) + 1)\n",
|
||
"\n",
|
||
"# Создание EntitySet\n",
|
||
"es = ft.EntitySet(id=\"Id\")\n",
|
||
"\n",
|
||
"# Добавляем таблицу с индексом\n",
|
||
"es: EntitySet = es.add_dataframe(\n",
|
||
" dataframe_name=\"trades\", \n",
|
||
" dataframe=df, \n",
|
||
" index=\"Id\", \n",
|
||
" time_index=\"Date\"\n",
|
||
")\n",
|
||
"\n",
|
||
"# Генерация признаков с помощью глубокого синтеза признаков\n",
|
||
"feature_matrix, feature_defs = ft.dfs(\n",
|
||
" entityset=es, \n",
|
||
" target_dataframe_name='trades', \n",
|
||
" max_depth=1\n",
|
||
")\n",
|
||
"\n",
|
||
"# Выводим первые 10 строк сгенерированного набора признаков\n",
|
||
"feature_matrix.head(10)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Оценка качества набора признаков:\n",
|
||
"\n",
|
||
"**Предсказательная способность**: Способность набора признаков успешно прогнозировать целевую переменную. Это определяется через метрики, такие как RMSE, MAE, R², которые показывают, насколько хорошо модель использует признаки для достижения точных результатов. Для определения качества необходимо провести обучение модели на обучающей выборке и сравнить с оценкой прогнозирования на контрольной и тестовой выборках.\n",
|
||
"\n",
|
||
"**Скорость вычисления**: Время, необходимое для обработки данных и выполнения алгоритмов машинного обучения. Признаки должны быть вычисляемыми за разумный срок, чтобы обеспечить эффективность модели, особенно при работе с большими наборами данных. Для оценки качества необходимо провести измерение времени выполнения генерации признаков и обучения модели.\n",
|
||
"\n",
|
||
"**Надежность**: Устойчивость и воспроизводимость результатов при изменении входных данных. Надежные признаки должны давать схожие результаты независимо от случайных факторов или незначительных изменений в данных. Методы оценки: Кросс-валидация, анализ чувствительности модели к изменениям в данных.\n",
|
||
"\n",
|
||
"**Корреляция**: Степень взаимосвязи между признаками и целевой переменной, а также между самими признаками. Высокая корреляция с целевой переменной указывает на потенциальную предсказательную силу, тогда как высокая взаимосвязь между самими признаками может приводить к многоколлинеарности и снижению эффективности модели. Методы оценки: Анализ корреляционной матрицы признаков, удаление мультиколлинеарных признаков.\n",
|
||
"\n",
|
||
"**Цельность**: Не является производным от других признаков. Методы оценки: Проверка логической связи между признаками и целевой переменной, интерпретация результатов модели."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 653,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Время обучения модели: 0.30 секунд\n",
|
||
"Среднеквадратичная ошибка: 195.01\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"# Разбить выборку на входные данные и целевой признак\n",
|
||
"def split_dataframe(dataframe: DataFrame, column: str) -> tuple[DataFrame, DataFrame]:\n",
|
||
" X_dataframe: DataFrame = dataframe.drop(columns=column, axis=1)\n",
|
||
" y_dataframe: DataFrame = dataframe[column]\n",
|
||
" \n",
|
||
" return X_dataframe, y_dataframe\n",
|
||
"\n",
|
||
"\n",
|
||
"# Разбиение обучающей выборки на входные данные и целевой признак\n",
|
||
"df_train_oversampled: DataFrame = pd.get_dummies(df_train_oversampled)\n",
|
||
"X_df_train, y_df_train = split_dataframe(df_train_oversampled, \"Cost\")\n",
|
||
"\n",
|
||
"# Разбиение контрольной выборки на входные данные и целевой признак\n",
|
||
"df_val_oversampled: DataFrame = pd.get_dummies(df_val_oversampled)\n",
|
||
"X_df_val, y_df_val = split_dataframe(df_val_oversampled, \"Cost\")\n",
|
||
"\n",
|
||
"# Разбиение тестовой выборки на входные данные и целевой признак\n",
|
||
"df_test_oversampled: DataFrame = pd.get_dummies(df_test_oversampled)\n",
|
||
"X_df_test, y_df_test = split_dataframe(df_test_oversampled, \"Cost\")\n",
|
||
"\n",
|
||
"\n",
|
||
"# Модель линейной регрессии для обучения\n",
|
||
"model = LinearRegression()\n",
|
||
"\n",
|
||
"# Начинаем отсчет времени\n",
|
||
"start_time: float = time.time()\n",
|
||
"model.fit(X_df_train, y_df_train)\n",
|
||
"\n",
|
||
"# Время обучения модели\n",
|
||
"train_time: float = time.time() - start_time\n",
|
||
"\n",
|
||
"# Предсказания и оценка модели\n",
|
||
"predictions = model.predict(X_df_val)\n",
|
||
"mse = root_mean_squared_error(y_df_val, predictions)\n",
|
||
"\n",
|
||
"print(f'Время обучения модели: {train_time:.2f} секунд')\n",
|
||
"print(f'Среднеквадратичная ошибка: {mse:.2f}')"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 654,
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"RMSE: 89.7060467247578\n",
|
||
"R²: 0.9632863955859148\n",
|
||
"MAE: 51.21015516441333\n",
|
||
"\n",
|
||
"Кросс-валидация RMSE: 148.73333849768954\n",
|
||
"\n",
|
||
"Train RMSE: 49.74051197142329\n",
|
||
"Train R²: 0.9887155168427046\n",
|
||
"Train MAE: 22.617172692464216\n",
|
||
"\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"text/plain": [
|
||
"Text(0.5, 1.0, 'Фактическая стоимость по сравнению с прогнозируемой')"
|
||
]
|
||
},
|
||
"execution_count": 654,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
},
|
||
{
|
||
"data": {
|
||
"image/png": "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Bx98IJw/fz7L9d/0Wr0ut5dlvqczf6ysrARfX19h5cqV2Z6f3XVz0/pdEAThxIkTQpMmTcTXqlOnTsKtW7feeD+C8KJd+4wZM8TXx9XVVfj444/FNvkvP5/Lly8XPDw8BEtLS6FZs2ZiG+xMT58+Fbp16yY4ODgIKpVK6NGjhxAREZFje+3snpuX25vntvV7plOnTgl+fn6CSqUSlEqlULFiRWHQoEHClStXxHOMbf0OIMtrlt3vq1e3LkhKShImTJgglC5dWrCwsBAqVqwoLFy4UNBqtVnuOzt//vmn0KZNG8HOzk6wsbERatSoIaxdu/a118lL6/dbt24JH3/8sWBnZyeUKFFC8Pf3z7LlgzGfYVO1fhcEQYiOjhYGDx4slCpVSlAoFEL16tWzvPf37Nkj1K9fX7C3txesrKwELy8vYcqUKQafHWN+/xvzvGRasmSJAEBYuHBhjo998+bNQt26dQUrKyvBzs5OqF69uvDJJ58IERER4jlvev6yO56b5+jl7RvCw8Oz3CZbv5MpSQQhH8bgiYiIiqiHDx+ifPnyWLp0KaZOnWrudMhE5syZg7lz5+LZs2fZbqxeXOXleVm9ejUmTZqEhw8f5rhVBVFxwTVbRERERGQSgiDg22+/RYsWLVhoEYFrtoiIiIjoLanVahw4cACnTp3CzZs3xY2siYo7FltERERE9FaePXuGPn36wMHBAZ999hk6d+5s7pSICgSu2SIiIiIiIsoHXLNFRERERESUD1hsERERERER5QOu2coFvV6PiIgI2NnZ5biRHhERERERFX2CICApKQmlS5eGVPr6sSsWW7kQEREBDw8Pc6dBREREREQFxJMnT1CmTJnXnsNiKxfs7OwAvHhC7e3tzZwNERERERGZS2JiIjw8PMQa4XVYbOVC5tRBe3t7FltERERERJSr5UVskEFERERERJQPWGwRERERERHlAxZbRERERERE+YDFFhERERERUT5gsUVERERERJQPWGwRERERERHlAxZbRERERERE+YDFFhERERERUT5gsUVERERERJQPWGwRERERERHlAxZbRERERERE+YDFFhERERERUT5gsUVERERERJQPWGwRERERERHlAxZbRERERERE+YDFFhERERERUT5gsUVERERERAVWamoqnj59au408oTFFhERERERFTiCIODAgQOoWrUqevXq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nIiDBw+KMZlMhnHjxmHmzJlmzIyI6M2MLraIiIiI8ltqaioWL16ML7/8Eunp6WK8efPmWLduHapXr27G7IiIcsfoYuujjz567fF9+/blORkiIiKiv//+G927d8fDhw/FWOnSpbFs2TL06tWLyxaIqNDIUzdCOzs7dOnShZsDEhERkcmVK1cOiYmJAAC5XI5JkyZh5syZsLOzM3NmRETGMbrYOn78OKZMmYKrV69iyZIl6NChQ37kRURERMWEIAgGo1UlS5bEokWL8PPPP2Pt2rWoUqWKGbMjIso7ozc1btWqFa5du4apU6di5MiRaN26NW7cuJEfuREREVERJggC9uzZg5o1ayI6Otrg2LBhw3D8+HEWWkRUqBldbAEvWrwPHjwYoaGhaN68OZo3b44hQ4YgIiLC1PkRERFREXT79m20bdsWPXr0wM2bNzF9+nSD41KplGuziKjQM3oa4Zo1awwuOzg4YNSoUVi/fj12796NpKQkkyVHRERERUtSUhLmzZuHVatWQavVivHo6GhkZGTAwsLCjNkREZmW0cXWypUrs42XKlXqrZMhIiKiokkQBPz444+YOnUqIiMjxbinpydWrVqFzp07cySLiIoco4utBw8e5EceREREVETdvHkT/v7+OHv2rBiztLTEp59+iunTp8PKysqM2RER5Z+32tRYEAQA4DdRRERElK2MjAx8+OGHePr0qRjr1KkTVq1ahQoVKpgxMyKi/JenBhnff/89qlevDisrK1hZWaFGjRr44YcfTJ0bERERFXIWFhZYuHAhAKBixYo4dOgQDhw4wEKLiIoFo0e2VqxYgZkzZ8Lf3x9NmjQBAPz5558YNWoUYmNjMWnSJJMnSURERIXD9evX4eTkBHd3dzHWr18/aDQa9O3bF0ql0ozZERG9WxIhcy5gLpUvXx5z587FgAEDDOLbtm3DnDlziuSarsTERKhUKiQkJMDe3t7c6RARERU4z58/x8yZM7Fhwwb06NEDu3btMndKRET5wpjawOhphJGRkWjcuHGWeOPGjQ26CxEREVHRp9fr8e2336JSpUpYv3499Ho9fvrpJ5w7d87cqRERmZ3RxZaXlxd+/vnnLPGffvoJ3t7eJkmKiIiICr4rV66gUaNGGDZsGGJjYwEANjY2WLx4MRo2bGjm7IiIzM/oNVtz587F//73P5w9e1ZcsxUYGIiT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",
|
||
"text/plain": [
|
||
"<Figure size 1000x600 with 1 Axes>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"# Модель случайного леса для обучения\n",
|
||
"model = RandomForestRegressor()\n",
|
||
"\n",
|
||
"# Обучение модели\n",
|
||
"model.fit(X_df_train, y_df_train)\n",
|
||
"\n",
|
||
"# Предсказание и оценка\n",
|
||
"y_predictions = model.predict(X_df_test)\n",
|
||
"\n",
|
||
"rmse = root_mean_squared_error(y_df_test, y_predictions)\n",
|
||
"r2 = r2_score(y_df_test, y_predictions)\n",
|
||
"mae = mean_absolute_error(y_df_test, y_predictions)\n",
|
||
"\n",
|
||
"print(f\"RMSE: {rmse}\")\n",
|
||
"print(f\"R²: {r2}\")\n",
|
||
"print(f\"MAE: {mae}\\n\")\n",
|
||
"\n",
|
||
"# Кросс-валидация\n",
|
||
"scores = cross_val_score(model, X_df_train, y_df_train, cv=5, scoring='neg_mean_squared_error')\n",
|
||
"rmse_cv = (-scores.mean())**0.5\n",
|
||
"print(f\"Кросс-валидация RMSE: {rmse_cv}\\n\")\n",
|
||
"\n",
|
||
"# Анализ важности признаков\n",
|
||
"feature_importances = model.feature_importances_\n",
|
||
"feature_names = X_df_train.columns\n",
|
||
"\n",
|
||
"# Проверка на переобучение\n",
|
||
"y_train_predictions = model.predict(X_df_train)\n",
|
||
"\n",
|
||
"rmse_train = root_mean_squared_error(y_df_train, y_train_predictions)\n",
|
||
"r2_train = r2_score(y_df_train, y_train_predictions)\n",
|
||
"mae_train = mean_absolute_error(y_df_train, y_train_predictions)\n",
|
||
"\n",
|
||
"print(f\"Train RMSE: {rmse_train}\")\n",
|
||
"print(f\"Train R²: {r2_train}\")\n",
|
||
"print(f\"Train MAE: {mae_train}\\n\")\n",
|
||
"\n",
|
||
"# Визуализация результатов\n",
|
||
"plt.figure(figsize=(10, 6))\n",
|
||
"plt.scatter(y_df_test, y_predictions, alpha=0.5)\n",
|
||
"plt.plot([y_df_test.min(), y_df_test.max()], [y_df_test.min(), y_df_test.max()], 'k--', lw=2)\n",
|
||
"plt.xlabel('Фактическая стоимость')\n",
|
||
"plt.ylabel('Прогнозируемая стоимость')\n",
|
||
"plt.title('Фактическая стоимость по сравнению с прогнозируемой')\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Вывод:\n",
|
||
"\n",
|
||
"1. **Оценка качества модели на тестовой выборке:**\n",
|
||
" - **RMSE** (Корень из среднеквадратичной ошибки) на тестовой выборке составил 89.71, что указывает на среднюю ошибку в прогнозах.\n",
|
||
" - **R²** (Коэффициент детерминации) равен 0.96, что означает, что модель объясняет 96% дисперсии данных. Это хороший показатель, указывающий на высокую объяснительную способность модели.\n",
|
||
" - **MAE** (Средняя абсолютная ошибка) составила 51.21, показывая среднее абсолютное отклонение предсказаний от фактических значений.\n",
|
||
"\n",
|
||
"2. **Результаты кросс-валидации:**\n",
|
||
" - **RMSE кросс-валидации** равен 148.73, что заметно выше значения RMSE на тестовой выборке. Это может свидетельствовать о том, что модель может быть подвержена колебаниям в зависимости от данных и, возможно, склонна к некоторому переобучению.\n",
|
||
"\n",
|
||
"3. **Проверка на переобучение:**\n",
|
||
" - **Метрики на обучающей выборке** (RMSE = 49.74, R² = 0.99, MAE = 22.62) значительно лучше, чем на тестовой, что указывает на высокую точность на обучающих данных.\n",
|
||
" - Разница в ошибках между обучающей и тестовой выборками говорит о возможном переобучении. Модель хорошо подходит к обучающим данным, но на тестовой выборке дает несколько более слабые результаты, что типично для моделей случайного леса, когда модель выучивает мелкие детали обучающего набора.\n",
|
||
"\n",
|
||
"**Итог:**\n",
|
||
"Модель случайного леса демонстрирует хорошее качество прогнозов с высоким коэффициентом детерминации на тестовых данных. Однако разница в ошибках на обучающей и тестовой выборках вместе с результатами кросс-валидации указывает на возможное переобучение."
|
||
]
|
||
}
|
||
],
|
||
"metadata": {
|
||
"kernelspec": {
|
||
"display_name": "aimenv",
|
||
"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.5"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 2
|
||
}
|