{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Датасет 1\n", "https://www.kaggle.com/datasets/antonkozyriev/game-recommendations-on-steam" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Проблемная область: аналитика рынка видеоигр (в данном случае на площадке Steam)\n", "\n", "Объект наблюдения: игры на площадке steam. Атрибутами являются характеристики игры (название, дата выпуска, цена, наличие игры на разных игровых платформах (пк, консоли)) и её оценка игроками (рейтинг, отзывы)\n", "В данном датасете только 1 объект, но можно указать следующую связь: Игра связана со множеством отзывов\n", "\n", "Бизнес-цель: Определить, как основные характеристики влияют на оценку игры steam, чтобы разработчики и издатели игр знали, во что следует вкладывать больше временных и денежных ресуров. Эффект для бизнеса: увеличение шансов на успех игры, снижение рисков финансовых потерь\n", "\n", "Цель технического проекта: построить модель машинного обучения, которая предскажет, какую оценку от игроков получит игра.\n", "Вход: дата выпуска игры (чтобы возможно найти закономерности между месяцем выпуска игры и её высокой оценкой), цена игры, наличие игры на windows, linux и mac. Целевой признак: рейтинг\n" ] }, { "cell_type": "code", "execution_count": 296, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Index(['app_id', 'title', 'date_release', 'win', 'mac', 'linux', 'rating',\n", " 'positive_ratio', 'user_reviews', 'price_final', 'price_original',\n", " 'discount', 'steam_deck'],\n", " dtype='object')\n" ] } ], "source": [ "import matplotlib.pyplot as plt\n", "import pandas as pd\n", "import seaborn as sns\n", "df1 = pd.read_csv(\"..//static//csv//games.csv\")\n", "\n", "print(df1.columns)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Оценка всех числовых признаков показывает, что в датасете довольно много выбросов. \n", "\n", "По столбцу positive_ratio есть игры, у которых очень мало позитивных отзывов, однако в случае игр важно знать и игры, у которых больше негативных отзывов, чем положительных, т.е. это полезный шум. Данные же смещены в сторону игр с бОльшим количеством положительных отзывов (более 60%), чем отрицательных. Однако данный столбец может влиять на столбец со строковыми значениями rating, поэтому в дальнейшем его можно считать просто шумом \n", "\n", "В столбце user_reviews есть серьёзный выброс с крайне большим количеством отзывов, однако сам столбец можно считать шумом, т.к. в данной ситуации количество отзывов не так важно, как рейтинг игры. \n", "\n", "Столбец price_final зависит от столбцов price_original и discount. В данном случае не стоит учитывать скидки на игры и их цену после скидки, поэтому столбцы price_final и discount можно считать шумом.\n", "\n", "В столбце price_original есть много выбросов, которые находятся выше средних значений. Для анализа желательны разные цены игр, однако игры с ценами более 150$ можно удалить, т.к. вероятность настолько дорогой игры крайне мала и из-за таких игр модель может обучиться некорректно. Данные же в столбце смещены в сторону игр до 25$" ] }, { "cell_type": "code", "execution_count": 297, "metadata": {}, "outputs": [ { "data": { "image/png": "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n5e7u3uuz1itVlmtVkelCAAAAOAmUZQCALgcf39/1apVy6bN19dXZcqUydUOAAAAoGji8T0AAAAAAAA4HHdKAQCKhPXr1zs7BQAAAKc4e/asRo4cqT179qhq1aqaOnWqvL29nZ0WcNO4UwoAAACAw23cuFFdunRRWFiYLBaLVqxYYbO8X79+slgsNlOHDh1sYk6ePKnevXsrICBAJUuW1IABA3T69GkH7gVQ+KKjo+Xj46MZM2ZozZo1mjFjhnx8fBQdHe3s1ICbRlEKAAAAgMNlZGSobt26mjFjxlVjOnTooGPHjpnT4sWLbZb37t1bO3bs0Nq1a7Vy5Upt3LhRgwYNKuzUAYeJjo7WZ599lueyzz77jMIUijyKUgAAAAAcrmPHjpo4caIeeOCBq8ZYrVaVK1fOnEqVKmUu27lzp1atWqV///vfatSokZo3b6533nlHH330kY4ePeqIXQAK1dmzZ82CVKdOnZSYmKhTp04pMTFRnTp1knSpMHX27FlnpgncFIpSAAAAAFzS+vXrFRwcrGrVqumpp57S33//bS5LTExUyZIlddddd5ltbdu2lZubm3744Yc815eZman09HSbCXBVI0aMkCRVqVJFn3/+uRo3biw/Pz81btxYn3/+uSpXrmwTBxRFFKUAAAAAuJwOHTrogw8+0DfffKPJkydrw4YN6tixo7KysiRJycnJCg4OtvmMh4eHSpcureTk5DzXGRcXp8DAQHOqUKFCoe8HcKO2bNki6dK/Wzc320t3Nzc3TZw40SYOKIooSgEAAABwOb169dL999+v2rVrKzo6WitXrtSWLVtu6m2ssbGxSktLM6fDhw/bL2HAznIeV01MTMxzec4dgZc/1goUNRSlAAAAALi822+/XWXLltXevXslSeXKldPx48dtYi5evKiTJ0+qXLlyea7DarUqICDAZgJc1fDhwyVJ77zzjs6fP2+z7Pz58+ZLAnLigKKIohQAAAAAl/fnn3/q77//VmhoqCSpSZMmSk1NVVJSkhnz7bffKjs7W40aNXJWmoDd3HvvvfLx8dGFCxfk7++v559/Xr///ruef/55+fv768KFC/Lx8dG9997r7FSBG0ZRCgAAAIDDnT59Wj///LN+/vlnSdL+/fv1888/69ChQzp9+rRGjhypzZs368CBA/rmm2/UtWtXValSRe3bt5ckVa9eXR06dNATTzyhH3/8Ud9//72GDBmiXr16KSwszIl7BtiHu7u7FixYIOnSnVFTpkxRtWrVNGXKFPPOqQULFsjd3d2ZaQI3haIUAAAAAIfbunWr6tWrp3r16km69AhSvXr1NGbMGLm7u+vXX3/V/fffrzvuuEMDBgxQgwYNlJCQIKvVaq7jww8/VGRkpNq0aaP77rtPzZs315w5c5y1S4DddevWTZ9++qkqVqxo016pUiV9+umn6tatm5MyA+zDw9kJAAAAALj1tGrVSoZhXHX56tWrr7uO0qVLa9GiRfZMC3A53bp1U9euXZWQkKBjx44pNDRUUVFR3CGFYoGiFAAAAAAALszd3V2tWrVydhqA3fH4HgAAAAAAAByOohQAAAAAAAAcjqIUAAAAAAAAHI4xpQAAAAAAcGFZWVkMdI5iiTulAAAAAABwUcuWLVOVKlXUunVrPfLII2rdurWqVKmiZcuWOTs14KZRlAIAAAAAwAUtW7ZMPXr0UO3atZWYmKhTp04pMTFRtWvXVo8ePShMocijKAUAAAAAgIvJysrSiBEj1LlzZ61YsUKNGzeWn5+fGjdurBUrVqhz58567rnnlJWV5exUgRtGUQoAAAAAABeTkJCgAwcOaPTo0TIMQ+vXr9fixYu1fv16GYah2NhY7d+/XwkJCc5OFbhhDHQOAAAAAICLOXbsmCRp37596tWrlw4ePGguq1Spkl599VWbOKAooigFAAAAAICLCQ0NlST16dNH3t7eNsuOHz+uPn362MQBRRGP7wEAAAAA4GKaNm0qN7dLl+xt2rSxGei8TZs2kiQ3Nzc1bdrUmWkCN4WiFAAAAAAALiYhIUHZ2dnmvGEY5pQjOzubMaVQpFGUAgAAAADAxaxfv16SNG7cOG3fvl1NmzZVQECAmjZtqh07dmjs2LE2cUBRRFEKAAAAAAAXdvndUZJs7qACijKKUgAAAAAAuJhWrVpJunSnVO3atW3GlKpdu7bGjx9vEwcURRSlAAAAAABwMVFRUeZA55ePJ3X5uFJubm6KiopyZprATfFwdgIAAAAAAMDWpk2blJ2dLYvFom+//VZffvmluczHx0cWi0XZ2dnatGkTd0uhyOJOKQAAAAAAXMyxY8ckSQsWLFBwcLDNsuDgYC1YsMAmDiiKCr0o9dprr8lisWjo0KFm27lz5xQTE6MyZcrIz89P3bt3V0pKSmGnAgAoQmbNmqU6deooICBAAQEBatKkib766itnpwUAAOAQoaGhkqTDhw/nWmYYhg4dOmQTBxRFhVqU2rJli9577z3VqVPHpn3YsGH64osvtGTJEm3YsEFHjx5Vt27dCjMVAEARU758eb322mtKSkrS1q1bdc8996hr167asWOHs1MDAAAodFFRUQoKClJsbGyeA52PHj1awcHBjCmFIq3QilKnT59W7969NXfuXJUqVcpsT0tL03/+8x+98cYbuueee9SgQQPNmzdPmzZt0ubNmwsrHQBAEdOlSxfdd999qlq1qu644w69+uqr8vPzo68AAAC3DIvFYv585SDnQHFQaEWpmJgYderUSW3btrVpT0pK0oULF2zaIyMjVbFiRSUmJua5rszMTKWnp9tMAIBbR1ZWlj766CNlZGSoSZMmecbQVwAAgOIkISFBx48fV1xcnLZv366mTZsqICBATZs21Y4dOzRp0iQdP35cCQkJzk4VuGGF8va9jz76SD/99JO2bNmSa1lycrI8PT1VsmRJm/aQkBAlJyfnub64uDiNHz++MFIFALiwbdu2qUmTJjp37pz8/Py0fPly1ahRI89Y+goAAFCc5AxgPmTIEA0fPlwzZ87Uvn37VLlyZQ0ePFiZmZkaPXo0A52jSLN7Uerw4cN69tlntXbtWnl5edllnbGxsRo+fLg5n56ergoVKthl3QAA11WtWjX9/PPPSktL09KlS9W3b19t2LAhz8IUfQUAAChOcgYwf/fdd/Xee+/pwIED5rK33npLgwYNsokDiiK7P76XlJSk48ePq379+vLw8JCHh4c2bNigt99+Wx4eHgoJCdH58+eVmppq87mUlBSVK1cuz3VarVbz7Us5EwCg+PP09FSVKlXUoEEDxcXFqW7dunrrrbfyjKWvAAAAxUlUVJSCg4MVGxurWrVq2Qx0XqtWLQY6R7Fg9zul2rRpo23bttm09e/fX5GRkXr++edVoUIFlShRQt988426d+8uSdq9e7cOHTp01XFCAACQpOzsbGVmZjo7DQAAAIe4fFBzBjpHcWT3opS/v79q1apl0+br66syZcqY7QMGDNDw4cNVunRpBQQE6Omnn1aTJk3UuHFje6cDACiiYmNj1bFjR1WsWFGnTp3SokWLtH79eq1evdrZqQEAABS6hIQEnThxQnFxcXrvvffUtGlTc1lE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tWtXOZ1OSZLT6VRKSoq3ICVJQ4cOldvt9s62Alq66upqzZo1SzExMdqzZ4/uuecexcbG6p577tGePXsUExOjWbNmcSkfALRiJxekzjvvPIWEhOi88847bRwAAICVNLkotWnTJnXs2FFhYWH6zW9+o+XLl6t3794qLy9XaGioIiIifOJjYmJUXl4uSSovL/cpSNX31/f9mKqqKrndbp8NaK7mzZunmpoaTZ8+XSEhIT59ISEhmjZtmmpqajRv3jyTMgQANDcHDx5UTU2NDh48aHYqAAAAhmlyUeriiy/Wxo0btX79et13332688479c033wQiN6+8vDw5HA7vlpCQENDXA87Fjh07JEkjRoxotL++vT4OAIC4uDi99tpriouLMzsVAAAAwzS5KBUaGqru3burT58+ysvL02WXXaY//OEPio2NVXV1tQ4dOuQTX1FRodjYWElSbGzsKXfjqz+uj2lMbm6uXC6XdyspKWlq2oBhunXrJknKz89vtL++vT4OANC67d+/X6Wlpbr99ttVWlqq/fv3m50SAACAIc56Tal6dXV1qqqqUp8+fdSmTRutXLnS27dt2zbt3r1baWlpkqS0tDRt2rRJe/fu9cZ8/PHHstvt6t2794++RlhYmOx2u88GNFf333+/QkJCNGXKFNXU1Pj01dTUaOrUqQoJCdH9999vUoYAgOYkKipKAwYMUNeuXTVgwABFRUWZnRIAAIAhmlSUys3N1aeffqri4mJt2rRJubm5Wr16tcaMGSOHw6G7775bEydO1KpVq1RYWKhf/epXSktLU2pqqiRpyJAh6t27t26//Xb985//1IcffqgpU6YoKytLYWFhAXmDgNFCQ0OVk5OjiooKdenSRQsXLlRpaakWLlyoLl26qKKiQjk5OWd8t0kAgPWcvObg2rVrVVJSorVr1542DgAAwEqa9Eln7969uuOOO1RWViaHw6FLL71UH374of7rv/5LkjRr1iwFBQVp1KhRqqqq0tChQ30Wcw4ODlZ+fr7uu+8+paWlqUOHDrrzzjs1bdo0/74rwGQzZsyQdOJv4t577/W2h4SE6OGHH/b2AwBap/Dw8DNa1Dw8PNyAbAAAAMxh83g8HrOTaCq32y2HwyGXy8WlfGjWqqurNW/ePO3YsUPdunXT/fffzwwpNGtWOr9a6b3Aer755htdcsklPxm3efPm0y5xAJiB8ysAwF+YEw4EUGhoqCZMmGB2GgCAZmb8+PFnHPfZZ58FOBsAAABznPNC5wAAAGia3bt3+zUOAACgJaIoBQAAYLCGN3h5++231aZNG0lSmzZt9PbbbzcaBwAAYDWsKQUA8LLS+dVK7wXWY7PZzji2BX5Ug8VxfgUA+AszpQAAAEyWmJiopUuXKjEx0exUAAAADMNC5wAAACYrLi7WrbfeanYaAAAAhmKmFAAAgMGGDh3q3b/iiit8+hoeN4wDAACwGopSAAAABmu4TtTXX3/t09fwmPWkAACAlVGUAgAAMFiPHj38GgcAANASUZQCAAAw2HfffefdP/kSvYbHDeMAAACsxuZpgfPCuQ0tAASGlc6vVnovsB6bzXbGsS3woxosjvMrAMBfmCkFAAAAAAAAw1GUAgAAMNHXX3+toKATH8mCgoJOWfgcAADAqihKAQAAGOz888/37l9xxRWqq6uTJNXV1emKK65oNA4AAMBqKEoBAAAY7JJLLvFrHAAAQEtEUQoAAMBg0dHRfo0DAABoiShKAQAAGOytt97y7t9www0+fQ2PG8YBAABYDUUpAAAAg9XU1Hj3V65c6dPX8LhhHAAAgNVQlAIAADBYWFiYX+MAAABaIopSQADV1tZq9erVWrp0qVavXq3a2lqzUwIANAMbNmzw7t95550+fQ2PG8YBAABYDUUpIECWLVum7t27a9CgQbrttts0aNAgde/eXcuWLTM7NQCAyaZOnerdX7x4sU9fw+OGcQAAAFZDUQoIgGXLlmn06NFKSUmR0+lUZWWlnE6nUlJSNHr0aApTANDK7dixw69xAAAALZHN4/F4zE6iqdxutxwOh1wul+x2u9npAD5qa2vVvXt3paSkaMWKFQoK+t/ab11dnTIyMlRUVKTt27crODjYxEyBU1np/Gql9wLrSUpKUnFx8U/GJSYmaufOnYFPCGgCzq8AAH9hphTgZwUFBSouLtbkyZN9ClKSFBQUpNzcXO3cuVMFBQUmZQiYr7a2Vo8++qiSkpLUrl07devWTU8++aQa/k7i8Xg0depUxcXFqV27dho8eLC2b99uYtaA/5xJQaopcQAAAC0RRSnAz8rKyiRJycnJjfbXt9fHAa3R73//e82fP19z5szRli1b9Pvf/14zZszQiy++6I2ZMWOGXnjhBS1YsEDr169Xhw4dNHToUB07dszEzAEAAAD4C0UpwM/i4uIkSUVFRY3217fXxwGt0bp16zRy5EgNHz5ciYmJGj16tIYMGeK905jH49Hs2bM1ZcoUjRw5Updeeqlee+01lZaWasWKFeYmDwAAAMAvKEoBfpaenq7ExEQ9/fTTqqur8+mrq6tTXl6ekpKSlJ6eblKGgPn69eunlStX6ttvv5Uk/fOf/9Rnn32mYcOGSZJ27typ8vJyDR482PsYh8Oha665Rk6ns9HnrKqqktvt9tmAluDZZ59V//79lZCQoP79++vZZ581OyUAAABDhJidAGA1wcHBmjlzpkaPHq2MjAzl5uYqOTlZRUVFysvLU35+vt555x0WOUer9sgjj8jtdqtnz54KDg5WbW2tnnrqKY0ZM0aSVF5eLkmKiYnxeVxMTIy372R5eXl64oknAps4EAAPP/ywd7+kpERr1641MRsAAADjMFMKCIDMzEy988472rRpk/r16ye73a5+/fqpqKhI77zzjjIzM81OETDVn//8Z73xxhtasmSJvvrqKy1evFjPPfecFi9efNbPmZubK5fL5d1KSkr8mDEAAAAAf2OmFBAgmZmZGjlypAoKClRWVqa4uDilp6czQwrQiZkhjzzyiG655RZJUkpKinbt2qW8vDzdeeedio2NlSRVVFT4rL9WUVGhyy+/vNHnDAsLU1hYWMBzBwAAAOAfzJQCAig4OFgDBw7UrbfeqoEDB1KQAv6/H374QUFBvkNQcHCwdx22pKQkxcbGauXKld5+t9ut9evXKy0tzdBcgUBYtWqVX+MAAABaImZKAQAMd9NNN+mpp55S165ddckll+jrr7/W888/r1//+teSJJvNpgkTJmj69Onq0aOHkpKS9Oijjyo+Pl4ZGRnmJg/4QVlZmV/jAAAAWiKKUgAAw7344ot69NFHdf/992vv3r2Kj4/Xvffeq6lTp3pjJk2apCNHjmj8+PE6dOiQBgwYoA8++EBt27Y1MXPAP6KioiRJkZGROnDgwCn99e31cQAAAFZEUQoAYLjw8HDNnj1bs2fP/tEYm82madOmadq0acYlBhhk06ZNkqTKyspG++vbN23apCFDhhiWFwAAgJFYUwoAAMBgxcXFkqTjx49LklJTU/WPf/xDqampPu31cQAAAFbETCkAAACDNbyrZJcuXfT5559r8ODBkqSEhASVlJScEgcAAGA1zJQCAAAw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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "numeric_cols = df1.select_dtypes(include=['number']).columns\n", "\n", "#все столбцы, кроме app_id\n", "numeric_cols = [col for col in numeric_cols if col != 'app_id']\n", "\n", "plt.figure(figsize=(12, 8))\n", " \n", "\n", "for i, col in enumerate(numeric_cols, 1):\n", " if col == 'id':\n", " continue\n", " Q1 = df1[col].quantile(0.25)\n", " Q3 = df1[col].quantile(0.75)\n", " IQR = Q3 - Q1\n", " lower_bound = Q1 - 1.5 * IQR\n", " upper_bound = Q3 + 1.5 * IQR\n", " outliers = df1[col][(df1[col] < lower_bound) | (df1[col] > upper_bound)]\n", " plt.subplot(len(numeric_cols) // 3 + 1, 3, i) \n", " plt.boxplot(x=df1[col])\n", " plt.title(f'Boxplot for {col}')\n", "\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Для проверки на просачивание данных, рейтинг игры, представленный в датасете в виде строковых значений, необходимо перевести в числовую шкалу. Было бы логично перевести игры в 5-бальную шкалу или 10-бальную, но всего разных строковых рейтингов 9, что не делится на 5 и 10. Поэтому для равномерного распределения строковых рейтингов они были переведены в 3-бальную шкалу. С этой шкалой сильно коррелирует только столбец с отношением положительных отзывов к отрицательным (positive_ratio), что логично, т.к. от этого столбца зависит столбец rating, на основе которого и был создан столбец rating_stars с 5-бальной шкалой. Однако признак positive_ratio не будет входным, поэтому просачивания данных не будет." ] }, { "cell_type": "code", "execution_count": 298, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['Very Positive' 'Positive' 'Mixed' 'Mostly Positive'\n", " 'Overwhelmingly Positive' 'Negative' 'Mostly Negative'\n", " 'Overwhelmingly Negative' 'Very Negative']\n", "Просачивание данных: Высокая корреляция (0.82) между столбцами 'positive_ratio' и 'rating_stars'\n" ] } ], "source": [ "#просмотр того, какие рейтинги игр есть в таблице\n", "print(df1['rating'].unique())\n", "\n", "#преобразование строковых значений рейтинга в числовые оценки от 1 до 5\n", "# rating_mapping = {'Overwhelmingly Positive': 5, \n", "# 'Very Positive': 5, \n", "# 'Positive': 4, \n", "# 'Mostly Positive': 4, \n", "# 'Mixed': 3, \n", "# 'Mostly Negative': 3, \n", "# 'Negative': 2, \n", "# 'Very Negative': 2,\n", "# 'Overwhelmingly Negative': 1\n", "# } \n", "# rating_mapping = {'Overwhelmingly Positive': 10, \n", "# 'Very Positive': 9, \n", "# 'Positive': 8, \n", "# 'Mostly Positive': 7, \n", "# 'Mixed': 6, \n", "# 'Mostly Negative': 5, \n", "# 'Negative': 4, \n", "# 'Very Negative': 3,\n", "# 'Overwhelmingly Negative': 2\n", "# } \n", "rating_mapping = {'Overwhelmingly Positive': 3, \n", " 'Very Positive': 3, \n", " 'Positive': 3, \n", " 'Mostly Positive': 2, \n", " 'Mixed': 2, \n", " 'Mostly Negative': 2, \n", " 'Negative': 1, \n", " 'Very Negative': 1,\n", " 'Overwhelmingly Negative': 1\n", " } \n", "df1['rating_stars'] = df1['rating'].map(rating_mapping)\n", "\n", "\n", "#проверка кореляции (просачивания данных)\n", "main_col = 'rating_stars'\n", "for col1 in numeric_cols:\n", " if col1 != main_col:\n", " correlation = df1[col1].corr(df1[main_col])\n", " if abs(correlation) > 0.7:\n", " print(f\"Просачивание данных: Высокая корреляция ({correlation:.2f}) между столбцами '{col1}' и '{main_col}'\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Данный датасет не совсем информативный, т.к. нет данных о жанре игры и об издателе, что вполне может повлиять на оценку игры. Тем не менее в нём есть данные об отзывах и оценке, дате выхода, цене и доступных платформах, что так же может влиять на оценку игры.\n", "\n", "Покрытие у датасета хорошее, т.к. содержится 50000 записей об играх с 1997 по 2023 год, однако важных данных об играх текущего года здесь нет. Данные также могут быть неактуальны, т.к. с последней даты выхода игры прошёл год, за который отзывы на игры могли измениться. \n", "\n", "Метки согласованы, однако метку final_price можно принять за окончательную цену игры после её выпуска, что неверно, т.к. это на самом деле означает цену после применения скидки" ] }, { "cell_type": "code", "execution_count": 299, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Index(['app_id', 'title', 'date_release', 'win', 'mac', 'linux', 'rating',\n", " 'positive_ratio', 'user_reviews', 'price_final', 'price_original',\n", " 'discount', 'steam_deck', 'rating_stars'],\n", " dtype='object')\n", "Количество записей: 50872\n", "\n", "['1997-06-30 00:00:00', '1997-11-14 00:00:00', '1998-11-08 00:00:00',\n", " '1999-04-01 00:00:00', '1999-09-08 00:00:00', '1999-11-01 00:00:00',\n", " '2000-11-01 00:00:00', '2001-06-01 00:00:00', '2002-08-28 00:00:00',\n", " '2003-05-01 00:00:00',\n", " ...\n", " '2023-10-12 00:00:00', '2023-10-13 00:00:00', '2023-10-15 00:00:00',\n", " '2023-10-16 00:00:00', '2023-10-17 00:00:00', '2023-10-18 00:00:00',\n", " '2023-10-19 00:00:00', '2023-10-20 00:00:00', '2023-10-23 00:00:00',\n", " '2023-10-24 00:00:00']\n", "Length: 4292, dtype: datetime64[ns]\n" ] } ], "source": [ "print(df1.columns)\n", "print(f\"Количество записей: {df1.shape[0]}\")\n", "#даты выхода игр\n", "df1['date_release'] = pd.to_datetime(df1['date_release'])\n", "df_sorted = df1.sort_values(by='date_release')\n", "print(df_sorted['date_release'].unique())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Во всех столбцах нет пропущенных данных, поэтому данную проблему устранять не надо" ] }, { "cell_type": "code", "execution_count": 300, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cтолбцы, в которых пропущены значения: []\n" ] } ], "source": [ "columns_with_nulls = []\n", "for col in df1.columns:\n", " if df1[col].isnull().sum() > 0: \n", " columns_with_nulls.append(col)\n", "print(f\"Cтолбцы, в которых пропущены значения: {columns_with_nulls}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**РАЗБИЕНИЕ НА ВЫБОРКИ**\n", "\n", "train_data - обучающая выборка\n", "\n", "val_data - контрольная выборка\n", "\n", "test_data - тестовая выборка" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Заметно, что в обучающую выборку попало слишком мало игр с низким рейтингом. Необходимо прирастить данные для таких игр через oversampling " ] }, { "cell_type": "code", "execution_count": 301, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Размер обучающей выборки: 40697\n", "Размер контрольной выборки: 5087\n", "Размер тестовой выборки: 5088\n" ] }, { "data": { "image/png": "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/dd//Zc++ugjbd26VXfeeafCwsLs3+CLjIzUyJEjNWHCBG3YsEFr165VamqqxowZo7CwMEnSHXfcIX9/fyUnJ2vbtm1asmSJ5s+fr7S0NLuPyZMnKzMzU88//7x27NihOXPmaOPGjUpNTT3fUwIAAJoJ4yeWN4WNGzdq2LBh9nJ9sElKSlJGRoYeeeQRVVVV6b777tPBgwd1zTXXKDMzU4GBgfY2b731llJTUzV8+HD5+Pho9OjReumll+xxp9OpTz/9VCkpKYqJiVGHDh00a9Yst2dJDR06VIsXL9bMmTP1u9/9TpdffrmWLVumK6644jzMAgAAaI685jlRzR3PicKFjmf0gOdEwdN4ThQAAMAFgBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABgwKtD1Jw5c+RwONxevXv3tsePHDmilJQUtW/fXm3atNHo0aNVUVHhto/S0lIlJCSoVatW6tSpkx5++GEdO3bMrSYnJ0dXXXWVAgIC1LNnT2VkZJyPwwMAAM2YV4coSerTp4/Kysrs12effWaPTZ06VX/729/07rvvKjc3V3v27NGtt95qj9fW1iohIUE1NTXKz8/Xm2++qYyMDM2aNcuuKSkpUUJCgoYNG6aioiJNmTJF9957r1auXHlejxMAADQvLTzdwE9p0aKFQkNDT1pfWVmpP/3pT1q8eLFuvPFGSdKi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ck46/xwOh8rLy89Pw15m7ty5GjhwoNq2batOnTopMTFRO3fu/Mnt3n33XfXu3VuBgYHq27evPv744/PQrXcymUM+B//Pa6+9piuvvNJ+CGRsbKw++eSTM27D+eeuoXPYVOcfIaoJLFmyRGlpaZo9e7Y2bdqk6OhoxcfHa+/evafdJigoSGVlZfbr66+/Po8de5eqqipFR0crPT39rOpLSkqUkJCgYcOGqaioSFOmTNG9996rlStXnuNOvVND56/ezp073c7BTp06naMOvVtubq5SUlK0bt06ZWVl6ejRoxoxYoSqqqpOu01+fr7Gjh2r5ORkbd68WYmJiUpMTFRxcfF57Nx7mMyhxOdgvS5duuipp55SYWGhNm7cqBtvvFG33HKLtm3bdsp6zr+TNXQOpSY6/yw02qBBg6yUlBR7uba21goLC7Pmzp17yvpFixZZTqfzPHXXvEiyli5desaaRx55xOrTp4/buttvv92Kj48/h501D2czf2vWrLEkWQcOHDgvPTU3e/futSRZubm5p6257bbbrISEBLd1gwcPtu6///5z3V6zcDZzyOfgmV1yySXWG2+8ccoxzr+zc6Y5bKrzjytRjVRTU6PCwkLFxcXZ63x8fBQXF6eCgoLTbnf48GF17dpV4eHhP5mW4a6goMBtviUpPj7+jPONk/Xr10+dO3fWz3/+c61du9bT7XiNyspKSVK7du1OW8M5eGZnM4cSn4OnUltbq7fffltVVVWn/ZNjnH9ndjZzKDXN+UeIaqTvv/9etbW1Jz3VPCQk5LT3mERERGjhwoX68MMP9Ze//EV1dXUaOnSovv322/PRcrNXXl5+yvl2uVz68ccfPdRV89G5c2ctWLBA77//vt5//32Fh4frhhtu0KZNmzzdmsfV1dVpypQpuvrqq3XFFVectu505+DFel/Z8c52DvkcdLd161a1adNGAQEBeuCBB7R06VJFRUWdspbz79QaModNdf7xZ188IDY21i0dDx06VJGRkfrDH/6gJ5980oOd4WIQERGhiIgIe3no0KH66quvNG/ePP35z3/2YGeel5KSouLiYn322WeebqXZOts55HPQXUREhIqKilRZWan33ntPSUlJys3NPW0IwMkaModNdf4RohqpQ4cO8vX1VUVFhdv6iooKhYaGntU+/Pz81L9/f+3atetctHjBCQ0NPeV8BwUFqWXLlh7qqnkbNGjQRR8cUlNTtXz5cuXl5alLly5nrD3dOXi2/+YvVA2ZwxNd7J+D/v7+6tmzpyQpJiZGn3/+uebPn68//OEPJ9Vy/p1aQ+bwRKbnH1/nNZK/v79iYmKUnZ1tr6urq1N2dvYZv4s9Xm1trbZu3arOnTufqzYvKLGxsW7zLUlZWVlnPd84WVFR0UV7/lmWpdTUVC1dulSrV69W9+7df3IbzkF3JnN4Ij4H3dXV1am6uvqUY5x/Z+dMc3gi4/Ov0bemw3r77betgIAAKyMjw/riiy+s++67zwoODrbKy8sty7Ks8ePHW9OnT7frH3/8cWvlypXWV199ZRUWFlpjxoyxAgMDrW3btnnqEDzq0KFD1ubNm63NmzdbkqwXXnjB2rx5s/X1119blmVZ06dPt8aPH2/X//Of/7RatWplPfzww9b27dut9PR0y9fX18rMzPTUIXhUQ+dv3rx51rJly6wvv/zS2rp1qzV58mTLx8fHWrVqlacOwaMmTpxoOZ1OKycnxyorK7Nf//rXv+yaE/8Nr1271mrRooX13HPPWdu3b7dmz55t+fn5WVu3bvXEIXicyRzyOfh/pk+fbuXm5lolJSXWli1brOnTp1sOh8P69NNPLcvi/DsbDZ3Dpjr/CFFN5OWXX7YuvfRSy9/f3xo0aJC1bt06e+z666+3kpKS7OUpU6bYtSEhIdaoUaOsTZs2eaBr71D/K/cnvurnLCkpybr++utP2qZfv36Wv7+/1aNHD2vRokXnvW9v0dD5e/rpp63LLrvMCgwMtNq1a2fdcMMN1urVqz3TvBc41dxJcjunTvw3bFmW9c4771i9evWy/P39rT59+lgrVqw4v417EZM55HPw/9xzzz1W165dLX9/f6tjx47W8OHD7R/+lsX5dzYaOodNdf45LMuyGnbtCgAAANwTBQAAYIAQBQAAYIAQBQAAYIAQBQAAYIAQBQAAYIAQBQAAYIAQBQAAYIAQBQAAYIAQBeCClpOTI4fDoYMHD3q6FQAXGEIUAI+766675HA45HA45Ofnp+7du+uRRx7RkSNHGrSfG264QVOmTHFbN3ToUJWVlcnpdDZhx6f2xz/+UdHR0WrTpo2Cg4PVv39/zZ071x6/6667lJiYeM77AHB+tPB0AwAgSSNHjtSiRYt09OhRFRYWKikpSQ6HQ08//XSj9uvv76/Q0NAm6vL0Fi5cqClTpuill17S9ddfr+rqam3ZskXFxcVN/l41NTXy9/dv8v0CaBiuRAHwCgEBAQoNDVV4eLgSExMVFxenrKwse/yHH37Q2LFj9bOf/UytWrVS37599de//tUev+uuu5Sbm6v58+fbV7V279590td5GRkZCg4O1sqVKxUZGak2bdpo5MiRKisrs/d17Ngx/fa3v1VwcLDat2+vadOmKSkp6YxXkT766CPddtttSk5OVs+ePdWnTx+NHTtW//3f/y1JmjNnjt588019+OGHdn85OTmSpGnTpqlXr15q1aqVevTooccee0xHjx619z1nzhz169dPb7zxhrp3767AwEBJ0nvvvae+ffuqZcuWat++veLi4lRVVdXY/xUAzhIhCoDXKS4uVn5+vtvVliNHjigmJkYrVqxQcXGx7rvvPo0fP14bNmyQJM2fP1+xsbGaMGGCysrKVFZWpvDw8FPu/1//+peee+45/fnPf1ZeXp5KS0v10EMP2eNPP/203nrrLS1atEhr166Vy+XSsmXLzthzaGio1q1bp6+//vqU4w899JBuu+02O7CVlZVp6NChkqS2bdsqIyNDX3zxhebPn68//vGPmjdvntv2u3bt0vvvv68PPvhARUVFKisr09ixY3XPPfdo+/btysnJ0a233ir+pjxwHlkA4GFJSUmWr6+v1bp1aysgIMCSZPn4+FjvvffeGbdLSEiwHnzwQXv5+uuvtyZPnuxWs2bNGkuSdeDAAcuyLGvRokWWJGvXrl12TXp6uhUSEmIvh4SEWM8++6y9fOzYMevSSy+1brnlltP2smfPHmvIkCGWJKtXr15WUlKStWTJEqu2ttbtOM+0j3rPPvusFRMTYy/Pnj3b8vPzs/bu3WuvKywstCRZu3fv/sn9ATg3uCcKgFcYNmyYXnvtNVVVVWnevHlq0aKFRo8ebY/X1tbq97//vd555x199913qqmpUXV1tVq1atXg92rVqpUuu+wye7lz587au3evJKmyslIVFRUaNGiQPe7r66uYmBjV1dWddp+dO3dWQUGBiouLlZeXp/z8fCUlJemNN95QZmamfHxOf+F/yZIleumll/TVV1/p8OHDOnbsmIKCgtxqunbtqo4dO9rL0dHRGj58uPr27av4+HiNGDFCv/rVr3TJJZc0eD4AmOHrPABeoXXr1urZs6eio6O1cOFCrV+/Xn/605/s8WeffVbz58/XtGnTtGbNGhUVFSk+Pl41NTUNfi8/Pz+3ZYfD0WRfg11xxRX6z//8T/3lL39RVlaWsrKylJube9r6goICjRs3TqNGjdLy5cu1efNmPfrooycdV+vWrd2WfX19lZWVpU8++URRUVF6+eWXFRERoZKSkiY5DgA/jRAFwOv4+Pjod7/7nWbOnKkff/xRkrR27Vrdcsst+s1vfqPo6Gj16NFD/+///T+37fz9/VVbW9uo93Y6nQoJCdHnn39ur6utrdWmTZsavK+oqChJsm/2PlV/+fn56tq1qx599FENGDBAl19++WnvqzqRw+HQ1Vdfrccff1ybN2+Wv7+/li5d2uA+AZghRAHwSr/+9a/l6+ur9PR0SdLll1+urKws5efna/v27br//vtVUVHhtk23bt20fv167d69W99///0Zv347k0mTJmnu3Ln68MMPtXPnTk2ePFkHDhyQw+E47TYTJ07Uk08+qbVr1+rrr7/WunXrdOedd6pjx46KjY21+9uyZYt27typ77//XkePHtXll1+u0tJSvf322/rqq6/00ksvnVUQWr9+vX7/+99r48aNKi0t1QcffKB9+/YpMjLS6JgBNBwhCoBXatGihVJTU/XMM8+oqqpKM2fO1FVXXaX4+HjdcMMNCg0NPemRAw899JB8fX0VFRWljh07qrS01Oi9p02bprFjx+rOO+9UbGys2rRpo/j4ePvRAqcSFxendevW6de//rV69eql0aNHKzAwUNnZ2Wrfvr0kacKECYqIiNCAAQPUsWNHrV27Vr/85S81depUpaamql+/fsrPz9djjz32kz0GBQUpLy9Po0aNUq9evTRz5kw9//zzuummm4yOGUDDOaymuhEAAC5QdXV1ioyM1G233aYnn3zS0+0A8BL8dh4AnODrr7/Wp59+aj95/JVXXlFJSYnuuOMOT7cGwIvwdR4AnMDHx0cZGRkaOHCgrr76am3dulWrVq3ifiMAbvg6DwAAwABXogAAAAwQogAAAAwQogAAAAwQogAAAAwQogAAAAwQogAAAAwQogAAAAwQogAAAAz8f9sTyrR5zVqAAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "rating_stars\n", "1 296\n", "2 18144\n", "3 22257\n", "Name: count, dtype: int64\n" ] } ], "source": [ "from sklearn.model_selection import train_test_split\n", "data=df1[['date_release', 'win', 'linux', 'mac', 'price_original', 'rating_stars']].copy()\n", "# сначала разделение записей на 80% и 20%, где 80% - обучающая выборка\n", "train_data, temp_data = train_test_split(data, test_size=0.2, random_state=42)\n", "\n", "# потом разделение остальных 20% поровну на контрольную и тестовую выборки\n", "val_data, test_data = train_test_split(temp_data, test_size=0.5, random_state=42)\n", "\n", "# Проверка размеров выборок\n", "print(\"Размер обучающей выборки:\", len(train_data))\n", "print(\"Размер контрольной выборки:\", len(val_data))\n", "print(\"Размер тестовой выборки:\", len(test_data))\n", "\n", "\n", "# построение столбчатой диаграммы по столбцу rating_stars (сбалансированность обучающей выборки)\n", "rating_counts = train_data['rating_stars'].value_counts().sort_index()\n", "\n", "plt.bar(rating_counts.index, rating_counts.values)\n", "plt.xlabel('Rating Stars')\n", "plt.ylabel('Count')\n", "plt.show()\n", "\n", "print(train_data[\"rating_stars\"].value_counts().sort_index())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**ПРИРАЩЕНИЕ ДАННЫХ (oversampling)**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "После приращения данных по играм с отрицательными отзывами стало гораздо больше. Теперь распределение игр стало гораздо сбалансированнее" ] }, { "cell_type": "code", "execution_count": 302, "metadata": {}, "outputs": [ { "data": { "image/png": "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qPj4eEmSw+FQQkKCy5iPj4+6deumZ599tsmaAwAA8FQNClG1tbWSpO7du+uzzz5Thw4dzktTAAAAnq5BIapOUVFRU/cBAADQrBiFKEnKzMxUZmamysvL7TNUdZYsWdLoxgAAADyZUYh6/PHH9cQTT2jAgAHq3LmzHA5HU/cFAADg0YxC1OLFi5WWlqaJEyc2dT8AAADNgtFzoqqrqzV06NCm7gUAAKDZMApR9957r5YtW9bUvQAAADQbRpfzjh07pldffVVr167VlVdeKR8fH5fx5557rkmaAwAA8FRGIWr79u3q16+fJKmwsNBljJvMAQDAxcAoRK1fv76p+wAAAGhWjO6JAgAAuNgZnYkaPnz4WS/brVu3zrghAACA5sAoRNXdD1Xn+PHjKigoUGFh4Wm/mBgAAOCnyChELVy4sN718+bN09GjRxvVEAAAQHPQpPdE/frXv+b35gEAgItCk4aovLw8+fv7N+UmAQAAPJLR5bxbbrnFZdmyLJWUlGjLli167LHHmqQxAAAAT2YUogIDA12Wvby8FB4erieeeEIjR45sksYAAAA8mVGIWrp0aVP3AQAA0KwYhag6+fn52rVrlySpT58+6t+/f5M0BQAA4OmMQlR5ebnGjRunrKwsBQUFSZIOHz6s4cOH680331THjh2bskcAAACPY/TTeVOmTNGRI0e0c+dOHTx4UAcPHlRhYaGcTqd+85vfNHWPAAAAHsfoTFR6errWrl2riIgIe11kZKRSU1O5sRwAAFwUjM5E1dbWysfH57T1Pj4+qq2tbXRTAAAAns4oRN1www2aOnWq9u/fb6/79ttvNX36dI0YMaLJmgMAAPBURiHqpZdektPpVLdu3XTZZZfpsssuU/fu3eV0OvXiiy82dY8AAAAex+ieqLCwMG3dulVr167V7t27JUkRERGKjY1t0uYAAAA8VYPORK1bt06RkZFyOp1yOBz6+c9/rilTpmjKlCkaOHCg+vTpo08++eR89QoAAOAxGhSinn/+eU2aNEkBAQGnjQUGBur+++/Xc88912TNAQAAeKoGhai///3vGjVq1BnHR44cqfz8/EY3BQAA4OkaFKLKysrqfbRBnRYtWujAgQONbgoAAMDTNShE/exnP1NhYeEZx7dv367OnTs3uikAAABP16AQNXr0aD322GM6duzYaWM//PCD5s6dq1/84hdN1hwAAICnatAjDmbPnq333ntPvXr1UnJyssLDwyVJu3fvVmpqqmpqavToo4+el0YBAAA8SYNCVHBwsHJzczV58mTNmjVLlmVJkhwOh+Li4pSamqrg4ODz0igAAIAnafDDNrt27aoPP/xQhw4d0t69e2VZli6//HJdcskl56M/AAAAj2T0xHJJuuSSSzRw4MCm7AUAAKDZMPrdeU0lJydHN910k0JDQ+VwOLRy5UqXccuyNGfOHHXu3FktW7ZUbGysvvjiC5eagwcPasKECQoICFBQUJASExN19OhRl5rt27fr2muvlb+/v8LCwvTUU0+d1svbb7+t3r17y9/fX3379tWHH37Y5PsLAAB+OtwaoiorKxUVFaXU1NR6x5966im98MILWrx4sTZt2qTWrVsrLi7O5acDJ0yYoJ07dyojI0OrVq1STk6O7rvvPnvc6XRq5MiR6tq1q/Lz8/X0009r3rx5evXVV+2a3NxcjR8/XomJidq2bZvi4+MVHx9/1sc5AACAi5vDqrs73M0cDodWrFih+Ph4Sf86CxUaGqoHH3xQDz30kCSpoqJCwcHBSktL07hx47Rr1y5FRkbqs88+04ABAyRJ6enpGj16tL755huFhobqlVde0aOPPqrS0lL5+vpKkmbOnKmVK1favzz59ttvV2VlpVatWmX3M2TIEPXr10+LFy8+p/6dTqcCAwNVUVFR76/FaaxuM1c3+TbRvOz7/Ri3fj7HIDgG4W7n4xhszP/fbj0TdTZFRUUqLS1VbGysvS4wMFCDBw9WXl6eJCkvL09BQUF2gJKk2NhYeXl5adOmTXbNddddZwcoSYqLi9OePXt06NAhu+bkz6mrqfuc+lRVVcnpdLq8AADAxcNjQ1RpaakknfbIhODgYHustLRUnTp1chlv0aKF2rVr51JT3zZO/owz1dSN12fBggUKDAy0X2FhYQ3dRQAA0Ix5bIjydLNmzVJFRYX9+vrrr93dEgAAuIA8NkSFhIRI+tcvPT5ZWVmZPRYSEqLy8nKX8RMnTujgwYMuNfVt4+TPOFNN3Xh9/Pz8FBAQ4PICAAAXD48NUd27d1dISIgyMzPtdU6nU5s2bVJMTIwkKSYmRocPH1Z+fr5ds27dOtXW1mrw4MF2TU5Ojo4fP27XZGRkKDw83H5AaExMjMvn1NXUfQ4AAMCp3Bqijh49qoKCAhUUFEj6183kBQUFKi4ulsPh0LRp0/Rf//Vf+uCDD7Rjxw7deeedCg0NtX+CLyIiQqNGjdKkSZO0efNmbdiwQcnJyRo3bpxCQ0MlSXfccYd8fX2VmJionTt3avny5Vq0aJFSUlLsPqZOnar09HQ9++yz2r17t+bNm6ctW7YoOTn5Qk8JAABoJoyfWN4UtmzZouHDh9vLdcEmISFBaWlpeuSRR1RZWan77rtPhw8f1jXXXKP09HT5+/vb73njjTeUnJysESNGyMvLS2PHjtULL7xgjwcGBurjjz9WUlKSoqOj1aFDB82ZM8flWVJDhw7VsmXLNHv2bP32t7/V5ZdfrpUrV+qKK664ALMAAACaI495TlRzx3OicL7xjB64G8cg3I3nRAEAAPwEEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMEKIAAAAMeHSImjdvnhwOh8urd+/e9vixY8eUlJSk9u3bq02bNho7dqzKyspctlFcXKwxY8aoVatW6tSpkx5++GGdOHHCpSYrK0tXXXWV/Pz81LNnT6WlpV2I3QMAAM2YR4coSerTp49KSkrs16effmqPTZ8+XX/729/09ttvKzs7W/v379ctt9xij9fU1GjMmDGqrq5Wbm6uXn/9daWlpWnOnDl2TVFRkcaMGaPhw4eroKBA06ZN07333qs1a9Zc0P0EAADNSwt3N/BjWrRooZCQkNPWV1RU6E9/+pOWLVumG264QZK0dOlSRUREaOPGjRoyZIg+/vhjff7551q7dq2Cg4PVr18/zZ8/XzNmzNC8efPk6+urxYsXq3v37nr22WclSREREfr000+1cOFCxcXFXdB9BQAAzYfHn4n64osvFBoaqh49emjChAkqLi6WJOXn5+v48eOKjY21a3v37q1LL71UeXl5kqS8vDz17dtXwcHBdk1cXJycTqd27txp15y8jbqaum2cSVVVlZxOp8sLAABcPDw6RA0ePFhpaWlKT0/XK6+8oqKiIl177bU6cuSISktL5evrq6CgIJf3BAcHq7S0VJJUWlrqEqDqxuvGzlbjdDr1ww8/nLG3BQsWKDAw0H6FhYU1dncBAEAz4tGX82688Ub7z1deeaUGDx6srl276q233lLLli3d2Jk0a9YspaSk2MtOp5MgBQDARcSjz0SdKigoSL169dLevXsVEhKi6upqHT582KWmrKzMvocqJCTktJ/Wq1v+sZqAgICzBjU/Pz8FBAS4vAAAwMWjWYWoo0eP6ssvv1Tnzp0VHR0tHx8fZWZm2uN79uxRcXGxYmJiJEkxMTHasWOHysvL7ZqMjAwFBAQoMjLSrjl5G3U1ddsAAACoj0eHqIceekjZ2dnat2+fcnNz9R//8R/y9vbW+PHjFRgYqMTERKWkpGj9+vXKz8/X3XffrZiYGA0ZMkSSNHLkSEVGRmrixIn6+9//rjVr1mj27NlKSkqSn5+fJOmBBx7QP/7xDz3yyCPavXu3Xn75Zb311luaPn26O3cdAAB4OI++J+qbb77R+PHj9f3336tjx4665pprtHHjRnXs2FGStHDhQnl5eWns2LGqqqpSXFycXn75Zfv93t7eWrVqlSZPnqyYmBi1bt1aCQkJeuKJJ+ya7t27a/Xq1Zo+fboWLVqkLl266LXXXuPxBgAA4Kw8OkS9+eabZx339/dXamqqUlNTz1jTtWtXffjhh2fdzrBhw7Rt2zajHgEAwMXJoy/nAQAAeCpCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFCFAAAgAFC1ClSU1PVrVs3+fv7a/Dgwdq8ebO7WwIAAB6IEHWS5cuXKyUlRXPnztXWrVsVFRWluLg4lZeXu7s1AADgYQhRJ3nuuec0adIk3X333YqMjNTixYvVqlUrLVmyxN2tAQAAD9PC3Q14iurqauXn52vWrFn2Oi8vL8XGxiovL++0+qqqKlVVVdnLFRUVkiSn03le+qut+ud52S6aj/N1bJ0rjkFwDMLdzscxWLdNy7Ia/F5C1P/77rvvVFNTo+DgYJf1wcHB2r1792n1CxYs0OOPP37a+rCwsPPWIy5ugc+7uwNc7DgG4W7n8xg8cuSIAgMDG/QeQpShWbNmKSUlxV6ura3VwYMH1b59ezkcDpdap9OpsLAwff311woICLjQrTZ7zF/jMYeNw/w1HnPYOMxf451pDi3L0pEjRxQaGtrgbRKi/l+HDh3k7e2tsrIyl/VlZWUKCQk5rd7Pz09+fn4u64KCgs76GQEBARz8jcD8NR5z2DjMX+Mxh43D/DVefXPY0DNQdbix/P/5+voqOjpamZmZ9rra2lplZmYqJibGjZ0BAABPxJmok6SkpCghIUEDBgzQoEGD9Pzzz6uyslJ33323u1sDAAAehhB1kttvv10HDhzQnDlzVFpaqn79+ik9Pf20m80bys/PT3Pnzj3t8h/ODfPXeMxh4zB/jcccNg7z13jnYw4dlsnP9AEAAFzkuCcKAADAACEKAADAACEKAADAACEKAADAACGqiaSmpqpbt27y9/fX4MGDtXnz5jPWpqWlyeFwuLz8/f0vYLeeJScnRzfddJNCQ0PlcDi0cuXKH31PVlaWrrrqKvn5+alnz55KS0s77316qobOX1ZW1mnHn8PhUGlp6YVp2MMsWLBAAwcOVNu2bdWpUyfFx8drz549P/q+t99+W71795a/v7/69u2rDz/88AJ065lM5pDvwX975ZVXdOWVV9oPgYyJidFHH3101vdw/Llq6Bw21fFHiGoCy5cvV0pKiubOnautW7cqKipKcXFxKi8vP+N7AgICVFJSYr+++uqrC9ixZ6msrFRUVJRSU1PPqb6oqEhjxozR8OHDVVBQoGnTpunee+/VmjVrznOnnqmh81dnz549Lsdgp06dzlOHni07O1tJSUnauHGjMjIydPz4cY0cOVKVlZVnfE9ubq7Gjx+vxMREbdu2TfHx8YqPj1dhYeEF7NxzmMyhxPdgnS5duuj3v/+98vPztWXLFt1www26+eabtXPnznrrOf5O19A5lJro+LPQaIMGDbKSkpLs5ZqaGis0NNRasGBBvfVLly61AgMDL1B3zYska8WKFWeteeSRR6w+ffq4rLv99tutuLi489hZ83Au87d+/XpLknXo0KEL0lNzU15ebkmysrOzz1hz2223WWPGjHFZN3jwYOv+++8/3+01C+cyh3wPnt0ll1xivfbaa/WOcfydm7PNYVMdf5yJaqTq6mrl5+crNjbWXufl5aXY2Fjl5eWd8X1Hjx5V165dFRYW9qNpGa7y8vJc5luS4uLizjrfOF2/fv3UuXNn/fznP9eGDRvc3Y7HqKiokCS1a9fujDUcg2d3LnMo8T1Yn5qaGr355puqrKw8468c4/g7u3OZQ6lpjj9CVCN99913qqmpOe2p5sHBwWe8xyQ8PFxLlizR+++/r7/85S+qra3V0KFD9c0331yIlpu90tLSeufb6XTqhx9+cFNXzUfnzp21ePFivfvuu3r33XcVFhamYcOGaevWre5uze1qa2s1bdo0XX311briiivOWHemY/Biva/sZOc6h3wPutqxY4fatGkjPz8/PfDAA1qxYoUiIyPrreX4q19D5rCpjj9+7YsbxMTEuKTjoUOHKiIiQn/4wx80f/58N3aGi0F4eLjCw8Pt5aFDh+rLL7/UwoUL9ec//9mNnblfUlKSCgsL9emnn7q7lWbrXOeQ70FX4eHhKigoUEVFhd555x0lJCQoOzv7jCEAp2vIHDbV8UeIaqQOHTrI29tbZWVlLuvLysoUEhJyTtvw8fFR//79tXfv3vPR4k9OSEhIvfMdEBCgli1buqmr5m3QoEEXfXBITk7WqlWrlJOToy5dupy19kzH4Ln+m/+pasgcnupi/x709fVVz549JUnR0dH67LPPtGjRIv3hD384rZbjr34NmcNTmR5/XM5rJF9fX0VHRyszM9NeV1tbq8zMzLNeiz1ZTU2NduzYoc6dO5+vNn9SYmJiXOZbkjIyMs55vnG6goKCi/b4syxLycnJWrFihdatW6fu3bv/6Hs4Bl2ZzOGp+B50VVtbq6qqqnrHOP7Ozdnm8FTGx1+jb02H9eabb1p+fn5WWlqa9fnnn1v33XefFRQUZJWWllqWZVkTJ060Zs6cadc//vjj1po1a6wvv/zSys/Pt8aNG2f5+/tbO3fudNcuuNWRI0esbdu2Wdu2bbMkWc8995y1bds266uvvrIsy7JmzpxpTZw40a7/xz/+YbVq1cp6+OGHrV27dlmpqamWt7e3lZ6e7q5dcKuGzt/ChQutlStXWl988YW1Y8cOa+rUqZaXl5e1du1ad+2CW02ePNkKDAy0srKyrJKSEvv1z3/+06459d/whg0brBYtWljPPPOMtWvXLmvu3LmWj4+PtWPHDnfsgtuZzCHfg/82c+ZMKzs72yoqKrK2b99uzZw503I4HNbHH39sWRbH37lo6Bw21fFHiGoiL774onXppZdavr6+1qBBg6yNGzfaY9dff72VkJBgL0+bNs2uDQ4OtkaPHm1t3brVDV17hrofuT/1VTdnCQkJ1vXXX3/ae/r162f5+vpaPXr0sJYuXXrB+/YUDZ2/J5980rrsssssf39/q127dtawYcOsdevWuad5D1Df3ElyOaZO/TdsWZb11ltvWb169bJ8fX2tPn36WKtXr76wjXsQkznke/Df7rnnHqtr166Wr6+v1bFjR2vEiBH2f/6WxfF3Lho6h011/Dksy7Iadu4KAAAA3BMFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAFAABggBAF4CctKytLDodDhw8fdncrAH5iCFEA3O6uu+6Sw+GQw+GQj4+PunfvrkceeUTHjh1r0HaGDRumadOmuawbOnSoSkpKFBgY2IQd1++Pf/yjoqKi1KZNGwUFBal///5asGCBPX7XXXcpPj7+vPcB4MJo4e4GAECSRo0apaVLl+r48ePKz89XQkKCHA6HnnzyyUZt19fXVyEhIU3U5ZktWbJE06ZN0wsvvKDrr79eVVVV2r59uwoLC5v8s6qrq+Xr69vk2wXQMJyJAuAR/Pz8FBISorCwMMXHxys2NlYZGRn2+Pfff6/x48frZz/7mVq1aqW+ffvqr3/9qz1+1113KTs7W4sWLbLPau3bt++0y3lpaWkKCgrSmjVrFBERoTZt2mjUqFEqKSmxt3XixAn95je/UVBQkNq3b68ZM2YoISHhrGeRPvjgA912221KTExUz5491adPH40fP17//d//LUmaN2+eXn/9db3//vt2f1lZWZKkGTNmqFevXmrVqpV69Oihxx57TMePH7e3PW/ePPXr10+vvfaaunfvLn9/f0nSO++8o759+6ply5Zq3769YmNjVVlZ2di/CgDniBAFwOMUFhYqNzfX5WzLsWPHFB0drdWrV6uwsFD33XefJk6cqM2bN0uSFi1apJiYGE2aNEklJSUqKSlRWFhYvdv/5z//qWeeeUZ//vOflZOTo+LiYj300EP2+JNPPqk33nhDS5cu1YYNG+R0OrVy5cqz9hwSEqKNGzfqq6++qnf8oYce0m233WYHtpKSEg0dOlSS1LZtW6Wlpenzzz/XokWL9Mc//lELFy50ef/evXv17rvv6r333lNBQYFKSko0fvx43XPPPdq1a5eysrJ0yy23iN8pD1xAFgC4WUJCguXt7W21bt3a8vPzsyRZXl5e1jvvvHPW940ZM8Z68MEH7eXrr7/emjp1qkvN+vXrLUnWoUOHLMuyrKVLl1qSrL1799o1qampVnBwsL0cHBxsPf300/byiRMnrEsvvdS6+eabz9jL/v37rSFDhliSrF69elkJCQnW8uXLrZqaGpf9PNs26jz99NNWdHS0vTx37lzLx8fHKi8vt9fl5+dbkqx9+/b96PYAnB/cEwXAIwwfPlyvvPKKKisrtXDhQrVo0UJjx461x2tqavS73/1Ob731lr799ltVV1erqqpKrVq1avBntWrVSpdddpm93LlzZ5WXl0uSKioqVFZWpkGDBtnj3t7eio6OVm1t7Rm32blzZ+Xl5amwsFA5OTnKzc1VQkKCXnvtNaWnp8vL68wn/pcvX64XXnhBX375pY4ePaoTJ04oICDApaZr167q2LGjvRwVFaURI0aob9++iouL08iRI/WrX/1Kl1xySYPnA4AZLucB8AitW7dWz549FRUVpSVLlmjTpk3605/+ZI8//fTTWrRokWbMmKH169eroKBAcXFxqq6ubvBn+fj4uCw7HI4muwx2xRVX6D//8z/1l7/8RRkZGcrIyFB2dvYZ6/Py8jRhwgSNHj1aq1at0rZt2/Too4+etl+tW7d2Wfb29lZGRoY++ugjRUZG6sUXX1R4eLiKioqaZD8A/DhCFACP4+Xlpd/+9reaPXu2fvjhB0nShg0bdPPNN+vXv/61oqKi1KNHD/3v//6vy/t8fX1VU1PTqM8ODAxUcHCwPvvsM3tdTU2Ntm7d2uBtRUZGSpJ9s3d9/eXm5qpr16569NFHNWDAAF1++eVnvK/qVA6HQ1dffbUef/xxbdu2Tb6+vlqxYkWD+wRghhAFwCPdeuut8vb2VmpqqiTp8ssvV0ZGhnJzc7Vr1y7df//9Kisrc3lPt27dtGnTJu3bt0/ffffdWS+/nc2UKVO0YMECvf/++9qzZ4+mTp2qQ4cOyeFwnPE9kydP1vz587VhwwZ99dVX2rhxo+6880517NhRMTExdn/bt2/Xnj179N133+n48eO6/PLLVVxcrDfffFNffvmlXnjhhXMKQps2bdLvfvc7bdmyRcXFxXrvvfd04MABRUREGO0zgIYjRAHwSC1atFBycrKeeuopVVZWavbs2brqqqsUFxenYcOGKSQk5LRHDjz00EPy9vZWZGSkOnbsqOLiYqPPnjFjhsaPH68777xTMTExatOmjeLi4uxHC9QnNjZWGzdu1K233qpevXpp7Nix8vf3V2Zmptq3by9JmjRpksLDwzVgwAB17NhRGzZs0C9/+UtNnz5dycnJ6tevn3Jzc/XYY4/9aI8BAQHKycnR6NGj1atXL82ePVvPPvusbrzxRqN9BtBwDqupbgQAgJ+o2tpaRURE6LbbbtP8+fPd3Q4AD8FP5wHAKb766it9/PHH9pPHX3rpJRUVFemOO+5wd2sAPAiX8wDgFF5eXkpLS9PAgQN19dVXa8eOHVq7di33GwFwweU8AAAAA5yJAgAAMECIAgAAMECIAgAAMECIAgAAMECIAgAAMECIAgAAMECIAgAAMECIAgAAMPB/S+DI2/jh3q8AAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "rating_stars\n", "1 22234\n", "2 20308\n", "3 22257\n", "Name: count, dtype: int64\n" ] } ], "source": [ "from imblearn.over_sampling import ADASYN\n", "ada = ADASYN(n_neighbors=3)\n", "#ada = ADASYN()\n", "\n", "\n", "#Преобразование нечисленных значений к численным для возиожности работы с oversampling\n", "train_data['date_release'] = pd.to_datetime(df1['date_release']).astype('int64')/ 10**9\n", "train_data['mac'] = train_data[\"mac\"].astype(int)\n", "train_data['win'] = train_data[\"mac\"].astype(int)\n", "train_data['linux'] = train_data[\"linux\"].astype(int)\n", "\n", "X_resampled, y_resampled = ada.fit_resample(train_data, train_data[\"rating_stars\"])\n", "train_data_adasyn = pd.DataFrame(X_resampled)\n", "\n", "\n", "rating_counts_adasyn = train_data_adasyn['rating_stars'].value_counts().sort_index()\n", "\n", "plt.bar(rating_counts_adasyn.index, rating_counts_adasyn.values)\n", "plt.xlabel('Rating Stars')\n", "plt.ylabel('Count')\n", "plt.show()\n", "\n", "print(train_data_adasyn[\"rating_stars\"].value_counts().sort_index())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## **ДАТАСЕТ 2**\n", "\n", "https://www.kaggle.com/datasets/dewangmoghe/mobile-phone-price-prediction\n", "\n", "\n", "Проблемная область: рынок мобильных телефонов\n", "\n", "Объекты наблюдения: мобильные телефоны\n", "\n", "Атрибуты объектов:\n", "* Name: Название\n", "\n", "* Rating: оценка телефона (от 0 до 5).\n", "\n", "* Spec_score: оценка телефона на основе его основных характеристик (от 0 до 100)\n", "\n", "* No_of_sim: поддерживает ли телефон две SIM-карты, 3G, 4G, 5G, Volte\n", "\n", "* RAM: кол-во оперативной памяти\n", "\n", "* Battery: хар-ки аккумулятора\n", "\n", "* Display: размере экрана телефона\n", "\n", "* Camera: хар-ки передней и задней камерах\n", "\n", "* External_Memory: поддерживает ли внешнюю память и сколько\n", "\n", "* Android_version: версия Android телефона\n", "\n", "* Price: цена\n", "\n", "* Company: компания, которой принадлежит телефон\n", "\n", "* Inbuilt_memory: встроенная память телефона\n", "\n", "* fast_charging: поддерживает ли быструю зарядку или нет и насколько ватт.\n", "\n", "* Screen_resolution: разрешение экрана\n", "\n", "* Processor: описание процессора\n", "\n", "* Processor_name: название процессора\n", "\n", "Связи между объектами:\n", "Между ценой телефона и его другими хар-ками (чем лучше хар-ки, тем дороже должен быть телефон)\n", "\n", "Бизнес-цель: помочь производителям и продавцам определить оптимальную цену для новых телефонов на основе конкурентов.\n", "Эффект для бизнеса: Улучшение конкурентоспособности на рынке, потенциальное увеличение прибыли\n", "\n", "Цель технического проекта: создать модель машинного обучения, которая будет предсказывать цену мобильного телефона на основе его характеристик.\n", "Входные данные: Характеристики мобильных телефонов (хар-ки аккумулятора, камеры, процессор и т.д.).\n", "Целевой признак: цена" ] }, { "cell_type": "code", "execution_count": 303, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Index(['Unnamed: 0', 'Name', 'Rating', 'Spec_score', 'No_of_sim', 'Ram',\n", " 'Battery', 'Display', 'Camera', 'External_Memory', 'Android_version',\n", " 'Price', 'company', 'Inbuilt_memory', 'fast_charging',\n", " 'Screen_resolution', 'Processor', 'Processor_name'],\n", " dtype='object')\n", "\n", "RangeIndex: 1370 entries, 0 to 1369\n", "Data columns (total 18 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 Unnamed: 0 1370 non-null int64 \n", " 1 Name 1370 non-null object \n", " 2 Rating 1370 non-null float64\n", " 3 Spec_score 1370 non-null int64 \n", " 4 No_of_sim 1370 non-null object \n", " 5 Ram 1370 non-null object \n", " 6 Battery 1370 non-null object \n", " 7 Display 1370 non-null object \n", " 8 Camera 1370 non-null object \n", " 9 External_Memory 1370 non-null object \n", " 10 Android_version 927 non-null object \n", " 11 Price 1370 non-null object \n", " 12 company 1370 non-null object \n", " 13 Inbuilt_memory 1351 non-null object \n", " 14 fast_charging 1281 non-null object \n", " 15 Screen_resolution 1368 non-null object \n", " 16 Processor 1342 non-null object \n", " 17 Processor_name 1370 non-null object \n", "dtypes: float64(1), int64(2), object(15)\n", "memory usage: 192.8+ KB\n", "None\n" ] } ], "source": [ "df2 = pd.read_csv(\"..//static//csv//mobiles.csv\")\n", "print(df2.columns)\n", "print(df2.info())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "В столбце Ram есть шум в виде значений, которые явно не относятся к значению оперативной памяти ('Helio G90T', '128 GB inbuilt' '6000 mAh Battery with 22.5W Fast Charging'\n", "'256 GB inbuilt' '512 GB inbuilt'). Строки с этими значениями можно удалить, т.к. у них значения съехали с других столбцов, а значит и в другом столбце будет неверное значение. \n", "\n", "Также было обнаружено, что не все цены указаны верно, т.к. у некоторых значений было 2 запятые. Для преобразования значений в числа запятые были заменены на точки, а в строках, где стало 2 точки, первая точка удалена.\n", "\n", "Актуальность данных проверить нельзя, т.к. в датасете нет даты релиза смартфона\n", "\n", "Покрытие данных очень хорошее, т.к. представлено большое количество смартфон разной ценовой категории" ] }, { "cell_type": "code", "execution_count": 304, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 0 1 2 ... 1367 1368 1369]\n", "['Samsung Galaxy F14 5G' 'Samsung Galaxy A11' 'Samsung Galaxy A13' ...\n", " 'TCL 50 XE NxtPaper 5G' 'TCL 40 NxtPaper 5G' 'TCL Trifold']\n", "[4.65 4.2 4.3 4.1 4.4 4.05 4.5 4.25 4.75 4.15 4.35 4.45 4.6 4.\n", " 4.55 4.7 3.95 3.75 3.9 3.85]\n", "[68 63 75 73 69 76 71 85 78 72 74 79 80 62 81 82 87 86 88 84 83 89 91 90\n", " 96 93 92 95 65 59 42 67 60 61 54 66 70 51 64 53 77 94 98 97 58 57 49 46\n", " 56 55]\n", "['Dual Sim, 3G, 4G, 5G, VoLTE, ' 'Dual Sim, 3G, 4G, VoLTE, '\n", " 'Dual Sim, 3G, 4G, 5G, VoLTE, Vo5G, ' 'Single Sim, 3G, 4G, 5G, VoLTE, '\n", " 'Dual Sim, 3G, 4G, ' 'Single Sim, 3G, 4G, VoLTE, ' 'No Sim Supported, '\n", " 'Single Sim, 3G, 4G, 5G, VoLTE, Vo5G, ' 'Dual Sim, 3G, VoLTE, ']\n", "['4 GB RAM' '2 GB RAM' '6 GB RAM' '8 GB RAM' '12 GB RAM' '1 GB RAM'\n", " '3 GB RAM' '16 GB RAM' 'Helio G90T' '24 GB RAM' '18 GB RAM' '1.5 GB RAM'\n", " '128 GB inbuilt' '6000 mAh Battery with 22.5W Fast Charging'\n", " '256 GB inbuilt' '512 GB inbuilt']\n", "['6000 mAh Battery ' '4000 mAh Battery ' '5000 mAh Battery '\n", " '6000 mAh Battery' '3500 mAh Battery' '4500 mAh Battery '\n", " '3400 mAh Battery ' '3300 mAh Battery ' '4050 mAh Battery '\n", " '3900 mAh Battery ' '4300 mAh Battery ' '4800 mAh Battery '\n", " '4200 mAh Battery ' '3700 mAh Battery ' '4400 mAh Battery '\n", " '3500 mAh Battery ' '4320 mAh Battery ' '4030 mAh Battery'\n", " '1900 mAh Battery' '5000 mAh Battery' '2650 mAh Battery'\n", " '3000 mAh Battery' '4600 mAh Battery ' '4100 mAh Battery '\n", " '5500 mAh Battery ' '4830 mAh Battery ' '4700 mAh Battery '\n", " '4810 mAh Battery ' '5100 mAh Battery ' '5400 mAh Battery '\n", " '4870 mAh Battery ' '5700 mAh Battery ' '4730 mAh Battery '\n", " '5100 mAh Battery' '6 GB RAM, 64 GB inbuilt' '5200 mAh Battery '\n", " '5240 mAh Battery ' '5050 mAh Battery ' '4310 mAh Battery '\n", " '4350 mAh Battery ' '4880 mAh Battery ' '4520 mAh Battery '\n", " '4260 mAh Battery ' '4820 mAh Battery ' '4805 mAh Battery '\n", " '5160 mAh Battery ' '5080 mAh Battery ' '5065 mAh Battery '\n", " '10500 mAh Battery ' '5200 mAh Battery' '5800 mAh Battery '\n", " '5300 mAh Battery ' '5450 mAh Battery ' '5600 mAh Battery '\n", " '3000 mAh Battery ' '2800 mAh Battery ' '4620 mAh Battery '\n", " '4385 mAh Battery ' '4410 mAh Battery ' '4355 mAh Battery '\n", " '4492 mAh Battery ' '4575 mAh Battery ' '5003 mAh Battery '\n", " '4821 mAh Battery ' '4000 mAh Battery' '7000 mAh Battery '\n", " '3900 mAh Battery' '3760 mAh Battery ' '2600 mAh Battery'\n", " '4900 mAh Battery ' '4020 mAh Battery ' '4450 mAh Battery '\n", " '4610 mAh Battery ' '3800 mAh Battery ' '3440 mAh Battery '\n", " '2510 mAh Battery ' '6100 mAh Battery ' '2100 mAh Battery'\n", " '4030 mAh Battery ' '5020 mAh Battery ' '4980 mAh Battery '\n", " '4250 mAh Battery ' '6.75 inches, 720 x 1600 px Display '\n", " '4460 mAh Battery ' '4815 mAh Battery ' '4750 mAh Battery '\n", " '5330 mAh Battery ' '5010 mAh Battery ' '4500 mAh Battery']\n", "['6.6 inches' '6.4 inches' '6.5 inches' '6.1 inches' '6.7 inches'\n", " '6.21 inches' '6.67 inches' '6.58 inches' '6.71 inches' '6.78 inches'\n", " '6.8 inches' '6.56 inches' '6.3 inches' '7.45 inches' '6.2 inches'\n", " '8.2 inches' '7.6 inches' '8 inches' '7.63 inches' '6.22 inches'\n", " '4.5 inches' '6.51 inches' '6.53 inches' '6.35 inches' '6.55 inches'\n", " '6.64 inches' '5.2 inches' '5.5 inches' '6.72 inches' '6.44 inches'\n", " '6.82 inches' '6.68 inches' '7 inches' '6.74 inches' '8.03 inches'\n", " '8.02 inches' '7.8 inches' '6.52 inches' '6.59 inches' '6.43 inches'\n", " '4300 mAh Battery with 30W Fast Charging' '6.62 inches' '6.57 inches'\n", " '6.73 inches' '6.83 inches' '7.1 inches' '7.4 inches' '7.56 inches'\n", " '7.82 inches' '6.38 inches' '6.79 inches' '6.61 inches' '6.69 inches'\n", " '12.1 inches' '6.77 inches' '6.75 inches' '6.81 inches' '7.2 inches'\n", " '7.71 inches' '7.92 inches' '6.76 inches' '7.9 inches' '5.6 inches'\n", " '5.7 inches' '6.34 inches' '6.14 inches' '6.03 inches' '8.3 inches'\n", " '5.9 inches' '5.92 inches' '6 inches' '6.26 inches' '6.09 inches'\n", " '5.99 inches' '6.92 inches' '5 inches' '6.45 inches' '6.9 inches'\n", " '6.47 inches' '6.28 inches' '6.49 inches' '6.08 inches' '7.85 inches'\n", " '7.11 inches' '6.95 inches'\n", " '48 MP + 5 MP + 2 MP Triple Rear & 8 MP Front Camera' '6.94 inches'\n", " '7.09 inches' '10 inches']\n", "['50 MP + 2 MP Dual Rear & 13 MP Front Camera'\n", " '13 MP + 5 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '50 MP Quad Rear & 8 MP Front Camera'\n", " '48 MP Quad Rear & 13 MP Front Camera'\n", " '13 MP + 2 MP + 2 MP Triple Rear & 5 MP Front Camera'\n", " '50 MP + 2 MP Dual Rear & 5 MP Front Camera'\n", " '48 MP + 8 MP + 5 MP Triple Rear & 20 MP Front Camera'\n", " '48 MP Quad Rear & 8 MP Front Camera'\n", " '50 MP + 2 MP + 2 MP Triple Rear & 13 MP Front Camera'\n", " '50 MP + 5 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '50 MP + 8 MP + 2 MP Triple Rear & 13 MP Front Camera'\n", " '50 MP + 8 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '48 MP + 8 MP + 5 MP Triple Rear & 25 MP Front Camera'\n", " '50 MP + 13 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '64 MP Quad Rear & 20 MP Front Camera'\n", " '64 MP + 8 MP + 5 MP Triple Rear & 32 MP Front Camera'\n", " '13 MP + 2 MP Dual Rear & 16 MP Front Camera'\n", " '50 MP + 2 MP Dual Rear & 16 MP Front Camera'\n", " '50 MP + 5 MP + 2 MP Triple Rear & 13 MP Front Camera'\n", " '64 MP + 8 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '12 MP + 12 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 8 MP + 5 MP Triple Rear & 13 MP Front Camera'\n", " '48 MP Quad Rear & 32 MP Front Camera'\n", " '64 MP Quad Rear & 32 MP Front Camera'\n", " '50 MP + 8 MP + 2 MP Triple Rear & 50 MP Front Camera'\n", " '64 MP + 12 MP + 5 MP Triple Rear & 10 MP Front Camera'\n", " '24 MP + 10 MP + 5 MP Triple Rear & 24 MP Front Camera'\n", " '50 MP + 12 MP + 5 MP Triple Rear & 32 MP Front Camera'\n", " 'Foldable Display, Dual Display'\n", " '108 MP + 8 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 8 MP Dual Rear & 13 MP Front Camera'\n", " '50 MP + 12 MP + 8 MP Triple Rear & 10 MP Front Camera'\n", " '108 MP Quad Rear & 32 MP Front Camera'\n", " '50 MP + 12 MP + 10 MP Triple Rear & 12 MP Front Camera'\n", " '12 MP Quad Rear & 10 MP Front Camera'\n", " '64 MP + 12 MP + 12 MP Triple Rear & 10 MP Front Camera'\n", " '48 MP + 12 MP + 5 MP Triple Rear & 16 MP Front Camera'\n", " '25 MP + 8 MP Dual Rear & 13 MP Front Camera'\n", " '50 MP + 12 MP + 12 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 12 MP + 10 MP Triple Rear & 10 MP Front Camera'\n", " '48 MP + 8 MP + 5 MP Triple Rear & 32 MP Front Camera'\n", " '108 MP Quad Rear & 12 MP + 8 MP Dual Front Camera'\n", " '12 MP + 12 MP Dual Rear & 8 MP Front Camera'\n", " '200 MP Quad Rear & 12 MP Front Camera'\n", " '108 MP Quad Rear & 40 MP Front Camera'\n", " '13 MP + 0.08 MP Dual Rear & 5 MP Front Camera'\n", " '13 MP + 2 MP Dual Rear & 8 MP Front Camera'\n", " '5 MP Rear & 2 MP Front Camera' '8 MP Rear & 5 MP Front Camera'\n", " '13 MP Rear & 5 MP Front Camera'\n", " '50 MP + 0.08 MP Dual Rear & 8 MP Front Camera'\n", " '13 MP + 2 MP Dual Rear & 5 MP Front Camera'\n", " '16 MP + 8 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '13 MP + 2 MP Dual Rear & 13 MP Front Camera'\n", " '50 MP + 2 MP Dual Rear & 8 MP Front Camera'\n", " '13 MP + 8 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '13 MP + 2 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '50 MP + 2 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '13 MP Rear & 16 MP Front Camera'\n", " '16 MP + 8 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '64 MP + 2 MP Dual Rear & 16 MP Front Camera'\n", " '50 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 8 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '64 MP + 2 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 8 MP Dual Rear & 50 MP Front Camera'\n", " '108 MP + 8 MP + 2 MP Triple Rear & 50 MP + 8 MP Dual Front Camera'\n", " '64 MP + 8 MP + 2 MP Triple Rear & 44 MP Front Camera'\n", " '50 MP + 13 MP + 2 MP Triple Rear & 50 MP Front Camera'\n", " '64 MP + 8 MP + 2 MP Triple Rear & 44 MP + 8 MP Dual Front Camera'\n", " '64 MP + 8 MP + 2 MP Triple Rear & 50 MP Front Camera'\n", " '50 MP + 8 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 50 MP Dual Rear & 50 MP Front Camera'\n", " '64 MP + 8 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '64 MP + 2 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 50 MP + 50 MP Triple Rear & 50 MP Front Camera'\n", " '108 MP + 64 MP + 50 MP Triple Rear & 50 MP Front Camera'\n", " '50 MP + 13 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '108 MP + 8 MP + 2 MP Triple Rear & 44 MP + 8 MP Dual Front Camera'\n", " '50 MP + 12 MP + 8 MP Triple Rear & 50 MP Front Camera'\n", " '64 MP + 50 MP + 50 MP Triple Rear & 50 MP Front Camera'\n", " '200 MP + 8 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 13 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 13 MP + 13 MP Triple Rear & 32 MP Front Camera'\n", " '200 MP + 64 MP + 50 MP Triple Rear & 50 MP Front Camera'\n", " '50 MP + 12 MP + 12 MP Triple Rear & 32 MP Front Camera'\n", " '64 MP + 50 MP + 50 MP Triple Rear & 32 MP Front Camera'\n", " '108 MP + 8 MP + 2 MP Triple Rear & 50 MP Front Camera'\n", " '50 MP Quad Rear & 50 MP Front Camera'\n", " '50 MP Quad Rear & 32 MP Front Camera'\n", " '50 MP + 50 MP + 50 MP Triple Rear & 32 MP Front Camera'\n", " '108 MP + 32 MP + 12 MP Triple Rear & 32 MP Front Camera'\n", " '50.3 MP + 50 MP + 50 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP Quad Rear & 16 MP Front Camera'\n", " '50 MP + 50 MP + 12 MP Triple Rear & 32 MP Front Camera'\n", " '200 MP + 50 MP + 50 MP Triple Rear & 50 MP Front Camera'\n", " '200 MP + 50 MP + 50 MP Triple Rear & 32 MP Front Camera'\n", " '200 MP Quad Rear & 60 MP Front Camera'\n", " '50.3 MP Quad Rear & 32 MP Front Camera'\n", " '12 MP Quad Rear & 13 MP Front Camera'\n", " '50 MP + Depth Sensor Dual Rear & 8 MP Front Camera'\n", " '50 MP + 2 MP + 0.3 MP Triple Rear & 8 MP Front Camera'\n", " '50 MP + 0.08 MP Dual Rear & 5 MP Front Camera'\n", " '50 MP + 0.3 MP Dual Rear & 5 MP Front Camera'\n", " '50 MP + 2 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '64 MP + 2 MP Dual Rear & 8 MP Front Camera'\n", " '48 MP + 2 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '13 MP Quad Rear & 8 MP Front Camera'\n", " '108 MP + 2 MP Dual Rear & 8 MP Front Camera'\n", " '50 MP Rear & 8 MP Front Camera'\n", " '48 MP + 8 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '64 MP Quad Rear & 16 MP Front Camera'\n", " '108 MP + 2 MP Dual Rear Camera'\n", " '13 MP + Depth Sensor Dual Rear & 5 MP Front Camera'\n", " '13 MP + 0.3 MP Dual Rear & 5 MP Front Camera'\n", " '48 MP + 2 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '13 MP + 8 MP Dual Rear & 5 MP Front Camera'\n", " '6.5 inches, 1080 x 2400 px, 90 Hz Display with Punch Hole'\n", " '108 MP + 2 MP Dual Rear & 16 MP Front Camera'\n", " '50 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '108 MP + 8 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 8 MP Dual Rear & 32 MP Front Camera'\n", " '108 MP Quad Rear & 16 MP Front Camera'\n", " '64 MP + 5 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '64 MP Quad Rear & 32 MP + 8 MP Dual Front Camera'\n", " '50 MP + 50 MP + 32 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 32 MP + 8 MP Triple Rear & 16 MP Front Camera'\n", " '64 MP + 50 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '64 MP + 13 MP + 13 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 50 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 50 MP + 3 MP Triple Rear & 32 MP Front Camera'\n", " '200 MP + 64 MP + 32 MP Triple Rear & 32 MP Front Camera'\n", " '200 MP + 64 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 50 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 2 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 48 MP + 32 MP Triple Rear & 32 MP Front Camera'\n", " '108 MP + 13 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '100 MP + 2 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '48 MP Quad Rear & 16 MP Front Camera'\n", " '16 MP Quad Rear & 16 MP Front Camera'\n", " '64 MP + 32 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 32 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '108 MP + 2 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 50 MP + 32 MP Triple Rear & 50 MP Front Camera'\n", " '108 MP + 5 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 32 MP + 32 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 2 MP + Ultra Wide Triple Rear & 32 MP Front Camera'\n", " '48 MP + 13 MP + 12 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 50 MP + 13 MP Triple Rear & 32 MP Front Camera'\n", " 'Dual Display'\n", " '48 MP + 48 MP + 13 MP Triple Rear & 32 MP Front Camera'\n", " '64 MP + 2 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '64 MP + 12 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 8 MP Dual Rear & 16 MP Front Camera'\n", " '48 MP + 13 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '108 MP + 13 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '64 MP + 8 MP Dual Rear & 32 MP Front Camera'\n", " '64 MP + 13 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 50 MP Dual Rear & 16 MP Front Camera'\n", " '50 MP + 13 MP + 13 MP Triple Rear & 16 MP Front Camera'\n", " '48 MP + 13 MP + 13 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 13 MP + 8 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 50 MP + 12 MP Triple Rear & 16 MP Front Camera'\n", " '64 MP + 50 MP + 50 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 50 MP + 14.6 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 50 MP + 13 MP Triple Rear & 16 MP Front Camera'\n", " '108 MP + 50 MP + 32 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 50 MP + 16 MP Triple Rear & 16 MP Front Camera'\n", " '200 MP + 50 MP + 50 MP Triple Rear & 60 MP Front Camera'\n", " '8 MP + 0.08 MP Dual Rear & 5 MP Front Camera'\n", " '50 MP Dual Rear & 5 MP Front Camera'\n", " '8 MP Dual Rear & 5 MP Front Camera'\n", " '50 MP Dual Rear & 8 MP Front Camera'\n", " '13 MP Rear & 8 MP Front Camera'\n", " '50 MP Dual Rear & 13 MP Front Camera'\n", " '64 MP + 8 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '48 MP + 8 MP + 2 MP Triple Rear & 13 MP Front Camera'\n", " '64 MP Quad Rear & 13 MP Front Camera'\n", " '64 MP Quad Rear & 20 MP + 2 MP Dual Front Camera'\n", " '64 MP + 8 MP + 2 MP Triple Rear & 20 MP Front Camera'\n", " '64 MP + 8 MP + 5 MP Triple Rear & 16 MP Front Camera'\n", " '8 MP Rear & 8 MP Front Camera'\n", " '50 MP + 8 MP + 5 MP Triple Rear & 32 MP Front Camera'\n", " '48 MP + 2 MP + Depth Sensor Triple Rear & 8 MP Front Camera'\n", " '50 MP + 2 MP + 2 MP Triple Rear & 5 MP Front Camera'\n", " '108 MP + 2 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '108 MP + 5 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '100 MP + 5 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 13 MP Dual Rear & 16 MP Front Camera'\n", " '108 MP + 5 MP + 2 MP Triple Rear & 50 MP Front Camera'\n", " '50 MP + 12 MP Dual Rear & 50 MP Front Camera'\n", " '50 MP + 12 MP Dual Rear & 16 MP Front Camera'\n", " '64 MP + 5 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '200 MP + 12 MP + 2 MP Triple Rear & 50 MP Front Camera'\n", " '54 MP + 50 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '160 MP + 8 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 32 MP + 12 MP Triple Rear & 50 MP + 2 MP Dual Front Camera'\n", " '54 MP + 8 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '108 MP + 5 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '54 MP + 50 MP + 8 MP Triple Rear & 50 MP Front Camera'\n", " '160 MP + 50 MP + 2 MP Triple Rear & 50 MP + 2 MP Dual Front Camera'\n", " '108 MP + 32 MP + 12 MP Triple Rear & 50 MP + 2 MP Dual Front Camera'\n", " '40 MP + 12 MP + 8 MP Triple Rear & 32 MP + 8 MP Dual Front Camera'\n", " '50 MP + 16 MP + 8 MP Triple Rear & 32 MP + 8 MP Dual Front Camera'\n", " '200 MP + 50 MP + 8 MP Triple Rear & 50 MP Front Camera'\n", " '200 MP + 32 MP + 12 MP Triple Rear & 50 MP + 2 MP Dual Front Camera'\n", " '180 MP + 50 MP + 50 MP Triple Rear & 50 MP Dual Front Camera'\n", " '50 MP Quad Rear & 12 MP + TOF 3D Dual Front Camera'\n", " '54 MP Quad Rear & 12 MP Front Camera'\n", " '50 MP Quad Rear & 12 MP Dual Front Camera'\n", " '50 MP Penta Rear & 12 MP + Depth Sensor Dual Front Camera'\n", " '50 MP Quad Rear & 13 MP Dual Front Camera'\n", " '50 MP + 50 MP Dual Rear & 32 MP Front Camera'\n", " '64 MP + 50 MP Dual Rear & 32 MP Front Camera'\n", " '64 MP + 50 MP + 32 MP Triple Rear & 32 MP Front Camera'\n", " '12.2 MP Rear & 8 MP Front Camera'\n", " '16 MP + 12.2 MP Dual Rear & 8 MP + TOF 3D Dual Front Camera'\n", " '16 MP + 12.2 MP Dual Rear & 8 MP Front Camera'\n", " '64 MP + 13 MP Dual Rear & 13 MP Front Camera'\n", " '12.2 MP + 12 MP Dual Rear & 8 MP Front Camera'\n", " '50 MP + 12 MP Dual Rear & 10.8 MP Front Camera'\n", " '108 MP + 13 MP Dual Rear & 13 MP Front Camera'\n", " '50 MP + 8 MP Dual Rear & 12 MP Front Camera'\n", " '50 MP + 48 MP + 12 MP Triple Rear & 10.8 MP Front Camera'\n", " '50 MP + 12 MP Dual Rear & 10.5 MP Front Camera'\n", " '16 MP + 16 MP + 12 MP Triple Rear & 16 MP Front Camera'\n", " '64 MP + 48 MP + 12 MP Triple Rear & 10.8 MP Front Camera'\n", " '50 MP + 48 MP + 48 MP Triple Rear & 10.5 MP Front Camera'\n", " '50 MP + 48 MP + 12 MP Triple Rear & 12 MP Front Camera'\n", " '8 MP + 2 MP + 0.3 MP Triple Rear & 8 MP Front Camera'\n", " '13 MP Dual Rear & 8 MP Front Camera'\n", " '50 MP + 12 MP + 5 MP Triple Rear & 12 MP Front Camera'\n", " '64 MP + 13 MP + 5 MP Triple Rear & 24 MP Front Camera'\n", " '50 MP + 12 MP Dual Rear & 12 MP Front Camera'\n", " '50 MP + 13 MP Dual Rear & 32 MP Front Camera'\n", " '50 MP + 13 MP + 5 MP Triple Rear & 12 MP Front Camera'\n", " '50 MP + 13 MP + 5 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 32 MP + 13 MP Triple Rear & 32 MP Front Camera'\n", " '108 MP + 13 MP + 5 MP Triple Rear & 12 MP Front Camera'\n", " '48 MP + 8 MP + 5 MP Triple Rear & 16 MP Front Camera'\n", " '13 MP + 5 MP Dual Rear & 8 MP Front Camera'\n", " '16 MP + 2 MP Dual Rear & 8 MP Front Camera'\n", " '64 MP + 13 MP Dual Rear & 16 MP Front Camera'\n", " '64 MP + 16 MP Dual Rear & 44 MP Front Camera'\n", " '64 MP + 16 MP Dual Rear & 20 MP Front Camera'\n", " '16 MP Rear & 13 MP Front Camera'\n", " '13 MP Dual Rear & 5 MP Front Camera'\n", " '16 MP + 5 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '48 MP + 2 MP Dual Rear & 5 MP Front Camera'\n", " '64 MP Quad Rear & 50 MP Front Camera'\n", " '64 MP + 13 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 5 MP + 2 MP Triple Rear & 50 MP Front Camera'\n", " '48 MP + 8 MP + 5 MP Triple Rear & 13 MP Front Camera'\n", " '64 MP + 12 MP + 5 MP Triple Rear & 32 MP Front Camera'\n", " '200 MP + 12 MP + 12 MP Triple Rear & 60 MP Front Camera'\n", " '108 MP + 12 MP + 12 MP Triple Rear & 12 MP Front Camera'\n", " '13 MP + 8 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '108 MP + 2 MP Dual Rear & 32 MP Front Camera'\n", " '64 MP + 8 MP Dual Rear & 50 MP Front Camera'\n", " '50 MP + 50 MP + 12 MP Triple Rear & 50 MP Front Camera'\n", " '100 MP + 2 MP Dual Rear & 16 MP Front Camera'\n", " '50 MP + 50 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '64 MP + 50 MP + 3 MP Triple Rear & 32 MP Front Camera'\n", " '16 MP Rear & 5 MP Front Camera'\n", " '16 MP + 5 MP Dual Rear & 12 MP Front Camera'\n", " '50 MP + Macro Dual Rear & 8 MP Front Camera'\n", " '48 MP + 2 MP Dual Rear & 8 MP Front Camera'\n", " '50 MP Rear & 5 MP Front Camera'\n", " '16 MP + 2 MP + 2 MP Triple Rear & 5 MP Front Camera'\n", " '16 MP + 2 MP Dual Rear & 5 MP Front Camera'\n", " '16 MP + 2 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '64 MP + 13 MP Dual Rear & 32 MP Front Camera'\n", " '50 MP + 5 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '108 MP + 13 MP Dual Rear & 32 MP Front Camera'\n", " '108 MP + 16 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '48 MP + 8 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 13 MP + 10 MP Triple Rear & 50 MP Front Camera'\n", " '50 MP + 50 MP + 2 MP Triple Rear & 60 MP Front Camera'\n", " '50 MP + 50 MP + 12 MP Triple Rear & 60 MP Front Camera'\n", " '108 MP + 13 MP + 5 MP Triple Rear & 32 MP Front Camera'\n", " '108 MP + 16 MP + 8 MP Triple Rear & 25 MP Front Camera'\n", " '50 MP + 13 MP + 2 MP Triple Rear & 32 MP + 16 MP Dual Front Camera'\n", " '200 MP + 50 MP + 12 MP Triple Rear & 60 MP Front Camera'\n", " '50 MP + 50 MP + 2 MP Triple Rear & 60 MP + 60 MP Triple Front Camera'\n", " '64 MP + 16 MP + 2 MP Triple Rear & 16 MP + 8 MP Dual Front Camera'\n", " '50 MP + 50 MP + 50 MP Triple Rear & 60 MP Front Camera'\n", " '100 MP + 50 MP + 50 MP Triple Rear & 50 MP Front Camera'\n", " '200 MP + 50 MP + 2 MP Triple Rear & 60 MP Front Camera'\n", " '108 MP + 2 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '13 MP + 2 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '48 MP + 16 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '48 MP + 2 MP Dual Rear & 16 MP Front Camera'\n", " '50 MP + 16 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '48 MP + 16 MP + 12 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 48 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 48 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 48 MP + 32 MP Triple Rear & 16 MP Front Camera'\n", " '64 MP + 50 MP + 48 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 13 MP + 5 MP Triple Rear & 16 MP Front Camera'\n", " '108 MP + 50 MP + 48 MP Triple Rear & 32 MP Front Camera'\n", " '200 MP + 50 MP + 48 MP Triple Rear & 32 MP Front Camera'\n", " '48 MP + 16 MP + 8 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 2 MP + 0.08 MP Triple Rear & 8 MP Front Camera'\n", " '8 MP + Depth Sensor Dual Rear & 5 MP Front Camera'\n", " '50 MP + Depth Sensor Dual Rear & 5 MP Front Camera'\n", " '13 MP Rear Camera' '50 MP Quad Rear & 13 MP Front Camera'\n", " '48 MP + 8 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 8 MP Dual Rear & 20 MP Front Camera'\n", " '200 MP + 8 MP + 2 MP Triple Rear & 16 MP Front Camera'\n", " '64 MP + 8 MP + 5 MP Triple Rear & 20 MP Front Camera'\n", " 'Foldable Display' '50 MP + 8 MP Dual Rear & 60 MP Front Camera'\n", " 'Memory Card (Hybrid)' '50 MP + 2 MP Triple Rear & 5 MP Front Camera'\n", " '100 MP + 8 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '48 MP + 5 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '50 MP + 8 MP + 2 MP Triple Rear & 60 MP Front Camera'\n", " '108 MP + 8 MP Dual Rear & 60 MP + 8 MP Dual Front Camera'\n", " '50 MP + 8 MP Dual Rear & 60 MP + 8 MP Dual Front Camera'\n", " '50 MP + 8 MP + 2 MP Triple Rear & 60 MP + 8 MP Dual Front Camera'\n", " '50 MP + 13 MP Dual Rear & 13 MP Front Camera'\n", " '48 MP + 13 MP + 12 MP Triple Rear & 13 MP Front Camera'\n", " '50 MP + 13 MP + 12 MP Triple Rear & 13 MP Front Camera'\n", " '50 MP + 50 MP + 40 MP Triple Rear & 13 MP Front Camera'\n", " '50 MP + 48 MP + 12.5 MP Triple Rear & 13 MP Front Camera'\n", " '48 MP + 48 MP + 13 MP Triple Rear & 13 MP Front Camera'\n", " '50 MP + 50 MP + 50 MP Triple Rear & 16 MP Dual Front Camera'\n", " '40 MP Quad Rear & 32 MP Dual Front Camera'\n", " '50 MP + 48 MP + 12 MP Triple Rear & 13 MP Dual Front Camera'\n", " '64 MP + 50 MP + 13 MP Triple Rear & 13 MP Front Camera'\n", " '50 MP + 32 MP + 12 MP Triple Rear & 13 MP Front Camera'\n", " '48 MP + 48 MP + 40 MP Triple Rear & 13 MP Front Camera'\n", " '50 MP + 20 MP + 12 MP Triple Rear & 13 MP Dual Front Camera'\n", " '50 MP Penta Rear & 13 MP Dual Front Camera'\n", " '50 MP Quad Rear & 32 MP Dual Front Camera'\n", " '108 MP + 13 MP + 12 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + Depth Sensor Triple Rear & 5 MP Front Camera'\n", " '100 MP + 2 MP Dual Rear & 8 MP Front Camera'\n", " '108 MP + 0.08 MP Dual Rear & 8 MP Front Camera'\n", " '50 MP Dual Rear & 16 MP Front Camera'\n", " '50 MP + 0.08 MP Dual Rear & 32 MP Front Camera'\n", " '13 MP Triple Rear & 5 MP Front Camera'\n", " '48 MP + 0.08 MP Dual Rear & 16 MP Front Camera'\n", " '50 MP Triple Rear & 8 MP Front Camera'\n", " '13 MP + 2 MP Triple Rear & 8 MP Front Camera'\n", " '50 MP + 5 MP Dual Rear & 8 MP Front Camera'\n", " '50 MP + 5 MP + 2 MP Triple Rear & 32 MP Front Camera']\n", "['Memory Card Supported, upto 1 TB' 'Memory Card Supported, upto 512 GB'\n", " 'Memory Card Supported' 'Memory Card (Hybrid), upto 1 TB'\n", " 'Memory Card Not Supported' 'Memory Card (Hybrid)'\n", " '12 MP + 12 MP Dual Rear & 10 MP Front Camera' 'Android v13'\n", " 'Android v10' 'Android v12' 'Memory Card (Hybrid), upto 512 GB'\n", " '50 MP + 12 MP + 5 MP Triple Rear & 10 MP + 4 MP Dual Front Camera'\n", " '200 MP Quad Rear & 12 MP + 12 MP Dual Front Camera'\n", " '50 MP + 12 MP + 10 MP Triple Rear & 10 MP + 4 MP Dual Front Camera'\n", " '50 MP + 12 MP + 10 MP Triple Rear & 12 MP + 12 MP Dual Front Camera'\n", " 'Memory Card Supported, upto 256 GB' 'Memory Card Supported, upto 128 GB'\n", " 'Android v11' 'Android v15' 'Android v14'\n", " '50 MP + 12 MP Dual Rear & 32 MP Front Camera'\n", " '50 MP + 50 MP + 50 MP Triple Rear & 32 MP + 32 MP Dual Front Camera'\n", " '200 MP + 12 MP + 12 MP Triple Rear & 32 MP + 32 MP Dual Front Camera'\n", " '50 MP Quad Rear & 16 MP Front Camera'\n", " '64 MP + 50 MP + 50 MP Triple Rear & 32 MP + 32 MP Dual Front Camera'\n", " '50 MP Quad Rear & 16 MP + 16 MP Dual Front Camera'\n", " '48 MP + 48 MP + 10 MP Triple Rear & 16 MP Front Camera'\n", " '200 MP + 12 MP Dual Rear & 32 MP Front Camera'\n", " '50 MP + 12 MP + 12 MP Triple Rear & 16 MP + 16 MP Dual Front Camera'\n", " '64 MP + 12 MP + 12 MP Triple Rear & 32 MP Front Camera'\n", " 'Memory Card Supported, upto 2 TB' 'Memory Card (Hybrid), upto 2 TB'\n", " '48 MP Quad Rear & 16 MP Front Camera'\n", " '50 MP + 48 MP + 32 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 8 MP Dual Rear & 32 MP Front Camera'\n", " '50 MP + 48 MP + 32 MP Triple Rear & 32 MP + 32 MP Dual Front Camera'\n", " '108 MP + 50 MP Dual Rear & 32 MP Front Camera'\n", " '64 MP + 10 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '64 MP + 16 MP + 12 MP Triple Rear & 16 MP Front Camera'\n", " '108 MP + 50 MP + 32 MP Triple Rear & 32 MP + 32 MP Dual Front Camera'\n", " '64 MP + 48 MP + 48 MP Triple Rear & 32 MP + 20 MP Dual Front Camera'\n", " 'Memory Card (Hybrid), upto 256 GB'\n", " '50 MP + 12 MP Dual Rear & 8 MP Front Camera'\n", " '50 MP + 20 MP + 12 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 32 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 32 MP + 10 MP Triple Rear & 16 MP Front Camera'\n", " '50 MP + 50 MP + 20 MP Triple Rear & 16 MP Front Camera'\n", " '54 MP + 50 MP + 8 MP Triple Rear & 16 MP Front Camera'\n", " '108 MP + 8 MP + 5 MP Triple Rear & 16 MP Front Camera'\n", " 'Android v9.0 (Pie)' '48 MP + 12 MP Dual Rear & 10 MP Front Camera'\n", " '48 MP + 10.8 MP + 10.8 MP Triple Rear & 9.5 MP + 8 MP Dual Front Camera'\n", " '50 MP + 10.8 MP + 10.8 MP Triple Rear & 12 MP + 12 MP Dual Front Camera'\n", " 'Memory Card Supported, upto 32 GB'\n", " '64 MP + 13 MP + 8 MP Triple Rear & 32 MP Front Camera'\n", " '50 MP + 13 MP + 5 MP Triple Rear & 12 MP Front Camera'\n", " '64 MP + 13 MP + 0.3 MP Triple Rear & 10 MP Front Camera'\n", " '50 MP + 50 MP Dual Rear & 16 MP Front Camera'\n", " '64 MP + 13 MP Dual Rear & 32 MP Front Camera' 'Android v10.0'\n", " '64 MP + 13 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '13 MP + 12 MP Dual Rear & 32 MP Front Camera'\n", " '50 MP + 50 MP Dual Rear & 32 MP Front Camera'\n", " '50 MP + 13 MP Dual Rear & 32 MP Front Camera'\n", " '50 MP + 13 MP + 2 MP Triple Rear & 32 MP Front Camera'\n", " '16 MP Rear & 5 MP Front Camera' 'Android v12.1' 'No FM Radio'\n", " '50 MP + 50 MP + 13 MP Triple Rear & 32 MP + 16 MP Dual Front Camera'\n", " '50 MP + 50 MP + 32 MP Triple Rear & 32 MP + 32 MP Dual Front Camera'\n", " '50 MP Hexa Rear & 32 MP Front Camera' 'Android' 'HarmonyOS v4'\n", " 'EMUI v14' 'HarmonyOS v3.0' 'HarmonyOS' 'HarmonyOS v4.0' 'HarmonyOS v5.0'\n", " 'HarmonyOS v2.0'\n", " '48 MP + 20 MP + 13 MP Triple Rear & 10.7 MP Front Camera'\n", " 'HarmonyOS v4.2' 'HarmonyOS v5'\n", " '50 MP Quad Rear & 10.7 MP Front Camera'\n", " '50 MP + 13 MP Dual Rear & 12 MP Front Camera'\n", " '50 MP + 48 MP + 8 MP Triple Rear & 32 MP Front Camera']\n", "['13' '10' '12' '11' '15' '10.0' '9.0 (Pie)' '14' nan '7.1.1 (Nougat)'\n", " '8.0 (Oreo)' '8.1 (Oreo)' '5.1 (Lollipop)' '6.0 (Marshmallow)' '9 (Pie)'\n", " '3' '2' '4.0' '3.0 (Honeycomb)' '2.0' '3.0' '3.1' '5.0' '4.1']\n", "['9,999' '9,990' '11,999' '11,990' '11,599' '12,298' '14,999' '14,990'\n", " '14,949' '19,999' '19,990' '19,799' '19,499' '18,999' '18,990' '20,999'\n", " '29,999' '28,990' '30,500' '30,999' '39,999' '39,990' '38,900' '37,999'\n", " '41,289' '41,790' '42,990' '42,999' '49,999' '49,990' '49,000' '47,990'\n", " '44,999' '44,990' '51,999' '54,990' '54,999' '59,999' '57,990' '64,999'\n", " '65,690' '69,990' '69,999' '70,000' '1,99,990' '1,84,999' '1,79,990'\n", " '1,77,999' '1,64,999' '1,59,999' '1,54,999' '1,39,999' '1,30,376'\n", " '1,29,999' '6,990' '6,999' '7,499' '7,999' '8,033' '8,199' '8,490'\n", " '9,499' '10,199' '10,499' '11,899' '11,580' '11,490' '11,390' '10,999'\n", " '12,350' '12,490' '15,050' '29,990' '29,799' '30,739' '31,398' '31,990'\n", " '38,990' '38,799' '37,990' '40,990' '49,940' '48,990' '46,990' '45,990'\n", " '45,210' '50,999' '56,990' '58,990' '62,990' '63,999' '64,990' '65,490'\n", " '71,990' '74,899' '76,990' '79,999' '80,990' '1,39,990' '1,18,990'\n", " '1,15,990' '1,13,990' '1,10,990' '1,09,990' '1,07,990' '1,06,990'\n", " '99,990' '94,999' '89,999' '89,990' '82,990' '6,950' '7,199' '7,450'\n", " '7,480' '7,790' '7,815' '7,850' '7,919' '7,920' '7,945' '7,950' '7,980'\n", " '9,893' '9,820' '10,299' '10,390' '11,910' '11,749' '11,499' '12,251'\n", " '14,844' '14,499' '13,999' '15,299' '15,329' '15,749' '15,990' '19,783'\n", " '20,499' '20,500' '20,599' '30,049' '29,996' '28,979' '28,339' '31,089'\n", " '38,999' '36,999' '36,990' '35,999' '34,999' '34,990' '33,999' '33,990'\n", " '15,499' '20,699' '20,990' '28,900' '30,200' '30,900' '35,990' '45,999'\n", " '47,999' '49,499' '50,990' '78,990' '79,990' '84,990' '84,999' '94,990'\n", " '1,34,999' '1,29,990' '1,19,900' '1,14,990' '10,990' '12,899' '12,990'\n", " '13,499' '13,990' '15,999' '17,990' '17,999' '21,838' '22,486' '22,990'\n", " '22,999' '28,999' '26,990' '25,999' '25,990' '30,990' '32,990' '43,990'\n", " '52,652' '52,999' '57,999' '72,990' '76,429' '7,299' '7,580' '7,890'\n", " '7,972' '7,990' '8,499' '8,689' '8,990' '8,999' '9,799' '9,690' '9,249'\n", " '10,330' '10,880' '11,539' '12,194' '12,999' '13,267' '13,290' '13,490'\n", " '14,899' '14,950' '15,590' '16,999' '17,945' '19,490' '21,990' '21,999'\n", " '24,499' '24,990' '25,890' '26,499' '27,990' '27,999' '27,199' '31,999'\n", " '55,990' '56,999' '66,499' '67,990' '77,990' '1,02,999' '1,87,990'\n", " '1,24,999' '1,04,999' '1,03,999' '23,999' '40,299' '40,999' '32,999'\n", " '43,999' '46,999' '59,990' '62,999' '74,990' '1,01,999' '1,08,999'\n", " '1,25,990' '1,46,990' '1,59,990' '7,190' '7,309' '7,394' '63,990'\n", " '70,990' '71,999' '72,999' '74,999' '1,09,900' '82,999' '81,990' '7,124'\n", " '7,290' '9,099' '7,599' '9,490' '7,899' '8,899' '8,690' '11,110' '11,450'\n", " '11,000' '10,631' '10,900' '10,490' '12,332' '13,429' '13,599' '14,199'\n", " '15,982' '16,990' '17,900' '17,499' '24,999' '22,863' '27,899' '26,690'\n", " '25,171' '21,499' '21,390' '26,899' '22,492' '36,880' '33,779' '32,883'\n", " '33,499' '35,499' '41,740' '1,24,990' '89,748' '99,999' '81,999'\n", " '1,05,999' '1,03,000' '8,980' '8,489' '8,660' '12,749' '13,950' '16,499'\n", " '16,299' '17,995' '15,190' '23,499' '25,299' '21,490' '20,198' '30,799'\n", " '36,199' '31,899' '45,215' '68,899' '63,490' '8,349' '7,820' '8,890'\n", " '9,478' '9,764' '9,489' '8,744' '9,800' '11,049' '10,190' '10,466'\n", " '10,750' '10,899' '12,877' '13,374' '12,499' '12,900' '13,489' '15,323'\n", " '18,708' '16,485' '18,398' '18,577' '16,400' '16,949' '17,949' '16,998'\n", " '17,789' '16,500' '21,828' '27,875' '21,477' '23,880' '23,900' '20,615'\n", " '23,649' '29,004' '22,799' '26,999' '24,150' '33,900' '52,990' '1,04,990'\n", " '7,998' '7,090' '14,989' '18,928' '23,990' '41,990' '88,990' '1,49,999'\n", " '20,000' '16,899' '18,879' '16,134' '24,454' '20,065' '22,592' '26,674'\n", " '22,499' '35,609' '39,888' '42,437' '43,889' '40,108' '47,998' '43,299'\n", " '58,699' '55,999' '63,359' '7,699' '9,190' '7,900' '7,689' '9,998'\n", " '11,159' '11,350' '10,269' '11,489' '11,425' '10,949' '12,120' '12,239'\n", " '12,428' '15,898' '18,377' '20,075' '17,975' '16,890' '18,390' '18,499'\n", " '22,297' '28,517' '24,329' '20,048' '26,479' '24,890' '24,449' '36,898'\n", " '44,949' '69,899' '53,990' '83,999' '93,990' '2,14,990' '1,34,990'\n", " '1,21,999' '1,91,999' '92,990' '25,499' '7,319' '10,749' '10,489' '8,799'\n", " '8,346' '7,949' '1,19,990']\n", "['Samsung' 'Vivo' 'Realme' 'OPPO' 'Oppo' 'iQOO' 'IQOO' 'Poco' 'POCO'\n", " 'Honor' 'Nothing' 'Google' 'itel' 'Itel' 'Asus' 'LG' 'Lenovo' 'Gionee'\n", " 'Motorola' 'OnePlus' 'Xiaomi' 'Tecno' 'Huawei' 'Lava' 'Coolpad' 'TCL']\n", "[' 128 GB inbuilt' ' 32 GB inbuilt' ' 64 GB inbuilt' ' 256 GB inbuilt'\n", " ' 1 TB inbuilt' ' 512 GB inbuilt' ' 16 GB inbuilt' ' Octa Core'\n", " ' 258 GB inbuilt' ' 8 GB inbuilt' nan]\n", "[' 25W Fast Charging' ' 15W Fast Charging' nan ' 18W Fast Charging'\n", " ' 30W Fast Charging' ' Fast Charging' ' 45W Fast Charging'\n", " ' 33W Fast Charging' ' 67W Fast Charging' ' 80W Fast Charging'\n", " ' 10W Fast Charging' ' 44W Fast Charging' ' 66W Fast Charging'\n", " ' 100W Fast Charging' ' 120W Fast Charging' ' 150W Fast Charging'\n", " ' 55W Fast Charging' ' 200W Fast Charging' ' 65W Fast Charging'\n", " ' 60W Fast Charging' ' 20W Fast Charging' ' 50W Fast Charging'\n", " ' 57W Fast Charging' ' 240W Fast Charging' ' 125W Fast Charging'\n", " ' 68W Fast Charging' ' 250W Fast Charging' ' 27W Fast Charging'\n", " ' 35W Fast Charging' ' 22.5W Fast Charging' ' 40W Fast Charging'\n", " ' 90W Fast Charging' ' 08W Fast Charging' ' 68.2W Fast Charging'\n", " ' 135W Fast Charging' ' 70W Fast Charging' ' Water Drop Notch'\n", " ' 88W Fast Charging' ' 7.5W Fast Charging']\n", "[' 2408 x 1080 px Display with Water Drop Notch'\n", " ' 720 x 1560 px Display with Punch Hole'\n", " ' 1080 x 2408 px Display with Water Drop Notch' ' 720 x 1600 px'\n", " ' 720 x 1600 px Display with Water Drop Notch'\n", " ' 1080 x 2340 px Display with Water Drop Notch'\n", " ' 720 x 1560 px Display with Water Drop Notch' ' 1080 x 2408 px'\n", " ' 1080 x 2400 px Display with Water Drop Notch' ' 1080 x 2340 px'\n", " ' 1080 x 2400 px' ' 720 x 1520 px Display with Water Drop Notch'\n", " ' 1080 x 2400 px Display with Punch Hole' ' 1440 x 3200 px'\n", " ' 1080 x 2340 px Display with Punch Hole' ' 1080 x 2640 px'\n", " ' 1080 x 2412 px' ' 1440 x 3040 px Display with Punch Hole'\n", " ' 1080 x 2400 px Display' ' 1080 x 2460 px Display with Punch Hole'\n", " ' 1440 x 3040 px Display' ' 1440 x 2960 px Display' ' 1812 x 2176 px'\n", " ' 1440 x 3120 px' ' 1440 x 3080 px' ' 720 x 1612 px'\n", " ' 480 x 854 px Display' ' 720 x 1544 px Display with Water Drop Notch'\n", " ' 720 x 1612 px Display with Water Drop Notch' ' 1600 x 720 px'\n", " ' 1080 x 2388 px Display with Water Drop Notch' ' 720 x 1280 px Display'\n", " ' 1612 x 720 px' ' 1080 x 2376 px' ' 1800 x 3200 px'\n", " ' 1080 x 2400 px Display with Small Notch' ' 1080 x 2388 px'\n", " ' 1260 x 2800 px' ' 1260 x 2712 px' ' 1080 x 2256 px Display'\n", " ' 1080 x 2520 px' ' 2200 x 2480 px' ' 1916 x 2160 px' ' 1768 x 2208 px'\n", " ' 1600 x 720 px Display with Water Drop Notch' ' 720 x 1604 px'\n", " ' 1080 x 2460 px' ' 720 x 1600 px Display with Punch Hole' nan\n", " ' 1264 x 2780 px' ' 1240 x 2772 px'\n", " ' 1440 x 3200 px Display with Punch Hole' ' 2400 x 1080 px'\n", " ' 1864 x 3820 px' ' 1440 x 3216 px' ' 1080 x 2732 px' ' 1440 x 3168 px'\n", " ' 1200 x 2400 px' ' 1792 x 1920 px' ' 1800 x 3400 px'\n", " ' 1440 x 3200 px Display' ' 2268 x 2440 px'\n", " ' 1080 x 2388 px Display with Punch Hole' ' 1800 x 3440 px'\n", " ' 720 x 1650 px' ' 720 x 1650 px Display with Water Drop Notch'\n", " ' 720 x 1680 px Display with Water Drop Notch' ' 720 x 1680 px'\n", " ' 1220 x 2712 px' ' 1600 x 2560 px' ' 1080 x 2404 px' ' 1220 x 3200 px'\n", " ' 1200 x 2400 px Display with Water Drop Notch' ' 1220 x 2652 px'\n", " ' 1080 x 2412 px Display with Small Notch' ' 1200 x 2664 px'\n", " ' 1224 x 2700 px' ' 1200 x 2652 px'\n", " ' 1080 x 2400 px Display with Dual Punch Hole' ' 1264 x 2800 px'\n", " ' 1280 x 2800 px' ' 2016 x 2348 px' ' 1312 x 2848 px' ' 2156 x 2344 px'\n", " ' 1224 x 2688 px' ' 1344 x 2772 px' ' 1984 x 2272 px'\n", " ' 2200 x 2480 px Display' ' 1084 x 2412 px' ' 1084 x 2728 px'\n", " ' 1080 x 2220 px Display' ' 1080 x 2280 px Display' ' 1344 x 2992 px'\n", " ' 1940 x 3120 px' ' 1840 x 2208 px'\n", " ' 1600 x 720 px Display with Punch Hole' ' 720 x 1640 px'\n", " ' 1080 x 2448 px' ' 2340 x 1080 px'\n", " ' 1080 x 2460 px Display with Water Drop Notch' ' 1080 x 1920 px Display'\n", " ' 720 x 1440 px Display' ' 720 x 1600 px Display with Large Notch'\n", " ' 1080 x 2400 px Display with Large Notch' ' 540 x 960 px Display'\n", " ' 1440 x 3088 px' ' 1080 x 2408 px Display with Punch Hole'\n", " ' Full HD+ Display with Punch Hole'\n", " ' 1080 x 2246 px Display with Large Notch' ' 2460 x 1080 px'\n", " ' 1080 x 1920 px' ' 720 x 1612 px Display with Punch Hole'\n", " ' 1200 x 2780 px' ' 876 x 2142 px Display with Large Notch'\n", " ' 1440 x 2780 px' ' 1440 x 3412 px' ' 1440 x 3120 px Display'\n", " ' 576 x 1440 px Display' ' 720 x 1650 px Display with Punch Hole'\n", " ' 1080 x 2280 px Display with Water Drop Notch' ' 1080 x 2480 px'\n", " ' 2000 x 2296 px' ' 1596 x 2296 px Display' ' 1080 x 2160 px'\n", " ' 1224 x 2776 px' ' 1220 x 2700 px' ' 1260 x 2844 px' ' 1212 x 2616 px'\n", " ' 1256 x 2760 px' ' 1176 x 2400 px Display with Large Notch'\n", " ' 1860 x 3220 px' ' 1216 x 2688 px' ' 1260 x 2720 px'\n", " ' 1344 x 2772 px Display' ' 1200 x 2640 px' ' 1136 x 2690 px'\n", " ' 1188 x 2790 px' ' 1080 x 2388 px Display'\n", " ' 1080 x 2412 px Display with Punch Hole' ' 540 x 1092 px Display'\n", " ' 480 x 960 px Display' ' 720 x 1640 px Display with Water Drop Notch']\n", "[' Octa Core Processor' ' 1.8 GHz Processor' ' 2 GHz Processor'\n", " ' Octa Core' nan ' Quad Core' ' Nine-Cores' ' Nine Core' ' Nine Cores'\n", " ' Deca Core Processor' ' 1.3 GHz Processor' ' 1.6 GHz Processor'\n", " ' 2.3 GHz Processor' ' Deca Core' ' 128 GB inbuilt']\n", "['Exynos 1330' 'Octa Core' 'Helio G88' 'Helio P35' 'Dimensity 700'\n", " 'Exynos 9611' 'Exynos 850' 'Exynos 1280' 'Snapdragon 695' 'Exynos 850'\n", " 'Helio P65' 'Octa Core Processor' 'Snapdragon 680' 'Helio G80'\n", " 'Samsung Exynos 7884' 'Dimensity 6100 Plus' 'Dimensity 700 5G'\n", " 'Snapdragon 680' 'Snapdragon 888' 'Exynos 1380' 'Snapdragon 865'\n", " 'Exynos 980' 'Snapdragon 730' 'Snapdragon 675' 'Snapdragon 7 Gen1'\n", " 'Snapdragon 750G' 'Snapdragon 855+' 'Snapdragon 870' 'Snapdragon 710'\n", " 'Exynos 1480' 'Snapdragon 720G ' 'Snapdragon 778g' 'Exynos 2200'\n", " 'Snapdragon 7+ Gen2' 'Snapdragon 8 Gen 2' 'Exynos 9825'\n", " 'Snapdragon 7s Gen2' 'Exynos 2100' 'Dimensity 1300' 'Snapdragon 778G+'\n", " 'Snapdragon 778G' 'Exynos 2300' 'Snapdragon 8+ Gen1' 'Snapdragon 8 Gen3'\n", " 'Snapdragon 8+ Gen1' 'Snapdragon 8 Gen1' 'Exynos 990' 'Snapdragon 855'\n", " 'Exynos 8895' 'Exynos 2100' 'Exynos 9810' 'Snapdragon 8 Gen2'\n", " 'Helio G85' 'Helio P22' 'Helio MT6580' 'Snapdragon 439 ' 'Helio'\n", " 'Snapdragon 675' 'Snapdragon 450' 'Dimensity 6020' 'Helio P22'\n", " 'Helio G70' 'Snapdragon 680 ' 'Snapdragon 460' 'Snapdragon 430'\n", " 'Helio P70 ' 'Snapdragon MSM8937' 'Snapdragon 6 Gen1'\n", " 'Snapdragon 7 Gen2' 'Dimensity 7200' 'Snapdragon 4 Gen2' 'Snapdragon 685'\n", " 'Helio G99' 'Dimensity 1200' 'Dimensity 800U ' 'Snapdragon'\n", " 'Snapdragon 765G ' 'Dimensity 8200' 'Snapdragon 7 Gen3' 'Snapdragon 782G'\n", " 'Dimensity 9300' 'Dimensity 9200' 'Dimensity 1100' 'Dimensity 8200'\n", " 'Dimensity 9000 Plus' 'Dimensity 8300' 'Dimensity 9300 Plus'\n", " 'Dimensity 9200 Plus' 'Snapdragon 888+' 'Dimensity 9000'\n", " 'Dimensity 9400' 'Snapdragon 888 ' 'Snapdragon 8 Gen1' 'Unisoc SC9863A'\n", " 'Helio G35' 'Tiger T612' 'Unisoc T610' 'SC9863A' 'Unisoc SC9863A'\n", " 'Snapdragon 665' 'Unisoc T612' 'Tiger T616' 'Tiger T610' 'Helio G96'\n", " 'Helio G36' 'Snapdragon 662' 'Helio G35' 'Dimensity 6300' 'Helio G85 '\n", " 'Helio G95' 'Helio G95' 'Dimensity 810 5G' 'Dimensity 810 5G' 'No Wifi'\n", " 'Dimensity 7025' 'Dimensity 700 5G' 'Snapdragon 712' 'Dimensity 7050'\n", " 'Snapdragon 720G ' 'Snapdragon 7 Gen1' 'Snapdragon 7+ Gen3'\n", " 'Snapdragon 695' 'Dimensity 8100' 'Snapdragon 778G' 'Dimensity 1000+'\n", " 'Snapdragon 7s Gen3' 'Dimensity 6080' 'Snapdragon 888 '\n", " 'Snapdragon 8s Gen3' 'Snapdragon 8 Gen4' 'Snapdragon 8 Gen1 Plus'\n", " 'Dimensity 7020' 'Snapdragon 730G' 'Snapdragon 480' 'Snapdragon 662 '\n", " 'Dimensity 800U' 'Snapdragon 765G ' 'Dimensity 900'\n", " 'Dimensity 1200 Max' 'Dimensity 8100 Max' 'Dimensity 8100-Max'\n", " 'Dimensity 9200 Plus' 'Snapdragon 765G' 'Snapdragon 865 '\n", " 'Dimensity 9000' 'Snapdragon 4 Gen 1' 'Snapdragon 695 '\n", " 'Snapdragon 480+' 'Snapdragon 6 Gen 1' 'Snapdragon 778G Plus'\n", " 'Snapdragon 870' 'Helio G85' 'Helio A22' 'Helio G25' 'Helio G37'\n", " 'Helio G91' 'Snapdragon 720G' 'Snapdragon 665' 'Snapdragon 732G'\n", " 'Snapdragon 695 ' 'Dimensity 920' 'Snapdragon 7s Gen 2'\n", " 'Dimensity 8300 Ultra' 'Dimensity 8100' 'Snapdragon 480+'\n", " 'Dimensity 7030' 'Dimensity 1100'\n", " 'Snapdragon 7 Gen 1 Accelerated Edition' 'Dimensity 8000' 'Exynos 1080'\n", " 'Snapdragon 8 Gen 1' 'Dimensity 7200 Pro' 'Snapdragon 778G Plus'\n", " 'Qualcomm Snapdragon 670' 'Tensor G2' 'Google Tensor' 'Google Tensor G2'\n", " 'Tensor G3' 'Google Tensor 4' 'Google Tensor G2' 'Google Tensor G4'\n", " 'Google Tensor 2' 'Quad Core' 'Unisoc T606' 'Unisoc T603' ' Unisoc T606'\n", " 'Snapdragon 8 Gen1 Plus' 'Snapdragon 865+' 'Snapdragon 765G'\n", " 'Snapdragon 865' 'Helio P25' 'Qualcomm Snapdragon 450' 'Helio P60'\n", " 'Tiger T610' 'Tiger T310' 'Unisoc SC9836A' 'Snapdragon 439'\n", " 'Unisoc T606' 'Helio MT6737T' 'Snapdragon 450 ' 'Exynos 1280 ' 'Exynos'\n", " 'Snapdragon 750G' 'Exynos 1280' 'Dimensity 1080' 'Exynos 2400'\n", " 'Snapdragon 480 ' 'Helio P35 ' 'Snapdragon 4 Gen1' 'Dimensity 900'\n", " 'Tiger T616' 'Tiger T606' 'Snapdragon 636' 'Helio G37' 'Helio G99'\n", " 'Snapdragon SM4375' 'Dimensity 8020' 'Snapdragon 7+ Gen2'\n", " 'Snapdragon 778G ' 'Snapdragon 888+ ' 'Snapdragon 750G '\n", " 'Snapdragon 888+' ' Dimensity 7030' 'Snapdragon 6 Gen 1'\n", " 'Dimensity 1050' 'Snapdragon 8+ Gen2' 'Dimensity 930' 'Snapdragon (4 nm)'\n", " 'Snapdragon 460 ' 'Snapdragon 782G' 'Snapdragon 695 5G' 'Snapdragon 690'\n", " 'Dimensity 1300' 'Snapdragon 855+' 'Dimensity 1200 AI'\n", " 'Snapdragon 8 Gen4' 'Snapdragon 8 Gen2' 'Helio G25' 'Unisoc SC9832E'\n", " 'Snapdragon 4 Gen 1' 'Snapdragon 712' 'Dimensity 700 '\n", " 'Snapdragon 662 ' 'Helio G96' 'Snapdragon 732G' 'Snapdragon 732G '\n", " 'Snapdragon 678' 'Dimensity 8200 Ultra ' 'Dimensity 7200 Ultra'\n", " 'Dimensity 920 5G' 'Helio G99 Ultra' 'Dimensity (4 nm)' 'Dimensity 8050'\n", " 'Kirin 710A' 'Kirin 710A' 'Snapdragon (6 nm)' 'Snapdragon 778G 4G'\n", " '4 GB RAM' 'Sanpdragon 680' 'Kirin 710F' 'Kirin 830' 'Kirin 9000S'\n", " 'Kirin' 'Snapdragon 8+ Gen 1' 'Kirin 9010' 'Snapdragon 8+ Gen 1 '\n", " 'Kirin 990' 'Kirin 9000E' 'Kirin 9000' 'Kirin 990' ' Helio G36'\n", " 'Snapdragon 888' 'Tiger T616' 'Tiger T616 ' 'Helio A22' 'Helio A25']\n" ] } ], "source": [ "for col in df2.columns:\n", " print(df2[col].unique())\n", "\n", "#Преобразование категориальных данных в числа\n", "#Удаление подстроки 'GB RAM', чтобы остались только числа\n", "df2['Ram'] = df2['Ram'].replace(' GB RAM', '', regex=True)\n", "\n", "import re\n", "# Удаление строк, у кот. в Ram какое-то неверное значение (оставление только строк, где число)\n", "df2 = df2[df2['Ram'].apply(lambda x: bool(re.match(r'^\\d+(\\.\\d+)?$', str(x))))]\n", "\n", "#Исправление батареи. Удаление подстроки 'mAh Battery', чтобы остались только числа\n", "df2['Battery'] = df2['Battery'].replace(' mAh Battery', '', regex=True)\n", "\n", "#Исправление диагонали. Удаление подстроки 'inches'\n", "df2['Display'] = df2['Display'].replace(' inches', '', regex=True)\n", "\n", "#Исправление встроенной памяти на числа\n", "df2['Inbuilt_memory'] = df2['Inbuilt_memory'].replace(' GB inbuilt', '', regex=True)\n", "df2['Inbuilt_memory'] = df2['Inbuilt_memory'].replace('TB inbuilt', '024', regex=True)\n", "df2['Inbuilt_memory'] = df2['Inbuilt_memory'].replace(' ', '', regex=True)" ] }, { "cell_type": "code", "execution_count": 305, "metadata": {}, "outputs": [], "source": [ "# Проверка количества запятых в каждой строке\n", "df2['comma_count'] = df2['Price'].apply(lambda x: x.count(','))\n", "# Удаление строк, где больше одной запятой\n", "df2 = df2[df2['comma_count'] <= 1]\n", "# Удаление вспомогательного столбца\n", "df2 = df2.drop(columns=['comma_count'])\n", "df2['Price'] = df2['Price'].replace(',', '.', regex=True)\n", "\n", "\n", "df2['Price'] = pd.to_numeric(df2['Price'], errors='coerce')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "По boxplotам видно, что данные о телефонах смещены в сторону недорогих телефонов до 40 долларов с экранами до 7 дюймов и встроенной памятью до 256 Гб.\n", "\n", "\n", "По цене и диагонали экрана много данных, находящихся вне основной массе, но в данном случае это является полезным шумом. По мощности батареи выбросы можно считать вредным шумом" ] }, { "cell_type": "code", "execution_count": 306, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Выбросы в столбце 'Ram':\n", "1 2.0\n", "39 12.0\n", "49 12.0\n", "54 12.0\n", "65 12.0\n", " ... \n", "1312 12.0\n", "1344 2.0\n", "1346 2.0\n", "1348 2.0\n", "1351 2.0\n", "Name: Ram, Length: 267, dtype: float64\n", "\n", "Выбросы в столбце 'Battery':\n", "0 6000\n", "1 4000\n", "3 6000\n", "6 6000\n", "9 6000\n", " ... \n", "1344 3000\n", "1346 3000\n", "1349 3000\n", "1350 3000\n", "1364 4000\n", "Name: Battery, Length: 296, dtype: int64\n", "\n", "Выбросы в столбце 'Display':\n", "15 6.10\n", "21 6.21\n", "53 6.10\n", "64 6.10\n", "65 6.10\n", "72 7.45\n", "74 6.20\n", "75 6.20\n", "91 4.50\n", "122 5.20\n", "125 5.50\n", "197 8.03\n", "208 7.80\n", "391 7.10\n", "393 7.10\n", "538 12.10\n", "571 7.20\n", "597 7.71\n", "600 7.92\n", "606 7.80\n", "627 7.80\n", "628 5.60\n", "629 5.70\n", "631 6.10\n", "632 6.14\n", "635 6.10\n", "636 6.03\n", "637 6.10\n", "639 6.20\n", "640 6.20\n", "641 6.20\n", "643 6.10\n", "662 5.90\n", "663 5.90\n", "665 5.92\n", "669 6.00\n", "687 6.09\n", "688 5.20\n", "689 6.09\n", "690 5.99\n", "701 6.20\n", "715 5.70\n", "719 5.00\n", "779 6.10\n", "789 6.20\n", "797 6.20\n", "923 8.00\n", "938 6.20\n", "1142 5.00\n", "1158 6.08\n", "1226 7.85\n", "1227 7.85\n", "1228 7.90\n", "1229 7.11\n", "1316 7.09\n", "1344 6.00\n", "1346 6.00\n", "1349 6.00\n", "1350 6.10\n", "Name: Display, dtype: float64\n", "\n", "Выбросы в столбце 'Inbuilt_memory':\n", "178 512\n", "212 512\n", "299 512\n", "315 512\n", "325 1024\n", "329 512\n", "372 512\n", "448 512\n", "454 512\n", "525 512\n", "532 512\n", "548 512\n", "573 512\n", "598 512\n", "599 512\n", "604 512\n", "605 512\n", "623 512\n", "664 512\n", "670 512\n", "673 512\n", "674 512\n", "675 512\n", "677 512\n", "679 512\n", "699 512\n", "794 512\n", "855 512\n", "1012 512\n", "1031 512\n", "1034 512\n", "1038 512\n", "1041 512\n", "1051 512\n", "1115 512\n", "1123 512\n", "1218 512\n", "1226 512\n", "1227 512\n", "1276 512\n", "Name: Inbuilt_memory, dtype: int64\n", "\n", "Выбросы в столбце 'Price':\n", "196 79.999\n", "197 80.990\n", "206 99.990\n", "207 99.990\n", "208 99.990\n", " ... \n", "1280 79.990\n", "1281 99.990\n", "1288 82.990\n", "1290 92.990\n", "1291 79.990\n", "Name: Price, Length: 67, dtype: float64\n", "\n" ] }, { "data": { "image/png": "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jHF2dparq6skKTMzU3/++afS09NVp04d7du3L9s+n3vuOfn6+prb9erVkyR1797dalp1vXr1dO3aNZ72BxRxjAO3Z4txIDfXX5K5PogknT9/XsnJyQoLC8txHLgX0dHRyszM1PPPP68//vjDfPn7+6ty5crZbhV3c3PTCy+8YNXm5OSkbt26afny5VZPf1q4cKEaNmyo4ODgB8oRgGNh3Lg9W4wbd1K8ePE7PoUva/2rZcuWKTMz84776tmzp7y9vc3tTp06KSAgQN99990d35eb8crX11fPPvusFi9ebN5+mZGRoS+//FJRUVH5+hRD3B1FKdjUU089pYiICEVERKhbt25auXKlqlWrZn7AS9Lx48cVGBho9aEkyZzOevz4cbPN1dVV//73vxUfH6+LFy9q7ty52e5jlm58gb15YJCkRx99VJJu+xjWs2fP6vLlyzmuTVG1alVlZmbm6j7n3Mo6r5yOFxoaanXe0o2FBG8uJuVG1qC+ZMkStW7dWn/88Yfc3NyyxX322Wd6/PHH5e7urlKlSqlMmTJauXKlkpOTs8WWL1/eajurQBUUFJRj+/nz5+8pZwCFC+PA7dliHMjN9ZekFStWqH79+nJ3d1fJkiVVpkwZzZ49O8dx4F4cPXpUhmGocuXKKlOmjNXr0KFD5kK+WR5++GHzh5Kb9ezZU1euXNHSpUslSUeOHNHevXvN20kAFB6MG7dni3HjTlJTU7Nd85v99a9/VaNGjdS3b1/5+fmpc+fO+uqrr3IsUFWuXNlq22KxqFKlSre91llyO1717NlTJ06c0LZt2yRJ69evV1JSEuOGA6AoBbtycnJSs2bNdPr0aR09evS+9pG1psTVq1fvex8FkZubm5yc7u1/4axBvWPHjlq+fLmqV6+url27KjU11YxZsGCBevfurZCQEH366adavXq11q1bp6effjrHAeTme+9z027kYnFIAEUH48D9u59x4FY5Xf9t27bpmWeekbu7u2bNmqXvvvtO69atU9euXR/4MzwzM1MWi8UcW259ffzxx1bxN/8CfrNq1aqpdu3a5gK7CxYskKurK0+SBYoAxo37lxfjRpbffvtNycnJqlSp0m1jPDw8tHXrVq1fv95c1+mvf/2r/vKXv5iLyj+IexmvIiMj5efnZzVu+Pv7KyIi4oHzwIOhKAW7S09PlySzMFKhQgWdOnUq21TQw4cPm/1ZfvrpJ40ZM0YvvPCCatWqpb59++b4K25mZqZ+/fVXq7ZffvlFklSxYsUc8ypTpow8PT115MiRbH2HDx+Wk5OTORsop19X7lXWeeV0vCNHjlidd17IWgzx1KlT+uijj8z2JUuW6JFHHlF0dLR69OihyMhIRURE6OrVq3l6fADIwjhwg63HgSy3Xv9vvvlG7u7uWrNmjf72t7+pVatWt/3Sfrvzvl17SEiIDMNQcHCwOfPh5lf9+vVznXfPnj21ceNGnT59WosWLVKbNm2sHtwBoPBi3LjBXuOGdONhF5Lu+uQ6JycnNW/eXFOnTtXPP/+s999/Xxs3bsx2u/atxUHDMHTs2LHbXmvp3sYrZ2dnde3aVUuWLNH58+cVExOjLl263PaHdNgORSnY1fXr17V27Vq5urqa02tbt26tjIwMq0KJdOMJPhaLRa1atTLf27t3bwUGBmrGjBmaN2+ekpKSNHjw4ByPdfP+DMPQRx99pGLFiql58+Y5xjs7O6tFixZatmyZ1bTRpKQkLVq0SI0bN5aPj48kmfch3/qEi3tRp04dlS1bVnPmzFFaWprZvmrVKh06dEht2rS5733fTnh4uJ566ilNnz7dLDplfTDf/OvCrl27tGPHjjw/PgAwDvyPPcaBnK6/s7OzLBaL1a/YCQkJiomJyfZ+Ly+vHM/5dtejQ4cOcnZ21ujRo7P9im0Yhs6dO5fr3Lt06SKLxaJ//OMf+vXXX3l6ElBEMG78jz3GDUnauHGj3nvvPQUHB6tbt263jfvzzz+ztdWsWVOSrPKVpM8//9yqqLhkyRKdPn3a/HeXk3sZr6QbT+E7f/68XnrppRyfPAv7cLl7CJB3Vq1aZf5icebMGS1atEhHjx7VG2+8YX5At2vXTs2aNdNbb72lhIQEPfHEE1q7dq2WLVumQYMGKSQkRJI0duxY7d+/Xxs2bJC3t7cef/xxjRw5Um+//bY6deqk1q1bm8d1d3fX6tWr1atXL9WrV0+rVq3SypUr9eabb5qPqM7J2LFjtW7dOjVu3Fj9+/eXi4uLPv74Y6WlpWnixIlmXM2aNeXs7KwJEyYoOTlZbm5uevrpp1W2bNlcX5tixYppwoQJeuGFF9S0aVN16dJFSUlJmjFjhipWrHjbwfJBDRs2TM8995zmzZunl19+WW3btlV0dLTat2+vNm3aKD4+XnPmzFG1atWsbvMDgPvBOHB7thgHcnP927Rpo6lTp6ply5bq2rWrzpw5o5kzZ6pSpUr66aefrPZXu3ZtrV+/XlOnTlVgYKCCg4NVr1491a5dW9KNx5h37txZxYoVU7t27RQSEqKxY8dqxIgRSkhIUFRUlLy9vRUfH6+lS5eqX79+eu2113J1LmXKlFHLli319ddfq0SJEvn2ly8A9sW4cXu2HDfS09OVlJSkjRs3at26dapQoYKWL19utcD6rcaMGaOtW7eqTZs2qlChgs6cOaNZs2apXLlyaty4sVVsyZIl1bhxY73wwgtKSkrS9OnTValSJb344ou33f+9jFeSVKtWLVWvXl1ff/21qlatqieffPL+Lwzyju0f+IeiKKdHurq7uxs1a9Y0Zs+ebWRmZlrFX7x40Rg8eLARGBhoFCtWzKhcubIxadIkM27v3r2Gi4uL1WNaDcMw0tPTjbp16xqBgYHG+fPnDcO48ehQLy8vIy4uzmjRooXh6elp+Pn5Ge+++66RkZFh9X7d8khXwzCMffv2GZGRkUbx4sUNT09Po1mzZsb27duzneO//vUv45FHHjGcnZ3v+njXOz1i9csvvzRq1apluLm5GSVLljS6detm/Pbbb1YxWeeUW3c6XkZGhhESEmKEhIQY6enpRmZmpjFu3DijQoUKhpubm1GrVi1jxYoV2R7BGh8fb0gyJk2aZLW/rMe6fv3117nOAUDhxziQ8/Ww9TiQ2+v/6aefGpUrVzbc3NyM0NBQY+7cudke9W0YhnH48GGjSZMmhoeHhyHJ6NWrl9n33nvvGQ8//LDh5ORkSDLi4+PNvm+++cZo3Lix4eXlZXh5eRmhoaHGgAEDjCNHjpgxTZs2NR577LE7nlfWI8P79euX62sBoGBg3Mj5ethr3HB1dTX8/f2Nv/zlL8aMGTOMlJSUbO+5dZzYsGGD8eyzzxqBgYGGq6urERgYaHTp0sX45ZdfzJisvzssXrzYGDFihFG2bFnDw8PDaNOmjXH8+PFs53Dz30cMI/fjVZaJEycakoxx48bl+logf1kMg1WHUbj17t1bS5YsYZYPABRRjAOF17JlyxQVFaWtW7cqLCzM3ukAKCQYN2xn8+bNatasmb7++mt16tQp3483Y8YMDR48WAkJCdmeIg77YE0pAAAAFEj/+te/9Mgjj2S7DQQAgFsZhqFPP/1UTZs2pSDlQFhTCgAAAAXKF198oZ9++kkrV67UjBkz8uQpVgCAwunSpUtavny5Nm3apAMHDmjZsmX2Tgk3oSgFAACAAqVLly4qXry4+vTpo/79+9s7HQCAAzt79qy6du2qEiVK6M0339Qzzzxj75RwE9aUAgAAAAAAgM2xphQAAAAAAABszi5FqfHjx6tu3bry9vZW2bJlFRUVpSNHjljFhIeHy2KxWL1efvlle6QLAAAAAACAPGaX2/datmypzp07q27dukpPT9ebb76p2NhY/fzzz/Ly8pJ0oyj16KOPasyYMeb7PD095ePjk6tjZGZm6tSpU/L29mbxSwC4hWEYunjxogIDA+XkxKRZiXEDAO6EcSM7xg0AuL3cjht2Weh89erVVtvz5s1T2bJltXfvXjVp0sRs9/T0lL+//30d49SpUwoKCnqgPAGgsDt58qTKlStn7zQcAuMGANwd48b/MG4AwN3dbdxwiKfvJScnS5JKlixp1b5w4UItWLBA/v7+ateund555x15enrmuI+0tDSlpaWZ21kTwE6ePJnr2VUAUFSkpKQoKChI3t7e9k7FYWRdC8YNAMiOcSM7xg0AuL3cjht2L0plZmZq0KBBatSokapXr262d+3aVRUqVFBgYKB++uknvf766zpy5Iiio6Nz3M/48eM1evTobO0+Pj4MEgBwG9xu8D9Z14JxAwBuj3Hjfxg3AODu7jZu2L0oNWDAAMXGxur777+3au/Xr5/55xo1aiggIEDNmzdXXFycQkJCsu1nxIgRGjJkiLmdVZUDAAAAAACA47FrUWrgwIFasWKFtm7detd70+vVqydJOnbsWI5FKTc3N7m5ueVLngAAAAAAAMhbdilKGYahv//971q6dKk2b96s4ODgu75n//79kqSAgIB8zg4AAAAAAAD5zS5FqQEDBmjRokVatmyZvL29lZiYKEny9fWVh4eH4uLitGjRIrVu3VqlSpXSTz/9pMGDB6tJkyZ6/PHH7ZEyAAAAAAAA8pBdilKzZ8+WJIWHh1u1z507V71795arq6vWr1+v6dOn69KlSwoKClLHjh319ttv2yFbAAAAAAAA5DW73b53J0FBQdqyZYuNsgEAAAAAAICtOdk7AQAAAAAAABQ9dn36HlBUZGRkaNu2bTp9+rQCAgIUFhYmZ2dne6cFAHBAjBkAgHvBuIGCjJlSQD6Ljo5WpUqV1KxZM3Xt2lXNmjVTpUqVFB0dbe/UAAAOhjEDAHAvGDdQ0FGUAvJRdHS0OnXqpBo1amjHjh26ePGiduzYoRo1aqhTp04MFgAAE2MGAOBeMG6gMLAYd1t1vIBKSUmRr6+vkpOT5ePjY+90UARlZGSoUqVKqlGjhmJiYuTk9L8acGZmpqKiohQbG6ujR48yvRY2x2dkdlwT2BNjBhwdn5HZcU1gT4wbcHS5/YxkphSQT7Zt26aEhAS9+eabVoOEJDk5OWnEiBGKj4/Xtm3b7JQhAMBRMGYAAO4F4wYKC4pSQD45ffq0JKl69eo59me1Z8UBAIouxgwgb23dulXt2rVTYGCgLBaLYmJizL7r16/r9ddfV40aNeTl5aXAwED17NlTp06dsl/CwD1i3EBhQVEKyCcBAQGSpNjY2Bz7s9qz4gAARRdjBpC3Ll26pCeeeEIzZ87M1nf58mXt27dP77zzjvbt26fo6GgdOXJEzzzzjB0yBe4P4wYKC9aUAvIJ93nDkfEZmR3XBPbEmAFHV5A/Iy0Wi5YuXaqoqKjbxuzZs0dPPfWUjh8/rvLly+dqvwX5mqDgY9yAo2NNKcDOnJ2dNWXKFK1YsUJRUVFWT8SIiorSihUrNHnyZAYJAABjBmBnycnJslgsKlGixG1j0tLSlJKSYvUC7IVxA4UFRSkgH3Xo0EFLlizRgQMH1LBhQ/n4+Khhw4aKjY3VkiVL1KFDB3unCABwEIwZgH1cvXpVr7/+urp06XLHX/PHjx8vX19f8xUUFGTDLIHsGDdQGHD7HmADGRkZ2rZtm06fPq2AgACFhYXxqwXsis/I7LgmcBSMGXBEBfkz8k63712/fl0dO3bUb7/9ps2bN9/x3NLS0pSWlmZup6SkKCgoqEBeExQujBtwRLkdN1xsmBNQZDk7Oys8PNzeaQAACgDGDMA2rl+/rueff17Hjx/Xxo0b71pYcnNzk5ubm42yA3KPcQMFGUUpAAAAAEVKVkHq6NGj2rRpk0qVKmXvlACgSKIoBQAAAKBQSU1N1bFjx8zt+Ph47d+/XyVLllRAQIA6deqkffv2acWKFcrIyFBiYqIkqWTJknJ1dbVX2gBQ5FCUAgAAAFCo/Pjjj2rWrJm5PWTIEElSr169NGrUKC1fvlySVLNmTav3bdq0idugAMCGKEoBAAAAKFTCw8N1p+c5FdJnPQFAgeNk7wQAAAAAAABQ9FCUAgAAAAAAgM1RlAIA3LetW7eqXbt2CgwMlMViUUxMjFW/YRgaOXKkAgIC5OHhoYiICB09etQq5s8//1S3bt3k4+OjEiVKqE+fPkpNTbWK+emnnxQWFiZ3d3cFBQVp4sSJ2XL5+uuvFRoaKnd3d9WoUUPfffddnp8vAAAAgLxDUQoAcN8uXbqkJ554QjNnzsyxf+LEifrwww81Z84c7dq1S15eXoqMjNTVq1fNmG7duungwYNat26dVqxYoa1bt6pfv35mf0pKilq0aKEKFSpo7969mjRpkkaNGqVPPvnEjNm+fbu6dOmiPn366D//+Y+ioqIUFRWl2NjY/Dt5AAAAAA/EYhTSVf5SUlLk6+ur5ORk+fj42DsdAHAo+fEZabFYtHTpUkVFRUm6MUsqMDBQQ4cO1WuvvSZJSk5Olp+fn+bNm6fOnTvr0KFDqlatmvbs2aM6depIklavXq3WrVvrt99+U2BgoGbPnq233npLiYmJ5mO633jjDcXExOjw4cOSpL/+9a+6dOmSVqxYYeZTv3591axZU3PmzLHbNQGAwoLPyOy4JgBwe7n9jGSmFAAgX8THxysxMVERERFmm6+vr+rVq6cdO3ZIknbs2KESJUqYBSlJioiIkJOTk3bt2mXGNGnSxCxISVJkZKSOHDmi8+fPmzE3HycrJus4AAAAAByPi70TAAAUTomJiZIkPz8/q3Y/Pz+zLzExUWXLlrXqd3FxUcmSJa1igoODs+0jq++hhx5SYmLiHY+Tk7S0NKWlpZnbKSkp93J6AAAAAB4QM6UAAEXS+PHj5evra76CgoLsnRIAAABQpFCUAgDkC39/f0lSUlKSVXtSUpLZ5+/vrzNnzlj1p6en688//7SKyWkfNx/jdjFZ/TkZMWKEkpOTzdfJkyfv9RQBAAAAPACKUgCAfBEcHCx/f39t2LDBbEtJSdGuXbvUoEEDSVKDBg104cIF7d2714zZuHGjMjMzVa9ePTNm69atun79uhmzbt06ValSRQ899JAZc/NxsmKyjpMTNzc3+fj4WL0AAAAA2A5FKQDAfUtNTdX+/fu1f/9+STcWN9+/f79OnDghi8WiQYMGaezYsVq+fLkOHDignj17KjAw0HxCX9WqVdWyZUu9+OKL2r17t3744QcNHDhQnTt3VmBgoCSpa9eucnV1VZ8+fXTw4EF9+eWXmjFjhoYMGWLm8Y9//EOrV6/WlClTdPjwYY0aNUo//vijBg4caOtLAgAAACCXWOgcAHDffvzxRzVr1szczioU9erVS/PmzdPw4cN16dIl9evXTxcuXFDjxo21evVqubu7m+9ZuHChBg4cqObNm8vJyUkdO3bUhx9+aPb7+vpq7dq1GjBggGrXrq3SpUtr5MiR6tevnxnTsGFDLVq0SG+//bbefPNNVa5cWTExMapevboNrgIAAACA+2ExDMOwdxL5ISUlRb6+vkpOTuaWDAC4BZ+R2XFNAOD2+IzMjmsCALeX289Ibt8DAAAAAACAzVGUAgAAAAAAgM1RlAIAAAAAAIDNUZQCAAAAAACAzVGUAgAAAAAAgM1RlAIAAAAAAIDNUZQCAAAAAACAzVGUAgAAAAAAgM1RlAIAAAAAAIDNUZQCAAAAAACAzVGUAgAAAAAAgM1RlAIAAAAAAIDNUZQCAAAAAACAzVGUAgAAAAAAgM1RlAIAAAAAAIDNUZQCAAAAAACAzVGUAgAAAFCobN26Ve3atVNgYKAsFotiYmKs+qOjo9WiRQuVKlVKFotF+/fvt0ueAFDUUZQCAAAAUKhcunRJTzzxhGbOnHnb/saNG2vChAk2zgwAcDMXeycAAAAAAHmpVatWatWq1W37e/ToIUlKSEiwUUYAgJxQlAIAAACAu0hLS1NaWpq5nZKSYsdsAKBw4PY9AAAAALiL8ePHy9fX13wFBQXZOyUAKPAoSgEAAADAXYwYMULJycnm6+TJk/ZOCQAKPG7fAwAAAIC7cHNzk5ubm73TAIBChZlSAAAAAAAAsDm7FKXGjx+vunXrytvbW2XLllVUVJSOHDliFXP16lUNGDBApUqVUvHixdWxY0clJSXZI10AAAAABUhqaqr279+v/fv3S5Li4+O1f/9+nThxQpL0559/av/+/fr5558lSUeOHNH+/fuVmJhor5QBoEiyS1Fqy5YtGjBggHbu3Kl169bp+vXratGihS5dumTGDB48WN9++62+/vprbdmyRadOnVKHDh3skS4AAACAAuTHH39UrVq1VKtWLUnSkCFDVKtWLY0cOVKStHz5ctWqVUtt2rSRJHXu3Fm1atXSnDlz7JYzABRFFsMwDHsncfbsWZUtW1ZbtmxRkyZNlJycrDJlymjRokXq1KmTJOnw4cOqWrWqduzYofr16991nykpKfL19VVycrJ8fHzy+xQAoEDhMzI7rgkA3B6fkdlxTQDg9nL7GekQa0olJydLkkqWLClJ2rt3r65fv66IiAgzJjQ0VOXLl9eOHTvskiMAAAAAAADyjt2fvpeZmalBgwapUaNGql69uiQpMTFRrq6uKlGihFWsn5/fbe/zTktLU1pamrmdkpKSbzkDAAAAAADgwdh9ptSAAQMUGxurL7744oH2M378ePn6+pqvoKCgPMoQAAAAAAAAec2uRamBAwdqxYoV2rRpk8qVK2e2+/v769q1a7pw4YJVfFJSkvz9/XPc14gRI5ScnGy+Tp48mZ+pAwAAAAAA4AHYpShlGIYGDhyopUuXauPGjQoODrbqr127tooVK6YNGzaYbUeOHNGJEyfUoEGDHPfp5uYmHx8fqxcAAAAAAAAck13WlBowYIAWLVqkZcuWydvb21wnytfXVx4eHvL19VWfPn00ZMgQlSxZUj4+Pvr73/+uBg0a5OrJewAAAAAAAHBsdilKzZ49W5IUHh5u1T537lz17t1bkjRt2jQ5OTmpY8eOSktLU2RkpGbNmmXjTAEAAAAAAJAf7FKUMgzjrjHu7u6aOXOmZs6caYOMAAAAAAAAYEt2f/oeAAAAAAAAih6KUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSgA2kpqaqffv2evzxx9W+fXulpqbaOyUAAAAAAOzKxd4JAIXdU089pT179pjbBw4ckLe3t+rWravdu3fbMTMAAAAAAOyHmVJAPsoqSFksFvXo0UP//e9/1aNHD1ksFu3Zs0dPPfWUvVMEAAAAAMAumCkF5JPU1FSzIHX58mW5u7tLkj7//HN98skn8vT01J49e5SamqrixYvbOVsAAAAAAGyLmVJAPunRo4ckqXv37mZBKou7u7u6du1qFQcAAAAAQFFCUQrIJ3FxcZKk1157Lcf+IUOGWMUBAAAgb2zdulXt2rVTYGCgLBaLYmJirPoNw9DIkSMVEBAgDw8PRURE6OjRo/ZJFgCKMIpSQD4JCQmRJE2ePDnH/qlTp1rFAQAAIG9cunRJTzzxhGbOnJlj/8SJE/Xhhx9qzpw52rVrl7y8vBQZGamrV6/aOFMAKNoshmEY9k4iP6SkpMjX11fJycny8fGxdzooglJTU+Xt7Z1tTSlJunr1qjw9PWUYhi5evMiaUrA5PiOz45oAwO0V5M9Ii8WipUuXKioqStKNWVKBgYEaOnSoOaM9OTlZfn5+mjdvnjp37pyr/RbkawIA+S23n5HMlALySfHixVW3bl0ZhiFPT091795d+/btU/fu3c2CVN26dSlIAQAA2FB8fLwSExMVERFhtvn6+qpevXrasWOHHTMDgKKHohSQj3bv3m0WphYuXKjatWtr4cKFZkFq9+7d9k4RyFcZGRl65513FBwcLA8PD4WEhOi9997TzZN0c7Oux59//qlu3brJx8dHJUqUUJ8+fZSammoV89NPPyksLEzu7u4KCgrSxIkTbXKOAICCJTExUZLk5+dn1e7n52f25SQtLU0pKSlWLwDAg6EoBeSz3bt36+LFi4qKilKNGjUUFRWlixcvUpBCkTBhwgTNnj1bH330kQ4dOqQJEyZo4sSJ+uc//2nG5GZdj27duungwYNat26dVqxYoa1bt6pfv35mf0pKilq0aKEKFSpo7969mjRpkkaNGqVPPvnEpucLACi8xo8fL19fX/MVFBRk75QAoMBzsXcCQFFQvHhxLV261N5pADa3fft2Pfvss2rTpo0kqWLFilq8eLFZlDUMQ9OnT9fbb7+tZ599VpL0+eefy8/PTzExMercubMOHTqk1atXa8+ePapTp44k6Z///Kdat26tyZMnKzAwUAsXLtS1a9f073//W66urnrssce0f/9+TZ061ap4BQCAv7+/JCkpKUkBAQFme1JSkmrWrHnb940YMcJ8erJ04wcRClMA8GCYKQUAyDcNGzbUhg0b9Msvv0iS/vvf/+r7779Xq1atJOVuXY8dO3aoRIkSZkFKkiIiIuTk5KRdu3aZMU2aNJGrq6sZExkZqSNHjuj8+fP5fp4AgIIjODhY/v7+2rBhg9mWkpKiXbt2qUGDBrd9n5ubm3x8fKxeAIAHw0wpAEC+eeONN5SSkqLQ0FA5OzsrIyND77//vrp16yYpd+t6JCYmqmzZslb9Li4uKlmypFVMcHBwtn1k9T300EPZcktLS1NaWpq5zdogAFB4pKam6tixY+Z2fHy89u/fr5IlS6p8+fIaNGiQxo4dq8qVKys4OFjvvPOOAgMDzSf0AQBsg6IUACDffPXVV1q4cKEWLVpk3lI3aNAgBQYGqlevXnbNbfz48Ro9erRdcwAA5I8ff/xRzZo1M7ezbrvr1auX5s2bp+HDh+vSpUvq16+fLly4oMaNG2v16tVyd3e3V8oAUCRRlAIA5Jthw4bpjTfeUOfOnSVJNWrU0PHjxzV+/Hj16tUrV+t6+Pv768yZM1b7TU9P159//mm+39/fX0lJSVYxWdtZMbdibRAAKLzCw8OtnvR6K4vFojFjxmjMmDE2zAoAcCvWlAIA5JvLly/Lycl6qHF2dlZmZqak3K3r0aBBA124cEF79+41YzZu3KjMzEzVq1fPjNm6dauuX79uxqxbt05VqlTJ8dY9ibVBAAAAAHujKAUAyDft2rXT+++/r5UrVyohIUFLly7V1KlT1b59e0k3fqnOWtdj+fLlOnDggHr27Gm1rkfVqlXVsmVLvfjii9q9e7d++OEHDRw4UJ07d1ZgYKAkqWvXrnJ1dVWfPn108OBBffnll5oxY4bVTCgAAAAAjoXb9wAA+eaf//yn3nnnHfXv319nzpxRYGCgXnrpJY0cOdKMyc26HgsXLtTAgQPVvHlzOTk5qWPHjvrwww/Nfl9fX61du1YDBgxQ7dq1Vbp0aY0cOVL9+vWz6fkCAAAAyD2LcaebrQuwlJQU+fr6Kjk5mVsyAOAWfEZmxzUBgNvjMzI7rgkA3F5uPyO5fQ8AAAAAAAA2R1EKAAAAAAAANkdRCgAAAAAAADZHUQoAAAAAAAA2R1EKAAAAAAAANkdRCgAAAAAAADZHUQqwgYULF8pisZivhQsX2jslAAAAAADsiqIUkM8sFou6d+9u1da9e3dZLBY7ZQQAAAAAgP1RlALy0a2Fp1q1at2xHwAAAACAooKiFJBPbr5Fb8uWLTIMQ/v27ZNhGNqyZUuOcQAAAAAAFBUUpYB8cvMte02aNLHqu3n71lv7AAAAAAAoCihKAfns1lv2sjz22GM2zgQAAAAAAMdBUQrIZ//5z39ybD948KCNMwEAAAAAwHFQlALyyYIFC8w/b9261arv5u2b4wAAAAAAKCooSgH5pFu3buafmzZtKovFourVq8tisahp06Y5xgEAAAAAUFRQlALykWEYVtu33rJ3az8AAAAAAEUFRSkgnxmGke0WvQULFlCQAgAAAAAUaS72TgAoCrp168ZtegAAAAAA3ISZUgAAAAAAALA5ilIAAAAAAACwObsUpbZu3ap27dopMDBQFotFMTExVv29e/eWxWKxerVs2dIeqQIAAAAAACAf2KUodenSJT3xxBOaOXPmbWNatmyp06dPm6/FixfbMEMAAAAAAADkJ7ssdN6qVSu1atXqjjFubm7y9/e3UUYAAAAAAACwJYddU2rz5s0qW7asqlSpoldeeUXnzp27Y3xaWppSUlKsXgAAAAAAAHBMDlmUatmypT7//HNt2LBBEyZM0JYtW9SqVStlZGTc9j3jx4+Xr6+v+QoKCrJhxgAAAHkjOTlZjRs3Vvny5dW4cWMlJyfbOyUAAIB84ZBFqc6dO+uZZ55RjRo1FBUVpRUrVmjPnj3avHnzbd8zYsQIJScnm6+TJ0/aLmEAAIA8UKlSJZUoUUI//PCDTp48qR9++EElSpRQpUqV7J0aUOhcvHhRgwYNUoUKFeTh4aGGDRtqz5499k4LAIoUhyxK3eqRRx5R6dKldezYsdvGuLm5ycfHx+oFAABQUFSqVElxcXGSbswa37Fjh/n04bi4OApTQB7r27ev1q1bp/nz5+vAgQNq0aKFIiIi9Pvvv9s7NQAoMuyy0Pm9+u2333Tu3DkFBATYOxUAAIA8l5ycbBakLl26JE9PT0nSqlWrdPnyZXl5eSkuLk7Jycny9fW1Z6pAoXDlyhV98803WrZsmZo0aSJJGjVqlL799lvNnj1bY8eOtXOGAFA02GWmVGpqqvbv36/9+/dLkuLj47V//36dOHFCqampGjZsmHbu3KmEhARt2LBBzz77rCpVqqTIyEh7pAsAAJCv2rRpI+nGDKmsglQWT09PtWjRwioOwINJT09XRkaG3N3drdo9PDz0/fff5/geHqwEAHnPLkWpH3/8UbVq1VKtWrUkSUOGDFGtWrU0cuRIOTs766efftIzzzyjRx99VH369FHt2rW1bds2ubm52SNdAACAfHXixAlJ0rvvvptj/9tvv20VB+DBeHt7q0GDBnrvvfd06tQpZWRkaMGCBdqxY4dOnz6d43t4sBIA5D273L4XHh4uwzBu279mzRobZgMAAGBf5cuX18mTJzV69GitWrUqW3/WrUTly5e3dWpAoTV//nz97W9/08MPPyxnZ2c9+eST6tKli/bu3Ztj/IgRIzRkyBBzOyUlhcIUADygArHQOQAAQGG2cuVKSdLq1at1+fJlq77Lly9r7dq1VnEAHlxISIi2bNmi1NRUnTx5Urt379b169f1yCOP5BjPg5UAIO9RlAIAALAzX19fhYSESJK8vLwUGRmpbdu2KTIyUl5eXpJu/AWaRc6BvOfl5aWAgACdP39ea9as0bPPPmvvlACgyCgQT98DAAAo7I4dO6ZKlSopLi5Oa9euNWdHSTcKUseOHbNjdkDhs2bNGhmGoSpVqujYsWMaNmyYQkND9cILL9g7NQAoMpgpBQAA4CCOHTumCxcuqFGjRgoKClKjRo104cIFClJAPkhOTtaAAQMUGhqqnj17qnHjxlqzZo2KFStm79QAoMhgphQAAIAD8fX1ve0j6QHkneeff17PP/+8vdMAgCKNmVIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDmKUgAAAAAAALA5ilIAAAAAAACwOYpSAAAAAAAAsDkXeycAAACA/8nIyNC2bdt0+vRpBQQEKCwsTM7OzvZOCwAAIM8xUwoAAMBBREdHq1KlSmrWrJm6du2qZs2aqVKlSoqOjrZ3agAAAHmOohQAAIADiI6OVqdOnVSjRg3t2LFDFy9e1I4dO1SjRg116tSJwhQAACh0KEoBNmCxWLK9AADIkpGRoaFDh6pt27ZKSkpSgwYN5O3trQYNGigpKUlt27bVa6+9poyMDHunCgAAkGcoSgH57HYFKApTKCp+//13de/eXaVKlZKHh4dq1KihH3/80ew3DEMjR45UQECAPDw8FBERoaNHj1rt488//1S3bt3k4+OjEiVKqE+fPkpNTbWK+emnnxQWFiZ3d3cFBQVp4sSJNjk/IC9s27ZNCQkJ+vbbb7V7926rvt27d+vbb79VfHy8tm3bZqcMAQAA8h5FKSAf3a3wRGEKhd358+fVqFEjFStWTKtWrdLPP/+sKVOm6KGHHjJjJk6cqA8//FBz5szRrl275OXlpcjISF29etWM6datmw4ePKh169ZpxYoV2rp1q/r162f2p6SkqEWLFqpQoYL27t2rSZMmadSoUfrkk09ser7A/Tp9+nSexgEAABQEFsMwDHsnkR9SUlLk6+ur5ORk+fj42DsdFEG3Fpxu/l/tTn2ALdjqM/KNN97QDz/8cNvZHYZhKDAwUEOHDtVrr70mSUpOTpafn5/mzZunzp0769ChQ6pWrZr27NmjOnXqSJJWr16t1q1b67ffflNgYKBmz56tt956S4mJiXJ1dTWPHRMTo8OHD+cqV8YN2FOVKlX0yy+/SLpRhF2wYIHZ1717dy1cuFCS9Oijj+rIkSN2yRFFG5+R2XFNAOD2cvsZyUwpwAZuLTpRhEJRsXz5ctWpU0fPPfecypYtq1q1aulf//qX2R8fH6/ExERFRESYbb6+vqpXr5527NghSdqxY4dKlChhFqQkKSIiQk5OTtq1a5cZ06RJE7MgJUmRkZE6cuSIzp8/n2NuaWlpSklJsXoB9pJVkJKkzz//3Krv5u2b4wAAkG6sS7h582YtXrxYmzdvZv1BFCgUpQAA+ebXX3/V7NmzVblyZa1Zs0avvPKKXn31VX322WeSpMTEREmSn5+f1fv8/PzMvsTERJUtW9aq38XFRSVLlrSKyWkfNx/jVuPHj5evr6/5CgoKesCzBfJGVFSU1dP3oqKi7J0SUOhkZGTonXfeUXBwsDw8PBQSEqL33nuPHw5R4ERHRyskJETNmjVT165d1axZM4WEhPDEVhQYLvZOAABQeGVmZqpOnToaN26cJKlWrVqKjY3VnDlz1KtXL7vmNmLECA0ZMsTcTklJoTAFh3DgwAE1bNjQ3A4ODrZjNkDhNGHCBM2ePVufffaZHnvsMf3444964YUX5Ovrq1dffdXe6QG5Eh0drY4dO8rDw8Oq/cyZM+rYsaO++eYbdejQwU7ZAbnDTCnABm5dQ4oFzlFUBAQEqFq1alZtVatW1YkTJyRJ/v7+kqSkpCSrmKSkJLPP399fZ86csepPT0/Xn3/+aRWT0z5uPsat3Nzc5OPjY/UC7KVevXrmn2vXrq1GjRopKChIjRo10pNPPpljHID7t337dj377LNq06aNKlasqE6dOqlFixbZnn4JOKqMjAy9/PLLkqTmzZtbzbBt3ry5JOmVV17hVj44PIpSQD65dfq3xWIxX3eKAwqTRo0aZVuU+ZdfflGFChUk3ZgB4u/vrw0bNpj9KSkp2rVrlxo0aCBJatCggS5cuKC9e/eaMRs3blRmZqb5F/QGDRpo69atun79uhmzbt06ValSxepJf4Cj2rlzp/nnb775Rj/88INOnjypH374Qd98802OcQDuX8OGDbVhwwZznbb//ve/+v7779WqVSs7ZwbkzubNm3X27Fk1btxY0dHRunr1qr799ltdvXpV0dHRaty4sc6cOaPNmzfbO1XgjihKAfnobgUnClIo7AYPHqydO3dq3LhxOnbsmBYtWqRPPvlEAwYMkHSjWDto0CCNHTtWy5cv14EDB9SzZ08FBgaa6+hUrVpVLVu21Isvvqjdu3frhx9+0MCBA9W5c2cFBgZKkrp27SpXV1f16dNHBw8e1JdffqkZM2ZY3Z4HOLq6des+UD+A3HvjjTfUuXNnhYaGqlixYqpVq5YGDRqkbt263fY9PCADjiSr2BQREaHKlStbrSlVuXJlc7YURSk4OopSQD67XeGJghSKgrp162rp0qVavHixqlevrvfee0/Tp0+3+tI/fPhw/f3vf1e/fv1Ut25dpaamavXq1XJ3dzdjFi5cqNDQUDVv3lytW7dW48aN9cknn5j9vr6+Wrt2reLj41W7dm0NHTpUI0eOVL9+/Wx6vsD9Sk1N1Z49e2SxWFS7dm2rvtq1a8tisWjPnj1KTU21U4ZA4fLVV19p4cKFWrRokfbt26fPPvtMkydPNh/EkRMekAFHNGrUqGzLHJw5c0ajR4+2U0bAvbEYhfRvxikpKfL19VVycjLrhADALfiMzI5rAntq3769YmJi1KNHD33++efZ+rt3766FCxcqKipKS5cutUOGKOoK22dkUFCQ3njjDXPmriSNHTtWCxYs0OHDh3N8T1pamtLS0sztrAdkFJZrgoJl3bp1atGihSSpdevWqly5sq5cuSIPDw8dPXpU3333nSRp7dq1+stf/mLPVFFE5Xbc4Ol7AAAAdhYXFydJeu2113LsHzJkiBYuXGjGAXgwly9flpOT9U0jzs7OyszMvO173Nzc5Obmlt+pAbly89ySrALU3eIAR8TtewAAAHYWEhIiSZo8eXKO/VOnTrWKA/Bg2rVrp/fff18rV65UQkKCli5dqqlTp6p9+/b2Tg3IlW3btuVpHGAvFKUAAADsbP78+ZKkBQsW6Pz58xo4cKAiIyM1cOBAnT9/XosWLbKKA/Bg/vnPf6pTp07q37+/qlatqtdee00vvfSS3nvvPXunBuRKenq6JGWb8Zclqz0rDnBU3L4HAABgZ8WLF1fdunW1Z88elSxZ0mxfu3atZs6cKenGgwOKFy9urxSBQsXb21vTp0/X9OnT7Z0KcF8uXLggScrMzFSxYsXUqVMnPfXUU9q9e7eWLFmi69evW8UBjoqZUgAAAA4gMDDwgfoBAEXHzeufNW/eXI0aNZKPj48aNWqk5s2b5xgHOCJmSgEAANjZlStXtGzZMrm6uur06dPq06eP4uLiFBISok8//VQBAQFatmyZ+WQlAEDRdvDgQfPPa9as0erVq81ti8WSYxzgiJgpBQAAYGfDhg2TdOMpeytXrlRMTIwOHDigmJgYrVy5UoMGDbKKAwAUbTf/QOHu7m7Vd/M2P2TA0TFTCgAAwM6OHj0qSfrggw+y9fXs2TNbHACgaKtUqZLWr18v6cYaaa+88opCQkIUFxenBQsW6MqVK2Yc4MgoSgEAANhZ5cqVtXbt2lzFAQDwzDPPaM6cOXJyctK5c+c0depUs8/FxUVOTk7KzMzUM888Y8csgbujKAUAAGBntWrVstouVaqUuX7UuXPnbhsHACiabn76nouLi5o1a6bAwECdOnVK27ZtMxc45+l7cHSsKQUAAGBnffv2tdo+d+6cLl++bFWQyikOAFA0BQQESJLCwsKUnp6uTZs2aeHChdq0aZPS09MVFhZmFQc4KopSAAAAAAAUIGFhYapYsaJKlCih1NRUDRgwQC1atNCAAQOUmpqqEiVKKDg42CxOAY6K2/cAAAAcyO+//64BAwYoLi5OISEhmjlzph5++GF7pwUAcCDOzs6aMmWKOnXqpC5dumjEiBGqXr26YmNj1aVLF61YsUJLliyRs7OzvVMF7oiiFAAAgAOpXbu2EhMTJUkHDhzQzp077ZwRAMARdejQQUuWLNHQoUPVsGFDsz04OFhLlixRhw4d7JgdkDt2uX1v69atateunQIDA2WxWBQTE2PVbxiGRo4cqYCAAHl4eCgiIoJHIAMAgELLy8vL/HNWQerRRx+12r41DgCADh066NixY9q0aZMWLVqkTZs26ejRoxSkUGDYpSh16dIlPfHEE5o5c2aO/RMnTtSHH36oOXPmaNeuXfLy8lJkZKSuXr1q40wBAADyX+nSpbO1/fLLL7mKAwAAKKjscvteq1at1KpVqxz7DMPQ9OnT9fbbb+vZZ5+VJH3++efy8/NTTEyMOnfubMtUAQAA8t306dPVvn37XMUBAJAlOjpaQ4cOVUJCgtlWsWJFTZkyhdlSKBAcbk2p+Ph4JSYmKiIiwmzz9fVVvXr1tGPHDopSAACgwLl8+bIOHz582/6ff/7Zavuhhx5SUFCQTp48qfPnz1vFlS9f/o7HCg0Nlaen54MlDABweNHR0erUqZPatm2rxYsXmwudjxs3Tp06dWJdKRQIDleUylo3wc/Pz6rdz8/Pak2FW6WlpSktLc3cTklJyZ8EAQAA7tHhw4dVu3btXMefP3/eqhiV5a233tJbb711x/fu3btXTz755D3nCAAoODIyMjR06FC1bdtWMTExcnK6sTJP/fr1FRMTo6ioKL322mt69tlneQIfHJrDFaXu1/jx4zV69Gh7pwEAAJBNaGio9u7de9v+jIwMRUVFqVKlSnrjjTfUs2dP/fHHHypdurQ+//xzffDBB4qLi9PSpUvv+peL0NDQvE4fAOBgtm3bpoSEBC1evNgsSGVxcnLSiBEj1LBhQ23btk3h4eH2SRLIBYcrSvn7+0uSkpKSFBAQYLYnJSWpZs2at33fiBEjNGTIEHM7JSVFQUFB+ZYnAABAbnl6et519tI///lPderUSb6+vpo0aZJeeOEFTZo0SbNnz9a2bdu0ZMkS1a1b10YZAwAc2enTpyVJ1atXz7E/qz0rDnBUdnn63p0EBwfL399fGzZsMNtSUlK0a9cuNWjQ4Lbvc3Nzk4+Pj9ULAACgoOjQoYOWLFmiAwcO6IUXXpAkvfDCC4qNjWVdEACAlawJHLGxsTn2Z7XfPNEDcER2KUqlpqZq//792r9/v6Qbi5vv379fJ06ckMVi0aBBgzR27FgtX75cBw4cUM+ePRUYGKioqCh7pAsAAGATHTp00LFjx/Txxx9Lkj7++GMdPXqUghQAwEpYWJgqVqyocePGKTMz06ovMzNT48ePV3BwsMLCwuyUIZA7drl978cff1SzZs3M7azb7nr16qV58+Zp+PDhunTpkvr166cLFy6ocePGWr16tdzd3e2RLgAAgM04OzurTp06kqQ6deqwQC0AIBtnZ2dNmTJFnTp1UlRUlEaMGGE+fW/8+PFasWKFlixZwhgCh2eXolR4eLgMw7htv8Vi0ZgxYzRmzBgbZgUAAAAAQMGQddv30KFD1bBhQ7M9ODiY275RYDjcQucAAAAAAODuOnTooLZt22rWrFmKi4tTSEiI+vfvL1dXV3unBuQKRSkAAAAAAAqg6OhoDR06VAkJCWbbjBkzNGXKFGZKoUCgKAUAAHAffv1ph9L+OJ4v+06Mj1ctfycl/meNDl34JV+OIUlupSvokcdv/3RjAIDjio6OVqdOndS2bVstXrzYXFNq3Lhx6tSpE7fwoUCwGHda3KkAS0lJka+vr5KTk+Xj42PvdADAofAZmR3XBPfi6NGjWvhiDY0Kd7N3Kg9k1OY0dfvXAVWuXNneqcDB8RmZHdcE9pSRkaFKlSqpRo0a+uabb/TDDz/o9OnTCggIUKNGjdSxY0fFxsbq6NGjLHYOu8jtZyQzpQAAAO7RxYsX9fHea3qqx7sKDg7O8/2npaXp1KlTCgwMlJtb/hS+4uPj9fHet/TMxYv5sn8AQP7Ztm2bEhIS9NJLL6lSpUo6ceKE2Ve+fHm9/PLL+vbbb7Vt2zaFh4fbL1HgLihKAQAA3IfEVEP+tSJV9ckn82X/NfNlr/9zZd8+Jaa+mc9HAQDkh9OnT0uSRowYka3vxIkTevPNN63iAEflZO8EAAAAAABA7pUtW9b8s6urq9544w0dO3ZMb7zxhtWT926OAxwRM6UAAAAAAChA0tLSJEkWi0XJyclyd3eXJI0fP17vvvuuPD09ZRiGGQc4KmZKAQAAAChSKlasKIvFku01YMAAe6cG5Mr06dMlSYZh6Pnnn9eOHTt08eJF7dixQ88//7yynmeWFQc4KmZKAQAA3KPLly9Lkvbt25cv+79y5YoSEhJUsWJFeXh45MsxDh06lC/7BQqCPXv2KCMjw9yOjY3VX/7yFz333HN2zArIvfPnz0uShg4dqm+++UYNGzY0+4KDgzV48GBNmzbNjAMcFUUpAACAe3T48GFJ0osvvmjnTB6ct7e3vVMAbK5MmTJW2x988IFCQkLUtGlTO2UE3Ju6devqxx9/1LJly/TLL7/ohx9+0OnTpxUQEKBGjRqpatWqZhzgyChKAQAA3KOoqChJUmhoqDw9PfN8/4cOHVL37t21YMEC8y8W+cHb21uVK1fOt/0DBcG1a9e0YMECDRkyRBaLxd7pALkyZcoUzZ49W8eOHVP79u311ltvqW3btoqNjVX79u0VFxdnxgGOjKIUAADAPSpdurT69u2b78epWrWqnnzyyXw/DlCUxcTE6MKFC+rdu/cd49LS0qwWjU5JScnnzFCUXb582ZyVeztNmzbVli1btHLlSq1cuTLH/tzcqp1fP7AAuUFRCgAAAECR9emnn6pVq1YKDAy8Y9z48eM1evRoG2WFou7w4cOqXbv2A+1jy5YtudrH3r17+QEEdkNRCgAAAECRdPz4ca1fv17R0dF3jR0xYoSGDBlibqekpCgoKCg/00MRFhoaqr179+Yq9sqVKxo1apTWr1+viIgIjRo16p4ekhEaGnq/aQIPjKIUAAAAgCJp7ty5Klu2rNq0aXPXWDc3N7m5udkgK0Dy9PS8p9lLEyZMUO3atTVhwgRmPaFAcbJ3AgAAAPifa9euaeHChZKkhQsX6tq1a3bOCCicMjMzNXfuXPXq1UsuLvxWDwD2QFEKAADAQQwfPlweHh6aOnWqJGnq1Kny8PDQ8OHD7ZwZUPisX79eJ06c0N/+9jd7pwIARRY/CQAAADiA4cOHa9KkSdnaMzMzzfaJEyfaOi2g0GrRooUMw7B3GgBQpFGUAv6/X3/aobQ/jucqNi0tTadOncrnjG4IDAzM9foFbqUr6JHHG+RzRgCAvHbt2jVNnjxZklSqVCmlpKTo+vXrKlasmHx8fHTu3DlNnjxZY8eOlaurq52zBQAAyBsUpQBJR48e1cJXm2lUeO4Xr6yZf+lYO5n70FGb09TtXwdUuXLl/MsHAHDPLl++rMOHD9+2/7PPPjNnbJw7d85sv379urltGIaGDRumXr163fFYoaGh8vT0zIOsAQAA8hdFKUDSxYsX9fHea3qqx7sKDg6+a7wjzpSKj4/Xx3vf0jMXL9ogKwDAvTh8+LBq1679wPv58MMP9eGHH94xZu/evTx5CQAAFAgUpYD/LzHVkH+tSFXN5Rf5mvmbzj27sm+fElPftHcaAIAchIaGau/evbft79at2x1nUt28n6wn890pBgDgeI4ePaqL+fQD8qFDh6z+mV+8vb25KwN5iqIUAABAPvP09Lzj7KW4uLhc7ScuLo5ZUABQAB09elSPPvpovh+ne/fu+X6MX375hcIU8gxFKQAAADu7fv16nsYBABxL1gypBQsWqGrVqnm+/ytXrighIUEVK1aUh4dHnu9fujELq3v37vk22wtFE0UpAAAAO7NYLLl6NL3FYrFBNgCA/OBf3KInA5xV1d8pH/bupUbBj+XDfv/H44Kz/IszDiFvUZQCAACwMzc3N129ejVXcQCAguml2q6quvUlaau9M7k/VXXjHIC8RFEKAADAznJTkLqXOACA4/l47zX9deQ8VS2gD6Q4dPiwPp7SVc/YOxEUKhSlAAAAAADIZ4mphq6UeFQKrGnvVO7LlcRMJabe/VZz4F7kx82sAAAAAAAAwB0xUwoAAAAAgHx0+fJlSdK+ffvyZf+2evoekNcoSgEAAAAAkI8OHz4sSXrxxRftnMmD8/b2tncKKEQoSgEAAAAAkI+ioqIkSaGhofL09Mzz/R86dEjdu3fXggULVLVq1TzffxZvb29Vrlw53/aPooeiFAAAgJ1t375dDRs2zFUcAKDgKV26tPr27Zvvx6lataqefPLJfD8OkFdY6BwAYDMffPCBLBaLBg0aZLZdvXpVAwYMUKlSpVS8eHF17NhRSUlJVu87ceKE2rRpI09PT5UtW1bDhg1Tenq6VczmzZv15JNPys3NTZUqVdK8efNscEZA3pg7d26exgEAABQEFKUAADaxZ88effzxx3r88cet2gcPHqxvv/1WX3/9tbZs2aJTp06pQ4cOZn9GRobatGmja9euafv27frss880b948jRw50oyJj49XmzZt1KxZM+3fv1+DBg1S3759tWbNGpudH/Agli9fnqdxAAAABQFFKQBAvktNTVW3bt30r3/9Sw899JDZnpycrE8//VRTp07V008/rdq1a2vu3Lnavn27du7cKUlau3atfv75Zy1YsEA1a9ZUq1at9N5772nmzJm6du2aJGnOnDkKDg7WlClTVLVqVQ0cOFCdOnXStGnT7HK+wL26eXbgO++8Y9V38/atswgBAAAKMopSAIB8N2DAALVp00YRERFW7Xv37tX169et2kNDQ1W+fHnt2LFDkrRjxw7VqFFDfn5+ZkxkZKRSUlJ08OBBM+bWfUdGRpr7yElaWppSUlKsXoAjGDRokKKiolSjRg1FRUVZ3e4KAABQmLDQOQAgX33xxRfat2+f9uzZk60vMTFRrq6uKlGihFW7n5+fEhMTzZibC1JZ/Vl9d4pJSUnRlStX5OHhke3Y48eP1+jRo+/7vID8UqpUKfPPBw4cUExMjP2SAQAAyEfMlAIA5JuTJ0/qH//4hxYuXCh3d3d7p2NlxIgRSk5ONl8nT560d0oAAAD37MSJEwoLC5MkhYWF6cSJE3bOCMg9ilIAgHyzd+9enTlzRk8++aRcXFzk4uKiLVu26MMPP5SLi4v8/Px07do1Xbhwwep9SUlJ8vf3lyT5+/tnW0cna/tuMT4+PjnOkpIkNzc3+fj4WL0Aexk3blyexgEAioZixYqpQoUKunz5siTp8uXLqlChgooVK2bnzIDcoSgFAMg3zZs314EDB7R//37zVadOHXXr1s38c7FixbRhwwbzPUeOHNGJEyfUoEEDSVKDBg104MABnTlzxoxZt26dfHx8VK1aNTPm5n1kxWTtA3B0u3fvztM4AEDhV6xYMaWnp0uSfH19rf6Znp5OYQoFAkUpAEC+8fb2VvXq1a1eXl5eKlWqlKpXry5fX1/16dNHQ4YM0aZNm7R371698MILatCggerXry9JatGihapVq6YePXrov//9r9asWaO3335bAwYMkJubmyTp5Zdf1q+//qrhw4fr8OHDmjVrlr766isNHjzYnqcP5FpcXFyexgEACrcTJ06YBanExERNnDhRkjRx4kRzzc309HRu5YPDY6FzAIBdTZs2TU5OTurYsaPS0tIUGRmpWbNmmf3Ozs5asWKFXnnlFTVo0EBeXl7q1auXxowZY8YEBwdr5cqVGjx4sGbMmKFy5crp//7v/xQZGWmPUwLuWcWKFXXgwAFZLBYZhpGtP6u9YsWKtk8OAGBzly9f1uHDh2/bn7WGlKenpx577DGdO3dOkvTSSy/pzTfflKenpy5fvqyqVatq27ZtdzxWaGioPD098y554B5QlAIA2NTmzZuttt3d3TVz5kzNnDnztu+pUKGCvvvuuzvuNzw8XP/5z3/yIkXA5rLWRzMMQy1btlSVKlXMJ0ceOXJEq1evtooDABRuhw8fVu3ate8ad/nyZXM9qSxZBaqs/rvtZ+/evXryySfvL1HgAVGUAiTzg3zfvn35dowrV64oISFBFStWvO3Cyw/i0KFDeb5PAIBtJCQkmH9evXq1WYS6UxwAoPAKDQ3V3r17b9vfuHFjXbly5a778fDw0Pfff3/XYwH2QlEKkMypsS+++KKdM3lw3t7e9k4BAHCPvLy88jQOAFCweXp63nH20qRJkzRw4EBJN5Y6+Otf/6o6deroxx9/1JdffqmMjAwzjllQcGQUpQBJUVFRkvL3fupDhw6pe/fuWrBggapWrZovx/D29lblypXzZd8AgPzTtm1bxcTESJKSkpL00ksvKS4uTiEhIfr444/l5+dnxgEAcPPDXDIyMrRo0SItWrQox7gBAwbYMjXgnlCUAiSVLl1affv2tcmxqlatyq8VAAArN6+HFhQUpEGDBmnChAn69NNPFRQUlGMcgAfz+++/6/XXX9eqVat0+fJlVapUSXPnzlWdOnXsnRpwV9evX8/TOMBeKEoBAADYWdYT98qUKaOzZ89q4sSJ5uO9b27P6cl8AO7d+fPn1ahRIzVr1kyrVq1SmTJldPToUT300EP2Tg3IFScnJ2VmZuYqDnBkFKUAAADsLOvW67Nnz6p169Zyd3fXhQsXVKJECV29etV8+iS3aAN5Y8KECQoKCtLcuXPNtuDgYDtmBNybJk2amE809vX1Vd++ffXII4/o119/1f/93/8pOTnZjAMcGUUpAAAAO+vfv7+GDRsmLy8vxcbG6sSJE2ZfhQoV5Ovrq0uXLql///52zBIoPJYvX67IyEg999xz2rJlix5++GH179//jg+9SUtLU1pamrmdkpJii1SBHJ0/f978c3JysqZMmXLXOMARMZcPAADAzlxdXTV48GAlJydbFaQk6fjx40pOTtbgwYPl6upqpwyBwuXXX3/V7NmzVblyZa1Zs0avvPKKXn31VX322We3fc/48ePl6+trvm5e7w2wtaSkpDyNA+yFohQAAIAD+OWXXx6oH0DuZWZm6sknn9S4ceNUq1Yt9evXTy+++KLmzJlz2/eMGDFCycnJ5uvkyZM2zBiwFhgYmKdxgL1w+x4AAICdXblyRcuWLZOLi4sCAwOtZkuVL19ep06d0rJly3TlyhV5eHjYMVOgcAgICFC1atWs2qpWrapvvvnmtu9xc3OTm5tbfqcG5Er79u21b98+SVJERIR8fHzMtQhTUlK0fv16Mw5wZA5ZlBo1apRGjx5t1ValShUdPnzYThkBAADkn2HDhkmS0tPTdfbsWau+s2fPKj093Yz76KOPbJ4fUNg0atRIR44csWr75ZdfVKFCBTtlBNybm/9unFWAulsc4Igc9va9xx57TKdPnzZf33//vb1TAgAAyBc335rXvHlz7dixQxcvXtSOHTvUvHnzHOMA3L/Bgwdr586dGjdunI4dO6ZFixbpk08+0YABA+ydGpArly5dytM4wF4ctijl4uIif39/81W6dGl7pwQAAJAvsm7JK1eunJYtW6b69eurePHiql+/vpYtW6aHH37YKg7Ag6lbt66WLl2qxYsXq3r16nrvvfc0ffp0devWzd6pAbkSFhYm6cYTWm9ddL98+fLmrL+sOMBROWxR6ujRowoMDNQjjzyibt26ZXsSza3S0tKUkpJi9QIAACgIqlatKklKTEzUhQsX1L59ez3++ONq3769Lly4YD49KSsOwINr27atDhw4oKtXr+rQoUN68cUX7Z0SkGsDBw6Uk5OTjh8/rscff1wfffSRPv30U3300UeqUaOGjh8/LicnJw0cONDeqQJ35JBrStWrV0/z5s1TlSpVdPr0aY0ePVphYWGKjY2Vt7d3ju8ZP358tnWoAAAACoJixYpJurGmVKlSpcz2AwcOKCYmJlscAKBoc3V11dChQzVp0iR99913Wrlypdnn5HRj7snQoUPl6upqrxSBXHHImVKtWrXSc889p8cff1yRkZH67rvvdOHCBX311Ve3fQ+PaAUAAAVVeHh4nsYBAAq/iRMnqm7dujIMw6o9MzNTdevW1cSJE+2UGZB7DjlT6lYlSpTQo48+qmPHjt02hke0AgCAgqpOnTrmnyMjI1W8eHGdP39eDz30kFJTU7VmzZpscQCAom348OHas2ePypYtq/DwcHl5eenSpUvavHmz9uzZo+HDh1OYgsMrEEWp1NRUxcXFqUePHvZOBQAAIM/17t3b/PPWrVt15coVc9vT09MqbunSpbZMDQDggK5du6Zp06bJz89Pv/32m1xc/vdX+/T0dJUrV07Tpk3T2LFjuYUPDs0hb9977bXXtGXLFiUkJGj79u1q3769nJ2d1aVLF3unBgAAkOfi4uIkSVOmTFHZsmWt+sqWLatJkyZZxQEAirZZs2YpPT1dY8eOlcVi0ebNm7V48WJt3rxZFotFY8aMUXp6umbNmmXvVIE7csiZUr/99pu6dOmic+fOqUyZMmrcuLF27typMmXK2Ds1AACAPBcSEqIDBw5o//79iouL07Zt23T69GkFBAQoLCxMvXr1MuMAAMj6kcJisahSpUpKSEgw+ypWrKi33nrLKg5wVA5ZlPriiy/snQIAAIDNzJ8/X97e3lqwYIE++eQTqwXNr169qkWLFplxAABk/UjRt29ftWvXTosXL1b16tUVGxurcePG6cUXX7SK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nDlzMnjw4PTp0ycTJkzI888/32nM2rVrM3Xq1NTW1mbAgAGZNm1aNmzY0GnMv//7v+eII45I7969M2TIkFx00UXv/91BBfXo0SOXXHJJFixYkEmTJnW6+96kSZOyYMGCXHzxxe6mxA5vw4YNefzxx/P4448neX3B58cffzwrVqxIVVVVTj/99Jx//vm5884788QTT+RLX/pSGhsbM2nSpCTJiBEj8qlPfSqnnnpqHnnkkTz44IOZOXNmTjzxxDQ2NlbujcH7MGzYsOL6g/X19amtrc0ll1yS2tra4ppq1dXVGTZsWCXLBAAoqfcdSr300kv56Ec/mnnz5m21/6KLLsrll1+eq666KkuWLMnOO++ciRMnZuPGjcUxU6dOzVNPPZV77rknCxYsyOLFizN9+vRif1tbW44++ujsscceWbp0aX74wx/mO9/5Tq655poP8BahciZPnpzbbrstTzzxRMaNG5fa2tqMGzcuTz75ZG677bZMnjy50iVCxf3+97/PQQcdlIMOOihJcuaZZ+aggw7KnDlzkiRnnXVWZs2alenTp+eQQw7Jhg0bsnDhwvTu3bu4j1tuuSXDhw/PJz/5yRx77LE5/PDDnTPY5mzevLkYTK1fvz7f+MY3ijOkqqur3a0VANjuVBUKhcIHfnFVVe64447ir9WFQiGNjY35+te/nm984xtJktbW1tTX1+eGG27IiSeemGeeeSb77bdfHn300eLtuxcuXJhjjz02f/7zn9PY2Jgrr7wy//2///c0NzenV69eSZKzzz478+fPz7PPPvueamtra0tdXV1aW1tdkkHFbd68OQ888EBWr16dwYMH54gjjjBDioryHflWPhO6i2XLlmW//fZLe3t7ampq8vTTT5shRcX5jgSgK5R0Tally5alubk5EyZMKLbV1dVlzJgxaWpqSpI0NTVlwIABxUAqSSZMmJDq6uosWbKkOObjH/94MZBKkokTJ+a5557Liy++uNVju7U33VmPHj1y5JFH5vOf/3yOPPJIgRQAb2vYsGF55ZVX0tHRkVdeeUUgBQBst0oaSjU3NydJce2DLerr64t9zc3NGTRoUKf+nj17ZuDAgZ3GbG0fbzzGm7m1NwAAAMC2Y7u5+55bewMAAABsO0oaSjU0NCRJWlpaOrW3tLQU+xoaGt5yq+PXXnsta9eu7TRma/t44zHezK29AQAAALYdJQ2lhg0bloaGhixatKjY1tbWliVLlmTs2LFJkrFjx2bdunVZunRpccy9996bjo6OjBkzpjhm8eLFefXVV4tj7rnnnvyX//Jfsssuu5SyZAAAAAAq4H2HUhs2bMjjjz+exx9/PMnri5s//vjjWbFiRaqqqnL66afn/PPPz5133pknnngiX/rSl9LY2Fi8Q9+IESPyqU99KqeeemoeeeSRPPjgg5k5c2ZOPPHENDY2Jkm+8IUvpFevXpk2bVqeeuqp/OIXv8iPf/zjnHnmmSV74wAA3dELL7yQgQMHZqeddsrAgQPzwgsvVLokAIAu0fP9vuD3v/99xo8fX3y+JSg66aSTcsMNN+Sss87KSy+9lOnTp2fdunU5/PDDs3DhwvTu3bv4mltuuSUzZ87MJz/5yVRXV2fKlCm5/PLLi/11dXX5zW9+kxkzZmTUqFHZbbfdMmfOnEyfPv2vea8AAN1aTU1NNm3aVHz+4osv5sMf/nB69eqV9vb2ClYGAFB6VYVCoVDpIrpCW1tb6urq0traan0pgDfxHflWPhMq7Y2B1ODBg3PhhRfmW9/6VlavXp0kgikqynckAF1hu7n7HgDAtuqFF14oBlJr1qzJrbfemp49e+bWW28t3iBm06ZNLuUDALYr7/vyPQAASmvkyJFJkgEDBuRjH/tYli9fXuwbOnRoBgwYkHXr1mXkyJFZu3ZthaoEACgtM6UAACps/fr1SZLW1taMHDkyTU1NWb9+fZqamjJy5Mi0trZ2GgcAsD0wUwoAoML69euXdevWpVevXpk/f36qq1//3fDQQw/N/Pnz07dv37S3t6dfv34VrhQAoHSEUgAAFXbNNdfkc5/7XNrb2/Of//mfeeqpp7J69eoMHjw4+++/f3GB82uuuabClQIAlI5QCgCgwl577bXi40GDBr2ncQAA2zprSgEAVNjgwYNLOg4AYFsglAIAqLBx48alZ8+eqa+vz/Lly7PLLrukZ8+e2WWXXbJ8+fLU19enZ8+eGTduXKVLBQAoGaEUAECFPfTQQ3nttdfS0tKSWbNm5de//nXWrl2bX//615k1a1ZaWlry2muv5aGHHqp0qQAAJSOUAgCosNWrVydJbr755jzxxBMZN25camtrM27cuDz55JO5+eabO40DANgeWOgcAKDCtqwVtddee+WPf/xjHnjggeLd94444og88sgjncYBAGwPqgqFQqHSRXSFtra21NXVpbW1NbW1tZUuB6Bb8R35Vj4TKmnz5s3Ze++9M3LkyMyfPz/V1f9vMntHR0cmTZqUJ598Ms8//3x69OhRwUrZUfmOBKAruHwPAKDCevTokUsuuSQLFizIpEmT0tTUlPXr16epqSmTJk3KggULcvHFFwukAIDtisv3AAC6gcmTJ+e2227LrFmzOt1l70Mf+lBuu+22TJ48uYLVAQCUnlAKAKCbmDJlylvaXnjhhUyZMiXb6YoLAMAOzOV7AADdQFVV1V/VDwCwrRFKAQBU2OOPP158PH78+E5rSo0fP36r4wAAtnVCKQCACjvooIOKj+++++5s3Lgxd911VzZu3Ji77757q+MAALZ11pQCAOgmxo0bl3333TfLly8vtg0dOjQf+9jH8sgjj1SuMACALmCmFABAN/HQQw9l5MiRnS7fGzlypEAKANguCaUAACrsmmuuKT6+7LLLcuihh6Zfv3459NBDc9lll211HADAtk4oBQBQYXvuuWfx8V577ZUePXrka1/7Wnr06JG99tprq+MAALZ11pQCAKiwNWvWdHre0dGRK6+88l3HAQBsy8yUAgCosMGDBydJ5s6dm0GDBnXqq6+vzwUXXNBpHADA9sBMKQCACjviiCMydOjQPPTQQ/nzn/+cBx98MKtXr87gwYNz2GGHZcqUKRk2bFiOOOKISpcKAFAyZkoBAFRYjx49cskll2TBggWZMmVKampqcvzxx6empiZTpkzJggULcvHFF6dHjx6VLhUAoGTMlAIA6AYmT56c2267LV//+tczbty4YvuwYcNy2223ZfLkyRWsDgCg9IRSAADdxOTJk3PCCSfkgQceKF6+d8QRR5ghBQBsl4RSAADdSI8ePXLkkUdWugwAgC4nlAIA6EY2b95sphQAsEOw0DkAQDdx++23Z6+99sr48ePzhS98IePHj89ee+2V22+/vdKlAQCUnFAKAKAbuP322zNlypSsWLGiU/uKFSsyZcoUwRQAsN0RSgEAVNjmzZtzyimnJEkGDRqUa6+9NqtXr861116bQYMGJUlOOeWUbN68uZJlAgCUlFAKAKDCFi1alLa2tgwcODB//vOf85WvfCUNDQ35yle+kj//+c/ZZZdd0tbWlkWLFlW6VACAkhFKAQBU2P/8n/8zSfLd7343PXt2vg9Nz549853v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S9/WtLe3p729vfi8ra3tr3kLAAAAAHShks+UWrlyZf7+7/8+t9xyS3r37l3q3b+tuXPnpq6urrgNGTKkbMcGAAAA4P0peSi1dOnSrFmzJgcffHB69uyZnj175v7778/ll1+enj17pr6+Pps2bcq6des6va6lpSUNDQ1JkoaGhrfcjW/L8y1j3mz27NlpbW0tbitXriz1WwMAAACgREoeSn3yk5/ME088kccff7y4jR49OlOnTi0+3mmnnbJo0aLia5577rmsWLEiY8eOTZKMHTs2TzzxRNasWVMcc88996S2tjb77bffVo9bU1OT2traThsAAAAA3VPJ15Tq379/PvKRj3Rq23nnnbPrrrsW26dNm5YzzzwzAwcOTG1tbWbNmpWxY8fm0EMPTZIcffTR2W+//fJ3f/d3ueiii9Lc3JxzzjknM2bMSE1NTalLBgAAAKDMumSh83dz6aWXprq6OlOmTEl7e3smTpyYn/70p8X+Hj16ZMGCBTnttNMyduzY7LzzzjnppJPyve99rxLlAgAAAFBiJb98b2t+97vf5bLLLis+7927d+bNm5e1a9fmpZdeyu233/6WtaL22GOP/NM//VNefvnl/OUvf8nFF1+cnj0rkqEB0I384Ac/SFVVVU4//fRi28aNGzNjxozsuuuu6devX6ZMmfKWtQkBAIDupSyhFACUwqOPPpqrr746BxxwQKf2M844I3fddVd++ctf5v7778+qVasyefLkClUJAAC8F0IpALYJGzZsyNSpU3Pttddml112Kba3trbmuuuuy49+9KMcddRRGTVqVK6//vo89NBDefjhhytYMQAA8E6EUgBsE2bMmJHjjjsuEyZM6NS+dOnSvPrqq53ahw8fnt133z1NTU1vu7/29va0tbV12gAAgPKxSBMA3d7Pf/7zPPbYY3n00Uff0tfc3JxevXplwIABndrr6+vT3Nz8tvucO3duvvvd75a6VAAA4D0yUwqAbm3lypX5+7//+9xyyy3p3bt3yfY7e/bstLa2FreVK1eWbN8AAMC7M1MKgG5t6dKlWbNmTQ4++OBi2+bNm7N48eJcccUVufvuu7Np06asW7eu02yplpaWt9zZ9Y1qampSU1PTlaWznXv++eezfv36Ltn3M8880+m/XaV///7ZZ599uvQYAABvRygFQLf2yU9+Mk888USntlNOOSXDhw/Pt771rQwZMiQ77bRTFi1alClTpiRJnnvuuaxYsSJjx46tRMnsAJ5//vnsu+++XX6cL37xi11+jD/84Q+CKQCgIoRSAHRr/fv3z0c+8pFObTvvvHN23XXXYvu0adNy5plnZuDAgamtrc2sWbMyduzYHHrooZUomR3AlhlSN998c0aMGFHy/b/yyitZvnx5hg4dmj59+pR8/8nrs7C++MUvdtlsLwCAdyOUAmCbd+mll6a6ujpTpkxJe3t7Jk6cmJ/+9KeVLosdwIgRIzpdWlpKhx12WJfsFwCguxBKAbDN+d3vftfpee/evTNv3rzMmzevMgUBAADvm7vvAQAAAFB2QikAAAAAyk4oBQAAAEDZCaUAAAAAKDuhFAAAAABlJ5QCAAAAoOyEUgAAAACUnVAKAAAAgLITSgEAAABQdkIpAAAAAMpOKAUAAABA2QmlAAAAACg7oRQAAAAAZSeUAgAAAKDshFIAAAAAlJ1QCgAAAICyE0oBAAAAUHZCKQAAAADKTigFAAAAQNkJpQAAAAAoO6EUAAAAAGUnlAIAAACg7IRSAAAAAJSdUAoAAACAshNKAQAAAFB2PStdAGyLXn755Tz77LPv6zWvvPJKli9fnqFDh6ZPnz7v+XXDhw9P375932+JAAAA0K0JpeD/9/zzz2f9+vXvaewzzzyTL37xi11c0etuvvnmjBgx4j2N7d+/f/bZZ58urggAAAD+ekIpyOuB1L777lvpMrbq/YZff/jDHwRTAAAAdHtCKUiKM6Tez6yk9+uDXr73Xm2ZvfVeZ3sBAABAJQml4A1GjBiRgw8+uMv2f9hhh3XZvgEAAGBb4u57AAAAAJSdUAoAAACAshNKAQAAAFB2QikAAAAAyk4oBQAAAEDZCaUAAAAAKDuhFAAAAABlJ5QCAAAAoOyEUgAAAACUXclDqblz5+aQQw5J//79M2jQoEyaNCnPPfdcpzEbN27MjBkzsuuuu6Zfv36ZMmVKWlpaOo1ZsWJFjjvuuPTt2zeDBg3KN7/5zbz22mulLhcAAACACih5KHX//fdnxowZefjhh3PPPffk1VdfzdFHH52XXnqpOOaMM87IXXfdlV/+8pe5//77s2rVqkyePLnYv3nz5hx33HHZtGlTHnroodx444254YYbMmfOnFKXCwAAAEAF9Cz1DhcuXNjp+Q033JBBgwZl6dKl+fjHP57W1tZcd911ufXWW3PUUUclSa6//vqMGDEiDz/8cA499ND85je/ydNPP53f/va3qa+vz4EHHpjvf//7+da3vpXvfOc76dWrV6nLBgAAAKCMunxNqdbW1iTJwIEDkyRLly7Nq6++mgkTJhTHDB8+PLvvvnuampqSJE1NTRk5cmTq6+uLYyZOnJi2trY89dRTWz1Oe3t72traOm0AAAAAdE9dGkp1dHTk9NNPz2GHHZaPfOQjSZLm5ub06tUrAwYM6DS2vr4+zc3NxTFvDKS29G/p25q5c+emrq6uuA0ZMqTE7wYAAACAUunSUGrGjBl58skn8/Of/7wrD5MkmT17dlpbW4vbypUru/yYAAAAAHwwJV9TaouZM2dmwYIFWbx4cT784Q8X2xsaGrJp06asW7eu02yplpaWNDQ0FMc88sgjnfa35e58W8a8WU1NTWpqakr8LgAAAADoCiWfKVUoFDJz5szccccduffeezNs2LBO/aNGjcpOO+2URYsWFduee+65rFixImPHjk2SjB07Nk888UTWrFlTHHPPPfektrY2++23X6lLBgAAAKDMSj5TasaMGbn11lvzq1/9Kv379y+uAVVXV5c+ffqkrq4u06ZNy5lnnpmBAwemtrY2s2bNytixY3PooYcmSY4++ujst99++bu/+7tcdNFFaW5uzjnnnJMZM2aYDQUAAACwHSh5KHXllVcmSY488shO7ddff31OPvnkJMmll16a6urqTJkyJe3t7Zk4cWJ++tOfFsf26NEjCxYsyGmnnZaxY8dm5513zkknnZTvfe97pS4XAAAAgAooeShVKBTedUzv3r0zb968zJs3723H7LHHHvmnf/qnUpYGAAAAQDfRpXffAwAAAICtEUoBAAAAUHZCKQAAAADKTigFQLc3d+7cHHLIIenfv38GDRqUSZMm5bnnnus0ZuPGjZkxY0Z23XXX9OvXL1OmTElLS0uFKgYAAN6NUAqAbu/+++/PjBkz8vDDD+eee+7Jq6++mqOPPjovvfRSccwZZ5yRu+66K7/85S9z//33Z9WqVZk8eXIFqwYAAN5Jye++BwCltnDhwk7Pb7jhhgwaNChLly7Nxz/+8bS2tua6667LrbfemqOOOipJcv3112fEiBF5+OGHc+ihh1aibLZzDf2q0mfdH5JV2+ZvfH3W/SEN/aoqXQYAsAMTSgGwzWltbU2S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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df2['Ram'] = pd.to_numeric(df2['Ram'])\n", "df2['Battery'] = pd.to_numeric(df2['Battery'])\n", "df2['Display'] = pd.to_numeric(df2['Display'])\n", "df2['Inbuilt_memory'] = pd.to_numeric(df2['Inbuilt_memory'])\n", "\n", "numeric_cols = df2[['Ram', 'Battery', 'Display', 'Inbuilt_memory', 'Price']].columns\n", "\n", "numeric_cols = [col for col in numeric_cols]\n", "\n", "plt.figure(figsize=(12, 8))\n", " \n", "\n", "for i, col in enumerate(numeric_cols, 1):\n", " if col == 'id':\n", " continue\n", " Q1 = df2[col].quantile(0.25)\n", " Q3 = df2[col].quantile(0.75)\n", " IQR = Q3 - Q1\n", " lower_bound = Q1 - 1.5 * IQR\n", " upper_bound = Q3 + 1.5 * IQR\n", " outliers = df2[col][(df2[col] < lower_bound) | (df2[col] > upper_bound)]\n", " print(f\"Выбросы в столбце '{col}':\\n{outliers}\\n\")\n", " plt.subplot(len(numeric_cols) // 3 + 1, 3, i) \n", " plt.boxplot(x=df2[col])\n", " plt.title(f'Boxplot for {col}')\n", "\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Просачивания данных нет, т.к. никакой столбец не коррелирует с целевым признаком более, чем на 0,7" ] }, { "cell_type": "code", "execution_count": 307, "metadata": {}, "outputs": [], "source": [ "#Проверка кореляции\n", "price_col = 'Price' # Имя столбца с ценой\n", "for col1 in numeric_cols:\n", " if col1 != price_col:\n", " correlation = df2[col1].corr(df2[price_col])\n", " if abs(correlation) > 0.7:\n", " print(f\"Просачивание данных: Высокая корреляция ({correlation:.2f}) между столбцами '{col1}' и '{price_col}'\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Пропущенные значения есть в 3-х столбцах. Для этих столбцов возможно только задать какое-то константное значение, например \"Unknown\"" ] }, { "cell_type": "code", "execution_count": 308, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Столбцы с null: ['Android_version', 'fast_charging', 'Processor']\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "C:\\Users\\ujijrujijr\\AppData\\Local\\Temp\\ipykernel_10056\\2788500696.py:10: FutureWarning: A value is trying to be set on a copy of a DataFrame or Series through chained assignment using an inplace method.\n", "The behavior will change in pandas 3.0. This inplace method will never work because the intermediate object on which we are setting values always behaves as a copy.\n", "\n", "For example, when doing 'df[col].method(value, inplace=True)', try using 'df.method({col: value}, inplace=True)' or df[col] = df[col].method(value) instead, to perform the operation inplace on the original object.\n", "\n", "\n", " df2[col].fillna(\"Unknown\", inplace=True)\n" ] } ], "source": [ "# Проверка наличия пропущенных значений\n", "columns_with_nulls = []\n", "for col in df2.columns:\n", " if df2[col].isnull().sum() > 0: \n", " columns_with_nulls.append(col)\n", "print(f\"Столбцы с null: {columns_with_nulls}\")\n", "\n", "# Замена значений null на \"Unknown\" в столбцах с пропусками\n", "for col in columns_with_nulls:\n", " df2[col].fillna(\"Unknown\", inplace=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**РАЗБИЕНИЕ НА ВЫБОРКИ**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Обучающая выборка сбалансрована, т.к. график идёт достаточно ровно и нет \"перекоса\" количества телефонов в каком-то диапазоне цен. Поэтому аугментация данных не требуется " ] }, { "cell_type": "code", "execution_count": 309, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Размер обучающей выборки: 1035\n", "Размер контрольной выборки: 129\n", "Размер тестовой выборки: 130\n" ] }, { "data": { "text/plain": [ "Text(0.5, 1.0, 'Отсортированные цены в обучающей выборке')" ] }, "execution_count": 309, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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//4nPz8/lzyP3W7X8OHDtWjRIo0dO1bt27fX+vXr9a9//Uvbtm3TZ5995pLnORvt2rXT3/72NxljtGPHDj377LO67LLLqoXc41XuvwsuuECTJk1Senq6nn/+ef3vf//T6tWrFRkZ6QgakydPVmJiou6//34FBgbq9ddf16BBgzR37lxddNFFatmypfr06aMZM2bo3nvvdXqeGTNmKCwsTFdeeeUZva65c+dq586duuWWW5SYmKiNGzdq2rRp2rhxo5YuXXrCcPjjjz/qsssuU0pKih577DGVlJTolVdeUZ8+fbRixQqdc845Z1THibz77rsaPXq0hgwZosmTJ6ugoEBTp05V3759tXr16mrvK1U9+uij1f6ocTKxsbGOYLlv3z49//zzuuyyy7R3715FRkbWqv7Kn+2ECRPUpk0bTZw4UYWFhXr55Zer7auNGzeqX79+Cg8P1wMPPCA/Pz+99tprGjBggBYsWKAePXo4bfuuu+5SZGSkHn/8cW3dulVTp07VL7/84ghgNXnsscf05ptv6r///a9T0Dyb/Qx4BQOgQcnKyjKSzJVXXnnSdsOHDzeSTE5OTrV1KSkpZvTo0dWWl5aWmtTUVJOSkmKOHj3qtM5utztud+7c2cTHx5vDhw87lq1du9bYbDZz8803O5Y99thjRpIZPny407buvPNOI8msXbu2Wg3Tp083ksyuXbuqrZs/f76RZObPn+9Y1qNHD3PppZcaSeaxxx474+des2aNkWR+//vfO7X7y1/+YiSZ77//3rGspv12ww03mODgYKdlBQUFTveLi4tNhw4dzCWXXOK0XJIZP358tdc5bNgwk5KS4ri/a9cuI8k888wz1dqed955pn///o77lfto5syZ1dpWGj16tNP2f/zxRyPJzJgxw6nd7Nmza1xe0/ZCQkKqLZ85c2a1n9e7775rbDab+fHHH53avvrqq0aS+d///udY5or9U6nyeDiV/v37O+1PY4x56KGHjCSTkZFxwscVFxeb+Ph406FDB3Ps2DHH8lmzZhlJ5tFHH3Wq1d/f32zbts3R7tChQyYmJsZ069bNsey1114zkszmzZudnic2NtbpOLz44ovNRRdd5FRP5fNMnz7dsez449IYY95//30jySxcuNCx7PjfwW7dupmIiAiTlpbmaLNt2zbj5+dnrr32Wseyyn186NAhx7IVK1ZUq8OY6sdtbm6uiYyMNLfffrtTu7S0NBMREeG0/Pjjd8OGDcZmszneB2p676jq+McbY8y0adOMJLN8+XLHspSUFDNs2LATbuf496PK+7GxsSYzM9PRrqZ9ddVVVxl/f3+zY8cOx7IDBw6YsLAwp59l5c+iW7dupri42LF8ypQpRpL5/PPPneqtPC4qj50XX3zRqeYz2c+At+K0N6CByc3NlSSFhYWdtF3l+pycnNPe9urVq7Vr1y7dc8891f76WfnXxYMHD2rNmjUaM2aMoqOjHes7deqk3/zmNzX2wowfP97p/h//+EdJOmmPzen45JNPtGLFCj399NMnbHOq5678ft999zm1+/Of/yxJjt6zSkVFRcrMzFRGRobmzp2r77//XgMHDnRqExQU5Lh99OhRZWdnq1+/fvrpp5+q1VdYWKjMzEynr5KSkhpfS0FBQbW2ZWVlNbbNzc1VZmamsrKyalxf1cyZMxUREaHf/OY3Ttvu1q2bQkNDNX/+/FNu43TNnDlT7du3V7t27Zye65JLLpGkas9Vm/1z9OhRmbMYrlpSUqLMzEwdOnRIS5Ys0aeffqpOnTo5eiJrsnLlSmVkZOjOO+9UYGCgY/mwYcPUrl27asfRlVdeqTZt2jjux8bGasyYMVq1apXS09MllfdaBgYGOo0NmjNnjjIzM3XjjTc6lsXHx2vfvn2nfF1Vj8vK/dqzZ09JqvHYPHr0qLZt26ZVq1Zp1KhRTj2wbdq00fDhwzV79uwTHoNnYu7cucrKytLIkSOdftY+Pj7q0aPHSY/BCRMmqGvXrrruuutO+/nsdrvjOdasWaN33nlHSUlJjh7wSpXHwuHDh0/7Oj233HKLYmJiHPeP31dlZWX69ttvddVVVzmNyUxKStINN9ygRYsWVXvfHjt2rFPv6x/+8Af5+vrW+B76+eef684779T9999f7bTRs9nPgLcg/AANTGWoqQxBJ3K6IamqHTt2SCo/H/9EfvnlF0lS27Ztq61r3769MjMzq12oseqHPKn8PH2bzXbKc/NPpqysTA899JBGjRqlTp06nbDdqZ77l19+kc1mczotUJISExMVGRnpeL2VPvjgA8XFxSkhIUGDBw9WcnKy3njjDac2s2bNUs+ePRUYGKjo6GjFxcVp6tSpys7Orlbfm2++qbi4OKevb7/9tsbX8thjj1Vru2XLlhrb3nrrrYqLi1NUVJTCwsJ0ww03OD5UH2/79u3Kzs5WfHx8te3n5eUpIyOjxsfVxvbt27Vx48Zqz1N5OtDxz1Wb/RMdHa3g4GANGzZM27dvP+MaFy9erLi4OMXHx6t3794qLS3VzJkzTzpm6GS/F+3atXOsr9xGu3btqrWr/OBdeWxGRkbqiiuu0HvvvedoM2PGDDVt2tQRFiWpd+/e2rlzp5577jmlpaU5AuDxjhw5orvvvlsJCQkKCgpSXFycUlNTJanGY7Nr166O13Oi3/f8/HynMT61VflzuuSSS2r8eZ/oGFy0aJG+/PJLTZ48+bTGdFXau3evY/tdunTRjh079PHHH1cbu/btt98qLi5OsbGxCgwMVNeuXU94/J3qZ1u5rw4dOqSCgoIT7lO73a69e/c6LT/+fSw0NFRJSUnV3kPXrFmjkSNHqqysTEeOHKm2/druZ8CbMOYHaGAiIiKUlJSkdevWnbTdunXr1LRp0wZ5XYkz+ZByIm+++aZ2796tOXPmuOS5T7emwYMH6/7775dUPlZg8uTJuvjii7Vy5UoFBQXpxx9/1PDhw3XRRRfplVdeUVJSkvz8/DR9+nSnD7GVrrzyymp/nX344YeVlpZWre3YsWOr/XX79ttvr7HORx99VP369VNJSYlWrVqlv//978rKyqrxL8V2u13x8fEnnH3Mldedsdvt6tixo5599tka1ycnJzvdr83+KSsr0+bNm/X444/rqquuOuOB3J06ddI///lPSdKhQ4f0wgsvaMCAAfrpp5+UmJh4Rts6XtXel9Nx8803a+bMmVq8eLE6duyoL774Qnfeeadstl//Njl27FjNmTNH9957b7XxQVVdf/31Wrx4se6//3517txZoaGhstvtGjp0qOx2e7X2//nPf1RQUOA0NrCuVD7/u+++W+M+9vWt+ePIgw8+qCFDhuiSSy6pNqnCySQkJDguKJudna1///vfGjp0qBYtWqSOHTs62vXo0UNPPPGEJOnAgQOaPHmyrr766hqPqTP92daFtWvX6tJLL9XAgQN1//3368Ybb3Qa71Pb/Qx4E34LgAbo8ssv1+uvv65Fixapb9++1db/+OOP2r17t8aNG3dG223VqpUkacOGDRo0aFCNbVJSUiSVz2x0vC1btig2NrbalLPbt293/IVZkn7++WfZ7fZaD6wtKCjQxIkTdeeddzrqOZFTPXdKSorsdru2b9/udMpLenq6srKyqm0/KSnJad+0bdtWvXv31meffaaRI0fq448/VmBgoObMmaOAgABHu+nTp9dYX7Nmzart68q/4B+vTZs21dqeaHrfjh07Otpeeuml2rNnj95+++0aT91p1aqVvvvuO/Xp06fOP8C1atVKa9eu1cCBA08rcNZ2/wwZMkQFBQX629/+dsqJCo4XFRXl9JwDBgxQkyZNNH36dE2YMKHGx1T9vajaK1O5rHJ9bGysQkNDT/j7I8np92Lo0KGKi4vTjBkz1KNHDxUUFOimm25yelxgYKC++uorbdu2TXv37pUxRunp6U6nxh09elTz5s3TxIkT9eijjzqWn6xnrE+fPgoJCdHYsWNPWG9ISMhJTwc8XZXvPfHx8Sd87zneZ599piVLltR4yt6pBAYGOj3P8OHDFR0drZdeekmvvfaaY3lsbKxTu9atW6tPnz5auHChmjdv7rTNyveZ09lXwcHBJ2xns9mq/RFg+/btuvjiix338/LydPDgQV122WVO7Tp27KiZM2cqKChIM2fO1NixY7Vu3TrHqZi12c+At+G0N6ABuv/++xUUFKRx48ZVm6b2yJEjuuOOOxQcHOzooThdXbt2VWpqqp577rlqY0Uqx1AkJSWpc+fOevvtt53abNiwQd9++221f4wl6eWXX3a6/+KLL0oq/1BeG88//7zy8/P1t7/97ZRtT/XclfU+99xzTu0qeyZONTvbsWPHJMkxTbOPj48sy3IaB7F79263z2Jmt9tls9lqDBzXX3+9ysrK9I9//KPautLS0tMaN3S6rr/+eu3fv1+vv/56tXXHjh2rdsrk2aj8K7ePj89Zbef4n3FNunfvrvj4eL366qtO7b755htt3rzZcRzZbDYNHTpUn3/+uXbt2uVod+TIEb399tvq3r2709gaX19fjRw5Uh9++KHeeustxzWCanLOOedo4MCBGjRokPr06eO0rnIfHD8W6vjj/nhxcXHq2rWr3nvvPR06dMixfMeOHfriiy906aWXnvX+lcrDanh4uJ566qkax3RVfW7p19Neb7jhBnXu3Pmsn7+4uFilpaUn/RlLJz+m4uLi1L17d7399ttOpx0ev698fHw0ePBgff75506nraWnp+u9995T3759q/XYT5s2zWm/TJ06VaWlpdXeQ7t27aqQkBDZbDa98cYb2r17t/7+97871p/pfga8ET0/QAPUpk0bvf322xo1apQ6duyo2267Tampqdq9e7fefPNNZWZm6v3333f8le902Ww2TZ06VVdccYU6d+6sW265RUlJSdqyZYs2btzoOMXsmWee0aWXXqpevXrptttuc0x1HRER4XStnUq7du3S8OHDNXToUC1ZssRxZfvzzz+/Vq//22+/1ZNPPuk0qPhETvXc559/vkaPHq1p06YpKytL/fv31/Lly/X222/rqquucvprq1R+/ZXK02X279+vl156SeHh4Y5JD4YNG6Znn31WQ4cO1Q033KCMjAy9/PLLat269SlPVXSlNWvWKDQ0VKWlpVq1apXeeecdXXnllTV+aOvfv7/GjRunSZMmac2aNRo8eLD8/Py0fft2zZw5U88//7x++9vfnvT5ysrKNHv27Go1SNLy5cvVrFkztW7dWjfddJM+/PBD3XHHHZo/f7769OmjsrIybdmyRR9++KHmzJmj7t271+o1b926VbNnz5bdbtemTZv0zDPP6IILLlDTpk3PaDvp6emOn3FmZqZee+01+fr6nvSaL35+fpo8ebJuueUW9e/fXyNHjnRMdd2iRQun09H+/ve/a/bs2erbt6/uvPNOBQQE6PXXX1d2drbjdLuqbr75Zr3wwguaP3++Jk+efEavpVJ4eLguuugiTZkyRSUlJWratKm+/fZbpwB2IlOmTNHQoUPVs2dPjRs3TqWlpXrppZcUGBhY48U8v//+e8eH98qepfXr1zsdH3l5ebLZbFqwYIH69++v8PBwTZ06VTfddJO6du2qESNGKC4uTnv27NFXX32lPn366KWXXnI8ft++ffL396/1pCn5+flOp729++67Kiws1NVXX+3U7tChQ466Dx48qMmTJysiIkIXX3yxtm3bVuO+Gjx4sHr16qXf//73jqmuj99XTzzxhObOnes4Bnx9ffXaa6+pqKjIcX22qoqLizVw4EBdf/312rp1q1555RX17dtXw4cPP+Fr7NChgx588EE9/fTTGjFihDp16nTG+xnwSu6dbA7Ayaxbt86MHDnSJCUlGT8/P5OYmGhGjhxp1q9ff9LHnWiq60qLFi0yv/nNb0xYWJgJCQkxnTp1qjZl6nfffWf69OljgoKCTHh4uLniiivMpk2bnNpUTn27adMm89vf/taEhYWZqKgoc9dddzlNB1zV6Ux1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TfPmzXMss9vtmjdvnnr16uXGylDXjDG666679Omnn+r777+v1k3crVs3+fn5OR0bW7du1Z49exzHRq9evbR+/XqnN6O5c+cqPDy82ociNC4DBw7U+vXrtWbNGsdX9+7dNWrUKMdtjg/v1qdPn2rT42/btk0pKSmSpNTUVCUmJjodIzk5OVq2bJnTMZKVlaVVq1Y52nz//fey2+3q0aNHPbwK1JWCggLZbM4fz3x8fGS32yVxfMCZq46HXr16aeHChSopKXG0mTt3rtq2betRp7xJYqrrs/HBBx+YgIAA89Zbb5lNmzaZsWPHmsjISKcZmuB5/vCHP5iIiAjzww8/mIMHDzq+CgoKHG3uuOMO07x5c/P999+blStXml69eplevXo51ldOZTx48GCzZs0aM3v2bBMXF8dUxh6q6mxvxnB8eLvly5cbX19f8+STT5rt27ebGTNmmODgYPOf//zH0ebpp582kZGR5vPPPzfr1q0zV155ZY1T13bp0sUsW7bMLFq0yLRp04apjD3A6NGjTdOmTR1TXX/yyScmNjbWPPDAA442HB/eJTc316xevdqsXr3aSDLPPvusWb16tfnll1+MMa45HrKyskxCQoK56aabzIYNG8wHH3xggoODmeoa1b344oumefPmxt/f31x44YVm6dKl7i4JdUxSjV/Tp093tDl27Ji58847TVRUlAkODjZXX321OXjwoNN2du/ebS699FITFBRkYmNjzZ///GdTUlJSz68G9eH48MPxgS+//NJ06NDBBAQEmHbt2plp06Y5rbfb7eaRRx4xCQkJJiAgwAwcONBs3brVqc3hw4fNyJEjTWhoqAkPDze33HKLyc3Nrc+XgTqQk5Nj7r77btO8eXMTGBhoWrZsaf72t785TUHM8eFd5s+fX+PnjtGjRxtjXHc8rF271vTt29cEBASYpk2bmqeffrq+XmK9soypcslgAAAAAPBQjPkBAAAA4BUIPwAAAAC8AuEHAAAAgFcg/AAAAADwCoQfAAAAAF6B8AMAAADAKxB+AAAAAHgFwg8AAAAAr0D4AQAAAOAVCD8AAAAAvALhBwAAAIBXIPwAAAAA8Ar/D/yKKyK3OPwCAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data=df2[['Ram', 'Battery', 'Display','Price', 'Inbuilt_memory']].copy()\n", "data['Price'] = pd.to_numeric(data['Price'], errors='coerce')\n", "# сначала разделение записей на 80% и 20%, где 80% - обучающая выборка\n", "train_data, temp_data = train_test_split(data, test_size=0.2, random_state=42)\n", "\n", "# потом разделение остальных 20% поровну на контрольную и тестовую выборки\n", "val_data, test_data = train_test_split(temp_data, test_size=0.5, random_state=42)\n", "\n", "# Проверка размеров выборок\n", "print(\"Размер обучающей выборки:\", len(train_data))\n", "print(\"Размер контрольной выборки:\", len(val_data))\n", "print(\"Размер тестовой выборки:\", len(test_data))\n", "\n", "\n", "sort_train_data=train_data.sort_values(by='Price')['Price'].values\n", "plt.figure(figsize=(10, 5))\n", "plt.plot(sort_train_data)\n", "plt.title('Отсортированные цены в обучающей выборке')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## **ДАТАСЕТ 3**\n", "\n", "https://www.kaggle.com/datasets/shivam2503/diamonds\n", "\n", "Проблемная оласть: цены на бриллианты\n", "\n", "Объект наблюдения: бриллиант\n", "\n", "Атрибуты:\n", "* carat: Вес в каратах\n", "* cut: Качество огранки\n", "* color: Цвет\n", "* clarity: Чистота\n", "* depth: Процент глубины \n", "* table: Процент ширины\n", "* price: Цена в долларах\n", "* x: Длина в миллиметрах\n", "* y: Ширина в миллиметрах\n", "* z: Глубина в миллиметрах\n", "\n", "Объект только 1, но в нём есть связь между ценой и всеми остальными характеристиками (чем лучше какая-либо характеристика, тем дороже бриллиант)\n", "\n", "Бизнес-цель: Предсказать оптимальную стоимость бриллианта на основе его характеристик. Эффект для бизнеса: ювелиры смогут предлагать конкурентоспособные цены, что потенциально увеличить прибыль. \n", "\n", "Цель технического проекта: Построить модель машинного обучения для прогнозирования цены бриллианта на основе его характеристик. Вход: характеристики бриллианта (вес, огранка, цвет, чистота, размеры). Целевой признак: цена" ] }, { "cell_type": "code", "execution_count": 290, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Index(['Unnamed: 0', 'carat', 'cut', 'color', 'clarity', 'depth', 'table',\n", " 'price', 'x', 'y', 'z'],\n", " dtype='object')\n" ] } ], "source": [ "df3 = pd.read_csv(\"..//static//csv//diamonds.csv\")\n", "print(df3.columns)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Оценка всех числовых признаков показывает, что в датасете довольно много шума. В большинстве своём он полезные, т.к. бриллианты могут иметь абсолютно разные значения характеристик, и их важно учитывать. Однако есть одиночные выбросы, из-за которых модель может некорректно обучиться. Это данные, у которых значение:\n", "* по параметру table больше 90\n", "* по параметру x около 0\n", "* по параметру y значение более 30 и около 0\n", "* по параметру z значение более 30\n", "\n", "Имеет смысл удалить данные выбросы.\n", "\n", "Большинство данных смещено в следующую сторону:\n", "* меньше 3 карат\n", "* по проценту глубины между 50 и 70\n", "* по проценту ширины между 50 и 60\n", "* по длине между 4 и 9 мм\n", "* по ширине между 5 и 10 мм\n", "* по глубине между 2 и 5 мм " ] }, { "cell_type": "code", "execution_count": 291, "metadata": {}, "outputs": [ { "data": { "image/png": "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rf/+97/q1KmTfvzxR2VnZ9vEBgcH65FHHjHX/fz89OSTT+r7779XRkZGkf3v3btXqampevzxx/Xrr7+a48z58+d1//33a8uWLcrPz7/jzwH7YqJzOLw//OEPNoWRPn36qHnz5ho+fLhiYmLk7u6un376ScHBwfL19bXZNyIiQpL0008/mdvc3d31zjvvmHNlLFmyxCyyXMvFxcVmEJGkBg0aSNJ1X9n6yy+/6MKFC2rYsGGhtoiICOXn5+vEiRNq1KhR8T78TRR8rqKOFx4erm3bttlsc3NzU61atW7a7y+//KKcnBw1btz4hnH5+fl6/fXXNX/+fB07dsx8/l6SqlevXig+LCzsjvsAUHFw/b++0rz+X7x4UfXr1y/U1rBhQ3355ZfmempqqgzDKDJWkipVqmSzHhwcXGgi3WvPa9u2bW+aX61atQr936xq1ar64YcfbrovAOfGmHB9pTUm3My3336rl156SUlJSbpw4YJNW3Z2tvz9/c31evXqFTq/157HwMDAQv2npqZKkjmPVlGys7NVtWrV2/4MsD+KUnA6Li4uioqK0uuvv67U1NTbuph/9dVXkq6+AS41NbXIYkl5dO1dSSVh2rRpGj9+vP76179qypQpqlatmlxcXDRixIgif7X4/V1St9MHgIqL6//tK+nrv3T1RwWLxaK1a9fK1dW1ULuPj0+JHk9SkceRVKwJhwGUL4wJt68kxoSjR4/q/vvvV3h4uF577TWFhITI3d1dX375pWbPnl0i/44v6OPVV19Vs2bNiowpjbEGZYuiFJzSlStXJEnnzp2TJNWpU0dff/21zp49a/PLyMGDB832Aj/88IMmT56sp556Snv37tXTTz+tffv22VTypasXwR9//NGs4EvS4cOHJUmhoaFF5lWjRg15e3vr0KFDhdoOHjwoFxcXhYSESFKRv8TcqoLPdejQIXXp0sWm7dChQzaf+1bUqFFDfn5+SklJuWHcqlWrFBUVpbfffttme1ZWlu66665iHau4fZTE+QLg/Lj+X1Wa138vLy/z1+nf93utunXryjAMhYWF2Zyr6zl16lSh147//rxyrQdwKxgTriqtMUG6fn6ff/65cnNz9dlnn9k87v37R7cLHDlyRIZh2PR3s/NYt25dSVcf9evatevtpA8nwJxScDqXL1/W+vXr5e7ubt6K+9BDD8lqtWru3Lk2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AAAAAKUlPT1dktS4ceMi2wu2F8QBzoiJzgEHdfToUUlXH92rV6+ezcSGoaGh+sc//mETBwAAAKD8KHjLdkpKitq2bVuoPSUlxSYOcEbcKQU4qLp160qSnn766SInNnzmmWds4gAAAACUHwVv4542bZry8/Nt2vLz85WQkMDbuOH0KEoBDmrw4MGSJHd3d7333ntavny5evbsqeXLl+u9996Tu7u7TRwAAACA8qPgbdxr1qxRbGyszY/UsbGxWrNmDW/jhtPj8T3AQe3cuVPS1QnPq1SpYm5fv3695s2bZxPXuXPnMs4OAAAAQGmLi4vTqlWrNHr0aEVGRprbw8LCtGrVKsXFxdkxO+DOOW1RasGCBVqwYIE5z06jRo00YcIEdevWzb6JASWkuBMWMrEhADifCxcu6ODBgyXW3549e27YHh4eLm9v7xI7HgCg7MTFxalHjx7aunWr0tPTFRQUpI4dO3KHFMoFpy1K1apVS6+88orq168vwzC0bNky9ejRQ99//70aNWpk7/SAO3bt3VElEQcAcBwHDx5Uy5YtS6y/m/WVnJysFi1alNjxAABl6+LFi3r99dd19OhR1a1bV61atZKPj4+90wLumNMWpbp3726z/vLLL2vBggXasWMHRSmUC2+//bbNelhYmGbMmKHnn39ex44ds4njDkEAcC7h4eFKTk6+YcytFK1u1ld4eHix+wIAOJY//OEP2rVrl7m+b98++fr6qnXr1vruu+/smBlw55y2KHUtq9WqlStX6vz582rXrp290wFKxMcff2z+/cADD2jixIlq3Lix7r77bk2cOFHr168vFAcAcA7e3t43vXPJMAxZLJab9mUYRkmlBQBwMAUFKYvFon79+mnMmDGaOXOmli9frl27dukPf/gDhSk4NacuSu3bt0/t2rXTpUuX5OPjo08++UT33nvvdeNzc3OVm5trrufk5JRFmsAdO3z4cKGJDQEA5d/NClMUpACg/Dp37pxZkLpw4YI8PT0lSe+++64WLVokb29v7dq1S+fOneNRPjgtF3sncCcaNmyovXv3aufOnRoyZIj69++v/fv3Xzc+ISFB/v7+5hISElKG2QK3b//+/dq0aZNWrFihTZs26T//+Y+9UwIAlBHDMApNUu7t7U1BCgDKuSeeeEKS1K9fP7MgVcDT01OPP/64TRzgjJy6KOXu7q569eqp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4r5plTeyorxq3769Dh06ZLPt8OHDqlOnjqSrk54HBgZq48aNatasmSQpJydHO3fu1JAhQ8o6XVRwqampOnv2bKke48CBAzb/LU2+vr6qX79+qR8HoCgFAADggIp7Bwd3eqC8GjlypCIjIzVt2jQ99thj+u6777Ro0SItWrRIkmSxWDRixAhNnTpV9evXV1hYmMaPH6/g4GDFxsbaN3lUKKmpqWrQoEGZHa9fv35lcpzDhw9TmEKpoygFAADggO6//37t2bOnWHFAedS6dWt98sknio+P1+TJkxUWFqY5c+aob9++Zszzzz+v8+fPa9CgQcrKylKHDh20bt06eXp62jFzVDQFd0gtX75cERERpXacixcvKi0tTaGhofLy8iq14xw4cED9+vUr9Tu/AImiFAAAgEOqWrVqicYBzigmJkYxMTHXbbdYLJo8ebImT55chlkBRYuIiFCLFi1K9Rjt27cv1f6BssZE5wAAAA5ow4YNJRoHAADgaChKAQAAOKDU1NQSjQMAAHA0FKUAAAAcUMEE5q6urkW2u7i42MQBAAA4G+aUAgAAcEDt27fX/v37ZbVa5e7url69eqlVq1bavXu3Vq1apby8PDMOAGBfgT4WeWUdlk45/30fXlmHFehjsXcaqCAoSgEAADigdu3aafHixZKkvLw8rVixQitWrCgyDgBgX4Nbuitiy2Bpi70zuXMRuvp5gLJAUQoAAMABJScnFzvuqaeeKuVsAAA38lZynv4yYakiwsPtncodO3DwoN6a9bj+bO9EUCFQlAIAAHBAhmFIkurUqaOffvrJps1isah27dr66aefzDgAgH1cuHBBGecMffvjOV2skl9qx7l48aLS0tIUGhoqLy+vUjvOgXSrMs4xtqBsUJQCAABwQPXr15ck/fTTT3rooYfk5eWlM2fOqGrVqrp48aK+/PJLmzgAgH0cPHhQkvTMM8/YOZOS5evra+8UUAFQlAIAAHBAQ4cO1dixY+Xu7q5169YpP/9/v767urrK29tbeXl5Gjp0qB2zBADExsZKksLDw+Xt7V1qxzlw4ID69eun5cuXKyIiotSOI10tSPGjB8oCRSkAAAAH5O7urocffliffvppoTar1aoLFy6oR48ecndnMloAsKe77rpLTz/9dJkdLyIiQi1atCiz4wGlyfnfVwkAAFAOWa1WJSUlSbo6h9S1CtaT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nMK8efO0YcMGbdiwQcuXL1dUVJSefvpprV692oz58ssv5erqqueee85m39GjR8swDJu3a0ycOFGNGjVS//79NXToUHXq1KnQfgWGDx9u/l3wiFpeXp6+/vrrIuOtVqvWr1+v2NhY3XPPPeb2oKAgPf7449q2bZtycnJu6zwUZffu3Tp9+rSGDh1qM3fTww8/rPDwcH3xxReF9hkyZMgtHWPYsGE2688++6ykq+f8Wp06ddK99957w77y8/OVmJio7t272zzXX8BisUi6evtwx44dVbVqVf33v/81l65du8pqtWrLli239BkAVGyMI9dX2uPIrZwrACgtjAPXV5rjwJNPPqnc3FytWrXK3PbRRx/pypUr6tev350nD6fHROdwCn/4wx9sChh9+vRR8+bNNXz4cMXExMjd3V0//fSTgoOD5evra7NvRESEJOmnn34yt7m7u+udd95R69at5enpqSVLlpjFkGu5uLjYDASS1KBBA0m67mtXf/nlF124cEENGzYs1BYREaH8/HydOHFCjRo1Kt6Hv4mCz1XU8cLDw7Vt2zabbW5ubqpVq9YtHaN+/fo263Xr1pWLi0uhcxAWFnbTvn755Rfl5OSocePGN4xLTU3VDz/8oBo1ahTZXjBJIwAUB+PI9ZX2OFLccwUApYlx4PpKcxwIDw9X69at9f7772vgwIGSpPfff19t27ZVvXr17jBzlAfcKQWn5OLioqioKKWnpys1NfW2+vjqq68kSZcuXbrtPpyRh4eHXFzu7H/61/sy4eXldUf9Xis/P19/+tOfzF+0fr/07NmzxI4FoOJhHLl9tzOOVNRzBcBxMQ7cvlsdB5588kl98803OnnypI4ePaodO3ZwlxRMFKXgtK5cuSJJOnfunCSpTp06OnXqlM6ePWsTd/DgQbO9wA8//KDJkyfrqaeeUvPmzfX0008rOzu70DHy8/P1448/2mw7fPiwJCk0NLTIvGrUqCFvb28dOnSoUNvBgwfl4uKikJAQSdcv7tyKgs9V1PEOHTpk87lv1+8H2SNHjig/P/+65+BGatSoIT8/P6WkpNwwrm7dujp37py6du1a5FK7du1bPjYAXItx5KrSHkeKe64AoKwxDlxV2uNA79695erqqg8++EDvv/++KlWqpL/85S931CfKD4pScEqXL1/W+vXr5e7ubt5O+9BDD8lqtWru3Lk2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AMBU3AcAoHfjPoCejFAKAAAAAAAApmNNKQAAAAAAAJiOUAoAAAAAAACmI5QCAAAAAACA6QilAAAAAAAAYDpCKQAAAAAAAJiOUAoAAAAAAACmI5QCAAAAAACA6QilAAAAAAAAYDpCKQAAAAAAAJiOUAoAAAAAAACmI5QCAAAAAACA6QilAAAAAAAAYDpCKQAAAAAAAJiOUAoAAAAAAACmI5QCAAAAAACA6QilAAAAAAAAYDpCKQAAAAAAAJiOUArwARaLRStWrDBlrM2bN2vMmDHq27evLBaLqqurTRkXAAAAAIBvIpRCj1ZQUCCLxeK2RUZGKjU1VW+++aa3y+uyTz75RCtWrFBFRUW7+p85c0Y/+MEPFBISovz8fP35z39Wv379PFskAAAAAADNCPJ2AYAZVq1apYSEBBmGoaqqKhUUFOjGG2/U66+/rv/4j//wdnmd9sknn2jlypWaNm2a4uPj2+z/wQcfqKamRg899JCmT5/u+QIBAAAAAGgBoRR6hfT0dF199dWu/YULFyoqKkovvfSSX4dSHXXq1ClJ0oABA7rtmrW1tcy2AgAAAAB0GI/voVcaMGCAQkJCFBTknsvW1tbqvvvuU1xcnKxWq6688ko9+uijMgxDklRfX6/ExEQlJiaqvr7edd7/+3//TzExMbrmmmvU0NAgSZo/f7769++vo0ePKi0tTf369VNsbKxWrVrlul5r/vGPfyg9PV3h4eHq37+/rr/+eu3evdt1vKCgQLfccoskKTU11fV44vbt25u93rRp05SZmSlJGjdunCwWi+bPn+86/uqrryo5OVkhISEaOHCg5s2bp3/9619u12j6TEeOHNGNN96osLAwzZ07t9nxKioqLnp08psbAAAAAKB3Y6YUegW73a4vvvhChmHo1KlT+t3vfqezZ89q3rx5rj6GYeg///M/tW3bNi1cuFBjxozRli1b9F//9V/617/+pccff1whISH605/+pEmTJumBBx7QY489JknKysqS3W5XQUGBAgMDXddsaGjQDTfcoIkTJ2r16tXavHmzli9frq+++kqrVq1qsd6PP/5YU6ZMUXh4uJYuXao+ffro2Wef1bRp07Rjxw5NmDBBU6dO1U9/+lM99dRTuv/++5WUlCRJrj+/7YEHHtCVV16p//3f/3U9znj55ZdL+jrgWrBggcaNG6e8vDxVVVXpySef1N///nf94x//cJtZ9dVXXyktLU2TJ0/Wo48+qtDQ0GbHGzRokP785z+7tV24cEFLlixRcHBwK/9rAQAAAAB6BQPowdauXWtIumizWq1GQUGBW9+NGzcakoyHH37YrX3OnDmGxWIxDh8+7GrLzc01AgICjJ07dxqvvvqqIcl44okn3M7LzMw0JBn33nuvq62xsdGYOXOmERwcbJw+fdrVLslYvny5az8jI8MIDg42jhw54mo7ceKEERYWZkydOtXV1jT2tm3bOvT7+OCDD1xt58+fNyIjI40RI0YY9fX1rvZNmzYZkoxly5Zd9Jl++ctftmu8b7vnnnuMwMBA45133unU+QAAAACAnoPH99Ar5Ofna+vWrdq6davWrVun1NRU3X777Vq/fr2rz9/+9jcFBgbqpz/9qdu59913nwzDcHtb34oVK3TVVVcpMzNT99xzj6699tqLzmuSnZ3t+tlisSg7O1vnz5/X22+/3Wz/hoYGvfXWW8rIyNBll13mao+JidFtt92md999Vw6Ho1O/h+bs3btXp06d0j333KO+ffu62mfOnKnExES98cYbF51z9913d3icF154QU8//bRWr16t1NTULtUMAAAAAPB/hFLoFcaPH6/p06dr+vTpmjt3rt544w0NHz7cFRBJ0meffabY2FiFhYW5ndv0ONxnn33magsODtbzzz+v8vJy1dTUaO3atc2ukxQQEOAWLEnSFVdcIenrNZeac/r0adXV1enKK6+86FhSUpIaGxt1/Pjx9n/4NjR9rubGS0xMdPvckhQUFKTBgwd3aIz9+/frrrvu0q233qqcnJzOFwsAAAAA6DEIpdArBQQEKDU1VSdPntShQ4c6dY0tW7ZIks6dO9fpa/gjq9WqgID2f3V8+eWXmj17tq644gr98Y9/9GBlAAAAAAB/QiiFXuurr76SJJ09e1aSdOmll+rEiROqqalx61daWuo63uTDDz/UqlWrtGDBAn33u9/V7bffLrvdftEYjY2NOnr0qFvbp59+KkmKj49vtq5BgwYpNDRUZWVlFx0rLS1VQECA4uLiJKlb3mLX9LmaG6+srMztc3dUY2Oj5s6dq+rqam3YsKHFRdEBAAAAAL0PoRR6pQsXLuitt95ScHCw6/G8G2+8UQ0NDfr973/v1vfxxx+XxWJRenq669z58+crNjZWTz75pAoKClRVVaUl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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "numeric_cols = df3.select_dtypes(include=['number']).columns\n", "\n", "#все столбцы, кроме Unnamed (с индексом)\n", "numeric_cols = [col for col in numeric_cols if 'Unnamed' not in col]\n", "\n", "# столбец 'id' также исключен\n", "numeric_cols = [col for col in numeric_cols if col != 'id']\n", "\n", "plt.figure(figsize=(12, 8))\n", " \n", "\n", "for i, col in enumerate(numeric_cols, 1):\n", " if col == 'id':\n", " continue\n", " Q1 = df3[col].quantile(0.25)\n", " Q3 = df3[col].quantile(0.75)\n", " IQR = Q3 - Q1\n", " lower_bound = Q1 - 1.5 * IQR\n", " upper_bound = Q3 + 1.5 * IQR\n", " outliers = df3[col][(df3[col] < lower_bound) | (df3[col] > upper_bound)]\n", " plt.subplot(len(numeric_cols) // 3 + 1, 3, i) \n", " plt.boxplot(x=df3[col])\n", " plt.title(f'Boxplot for {col}')\n", "\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "По числовым данным видно, что цена имеет прямую зависимость от веса и размеров бриллианта. Такая корреляции между столбцами carat, x, y, z и price является естественной и ожидаемой, так как чем больше бриллиант, тем он дороже" ] }, { "cell_type": "code", "execution_count": 292, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Просачивание данных: Высокая корреляция (0.92) между столбцами 'carat' и 'price'\n", "Просачивание данных: Высокая корреляция (0.88) между столбцами 'x' и 'price'\n", "Просачивание данных: Высокая корреляция (0.87) между столбцами 'y' и 'price'\n", "Просачивание данных: Высокая корреляция (0.86) между столбцами 'z' и 'price'\n" ] } ], "source": [ "#Проверка кореляции\n", "\n", "price_col = 'price' # Имя столбца с ценой\n", "for col1 in numeric_cols:\n", " if col1 != price_col:\n", " correlation = df3[col1].corr(df3[price_col])\n", " if abs(correlation) > 0.7:\n", " print(f\"Просачивание данных: Высокая корреляция ({correlation:.2f}) между столбцами '{col1}' и '{price_col}'\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Набор данных информативный, т.к. содержит основные характеристики бриллиантов, которые влияют на их цену\n", "\n", "Степень покрытия высокая, т.к. содержатся сведения о более 50000 бриллиантах\n", "\n", "Все метки согласованы, но 'depth' и 'x', 'y', 'z' могли быть названы немного подробнее" ] }, { "cell_type": "code", "execution_count": 293, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Количество записей: 53940\n" ] } ], "source": [ "print(f\"Количество записей: {df3.shape[0]}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Столбцов со значениями null нет, поэтому решать проблему пропущенных данных не надо" ] }, { "cell_type": "code", "execution_count": 294, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Столбцы с null: []\n" ] } ], "source": [ "columns_with_nulls = []\n", "for col in df3.columns:\n", " if df3[col].isnull().sum() > 0: \n", " columns_with_nulls.append(col)\n", "print(f\"Столбцы с null: {columns_with_nulls}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**РАЗБИЕНИЕ НА ВЫБОРКИ**\n", "\n", "train_data - обучающая выборка\n", "\n", "val_data - контрольная выборка\n", "\n", "test_data - тестовая выборка" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Обучающая выборка сбалансрована, т.к. график идёт достаточно ровно и нет \"перекоса\" количества бриллиантов в каком-то диапазоне цен. Поэтому аугментация данных не требуется " ] }, { "cell_type": "code", "execution_count": 295, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['Ideal' 'Premium' 'Good' 'Very Good' 'Fair']\n", "['E' 'I' 'J' 'H' 'F' 'G' 'D']\n", "['SI2' 'SI1' 'VS1' 'VS2' 'VVS2' 'VVS1' 'I1' 'IF']\n", "Размер обучающей выборки: 43152\n", "Размер контрольной выборки: 5394\n", "Размер тестовой выборки: 5394\n" ] }, { "data": { "text/plain": [ "Text(0.5, 1.0, 'Отсортированные цены в обучающей выборке')" ] }, "execution_count": 295, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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EGVDOXfv3l04OjoKV1dXERoaKl5++WWRkpJSoe31Jk+ebLPNyl7Xf29KS0vFu+++Kzp27CjUarVwd3cX3bt3FwsXLhS5ubm3fXzKX0qlUjRv3lxMnjxZXL58WQhRs2HMr1+Xm5ub6Nu3r9i4ceMtlxVCiO+//1507dpVqNVq4eHhISZOnCjVcL3Dhw+LyMhI4ezsLJycnMTAgQMrDO1+vY4dOwqlUlnpuipT2TDmly9fFvfff79wc3MTOp1OPPzwwyIlJaXC96eyn8EtW7aIPn36CI1GI1xdXcWIESNEfHy8zTbLj3FNXjeeh9u3bxeRkZFCp9MJjUYjWrVqJaZMmSIOHToktSk/32bNmmWz7M0+O6534/nq4uIiunXrJr7++mubdlX9vO/bt0+qFTcM0y+EEFu3brX5bIyKiqr0M7n8HHBxcRFOTk5i0KBBYu/evZXu086dO8W0adOEu7u7cHFxERMnTrR5jER5vTd+rhcXF4t27dqJnj17CrPZLE2vznEmaqoUQtzBOK5ERHdowYIFWLhwITIyMmrlPomGsm2yNXDgQAwcOLDS3kmqnq5du8LDwwNbt26Vu5Ras2PHDkyZMuWORuNs7Mofznzw4MHb7pkloprhPVBEREQN3KFDhxAXF4dJkybJXQoRUaPHe6CIiEh2vXr1qvCcLbq1hIQExMbG4r333oOfnx8effRRuUuqVR4eHhgwYIDcZRAR2WCAIiIi2VV2Uzzd2o8//oi33noLISEh+O6776ShqBuLsLAwfPnll3KXQURkg/dAERERERERVRPvgSIiIiIiIqomBigiIiIiIqJqatL3QFmtVqSkpMDV1RUKhULucoiIiIiISCZCCOTl5cHf3x9KZdX9TE06QKWkpCAgIEDuMoiIiIiIqJ64dOkSmjdvXuX8Jh2gXF1dAZQdJK1WK3M1REREREQkF6PRiICAACkjVKVJB6jyy/a0Wi0DFBERERER3fLWHg4iQUREREREVE0MUERERERERNXEAEVERERERFRNDFBERERERETVxABFRERERERUTQxQRERERERE1cQARUREREREVE0MUERERERERNXEAEVERERERFRNDFBERERERETVxABFRERERERUTQxQRERERERE1cQARUREREREVE32chdARERERERNz7HLucgrNqGt3hVeLmq5y6k29kAREREREdFd99/d5zHhs/34+fBluUupEQYoIiIiIiK6645ezgEAtPRykbeQGmKAIiIiIiKiuyojrwQXrhZCoQB6tfSQu5waYYAiIiIiIqK7KiElFwDQytsFWo2DzNXUDAMUERERERHdVadS8wAAIXpXmSupOQYoIiIiIiK6q/48bgAAtPVhgCIiIiIiIqqSxSqQcKXsEr7eDez+J4ABioiIiIiI7qIjF7NhtgoAQLdAd5mrqTkGKCIiIiIiumv2nM0EAESF+cHBruHFkYZXMRERERERNVgHkrIAABEtPWWu5PYwQBERERER0V1RbLJg77mrAIDw4IZ3/xPAAEVERERERHfJztMZAABvVzVa+7jIXM3tYYAiIiIiIqK7IuZa71OQpxMUCoXM1dweBigiIiIiIqpzVqvAHwmpAIDpA1rJXM3tY4AiIiIiIqI6l5iWhzRjCRwd7HBPGy+5y7ltDFBERERERFTnNh4r632KaOUJtb2dzNXcPgYoIiIiIiKqc7uuDSAxMsxP5kruDAMUERERERHVqbxiE04a8gAAXQLc5C3mDjFAERERERFRndp2Kh2lZitaeTsj2MtZ7nLuCAMUERERERHVqSMXcwAA/dp4N9jhy8sxQBERERERUZ3ad77s+U/dA91lruTOMUAREREREVGdySooxalr9z/1bukpczV3rsYBateuXRg1ahT8/f2hUCiwbt06m/kKhaLS15IlS6Q2QUFBFea/8847NuuJj49Hv379oNFoEBAQgMWLF1eoZe3atWjXrh00Gg1CQ0OxcePGmu4OERERERHVodgL2QCANj4u8HZVy1zNnatxgCooKEDnzp3x8ccfVzo/NTXV5vXFF19AoVDgwQcftGn31ltv2bR7/vnnpXlGoxFDhw5FYGAgYmNjsWTJEixYsAArVqyQ2uzduxfjx4/H1KlTceTIEYwdOxZjx45FQkJCTXeJiIiIiIjqyIkUIwCgo79W5kpqh31NFxg+fDiGDx9e5Xy9Xm/z/tdff8WgQYPQsmVLm+murq4V2pZbvXo1SktL8cUXX0ClUqFjx46Ii4vD+++/j2nTpgEAli5dimHDhmHu3LkAgLfffhvR0dH46KOPsHz58pruFhERERER1YG95zIBAN2DPGSupHbU6T1QaWlp2LBhA6ZOnVph3jvvvANPT0907doVS5YsgdlslubFxMSgf//+UKlU0rTI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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#приведение категориальных данных в числовые\n", "print(df3['cut'].unique())\n", "cut_mapping = {'Fair': 1, \n", " 'Good': 2, \n", " 'Very Good': 3, \n", " 'Premium': 4, \n", " 'Ideal': 5}\n", "df3['cut'] = df3['cut'].map(cut_mapping)\n", "\n", "print(df3['color'].unique())\n", "color_mapping = {'D': 1, \n", " 'E': 2, \n", " 'F': 3, \n", " 'G': 4, \n", " 'H': 5, \n", " 'I': 6, \n", " 'J': 7} \n", "df3['color'] = df3['color'].map(color_mapping)\n", "\n", "\n", "print(df3['clarity'].unique())\n", "clarity_mapping = {\n", " 'IF': 1, \n", " 'VVS1': 2, \n", " 'VVS2': 3, \n", " 'VS1': 4, \n", " 'VS2': 5, \n", " 'SI1': 6, \n", " 'SI2': 7, \n", " 'I1': 8} \n", "df3['clarity'] = df3['clarity'].map(clarity_mapping)\n", "\n", "\n", "\n", "data=df3.copy()\n", "\n", "\n", "# сначала разделение записей на 80% и 20%, где 80% - обучающая выборка\n", "train_data, temp_data = train_test_split(data, test_size=0.2, random_state=42)\n", "\n", "# потом разделение остальных 20% поровну на контрольную и тестовую выборки\n", "val_data, test_data = train_test_split(temp_data, test_size=0.5, random_state=42)\n", "\n", "# Проверка размеров выборок\n", "print(\"Размер обучающей выборки:\", len(train_data))\n", "print(\"Размер контрольной выборки:\", len(val_data))\n", "print(\"Размер тестовой выборки:\", len(test_data))\n", "\n", "\n", "sort_train_data=train_data.sort_values(by='price')['price'].values\n", "plt.figure(figsize=(10, 5))\n", "plt.plot(sort_train_data)\n", "plt.title('Отсортированные цены в обучающей выборке')" ] } ], "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 }