MAI_ISE-31_Andrikhov-A-S/lab3.ipynb
2024-11-09 09:10:23 +04:00

1102 lines
364 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Лабораторная работа 3."
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Index(['HeartDisease', 'BMI', 'Smoking', 'AlcoholDrinking', 'Stroke',\n",
" 'PhysicalHealth', 'MentalHealth', 'DiffWalking', 'Sex', 'AgeCategory',\n",
" 'Race', 'Diabetic', 'PhysicalActivity', 'GenHealth', 'SleepTime',\n",
" 'Asthma', 'KidneyDisease', 'SkinCancer'],\n",
" dtype='object')\n"
]
}
],
"source": [
"import pandas as pd\n",
"df = pd.read_csv(\"./datasets/var2/2020/heart_2020_cleaned.csv\")\n",
"print(df.columns)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Бизнес-цели:\n",
"- Разработка персонализированных программ профилактики сердечно-сосудистых заболеваний. Цель технического проекта: создание модели машинного обучения, которая будет прогнозировать риск сердечного приступа для каждого пациента на основе его индивидуальных факторов риска, и разработка онлайн-платформы или приложения для предоставления персонализированных рекомендаций по профилактике.\n",
"- Улучшение качества медицинской Цель технического проекта: использование данных для выявления групп населения с наибольшим риском сердечного приступа и разработки целевых программ профилактики и раннего выявления заболеваний.\n",
"\n",
"#### Выполним разбиение на 3 выборки: обучающую, контрольную и тестовую"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Размер обучающей выборки: 156699\n",
"Размер контрольной выборки: 67157\n",
"Размер тестовой выборки: 95939\n"
]
}
],
"source": [
"from sklearn.model_selection import train_test_split\n",
"\n",
"df = pd.read_csv(\"./datasets/var2/2020/heart_2020_cleaned.csv\")\n",
"\n",
"# Разделение на обучающую и тестовую выборки (например, 70% обучающая, 30% тестовая)\n",
"train_df, test_df = train_test_split(df, test_size=0.3, random_state=42)\n",
"\n",
"# Разделение обучающей выборки на обучающую и контрольную (например, 70% обучающая, 30% контрольная)\n",
"train_df, val_df = train_test_split(train_df, test_size=0.3, random_state=42)\n",
"\n",
"# Вывод размеров выборок\n",
"print(\"Размер обучающей выборки:\", len(train_df))\n",
"print(\"Размер контрольной выборки:\", len(val_df))\n",
"print(\"Размер тестовой выборки:\", len(test_df))\n"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Распределение классов в HeartDisease:\n",
"HeartDisease\n",
"No 292422\n",
"Yes 27373\n",
"Name: count, dtype: int64\n"
]
},
{
"data": {
"image/png": "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z18xSOaNaxiGqlWrppo1a1513F9++UU2m63AoyAXj/n999+refPmhfrQ8vb2zrdNV7qYfPjw4WrYsKG6du162fVv375djzzyyHWfks079err66slS5bo1VdfVYcOHfIFwsLsj6+++kpubm5asWKFw2nC2bNn5+s7NzdXv/zyy2WDc97rYNeuXapRo0aBNVWqVJEk7du3z+F+SXnT8ubncXNzc9j/TzzxhMqVK6fp06fr/fffv+x23eiy16Kwr6m1a9fqxIkT+vrrrxUSEmJOz/uWb2Fd7+vmyy+/1NmzZxUWFnbV2gcffFAPPvigxo8fr3nz5qlHjx764osv1K9fv5u2vYGBgQoMDNSIESO0efNmNW/eXLNmzdK4ceOu+b0A1uKaKtxRnJ2dZRiGw7SFCxfm+wp6586ddfz4cYevTOe5dPlr8cknnzhch/Hll1/q6NGjat++vSQpKChI1atX13//+1+dOXMm3/KX3sl54cKFcnZ2vupdqTt16iRnZ2eNHj06X/+GYejEiRPm8wsXLuirr75S06ZNr/i/1i5duignJ0djx47NN+/ChQvmKbPrER8fryVLluitt9667Adfly5d9Oeff+rDDz/MN+/s2bPKzMy86npq1qxpXtczbdo05ebm6pVXXnGoKez+cHZ2ls1mczilfPDgwXzBsWPHjnJyctKYMWPyHVHJ+9m0bdtWZcqUUXR0dL7rzvJqGjduLB8fH82aNcvhVOPy5cu1Z88eh28bFiQ7O1sXLlwo1O0nrFz2Sgr7mso7wnLxazk7O1szZ868pvWVLl36ml+n27dv16BBg1S2bFlFRERctu7UqVP5ftfyQnTefrN6ezMyMnThwgWHaYGBgXJycjLXeS3vBbAeR6pwR3nsscc0ZswY9e7dWw899JB27typuXPn6t5773Woe+655/TJJ58oMjJSW7duVYsWLZSZmanvv/9e//rXv/SPf/zjutZfrlw5Pfzww+rdu7dSUlI0ZcoU1ahRQ88//7wkycnJSR999JHat2+vevXqqXfv3rrnnnv0559/as2aNbLb7fr222+VmZmpGTNm6N1331XNmjW1du1acx15YWzHjh2Kj49XcHCwqlevrnHjxmn48OE6ePCgOnbsqDJlyigpKUmLFi1S//799dprr+n777/Xm2++qR07dujbb7+94ra0bNlSL7zwgqKjo5WYmKi2bduqZMmS2r9/vxYuXKipU6fmu3FiYa1cuVKPPvroFY/WPfvss1qwYIFefPFFrVmzRs2bN1dOTo727t2rBQsWaMWKFVc9gncxPz8/TZgwQf369dM///lPdejQ4Zr2R3h4uCZNmqR27drpmWee0bFjxzRjxgzVqFFDO3bsMOtq1KihN954Q2PHjlWLFi3UqVMnubq66scff5S/v7+io6Nlt9s1efJk9evXT02aNNEzzzyjsmXLavv27frrr780Z84clSxZUm+//bZ69+6tli1bqnv37uYtFapWrarBgwc79JeZmelwCu/TTz/VuXPn9OSTT15139zIsteisK+phx56SGXLllXPnj318ssvy2az6dNPP73m//AEBQXpvffe07hx41SjRg35+Pg4HPXbsGGDzp07Z36pZdOmTfrmm2/k6empRYsWXfF08Jw5czRz5kw9+eSTql69uk6fPq0PP/xQdrvdvAWL1du7evVqDRgwQE8//bRq1qypCxcu6NNPP5Wzs7M6d+4sSYV+L8BNcqu/bghcj7yvM1/p68uG8fctFV599VWjYsWKhru7u9G8eXMjPj7e4ev1ef766y/jjTfeMKpVq2aULFnS8PPzM5566injwIEDhmFc3y0VPv/8c2P48OGGj4+P4e7uboSHhxv/+9//8i3/888/G506dTLKly9vuLq6GlWqVDG6dOlixMXFOaz7ao+ePXs6jPvVV18ZDz/8sFG6dGmjdOnSRu3atY2IiAhj3759hmEYxsCBA42QkBAjNjY2X08F3ULAMP7+en1QUJDh7u5ulClTxggMDDSGDh1qHDlyxKy51lsq2Gw2IyEhwWF6QT+j7Oxs4+233zbq1atnuLq6GmXLljWCgoKM0aNHG+np6fnWd7XxDMMw2rRpY1SuXNk4ffr0Ne+P//u//zPuu+8+w9XV1ahdu7Yxe/bsy+63jz/+2HjggQfMvlu2bGmsWrXKoeabb74xHnroIcPd3d2w2+1G06ZNjc8//9yhZv78+eY45cqVM3r06GHeQiRPz549HV4XHh4eRqNGjYxPP/30ivvoRpfN2/bU1NQC51/udVGY19SmTZuMBx980HB3dzf8/f2NoUOHGitWrDAkGWvWrDHrWrZsadSrV6/A9ScnJxvh4eFGmTJlDEnm6yHv9zXvUbJkSaNChQpGSEiIMX78eOPYsWP5xrr0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eHi4srOztXnzZs2ZM0cxMTGKiooya5KSkhQeHq7WrVsrMTFRgwYNUr9+/bRixQqzZv78+YqMjNTIkSP1008/qUGDBgoLC9OxY8cK3QsAALh72QzDMIq6iTypqany8fHRunXrFBISovT0dFWoUEHz5s3TU089JUnau3ev6tSpo/j4eD344INavny5HnvsMR05ckS+vr6SpFmzZmnYsGFKTU2Vi4uLhg0bpmXLlmnXrl3murp166a0tDTFxsZKkpo1a6YmTZpo+vTpkqTc3FwFBARo4MCBev311wvVy9VkZGTI09NT6enpstvtlu67iwUN+eSmjQ0UVwkTnivqFgAUU4X9/L6trqlKT0+XJJUrV06SlJCQoPPnzys0NNSsqV27tipXrqz4+HhJUnx8vAIDA81AJUlhYWHKyMjQ7t27zZqLx8iryRsjOztbCQkJDjVOTk4KDQ01awrTy6WysrKUkZHh8AAAAHem2yZU5ebmatCgQWrevLnq168vSUpOTpaLi4u8vLwcan19fZWcnGzWXByo8ubnzbtSTUZGhs6ePavjx48rJyenwJqLx7haL5eKjo6Wp6en+QgICCjk3gAAAMXNbROqIiIitGvXLn3xxRdF3Yplhg8frvT0dPNx+PDhom4JAADcJCWKugFJGjBggJYuXar169erUqVK5nQ/Pz9lZ2crLS3N4QhRSkqK/Pz8zJpLv6WX9428i2su/ZZeSkqK7Ha73N3d5ezsLGdn5wJrLh7jar1cytXVVa6urtewJwAAQHFVpEeqDMPQgAEDtGjRIq1evVrVqlVzmB8UFKSSJUsqLi7OnLZv3z4dOnRIwcHBkqTg4GDt3LnT4Vt6q1atkt1uV926dc2ai8fIq8kbw8XFRUFBQQ41ubm5iouLM2sK0wsAALh7FemRqoiICM2bN09LlixRmTJlzGuTPD095e7uLk9PT/Xt21eRkZEqV66c7Ha7Bg4cqODgYPPbdm3btlXdunX17LPP6p133lFycrJGjBihiIgI8yjRiy++qOnTp2vo0KHq06ePVq9erQULFmjZsmVmL5GRkerZs6caN26spk2basqUKcrMzFTv3r3Nnq7WCwAAuHsVaah67733JEmtWrVymD579mz16tVLkjR58mQ5OTmpc+fOysrKUlhYmGbOnGnWOjs7a+nSpXrppZcUHBys0qVLq2fPnhozZoxZ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9dcLvT0ZGRny9PRUenq67Hb79e6Wqwoa8slNGxsorhImPFfULQAopgr7+X3bH6nav3+//P39de+996pHjx46dOiQJCkhIUHnz59XaGioWVu7dm1VrlxZ8fHxkqT4+HgFBgaagUqSwsLClJGRod27d5s1F4+RV5M3RnZ2thISEhxqnJycFBoaatYAAACUKOoGrqRZs2aKiYlRrVq1dPToUY0ePVotWrTQrl27lJycLBcXF3l5eTks4+vrq+TkZElScnKyQ6DKm58370o1GRkZOnv2rE6dOqWcnJwCa/bu3XvF/rOyspSVlWU+z8jIKPzGAwCAYuW2DlXt27c3/33//ferWbNmqlKlihYsWCB3d/ci7KxwoqOjNXr06KJuAwAA3AK3/em/i3l5ealmzZr67bff5Ofnp+zsbKWlpTnUpKSkyM/PT5Lk5+eX79uAec+vVmO32+Xu7i5vb285OzsXWJM3xuUMHz5c6enp5uPw4cPXvM0AAKB4KFah6syZMzpw4IAqVqyooKAglSxZUnFxceb8ffv26dChQwoODpYkBQcHa+fOnQ7f0lu1apXsdrvq1q1r1lw8Rl5N3hguLi4KCgpyqMnNzVVcXJxZczmurq6y2+0ODwAAcGe6rUPVa6+9pnXr1ungwYPavHmznnzySTk7O6t79+7y9PRU3759FRkZqTVr1ighIUG9e/dWcHCwHnzwQUlS27ZtVbduXT377LPavn27VqxYoREjRigiIkKurq6SpBdffFG///67hg4dqr1792rmzJlasGCBBg8ebPYRGRmpDz/8UHPmzNGePXv00ksvKTMzU7179y6S/QIAAG4/t/U1VX/88Ye6d++uEydOqEKFCnr44Yf1ww8/qEKFCpKkyZMny8nJSZ07d1ZWVpbCwsI0c+ZMc3lnZ2ctXbpUL730koKDg1W6dGn17NlTY8aMMWuqVaumZcuWafDgwZo6daoqVaqkjz76SGFhYWZN165dlZqaqqioKCUnJ6thw4aKjY3Nd/E6AAC4e93W96m603CfKqDocJ8qANfrjrlPFQAAQHFAqAIAALAAoQoAAMAChCoAAAALEKoAAAAsQKgCAACwAKEKAADAAoQqAAAACxCqAAAALECoAgAAsAChCgAAwAKEKgAAAAsQqgAAACxAqAIAALAAoQoAAMAChCoAAAALEKoAAAAsQKgCAACwAKEK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LyUmJqpWrVp6+eWXtXLlSofxz5w5o/LlyzusIykpyeEUIoAbU6KoGwCAyyldurRq1KjhMO2PP/4w/33mzBm98MILevnll/MtW7lyZWVmZiosLExhYWGaO3euKlSooEOHDiksLEzZ2dn51nUjTpw4odTUVFWrVq3A+f369VNYWJiWLVumlStXKjo6WhMnTtTAgQN15swZPf7443r77bfzLVexYkVJ0uOPP64qVaroww8/lL+/v3Jzc1W/fn1zOxo1aqSkpCQtX75c33//vbp06aLQ0FB9+eWXOnPmjCpWrKi1a9fmG9/Ly+uGthvA/0eoAlBsNWrUSL/88ku+4JVn586dOnHihN566y0FBARIkrZt21aosV1cXJSTk1PoXqZOnSonJ6cCbwORJyAgQC+++KJefPFFDR8+XB9++KEGDhyoRo0a6auvvlLVqlVVokT+t+UTJ05o3759+vDDD9WiRQtJf1+gfym73a6uXbuqa9eueuqpp9SuXTudPHlSjRo1UnJyskqUKOFwnRUAa3H6D0CxNWzYMG3evFkDBgxQYmKi9u/fryVLlpgXqleuXFkuLi6aNm2afv/9d33zzTcaO3ZsocauWrWqkpKSlJiYqOPHjysrK8ucd/r0aSUnJ+vw4cNav369+vfvr3Hjxmn8+PGXDXiDBg3SihUrlJSUpJ9++klr1qxRnTp1JP19EfvJkyfVvXt3/fjjjzpw4IBWrFih3r17KycnR2XLllX58uX1wQcf6LffftPq1asVGRnpMP6kSZP0+eefa+/evfr111+1cOFC+fn5mbd7CA4OVseOHbVy5UodPHhQmzdv1htvvFHokAng6ghVAIqt+++/X+vWrdOvv/6qFi1a6IEHHlBUVJT8/f0lSRUqVFBMTIwWLlyounXr6q233tJ///vfQo3duXNntWvXTq1bt1aFChX0+eefm/OioqJUsWJF1ahRQ88++6zS09MVFxenYcOGXXa8nJwcRUREqE6dOmrXrp1q1qypmTNnSpL8/f21adMm5eTkqG3btgoMDNSgQYPk5eUlJycnOTk56YsvvlBCQoLq16+vwYMHa8KECQ7jlylTRu+8844aN26sJk2a6ODBg/ruu+/k5OQkm82m7777TiEhIerdu7dq1qypbt266X//+598fX2vdbcDuAybYRhGUTcBAABQ3HGkCgAAwAKEKgAAAAsQqgAAACxAqAIAALAAoQoAAMAChCoAAAALEKoAAAAsQKgCAACwAKEKAADAAoQqAAAACxCqAAAALECoAgAAsMD/A8EDBhsbeGvMAAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Распределение классов в Обучающей выборке:\n",
"HeartDisease\n",
"No 143331\n",
"Yes 13368\n",
"Name: count, dtype: int64\n"
]
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Распределение классов в Контрольной выборке:\n",
"HeartDisease\n",
"No 61442\n",
"Yes 5715\n",
"Name: count, dtype: int64\n"
]
},
{
"data": {
"image/png": "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BQVOdxZZ3R8eHh5yc3NzOOV78OBBp2DYuXNnubu7a+zYsU5HN+3fm3bt2ql06dIaP36803Vf9pomTZqoYsWKmjlzpsOpwKVLl2rPnj0Od+sVJi8vTxcuXLD0eIbruax08Qijm5ub/vOf/5jTIiIi5OnpqalTpzr8jH7wwQfKysr6w+25HhYuXOjwWbBlyxZt3rzZfH9WqlRJjRo10uzZsx1+vnft2qXly5c73UX72WefydPT0zzKdi3sPxuFHRn+Ix07dlRaWprmzp1rTrtw4YKmTZsmX19ftW7d2qnPHTt2FHqXalGcPXtWkhweO1CYgoKCK25fx44dlZ+f7/QZbD+ybP95sO/zy+9Uu7zO7siRIw531GVnZ+ujjz5So0aNnI4I2u+UjYqKUo8ePTRs2DCHvzDRrVs3JSUladmyZU79Z2ZmXvXatOKOI02QJHXq1Eljx45V3759ddddd2nnzp365JNPHH6zlS5esP3RRx8pJiZGW7ZsUcuWLZWTk6OVK1fqP//5j/71r38Vaf1ly5bV3Xffrb59+yo9PV1TpkxRaGioeXjd3d1d77//vjp06KC6deuqb9++uvXWW/Xbb79pzZo1stls+vrrr5WTk6O33npLU6dOVY0aNRye+WIPWzt27FBSUpLCw8N1++236+WXXzZv1+3cubNKly6t1NRUffnllxowYICee+45rVy5Ui+99JJ27Nihr7/++qrb0rp1az355JMaP368UlJS1K5dO5UsWVL79+/X/PnzFR8fr65duxZpPy1fvlz33XffVX+De/TRRzVv3jw99dRTWrNmjVq0aKH8/Hzt3btX8+bN07Jly/7wCNylAgMDNWnSJPXv31///ve/1bFjx2vaH1FRUXrzzTfVvn17PfLIIzp27JjeeusthYaGaseOHWZdaGioXnjhBY0bN04tW7bUQw89JC8vL23dulVBQUEaP368bDabJk+erP79+6tp06Z65JFHVKZMGW3fvl2///67Zs+erZIlS2rixInq27evWrdurZ49e5qPHAgJCXG6piQnJ8fhFNt///tfnTt3zuGi2Cv5M8sWpkqVKho3bpxiYmI0d+5cde/eXRUqVFBsbKzGjBmj9u3b64EHHtC+ffs0Y8YMNW3aVP/+97+LtK5rERoaqrvvvlsDBw5Ubm6upkyZonLlyjmcfpk0aZI6dOig8PBw9evX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19+8eXM1atRIM2fO/MNtyc7Olp+fn7KysmSz2f7Ufrka7p4DnHH3HICiupb/v116pOmrr75SkyZN9PDDD6tixYq644479N5775nzU1NTlZaWpoiICHOan5+fmjVrpqSkJElSUlKS/P39zcAkSREREXJ3d9fmzZvNmlatWpmBSZIiIyO1b98+nTp1yqy5dD32Gvt6Lpebm6vs7GyHFwAAuHm5NDT973//09tvv63q1atr2bJlGjhwoJ5++mnNnj1bkpSWliZJCggIcFguICDAnJeWlqaKFSs6zC9RooTKli3rUFPYGJeu40o19vmXGz9+vPz8/MxXcHDwNW8/AAC4cbg0NBUUFKhx48Z69dVXdccdd2jAgAF64oknLJ0Oc7XY2FhlZWWZr8OHD7u6JQAA8BdyaWiqVKmS6tSp4zCtdu3aOnTokCQpMDBQkpSenu5Qk56ebs4LDAzUsWPHHOZfuHBBJ0+edKgpbIxL13GlGvv8y3l5eclmszm8AADAzculoalFixbat2+fw7SffvpJVatWlSRVq1ZNgYGBWrVqlTk/OztbmzdvVnh4uCQpPDxcmZmZSk5ONmtWr16tgoICNWvWzKxZv369zp8/b9asWLFCNWvWNO/UCw8Pd1iPvca+HgAA8M/m0tA0dOhQfffdd3r11Vf1888/a86cOXr33XcVHR0tSXJzc9OQIUP08ssv66uvvtLOnTv12GOPKSgoSJ07d5Z08chU+/bt9cQTT2jLli3auHGjBg0apB49eigoKEiS9Mgjj8jT01P9+vXT7t27NXfuXMXHxysmJsbs5ZlnnlFiYqLeeOMN7d27V6NHj9a2bds0aNCgv32/AACA4self7C3adOm+vLLLxUbG6uxY8eqWrVqmjJlinr16mXWDB8+XDk5ORowYIAyMzN19913KzExUd7e3mbNJ598okGDBqlt27Zyd3dXly5dNHXqVHO+n5+fli9frujoaIWFhal8+fKKi4tzeJbTXXfdpTlz5ujFF1/U888/r+rVq2vhwoWqV6/e37MzAABAsebS5zTdTHhOE+A6PKcJQFHdMM9pAgAAuFEQmgAAACwgNAEAAFhAaAIAALCA0AQAAGABoQkAAMACQhMAAIAFhCYAAAALCE0AAAAWEJoAAAAsIDQBAABYQGgCAACwgNAEAABgAaEJAADAAkITAACABYQmAAAACwhN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LHhOE+A6PKcJQFHdUM9pAgAAuBEQmgAAACwgNAEAAFhAaAIAALCA0AQAAGABoQkAAMACQhMAAIAFhCYAAAALCE0AAAAWEJoAAAAsIDQBAABYQGgCAACwgNAEAABgAaEJAADAAkITAACABYQmAAAACwhNAAAAFhCaAAAALCA0AQAAWEBoAgAAsKBIoalNmzbKzMx0mp6dna02bdr82Z4AAACKnSKFprVr1yovL89p+rlz57Rhw4Y/3RQAAEBxU+Jainfs2GH++8cff1RaWpr5dX5+vhITE3Xrrbdev+4AAACKiWsKTY0aNZKbm5vc3NwKPQ3n4+OjadOmXbfmAAAAiotrCk2pqakyDEO33XabtmzZogoVKpjzPD09VbFiRXl4eFz3JgEAAFztmkJT1apVJUkFBQV/STMAAADF1TWFpkvt379fa9as0bFjx5xCVFxc3J9uDAAAoDgpUmh67733NHDgQJUvX16BgYFyc3Mz57m5uRGaAADATadIoenll1/WK6+8ohEjRlzvfgAAAIqlIj2n6dSpU3r44Yevdy8AAADFVpFC08MPP6zly5df714AAACKrSKdngsNDdVLL72k7777TvXr11fJkiUd5j/99NPXpTkAAIDiokih6d1335Wvr6/WrVundevWOcxzc3MjNAEAgJtOkUJTamrq9e4DAACgWCvSNU0AAAD/NEU60vT4449fdf6HH35YpGYAAACKqyKFplOnTjl8ff78ee3atUuZmZmF/iFfAACAG12RQtOXX37pNK2goEADBw7U7bff/qebAgAAKG6u2zVN7u7uiomJ0eTJk6/XkAAAAMXGdb0Q/MCBA7pw4cL1HBIAAKBYKNLpuZiYGIevDcPQ0aNHtWTJEvXu3fu6NAYAAFCcFCk0/fDDDw5fu7u7q0KFCnrjjTf+8M46AACAG1GRQtOaNWuudx8AAADFWpFCk11GRob27dsnSapZs6YqVKhwXZoCAAAobop0IXhOTo4ef/xxVapUSa1atVKrVq0UFBSkfv366ffff7/ePQIAALhckUJTTEyM1q1bp6+//lqZmZnKzMzUokWLtG7dOj377LPXu0cAAACXK1JoWrBggT744AN16NBBNptNNptNHTt21HvvvafPP//c8jhvv/22GjRoYI4RHh6upUuXmvPPnTun6OholStXTr6+vurSpYvS09Mdxjh06JCioqJ0yy23qGLFiho2bJjTYw/Wrl2rxo0by8vLS6GhoUpISHDq5a233lJISIi8vb3VrFkzbdmy5dp2CgAAuKkVKTT9/vvvCggIcJpesWLFazo9V7lyZU2YMEHJycnatm2b2rRpo3/961/avXu3JGno0KH6+uuvNX/+fK1bt05HjhzRQw89ZC6fn5+vqKgo5eXladOmTZo9e7YSEhIUFxdn1qSmpioqKkr33nuvUlJSNGTIEPXv31/Lli0za+bOnauYmBiNGjVK33//vRo2bKjIyEgdO3asKLsHAADchNwMwzCudaG2bduqXLly+uijj+Tt7S1JOnv2rHr37q2TJ09q5cqVRW6obNmymjRpkrp27aoKFSpozpw56tq1qyRp7969ql27tpKSktS8eXMtXbpUnTp10pEjR8wQN3PmTI0YMUIZGRny9PTUiBEjtGTJEu3atctcR48ePZSZmanExERJUrNmzdS0aVNNnz5d0sU/CRMcHKzBgwdr5MiRlvrOzs6Wn5+fsrKyZLPZirz9fyRs2Ed/2djAjSp50mOubgHADepa/v8u0pGmKVOmaOPGjapcubLatm2rtm3bKjg4WBs3blR8fHyRms7Pz9dnn32mnJwchYeHKzk5WefPn1dERIRZU6tWLVWpUkVJSUmSpKSkJNWvX9/hqFdkZKSys7PNo1VJSUkOY9hr7GPk5eUpOTnZocbd3V0RERFmTWFyc3OVnZ3t8AIAADevIj1yoH79+tq/f78++eQT7d27V5LUs2dP9erVSz4+Ptc01s6dOxUeHq5z587J19dXX375perUqaOUlBR5enrK39/foT4gIEBpaWmSpLS0NKfThPav/6gmOztbZ8+e1alTp5Sfn19ojX3bCjN+/HiNGTPmmrYVAADcuIoUmsaPH6+AgAA98cQTDtM//PBDZWRkaMSIEZbHqlmzplJSUpSVlaXPP/9cvXv31rp164rS1t8qNjbW4c/JZGdnKzg42IUdAQCAv1KRTs+98847qlWrltP0unXraubMmdc0lqenp0JDQxUWFqbx48erYcOGio+PV2BgoPLy8pSZmelQn56ersDAQElSYGCg09109q//qMZms8nHx0fly5eXh4dHoTX2MQrj5eVl3vVnfwEAgJtXkUJTWlqaKlWq5DS9QoUKOnr06J9qqKCgQLm5uQoLC1PJkiW1atUqc96+fft0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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Распределение классов в Тестовой выборке:\n",
"HeartDisease\n",
"No 87649\n",
"Yes 8290\n",
"Name: count, dtype: int64\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAk0AAAHHCAYAAACiOWx7AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABGQ0lEQVR4nO3dd3gUdfv+/XOTkCIhhJYmAXLTS25KKAYEBCKhyRdFKSLSBNQAYpCm0kGaSBURC6CCIiBFkNCbiJQgTQGRO0iRhFCSQCiBZJ4//GUelg04BGSDvl/HscfBzlzzmWtms5uTmdmJzTAMQwAAALgjF2c3AAAA8DAgNAEAAFhAaAIAALCA0AQAAGABoQkAAMACQhMAAIAFhCYAAAALCE0AAAAWuDm7AQAA/q2uXr2q8+fPy83NTX5+fs5uB3+BI00AgH+cadOmKSkpyXw+adIkpaamOq+hm6xdu1bNmzeXr6+vvLy89Oijj+q1115zdluwgNAES2bPni2bzWY+PD09VapUKfXo0UMJCQnObg/4Vzl27Jjd+/FOj2PHjjm7Xaf49ttvNXToUJ04cUJz587VoEGD5OXl5ey2NH36dEVGRio5OVmTJ0/WmjVrtGbNGg0fPtzZrcECTs/hrgwfPlwhISG6evWqvv/+e33wwQf67rvvdODAAT3yyCPObg/4VyhUqJA+//xzu2kTJkzQyZMnNXHiRIfaf6M333xTzZs31+TJk+Xi4qIJEybIxcW5xwmOHDmi6OhodevWTdOnT5fNZnNqP7h7Nv5gL6yYPXu2OnXqpJ07d6pq1arm9D59+ui9997TvHnz1LZtWyd2CPy7NWvWTAcOHPjXHlnKSlJSkg4ePKjg4GAVLlzY2e2oZ8+e+vbbb3XkyBHlypXL2e0gGzg9h3tSv359SVJcXJwk6fz583rjjTcUGhoqb29v+fj4qHHjxtq7d6/DslevXtXQoUNVqlQpeXp6KjAwUM8884yOHj0q6a9PQTzxxBPmWBs3bpTNZtP8+fP15ptvKiAgQLlz51bz5s114sQJh3Vv375djRo1Ut68efXII4+obt262rp1a5bb+MQTT2S5/qFDhzrUfvHFFwoLC5OXl5fy58+vNm3aZLn+O23bzTIyMjRp0iSVL19enp6e8vf3V/fu3XXhwgW7umLFiqlZs2YO6+nRo4fDmFn1Pn78eId9KknXrl3TkCFDVKJECXl4eCg4OFj9+vXTtWvXstxXN3viiSccxhs1apRcXFw0b968bO2Pd999VzVr1lSBAgXk5eWlsLAwLVy4MMv1f/HFF6pevboeeeQR5cuXT3Xq1NHq1avtalauXKm6desqT5488vHxUbVq1Rx6W7BggfmaFixYUC+88IJOnTplV9OxY0e7nvPly6cnnnhCW7Zs+cv9dC/L3o2kpCT17t1bwcHB8vDwUIkSJTR27FhlZGTY1WVkZGjy5MkKDQ2Vp6enChUqpEaNGmnXrl2S9JenA29+zc+cOaMuXbrI399fnp6eqlixoubMmWO3vltf+1y5cqlYsWLq27ev0tLS7Gr/97//6bnnnlP+/Pn1yCOP6LHHHtOKFSvsajI/CzZu3ChfX1+Fh4ercOHCatq06W3ft1ktn/nw8PBQqVKlNHr0aN18jGHo0KGy2Ww6e/bsbccqVqyYOnbsaD7/8ccfFRYWpldffVX+/v7y8PBQhQoV9NFHHzksm5qaqj59+pivV+nSpfXuu+/q1uMcNptNPXr00Ny5c1W6dGl5enoqLCxMmzdvtqvL7PdmGzZskIeHh15++WW76adOnVLnzp3NHsuXL69PP/30jvvt34LTc7gnmQGnQIECkv78UFuyZImee+45hYSEKCEhQR9++KHq1q2rX375RUFBQZKk9PR0NWvWTOvWrVObNm302muv6eLFi1qzZo0OHDig4sWLm+to27atmjRpYrfegQMHZtnPqFGjZLPZ1L9/f505c0aTJk1SRESE9uzZY17PsH79ejVu3FhhYWEaMmSIXFxcNGvWLNWvX19btmxR9erVHcYtXLiwRo8eLUm6dOmSXnnllSzXPWjQILVq1UovvfSSEhMTNXXqVNWpU0c//fSTfH19HZbp1q2bateuLUn65ptvtHjxYrv53bt3N4/y9erVS3FxcZo2bZp++uknbd269b78bzUpKcnctptlZGSoefPm+v7779WtWzeVLVtW+/fv18SJE/Xrr79qyZIld7WeWbNm6e2339aECRP0/PPPZ1nzV/tj8uTJat68udq1a6e0tDR99dVXeu6557R8+XI1bdrUrBs2bJiGDh2qmjVravjw4XJ3d9f27du1fv16NWzYUNKfR087d+6s8uXLa+DAgfL19dVPP/2kmJgYs7/MfV+tWjWNHj1aCQkJmjx5srZu3erw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+/dr7ty5+s9//mNX9+KLL+qzzz5TdHS0duzYodq1ays1NVVr167Vq6++qv/7v//L1vrz58+vxx9/XJ06dVJCQoImTZqkEiVKqGvXrpL+vDbh448/VuPGjVW+fHl16tRJjz76qE6dOqUNGzbIx8dH3377rVJTU/X+++9rypQpKlWqlDZu3GiuIzNs7du3T9u2bVN4eLiKFy+ukSNHauDAgTp27JhatGihPHnyKC4uTosXL1a3bt30xhtvaO3atRo0aJD27dunb7/99o7bUrduXXXv3l2jR4/Wnj171LBhQ+XKlUtHjhzRggULNHnyZD377LPZ2k+rV6/Wk08+ecf/TbZv315ff/21Xn75ZW3YsEG1atVSenq6Dh06pK+//lqrVq36yyNwNwsICND48eP10ksv6YUXXlCTJk3uan80bdpU7733nho1aqTnn39eZ86c0fvvv68SJUpo3759Zl2JEiX01ltvacSIEapdu7aeeeYZeXh4aOfOnQoKCtLo0aPl4+OjiRMn6qWXXlK1atX0/PPPK1++fNq7d68uX76sOXPmKFeuXBo7dqw6deqkunXrqm3btuYtB4oVK2Z3vY305y/wm0+xff7557p69eodvwp/P5a1om/fvlq2bJmaNWumjh07KiwsTKmpqdq/f78WLlyoY8eOqWDBgqpXr57at2+vKVOm6MiRI2rUqJEyMjK0ZcsW1atXTz169LC8zm7duunDDz9Ux44dFRsbq2LFimnhwoXaunWrJk2a5HC9zrZt2+Tm5maenps6daoqV65sHn0ZMGCAvvzySzVu3Fi9evVS/vz5NWfOHMXFxWnRokUO1wmtXr1ao0aNsruW8m6sWbNGJ0+eNE/PzZ07V82bN5e7u7td3fr16+1Oz/3222+3/Vp+ly5d9MEHH6hjx47atWuXQkJCtGTJEq1bt05jxowxe33qqadUr149vfXWWzp27JgqVqyo1atXa+nSperdu7fdLVmkP6/Ni4yMtLvlgKQsw28mm82mjz/+WJUqVdKQIUM0btw4SdKYMWO0YcMG1ahRQ127dlW5cuV0/vx57d69W2vXrtX58+eztT//MR701/XwcMr8avHOnTvvWHf16lWjT58+RmBgoOHl5WXUqlXL2LZtm93XzzNdvnzZeOutt4yQkBAjV65cRkBAgPHss88aR48eNQwje7cc+PLLL42BAwca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6tVLI0eOVK1atTRkyBDt27fPbjs2bNhgtx1lypSRJPMU3JEjR9S2bVv95z//kY+Pj3kUKXM7OnbsqD179qh06dLq1auXVq9ebTf+pUuXVKBAAbt1xMXF2Z3iA3Dv3JzdAIB/p9y5c6tEiRJ2006ePGn++9KlS+revbt69erlsGyRIkWUmpqqyMhIRUZGau7cuSpUqJCOHz+uyMhIpaWlOazrXpw7d06JiYkKCQnJcv5LL72kyMhIrVixQqtXr9bo0aM1YcIE9ezZU5cuXdJTTz2lsWPHOiwXGBgoSXrqqadUtGhRffTRRwoKClJGRoYqVKhgbkeVKlUUFxenlStXau3atWrVqpUiIiK0cOFCXbp0SYGBgdq4caPD+L6+vve03QDsEZoA5EhVqlTRL7/84hCsMu3fv1/nzp3TmDFjFBwcLEnatWuXpbHd3d2Vnp5uuZfJkyfLxcUly9skZAoODtbLL7+sl19+WQMHDtRHH32knj17qkqVKlq0aJGKFSsmNzfHj9xz587p8OHD+uijj1S7dm1Jf14AfysfHx+1bt1arVu31rPPPqtGjRrp/PnzqlKliuLj4+Xm5mZ3nROA+4/TcwBypP79++uHH35Qjx49tGfPHh05ckRLly41LwQvUqSI3N3dNXXqVP3vf//TsmXLNGLECEtjFytWTHFxcdqzZ4/Onj2ra9eumfMuXryo+Ph4nThxQps3b1a3bt00cuRIjRo16rYBrnfv3lq1apXi4uK0e/dubdiwQWXLlpX050Xi58+fV9u2bbVz504dPXpUq1atUqdOnZSenq58+fKpQIECmjlzpn777TetX79e0dHRduO/9957+vLLL3Xo0CH9+uuvWrBggQICAszbIYSHh6tFixZavXq1jh07ph9++EFvvfWW5RAJwBpCE4Ac6b///a82bdqkX3/9VbVr11blypU1ePBgBQUFSZIKFSqk2bNna8GCBSpXrpzGjBmjd99919LYLVu2VKNGjVSvXj0VKlRIX375pTlv8ODBCgwMVIkSJdS+fXslJydr3bp16t+//23HS09PV1RUlMqWLatGjRqpVKlSmj59uiQpKChIW7duVXp6uho2bKjQ0FD17t1bvr6+cnFxkYuLi7766ivFxsaqQoUKev311zV+/Hi78fPkyaNx48apatWqqlatmo4dO6bvvvtOLi4ustls+u6771SnTh116tRJpUqVUps2bfT777/L39//bnc7gDuwGYZhOLsJAACAnI4jTQAAABYQmgAAACwgNAEAAFhAaAIAALCA0AQAAGABoQkAAMACQhMAAIAFhCYAAAALCE0AAAAWEJoAAAAsIDQBAABYQGgCAACw4P8D9HJIA7hu5D8AAAAASUVORK5CYII=",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"\n",
"# Проверка распределения классов в целевой переменной\n",
"class_distribution = df['HeartDisease'].value_counts()\n",
"print(\"Распределение классов в HeartDisease:\")\n",
"print(class_distribution)\n",
"\n",
"# Визуализация распределения классов\n",
"sns.countplot(x='HeartDisease', data=df)\n",
"plt.title('Распределение классов в HeartDisease')\n",
"plt.show()\n",
"\n",
"# Проверка сбалансированности для каждой выборки\n",
"def check_balance(df, title):\n",
" class_distribution = df['HeartDisease'].value_counts()\n",
" print(f\"Распределение классов в {title}:\")\n",
" print(class_distribution)\n",
" sns.countplot(x='HeartDisease', data=df)\n",
" plt.title(f'Распределение классов в {title}')\n",
" plt.show()\n",
"\n",
"# Проверка сбалансированности для обучающей, контрольной и тестовой выборок\n",
"check_balance(train_df, 'Обучающей выборке')\n",
"check_balance(val_df, 'Контрольной выборке')\n",
"check_balance(test_df, 'Тестовой выборке')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Можно заметить, что данные не сбалансированы - во всех выборках количество значений \"No\" превышает \"Yes\" в среднем в 10 раз. Для балансировки данных будет применен метод upsampling"
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"Распределение классов в всем датасете:\n",
"Класс No: 292422 (91.44%)\n",
"Класс Yes: 27373 (8.56%)\n",
"\n",
"Распределение классов в Обучающей выборке до upsampling:\n",
"Класс No: 143331 (91.47%)\n",
"Класс Yes: 13368 (8.53%)\n",
"Размер обучающей выборки после upsampling: 286662\n",
"\n",
"Распределение классов в Обучающей выборке после upsampling:\n",
"Класс No: 143331 (50.00%)\n",
"Класс Yes: 143331 (50.00%)\n",
"\n",
"Распределение классов в Контрольной выборке:\n",
"Класс No: 61442 (91.49%)\n",
"Класс Yes: 5715 (8.51%)\n",
"\n",
"Распределение классов в Тестовой выборке:\n",
"Класс No: 87649 (91.36%)\n",
"Класс Yes: 8290 (8.64%)\n"
]
}
],
"source": [
"from imblearn.over_sampling import RandomOverSampler\n",
"\n",
"# Функция для проверки балансировки данных\n",
"def check_balance(df, title):\n",
" class_distribution = df['HeartDisease'].value_counts()\n",
" print(f\"\\nРаспределение классов в {title}:\")\n",
" for cls, count in class_distribution.items():\n",
" print(f\"Класс {cls}: {count} ({count / len(df) * 100:.2f}%)\")\n",
"\n",
"# Проверка балансировки для всего датасета\n",
"check_balance(df, 'всем датасете')\n",
"\n",
"# Проверка балансировки для обучающей выборки до upsampling\n",
"check_balance(train_df, 'Обучающей выборке до upsampling')\n",
"\n",
"# Применение upsampling к обучающей выборке\n",
"X_train = train_df.drop('HeartDisease', axis=1) # Отделяем признаки от целевой переменной\n",
"y_train = train_df['HeartDisease'] # Целевая переменная\n",
"\n",
"# Инициализация RandomOverSampler\n",
"ros = RandomOverSampler(random_state=42)\n",
"\n",
"# Применение upsampling\n",
"X_train_resampled, y_train_resampled = ros.fit_resample(X_train, y_train)\n",
"\n",
"# Создание нового DataFrame с балансированными данными\n",
"train_df_resampled = pd.concat([X_train_resampled, y_train_resampled], axis=1)\n",
"\n",
"# Вывод размеров выборок после upsampling\n",
"print(\"Размер обучающей выборки после upsampling:\", len(train_df_resampled))\n",
"\n",
"# Проверка балансировки для обучающей выборки после upsampling\n",
"check_balance(train_df_resampled, 'Обучающей выборке после upsampling')\n",
"\n",
"# Проверка балансировки для контрольной и тестовой выборок (они не должны измениться)\n",
"check_balance(val_df, 'Контрольной выборке')\n",
"check_balance(test_df, 'Тестовой выборке')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Данные были сбалансированы. Теперь можно перейти к конструированию признаков. Поставлены следующие задачи:\n",
"- Разработка персонализированных программ профилактики сердечно-сосудистых заболеваний\n",
"- Улучшение качества медицинской помощи"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Унитарное кодирование категориальных признаков (one-hot encoding)"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {},
"outputs": [],
"source": [
"# Определение категориальных признаков\n",
"categorical_features = [\n",
" 'Smoking', 'AlcoholDrinking', 'Stroke', 'DiffWalking', 'Sex', 'AgeCategory', 'Race',\n",
" 'Diabetic', 'PhysicalActivity', 'GenHealth', 'Asthma', 'KidneyDisease', 'SkinCancer'\n",
"]\n",
"\n",
"# Применение one-hot encoding к обучающей выборке\n",
"train_df_resampled_encoded = pd.get_dummies(train_df_resampled, columns=categorical_features)\n",
"\n",
"# Применение one-hot encoding к контрольной выборке\n",
"val_df_encoded = pd.get_dummies(val_df, columns=categorical_features)\n",
"\n",
"# Применение one-hot encoding к тестовой выборке\n",
"test_df_encoded = pd.get_dummies(test_df, columns=categorical_features)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Дискретизация числовых признаков"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [],
"source": [
"# Применение upsampling к обучающей выборке\n",
"X_train = train_df.drop('HeartDisease', axis=1) # Отделяем признаки от целевой переменной\n",
"y_train = train_df['HeartDisease'] # Целевая переменная\n",
"\n",
"# Инициализация RandomOverSampler\n",
"ros = RandomOverSampler(random_state=42)\n",
"\n",
"# Применение upsampling\n",
"X_train_resampled, y_train_resampled = ros.fit_resample(X_train, y_train)\n",
"\n",
"# Создание нового DataFrame с балансированными данными\n",
"train_df_resampled = pd.concat([X_train_resampled, y_train_resampled], axis=1)\n",
"\n",
"# Определение числовых признаков для дискретизации\n",
"numerical_features = ['BMI', 'PhysicalHealth', 'MentalHealth', 'SleepTime']\n",
"\n",
"# Функция для дискретизации числовых признаков\n",
"def discretize_features(df, features, bins=5, labels=False):\n",
" for feature in features:\n",
" df[f'{feature}_bin'] = pd.cut(df[feature], bins=bins, labels=labels)\n",
" return df\n",
"\n",
"# Применение дискретизации к обучающей, контрольной и тестовой выборкам\n",
"train_df_resampled = discretize_features(train_df_resampled, numerical_features)\n",
"val_df = discretize_features(val_df, numerical_features)\n",
"test_df = discretize_features(test_df, numerical_features)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Ручной синтез. Создание новых признаков на основе экспертных знаний и логики предметной области. Например, для данных о продаже автомобилей можно создать признак \"возраст автомобиля\" как разницу между текущим годом и годом выпуска."
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {},
"outputs": [],
"source": [
"# Применение upsampling к обучающей выборке\n",
"X_train = train_df.drop('HeartDisease', axis=1) # Отделяем признаки от целевой переменной\n",
"y_train = train_df['HeartDisease'] # Целевая переменная\n",
"\n",
"# Инициализация RandomOverSampler\n",
"ros = RandomOverSampler(random_state=42)\n",
"\n",
"# Применение upsampling\n",
"X_train_resampled, y_train_resampled = ros.fit_resample(X_train, y_train)\n",
"\n",
"# Создание нового DataFrame с балансированными данными\n",
"train_df_resampled = pd.concat([X_train_resampled, y_train_resampled], axis=1)\n",
"\n",
"# Создание нового признака \"Age\" на основе категориального признака \"AgeCategory\"\n",
"age_mapping = {\n",
" '18-24': 21,\n",
" '25-29': 27,\n",
" '30-34': 32,\n",
" '35-39': 37,\n",
" '40-44': 42,\n",
" '45-49': 47,\n",
" '50-54': 52,\n",
" '55-59': 57,\n",
" '60-64': 62,\n",
" '65-69': 67,\n",
" '70-74': 72,\n",
" '75-79': 77,\n",
" '80 or older': 80\n",
"}\n",
"\n",
"train_df_resampled['Age'] = train_df_resampled['AgeCategory'].map(age_mapping)\n",
"val_df['Age'] = val_df['AgeCategory'].map(age_mapping)\n",
"test_df['Age'] = test_df['AgeCategory'].map(age_mapping)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Масштабирование признаков - это процесс преобразования числовых признаков таким образом, чтобы они имели одинаковый масштаб. Это важно для многих алгоритмов машинного обучения, которые чувствительны к масштабу признаков, таких как линейная регрессия, метод опорных векторов (SVM) и нейронные сети."
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.model_selection import train_test_split\n",
"from imblearn.over_sampling import RandomOverSampler\n",
"from sklearn.preprocessing import StandardScaler\n",
"\n",
"# Применение upsampling к обучающей выборке\n",
"X_train = train_df.drop('HeartDisease', axis=1) # Отделяем признаки от целевой переменной\n",
"y_train = train_df['HeartDisease'] # Целевая переменная\n",
"\n",
"# Инициализация RandomOverSampler\n",
"ros = RandomOverSampler(random_state=42)\n",
"\n",
"# Применение upsampling\n",
"X_train_resampled, y_train_resampled = ros.fit_resample(X_train, y_train)\n",
"\n",
"# Создание нового DataFrame с балансированными данными\n",
"train_df_resampled = pd.concat([X_train_resampled, y_train_resampled], axis=1)\n",
"\n",
"# Создание нового признака \"Age\" на основе категориального признака \"AgeCategory\"\n",
"age_mapping = {\n",
" '18-24': 21,\n",
" '25-29': 27,\n",
" '30-34': 32,\n",
" '35-39': 37,\n",
" '40-44': 42,\n",
" '45-49': 47,\n",
" '50-54': 52,\n",
" '55-59': 57,\n",
" '60-64': 62,\n",
" '65-69': 67,\n",
" '70-74': 72,\n",
" '75-79': 77,\n",
" '80 or older': 80\n",
"}\n",
"\n",
"train_df_resampled['Age'] = train_df_resampled['AgeCategory'].map(age_mapping)\n",
"val_df['Age'] = val_df['AgeCategory'].map(age_mapping)\n",
"test_df['Age'] = test_df['AgeCategory'].map(age_mapping)\n",
"\n",
"# Определение числовых признаков для масштабирования\n",
"numerical_features_to_scale = ['BMI', 'PhysicalHealth', 'MentalHealth', 'SleepTime', 'Age']\n",
"\n",
"# Инициализация StandardScaler\n",
"scaler = StandardScaler()\n",
"\n",
"# Масштабирование числовых признаков в обучающей выборке\n",
"train_df_resampled[numerical_features_to_scale] = scaler.fit_transform(train_df_resampled[numerical_features_to_scale])\n",
"\n",
"# Масштабирование числовых признаков в контрольной и тестовой выборках\n",
"val_df[numerical_features_to_scale] = scaler.transform(val_df[numerical_features_to_scale])\n",
"test_df[numerical_features_to_scale] = scaler.transform(test_df[numerical_features_to_scale])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Конструирование признаков с применением фреймворка Featuretools"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\entityset\\entityset.py:1733: UserWarning: index id not found in dataframe, creating new integer column\n",
" warnings.warn(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\synthesis\\deep_feature_synthesis.py:169: UserWarning: Only one dataframe in entityset, changing max_depth to 1 since deeper features cannot be created\n",
" warnings.warn(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\logical_types.py:841: FutureWarning: Downcasting behavior in `replace` is deprecated and will be removed in a future version. To retain the old behavior, explicitly call `result.infer_objects(copy=False)`. To opt-in to the future behavior, set `pd.set_option('future.no_silent_downcasting', True)`\n",
" series = series.replace(ww.config.get_option(\"nan_values\"), np.nan)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Обучающая выборка после конструирования признаков:\n",
" HeartDisease BMI Smoking AlcoholDrinking Stroke PhysicalHealth \\\n",
"id \n",
"0 False 32.23 False False False 0.0 \n",
"1 False 29.53 False False False 0.0 \n",
"2 False 30.13 False False False 0.0 \n",
"3 False 35.43 False False False 0.0 \n",
"4 False 29.53 False False False 0.0 \n",
"\n",
" MentalHealth DiffWalking Sex AgeCategory Race Diabetic \\\n",
"id \n",
"0 0.0 True Male 75-79 White Yes \n",
"1 0.0 True Female 50-54 White No \n",
"2 0.0 False Male 50-54 White No \n",
"3 15.0 False Female 18-24 Hispanic No \n",
"4 0.0 True Female 65-69 White Yes \n",
"\n",
" PhysicalActivity GenHealth SleepTime Asthma KidneyDisease SkinCancer \\\n",
"id \n",
"0 True Fair 6.0 False True True \n",
"1 True Very good 8.0 False False False \n",
"2 True Excellent 7.0 False False False \n",
"3 True Good 7.0 False False False \n",
"4 False Good 10.0 False False False \n",
"\n",
" Age \n",
"id \n",
"0 77 \n",
"1 52 \n",
"2 52 \n",
"3 21 \n",
"4 67 \n",
"Контрольная выборка после конструирования признаков:\n",
" HeartDisease BMI Smoking AlcoholDrinking Stroke PhysicalHealth \\\n",
"id \n",
"80125 False 22.71 False False False 0.0 \n",
"116296 False 25.80 False False False 0.0 \n",
"18780 False 17.74 True False False 0.0 \n",
"233006 <NA> NaN <NA> <NA> <NA> NaN \n",
"182306 <NA> NaN <NA> <NA> <NA> NaN \n",
"\n",
" MentalHealth DiffWalking Sex AgeCategory Race Diabetic \\\n",
"id \n",
"80125 0.0 False Male 25-29 White No \n",
"116296 0.0 False Male 50-54 Hispanic No \n",
"18780 0.0 False Female 65-69 White No \n",
"233006 NaN <NA> NaN NaN NaN NaN \n",
"182306 NaN <NA> NaN NaN NaN NaN \n",
"\n",
" PhysicalActivity GenHealth SleepTime Asthma KidneyDisease \\\n",
"id \n",
"80125 True Excellent 8.0 False False \n",
"116296 True Good 7.0 False False \n",
"18780 True Good 7.0 False False \n",
"233006 <NA> NaN NaN <NA> <NA> \n",
"182306 <NA> NaN NaN <NA> <NA> \n",
"\n",
" SkinCancer Age \n",
"id \n",
"80125 False 27 \n",
"116296 False 52 \n",
"18780 False 67 \n",
"233006 <NA> <NA> \n",
"182306 <NA> <NA> \n",
"Тестовая выборка после конструирования признаков:\n",
" HeartDisease BMI Smoking AlcoholDrinking Stroke PhysicalHealth \\\n",
"id \n",
"271884 <NA> NaN <NA> <NA> <NA> NaN \n",
"270361 <NA> NaN <NA> <NA> <NA> NaN \n",
"219060 <NA> NaN <NA> <NA> <NA> NaN \n",
"24010 False 26.5 False False False 14.0 \n",
"181930 <NA> NaN <NA> <NA> <NA> NaN \n",
"\n",
" MentalHealth DiffWalking Sex AgeCategory Race Diabetic \\\n",
"id \n",
"271884 NaN <NA> NaN NaN NaN NaN \n",
"270361 NaN <NA> NaN NaN NaN NaN \n",
"219060 NaN <NA> NaN NaN NaN NaN \n",
"24010 0.0 True Male 75-79 White Yes \n",
"181930 NaN <NA> NaN NaN NaN NaN \n",
"\n",
" PhysicalActivity GenHealth SleepTime Asthma KidneyDisease \\\n",
"id \n",
"271884 <NA> NaN NaN <NA> <NA> \n",
"270361 <NA> NaN NaN <NA> <NA> \n",
"219060 <NA> NaN NaN <NA> <NA> \n",
"24010 True Excellent 9.0 False False \n",
"181930 <NA> NaN NaN <NA> <NA> \n",
"\n",
" SkinCancer Age \n",
"id \n",
"271884 <NA> <NA> \n",
"270361 <NA> <NA> \n",
"219060 <NA> <NA> \n",
"24010 False 77 \n",
"181930 <NA> <NA> \n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\logical_types.py:841: FutureWarning: Downcasting behavior in `replace` is deprecated and will be removed in a future version. To retain the old behavior, explicitly call `result.infer_objects(copy=False)`. To opt-in to the future behavior, set `pd.set_option('future.no_silent_downcasting', True)`\n",
" series = series.replace(ww.config.get_option(\"nan_values\"), np.nan)\n"
]
}
],
"source": [
"import featuretools as ft\n",
"\n",
"# Создание нового признака \"Age\" на основе категориального признака \"AgeCategory\"\n",
"age_mapping = {\n",
" '18-24': 21,\n",
" '25-29': 27,\n",
" '30-34': 32,\n",
" '35-39': 37,\n",
" '40-44': 42,\n",
" '45-49': 47,\n",
" '50-54': 52,\n",
" '55-59': 57,\n",
" '60-64': 62,\n",
" '65-69': 67,\n",
" '70-74': 72,\n",
" '75-79': 77,\n",
" '80 or older': 80\n",
"}\n",
"\n",
"train_df['Age'] = train_df['AgeCategory'].map(age_mapping)\n",
"val_df['Age'] = val_df['AgeCategory'].map(age_mapping)\n",
"test_df['Age'] = test_df['AgeCategory'].map(age_mapping)\n",
"\n",
"# Определение сущностей\n",
"es = ft.EntitySet(id='heart_data')\n",
"es = es.add_dataframe(dataframe_name='train', dataframe=train_df, index='id')\n",
"\n",
"# Генерация признаков\n",
"feature_matrix, feature_defs = ft.dfs(entityset=es, target_dataframe_name='train', max_depth=2)\n",
"\n",
"# Преобразование признаков для контрольной и тестовой выборок\n",
"val_feature_matrix = ft.calculate_feature_matrix(features=feature_defs, entityset=es, instance_ids=val_df.index)\n",
"test_feature_matrix = ft.calculate_feature_matrix(features=feature_defs, entityset=es, instance_ids=test_df.index)\n",
"\n",
"# Вывод первых нескольких строк для проверки\n",
"print(\"Обучающая выборка после конструирования признаков:\")\n",
"print(feature_matrix.head())\n",
"print(\"Контрольная выборка после конструирования признаков:\")\n",
"print(val_feature_matrix.head())\n",
"print(\"Тестовая выборка после конструирования признаков:\")\n",
"print(test_feature_matrix.head())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Оценка качества каждого набора признаков\n",
"- Предсказательная способность Метрики: RMSE, MAE, R²\n",
"- Методы: Обучение модели на обучающей выборке и оценка на контрольной и тестовой выборках.\n",
"- Скорость вычисления Методы: Измерение времени выполнения генерации признаков и обучения модели.\n",
"- Надежность Методы: Кросс-валидация, анализ чувствительности модели к изменениям в данных.\n",
"- Корреляция Методы: Анализ корреляционной матрицы признаков, удаление мультиколлинеарных признаков.\n",
"- Цельность Методы: Проверка логической связи между признаками и целевой переменной, интерпретация результатов модели."
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Размер обучающей выборки: 156699\n",
"Размер контрольной выборки: 67157\n",
"Размер тестовой выборки: 95939\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\synthesis\\deep_feature_synthesis.py:169: UserWarning: Only one dataframe in entityset, changing max_depth to 1 since deeper features cannot be created\n",
" warnings.warn(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\logical_types.py:841: FutureWarning: Downcasting behavior in `replace` is deprecated and will be removed in a future version. To retain the old behavior, explicitly call `result.infer_objects(copy=False)`. To opt-in to the future behavior, set `pd.set_option('future.no_silent_downcasting', True)`\n",
" series = series.replace(ww.config.get_option(\"nan_values\"), np.nan)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\logical_types.py:841: FutureWarning: Downcasting behavior in `replace` is deprecated and will be removed in a future version. To retain the old behavior, explicitly call `result.infer_objects(copy=False)`. To opt-in to the future behavior, set `pd.set_option('future.no_silent_downcasting', True)`\n",
" series = series.replace(ww.config.get_option(\"nan_values\"), np.nan)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Feature Importance:\n",
" feature importance\n",
"0 HeartDisease 0.854583\n",
"5 Age 0.016474\n",
"1 BMI 0.013826\n",
"11 Stroke_True 0.009034\n",
"2 PhysicalHealth 0.008447\n",
"12 DiffWalking_False 0.008264\n",
"4 SleepTime 0.007288\n",
"37 Diabetic_Yes 0.007211\n",
"10 Stroke_False 0.006678\n",
"44 GenHealth_Poor 0.005835\n",
"42 GenHealth_Fair 0.005484\n",
"13 DiffWalking_True 0.005208\n",
"3 MentalHealth 0.004902\n",
"35 Diabetic_No 0.003429\n",
"48 KidneyDisease_False 0.003063\n",
"28 AgeCategory_80 or older 0.003052\n",
"14 Sex_Female 0.002828\n",
"15 Sex_Male 0.002511\n",
"49 KidneyDisease_True 0.002422\n",
"6 Smoking_False 0.001900\n",
"7 Smoking_True 0.001779\n",
"41 GenHealth_Excellent 0.001690\n",
"45 GenHealth_Very good 0.001673\n",
"39 PhysicalActivity_False 0.001611\n",
"43 GenHealth_Good 0.001548\n",
"34 Race_White 0.001539\n",
"40 PhysicalActivity_True 0.001510\n",
"50 SkinCancer_False 0.001392\n",
"51 SkinCancer_True 0.001354\n",
"47 Asthma_True 0.001334\n",
"46 Asthma_False 0.001333\n",
"27 AgeCategory_75-79 0.001169\n",
"26 AgeCategory_70-74 0.000973\n",
"31 Race_Black 0.000868\n",
"24 AgeCategory_60-64 0.000837\n",
"32 Race_Hispanic 0.000803\n",
"25 AgeCategory_65-69 0.000783\n",
"33 Race_Other 0.000662\n",
"23 AgeCategory_55-59 0.000617\n",
"8 AlcoholDrinking_False 0.000559\n",
"9 AlcoholDrinking_True 0.000550\n",
"29 Race_American Indian/Alaskan Native 0.000514\n",
"36 Diabetic_No, borderline diabetes 0.000471\n",
"22 AgeCategory_50-54 0.000441\n",
"21 AgeCategory_45-49 0.000326\n",
"20 AgeCategory_40-44 0.000283\n",
"30 Race_Asian 0.000265\n",
"19 AgeCategory_35-39 0.000218\n",
"38 Diabetic_Yes (during pregnancy) 0.000135\n",
"18 AgeCategory_30-34 0.000124\n",
"17 AgeCategory_25-29 0.000108\n",
"16 AgeCategory_18-24 0.000094\n"
]
}
],
"source": [
"from imblearn.over_sampling import RandomOverSampler\n",
"from sklearn.ensemble import RandomForestClassifier\n",
"\n",
"# Вывод размеров выборок\n",
"print(\"Размер обучающей выборки:\", len(train_df))\n",
"print(\"Размер контрольной выборки:\", len(val_df))\n",
"print(\"Размер тестовой выборки:\", len(test_df))\n",
"\n",
"# Определение категориальных признаков\n",
"categorical_features = [\n",
" 'Smoking', 'AlcoholDrinking', 'Stroke', 'DiffWalking', 'Sex', 'AgeCategory', 'Race',\n",
" 'Diabetic', 'PhysicalActivity', 'GenHealth', 'Asthma', 'KidneyDisease', 'SkinCancer'\n",
"]\n",
"\n",
"# Применение one-hot encoding к обучающей выборке\n",
"train_df_encoded = pd.get_dummies(train_df, columns=categorical_features)\n",
"\n",
"# Применение one-hot encoding к контрольной выборке\n",
"val_df_encoded = pd.get_dummies(val_df, columns=categorical_features)\n",
"\n",
"# Применение one-hot encoding к тестовой выборке\n",
"test_df_encoded = pd.get_dummies(test_df, columns=categorical_features)\n",
"\n",
"# Определение сущностей\n",
"es = ft.EntitySet(id='heart_data')\n",
"es = es.add_dataframe(dataframe_name='heart', dataframe=train_df_encoded, index='id')\n",
"\n",
"# Генерация признаков\n",
"feature_matrix, feature_defs = ft.dfs(entityset=es, target_dataframe_name='heart', max_depth=2)\n",
"\n",
"# Преобразование признаков для контрольной и тестовой выборок\n",
"val_feature_matrix = ft.calculate_feature_matrix(features=feature_defs, entityset=es, instance_ids=val_df_encoded.index)\n",
"test_feature_matrix = ft.calculate_feature_matrix(features=feature_defs, entityset=es, instance_ids=test_df_encoded.index)\n",
"\n",
"# Оценка важности признаков\n",
"X = feature_matrix\n",
"y = train_df_encoded['HeartDisease']\n",
"\n",
"# Разделение данных на обучающую и тестовую выборки\n",
"X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)\n",
"\n",
"# Обучение модели\n",
"model = RandomForestClassifier(n_estimators=100, random_state=42)\n",
"model.fit(X_train, y_train)\n",
"\n",
"# Получение важности признаков\n",
"importances = model.feature_importances_\n",
"feature_names = feature_matrix.columns\n",
"\n",
"# Сортировка признаков по важности\n",
"feature_importance = pd.DataFrame({'feature': feature_names, 'importance': importances})\n",
"feature_importance = feature_importance.sort_values(by='importance', ascending=False)\n",
"\n",
"print(\"Feature Importance:\")\n",
"print(feature_importance)"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Размер обучающей выборки: 15670\n",
"Размер контрольной выборки: 6716\n",
"Размер тестовой выборки: 9594\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\entityset\\entityset.py:1733: UserWarning: index id not found in dataframe, creating new integer column\n",
" warnings.warn(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\woodwork\\type_sys\\utils.py:33: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
" pd.to_datetime(\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n",
"c:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\featuretools\\computational_backends\\feature_set_calculator.py:143: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n",
" df = pd.concat([df, default_df], sort=True)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Accuracy: 1.0\n",
"Precision: 1.0\n",
"Recall: 1.0\n",
"F1 Score: 1.0\n",
"ROC AUC: 1.0\n",
"Cross-validated Accuracy: 0.906126356094448\n"
]
},
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 1000x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Train Accuracy: 0.9994894703254626\n",
"Train Precision: 0.9992816091954023\n",
"Train Recall: 0.9949928469241774\n",
"Train F1 Score: 0.9971326164874552\n",
"Train ROC AUC: 0.9974613898298016\n"
]
},
{
"data": {
"image/png": "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Hw6POL399tv68ccf9fPPPytt2rQaPny4jh07ph9//FGvv/56fGQEAACJxG+//aYKFSqoR48eZtPk6empGTNmKDAwkKYJQLL10jfATWq4AS4AAC/m1q1b8vLyslv8oX379ho/fryyZctmYTIAeDGO9AYOjzhduHDBbu7ynj171KtXL82bN8/xpAAAIMl45ZVXNHjwYElSuXLltHPnTn3++ec0TQBSBIcbp1atWmnr1q2SpKtXr6pOnTras2ePhg4dqlGjRjkcYPbs2fL29pa7u7t8fX21Z8+eZ+5/584ddevWTTly5JCbm5sKFy6s9evXO/y+AADg2X799VeFhYXZ1fr3769FixZp7969qlSpkkXJACDhOdw4HTlyRBUrVpQkrVixQqVKldLOnTu1dOlSLV682KFjLV++XH369JG/v78CAwNVpkwZ1atXT9evX3/i/hEREXr99dd19uxZrVy5UkFBQZo/f75y5crl6McAAABPcfHiRbVs2VI1a9bUp59+arfN3d1dHTp0sLuXIwCkBA43To8ePZKbm5sk6eeff9Zbb70lSSpatKiuXLni0LGmTp2qDz/8UB06dFDx4sU1d+5cpUmTRosWLXri/osWLdLt27f1/fffq0qVKvL29laNGjVUpkwZRz8GAAD4l4iICE2cOFFFixbVN998I+mf/6tPnTplcTIAsJ7DjVOJEiU0d+5c/fbbb9q8ebPq168vSbp8+bJeeeWVWB8nIiJC+/fvV506df4vjJOT6tSpo127dj3xNWvWrFGlSpXUrVs3ZcuWTSVLltTYsWMVFRX11Pd5+PChQkND7R4AAMDe5s2bVbp0aQ0cOFDh4eGS/rmmac6cOcqXL5/F6QDAeg43ThMmTNB///tf1axZUy1btjRHe9asWWNO4YuNmzdvKioqKsYFpdmyZdPVq1ef+JrTp09r5cqVioqK0vr16zVs2DBNmTIlxjSC/zVu3DilT5/efHh5ecU6IwAAyd25c+fUtGlT1a1bV0FBQZL++UVm165dFRwcrE6dOsnJyeEfFwAg2XH4Brg1a9bUzZs3FRoaqowZM5r1zp07K02aNHEa7t+io6OVNWtWzZs3T87OzqpQoYIuXbqkSZMmyd/f/4mvGTx4sPr06WM+Dw0NpXkCAED/TMP75JNP7JYXr1SpkmbPnq1y5cpZmAwAEh+HGydJcnZ2tmua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5s2bPzNLz549ZRiGfvjhhydu79atmx4+fKjt27fr8OHDmjBhgtKlSyfpn6amVq1aKleunPbt26eNGzfq2rVreu+998zXh4eHq0+fPtq3b5+2bNkiJycnNWnSRNHR0ZKkmTNnas2aNVqxYoWCgoK0dOlSu4b23Xff1fXr17Vhwwbt379f5cuXV+3atXX79u3YfrkBIEVxsToAACBhLFy4UK1bt5Yk1a9fXyEhIfr1119Vs2ZNSdKYMWPUokULjRw50nxNmTJlJEmZMmWSs7OzObLiiFq1atk9nzdvnjJkyKBff/1Vb775ZqyPs3btWrOxeCwqKsru+bhx4/T++++rV69ekqRChQpp5syZqlGjhj777DO5u7vrgw8+MPfPnz+/Zs6cqVdffVVhYWF2xx81apRef/1183m6dOnk4uIS68+fKVMmZc2aVWfPnn3i9vPnz6tp06YqVaqUmeWxgIAAlStXTmPHjjVrixYtkpeXl4KDg1W4cGE1bdrU7niLFi1SlixZdPToUZUsWVLnz59XoUKFVLVqVdlsNuXNm9fcd8eOHdqzZ4+uX78uNzc3SdLkyZP1/fffa+XKlercuXOsPiMApCSMOAFAChAUFKQ9e/aoZcuWkiQXFxc1b95cCxcuNPc5ePCgateuHefvfe3aNX344YcqVKiQ0qdPL09PT4WFhen8+fMOHee1117TwYMH7R4LFiyw2+fQoUNavHix0qVLZz7q1aun6OhonTlzRpK0f/9+NWrUSHny5JGHh4dq1KghSTHy+Pj4vMSn/odhGE+9pqlHjx769NNPVaVKFfn7++vPP/+0+xxbt261+xxFixaVJHM63okTJ9SyZUvlz59fnp6e5mjS48/Rvn17HTx4UEWKFFGPHj20adMmu+OHhYXplVdesXuPM2fO2E33AwD8H0acACAFWLhwoSIjI5UzZ06zZhiG3NzcFBAQoPTp0yt16tQOH9fJycluup/0z1S4/9WuXTvdunVLM2bMUN68eeXm5qZKlSopIiLCofdKmzatChYsaFe7ePGi3fOwsDB99NFH6tGjR4zX58mTR+Hh4apXr57q1aunpUuXKkuWLDp//rzq1asXI0/atGkdyvdvt27d0o0bN5QvX74nbu/UqZPq1aundevWadOmTRo3bpymTJmi7t27KywsTI0aNdKECRNivC5HjhySpEaNGilv3ryaP3++cubMqejoaJUsWdL8HOXLl9eZM2e0YcMG/fzzz3rvvfdUp04drVy5UmFhYcqRI4e2bdsW4/gZMmR4qc8NAMkVjRMAJHORkZFasmSJpkyZorp169pta9y4sZYtW6YuXbqodOnS2rJlizp06PDE47i6usaYGpclSxZdvXrVbmTl4MGDdvv8/vvvmjNnjho0aCBJunDhgt0iB3GpfPnyOnr0aIwG67HDhw/r1q1bGj9+vLy8vCRJ+/bti9Wxn/T5n2XGjBlycnJ64jLqj3l5ealLly7q0qWLBg8erPnz56t79+4qX768Vq1aJW9vb7m4xPyv+tatWwoKCtL8+fNVrVo1Sf9Mv/s3T09PNW/eXM2bN1ezZs1Uv3593b59W+XLl9fVq1fl4uJid90TAODpmKoHAMnc2rVr9ffff6tjx44qWbKk3aNp06bmdD1/f38tW7ZM/v7+OnbsmLlgwWPe3t7avn27Ll26ZDY+NWvW1I0bNzRx4kSdOnVKs2fP1oYNG+zev1ChQvryyy917Ngx/fHHH3r//fdfaHQrNgYOHKidO3fKz89PBw8e1IkTJ/TDDz+Yi0PkyZNHrq6umjVrlk6fPq01a9Zo9OjRsTq2t7e3zpw5o4MHD+rmzZt6+PChue3u3bu6evWqLly4oO3bt6tz58769NNPNWbMmKc2cb169dJPP/2kM2fOKDAwUFu3blWxYsUk/bNwxO3bt9WyZUvt3btXp06d0k8//aQOHTooKipKGTNm1CuvvKJ58+bp5MmT+uWXX9SnTx+740+dOlXLli3T8ePHFRwcrG+//VbZs2c3l0qvVKmSGjdurE2bNuns2bPauXOnhg4dGutGEgBSGhonAEjmFi5cqDp16jzxxqtNmzbVvn379Oeff6pmzZr69ttvtWbNGpUtW1a1atXSnj17zH1HjRqls2fPqkCBAsqSJYskqVixYpozZ45mz56tMmXKaM+ePerXr1+M9//7779Vvnx5tWnTRj169FDWrFnj5bOWLl1av/76q4KDg1WtWjWVK1dOw4cPN6coZsmSRYsXL9a3336r4sWLa/z48Zo8eXKsjt20aVPVr19fr732mrJkyaJly5aZ24YPH64cOXKoYMGCatOmjUJCQrRlyxYNHDjwqceLiopSt27dVKxYMdWvX1+FCxfWnDlzJEk5c+bU77//rqioKNWtW1elSpVSr169lCFDBjk5OcnJyUnffPON9u/fr5IlS6p3796aNGmS3fE9PDw0ceJE+fj46NVXX9XZs2e1fv16OTk5yWazaf369apevbo6dOigwoULq0WLFjp37pyyZcvm6JcdAFIEm/HvyekAAAAAADuMOAEAAADAc9A4AQAAAMBz0DgBAAAAwHPQOAEAAADAc9A4AQAAAMBz0DgBAAAAwHPQOAEAAADAc9A4AQAAAMBz0DgBAAAAwHPQOAEAAADAc9A4AQAAAMBz/D/hD12aHLyoggAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 1000x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, roc_auc_score\n",
"from sklearn.model_selection import cross_val_score\n",
"import matplotlib.pyplot as plt\n",
"\n",
"# Уменьшение размера выборки для ускорения работы (опционально)\n",
"df = df.sample(frac=0.1, random_state=42)\n",
"\n",
"# Разделение на обучающую и тестовую выборки (например, 70% обучающая, 30% тестовая)\n",
"train_df, test_df = train_test_split(df, test_size=0.3, random_state=42)\n",
"\n",
"# Разделение обучающей выборки на обучающую и контрольную (например, 70% обучающая, 30% контрольная)\n",
"train_df, val_df = train_test_split(train_df, test_size=0.3, random_state=42)\n",
"\n",
"# Вывод размеров выборок\n",
"print(\"Размер обучающей выборки:\", len(train_df))\n",
"print(\"Размер контрольной выборки:\", len(val_df))\n",
"print(\"Размер тестовой выборки:\", len(test_df))\n",
"\n",
"# Определение категориальных признаков\n",
"categorical_features = [\n",
" 'Smoking', 'AlcoholDrinking', 'Stroke', 'DiffWalking', 'Sex', 'AgeCategory', 'Race',\n",
" 'Diabetic', 'PhysicalActivity', 'GenHealth', 'Asthma', 'KidneyDisease', 'SkinCancer'\n",
"]\n",
"\n",
"# Применение one-hot encoding к обучающей выборке\n",
"train_df_encoded = pd.get_dummies(train_df, columns=categorical_features)\n",
"\n",
"# Применение one-hot encoding к контрольной выборке\n",
"val_df_encoded = pd.get_dummies(val_df, columns=categorical_features)\n",
"\n",
"# Применение one-hot encoding к тестовой выборке\n",
"test_df_encoded = pd.get_dummies(test_df, columns=categorical_features)\n",
"\n",
"# Определение сущностей\n",
"es = ft.EntitySet(id='heart_data')\n",
"es = es.add_dataframe(dataframe_name='heart', dataframe=train_df_encoded, index='id')\n",
"\n",
"# Генерация признаков с уменьшенной глубиной\n",
"feature_matrix, feature_defs = ft.dfs(entityset=es, target_dataframe_name='heart', max_depth=1)\n",
"\n",
"# Преобразование признаков для контрольной и тестовой выборок\n",
"val_feature_matrix = ft.calculate_feature_matrix(features=feature_defs, entityset=es, instance_ids=val_df_encoded.index)\n",
"test_feature_matrix = ft.calculate_feature_matrix(features=feature_defs, entityset=es, instance_ids=test_df_encoded.index)\n",
"\n",
"# Удаление строк с NaN\n",
"feature_matrix = feature_matrix.dropna()\n",
"val_feature_matrix = val_feature_matrix.dropna()\n",
"test_feature_matrix = test_feature_matrix.dropna()\n",
"\n",
"# Разделение данных на обучающую и тестовую выборки\n",
"X_train = feature_matrix.drop('HeartDisease', axis=1)\n",
"y_train = feature_matrix['HeartDisease']\n",
"X_val = val_feature_matrix.drop('HeartDisease', axis=1)\n",
"y_val = val_feature_matrix['HeartDisease']\n",
"X_test = test_feature_matrix.drop('HeartDisease', axis=1)\n",
"y_test = test_feature_matrix['HeartDisease']\n",
"\n",
"# Выбор модели\n",
"model = RandomForestClassifier(random_state=42)\n",
"\n",
"# Обучение модели\n",
"model.fit(X_train, y_train)\n",
"\n",
"# Предсказание и оценка\n",
"y_pred = model.predict(X_test)\n",
"\n",
"accuracy = accuracy_score(y_test, y_pred)\n",
"precision = precision_score(y_test, y_pred)\n",
"recall = recall_score(y_test, y_pred)\n",
"f1 = f1_score(y_test, y_pred)\n",
"roc_auc = roc_auc_score(y_test, y_pred)\n",
"\n",
"print(f\"Accuracy: {accuracy}\")\n",
"print(f\"Precision: {precision}\")\n",
"print(f\"Recall: {recall}\")\n",
"print(f\"F1 Score: {f1}\")\n",
"print(f\"ROC AUC: {roc_auc}\")\n",
"\n",
"# Кросс-валидация\n",
"scores = cross_val_score(model, X_train, y_train, cv=5, scoring='accuracy')\n",
"accuracy_cv = scores.mean()\n",
"print(f\"Cross-validated Accuracy: {accuracy_cv}\")\n",
"\n",
"# Анализ важности признаков\n",
"feature_importances = model.feature_importances_\n",
"feature_names = X_train.columns\n",
"\n",
"importance_df = pd.DataFrame({'Feature': feature_names, 'Importance': feature_importances})\n",
"importance_df = importance_df.sort_values(by='Importance', ascending=False)\n",
"\n",
"plt.figure(figsize=(10, 6))\n",
"sns.barplot(x='Importance', y='Feature', data=importance_df)\n",
"plt.title('Feature Importance')\n",
"plt.show()\n",
"\n",
"# Проверка на переобучение\n",
"y_train_pred = model.predict(X_train)\n",
"\n",
"accuracy_train = accuracy_score(y_train, y_train_pred)\n",
"precision_train = precision_score(y_train, y_train_pred)\n",
"recall_train = recall_score(y_train, y_train_pred)\n",
"f1_train = f1_score(y_train, y_train_pred)\n",
"roc_auc_train = roc_auc_score(y_train, y_train_pred)\n",
"\n",
"print(f\"Train Accuracy: {accuracy_train}\")\n",
"print(f\"Train Precision: {precision_train}\")\n",
"print(f\"Train Recall: {recall_train}\")\n",
"print(f\"Train F1 Score: {f1_train}\")\n",
"print(f\"Train ROC AUC: {roc_auc_train}\")\n",
"\n",
"# Визуализация результатов\n",
"plt.figure(figsize=(10, 6))\n",
"plt.scatter(y_test, y_pred, alpha=0.5)\n",
"plt.plot([y_test.min(), y_test.max()], [y_test.min(), y_test.max()], 'k--', lw=2)\n",
"plt.xlabel('Actual HeartDisease')\n",
"plt.ylabel('Predicted HeartDisease')\n",
"plt.title('Actual vs Predicted HeartDisease')\n",
"plt.show()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": ".venv",
"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.6"
}
},
"nbformat": 4,
"nbformat_minor": 2
}