diff --git a/lab2.ipynb b/lab2.ipynb index 68b73a3..b6510c9 100644 --- a/lab2.ipynb +++ b/lab2.ipynb @@ -23,7 +23,7 @@ "\n", "#### Данные по инсультам:\n", "- **Проблемная область:** Анализ данных о пациентах с инсультом\n", - "- **Цели:** Анализ данных о пациентах с инсультом, определение факторов, влияющих на исход лечения\n", + "- **Цели:** Анализ данных о пациентах с инсультом, определение факторов, влияющих на шансы возникновения болезни\n", "- **Набор данных:** 5111 записей, 12 переменных:\n", " - id\n", " - gender\n", @@ -37,11 +37,11 @@ " - bmi\n", " - smoking_status\n", " - stroke\n", - "- **Описание данных:** Сведения о пациентах с инсультом, их лечении и исходе лечения\n", + "- **Описание данных:** Сведения о пациентах с инсультом, их образе жизни и медецинских показателях\n", "\n", "#### Продажи домов:\n", "- **Проблемная область:** Анализ продаж домов и их цен в зависисмости от различных факторов \n", - "- **Цели:** Анализ продаж домов, определение факторов, влияющих на цены\n", + "- **Цели:** Анализ продаж домов, определение факторов влияющих на цены\n", "- **Набор данных:** 21614 записей, 21 переменная:\n", " - id\n", " - date\n", @@ -86,7 +86,7 @@ " - screen_resolution\n", " - processor\n", " - processor_name\n", - "- **Описание данных:** Сведения о ценах на мобильные устройства в зависимости от различных факторов" + "- **Описание данных:** Сведения о ценах на мобильные устройства в зависимости от различных характеристик" ] }, { @@ -99,7 +99,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 1, "metadata": {}, "outputs": [ { @@ -351,7 +351,7 @@ "[5110 rows x 12 columns]" ] }, - "execution_count": 3, + "execution_count": 1, "metadata": {}, "output_type": "execute_result" } @@ -365,7 +365,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 2, "metadata": {}, "outputs": [ { @@ -386,7 +386,7 @@ "dtype: object" ] }, - "execution_count": 4, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -405,7 +405,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -778,7 +778,7 @@ "[21613 rows x 21 columns]" ] }, - "execution_count": 5, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } @@ -790,7 +790,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 4, "metadata": {}, "outputs": [ { @@ -820,7 +820,7 @@ "dtype: object" ] }, - "execution_count": 6, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -839,7 +839,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 5, "metadata": {}, "outputs": [ { @@ -1215,7 +1215,7 @@ "[1370 rows x 18 columns]" ] }, - "execution_count": 7, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } @@ -1227,7 +1227,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -1254,7 +1254,7 @@ "dtype: object" ] }, - "execution_count": 8, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -1270,7 +1270,7 @@ "### 3. Провести анализ содержимого каждого набора данных. Что является объектом/объектами наблюдения? Каковы атрибуты объектов? Есть ли связи между объектами?\n", "\n", "1. Датасет о риске инсульта\n", - " - Объект наблюжения: Пациенты\n", + " - Объект наблюдения: Пациенты\n", "2. Датасет о продажах недвижимости\n", " - Объект наблюдения: Сделки по проданным домам в King Country, США\n", "3. Датасет о цене мобильных устройств\n", @@ -1301,19 +1301,16 @@ "source": [ "### 5. Привести примеры целей технического проекта для каждой выделенной ранее бизнес-цели. Что поступает на вход, что является целевым признаком?\n", "1. Датасет о риске инсульта\n", - " - Бизнес-цель: Разработка системы раннего предупреждения инсульта.\n", " - Цель технического проекта: Создание модели машинного обучения для прогнозирования вероятности инсульта.\n", " - Входные данные:\n", " Пол Возраст Наличие гипертензии Наличие сердечных заболеваний Статус брака Тип работы Тип проживания Средний уровень глюкозы Индекс массы тела Статус курения и т.д.\n", - " - Целевой признак: Наличие инсульта (stroke).\n", + " - Целевой признак: Случался ли инсульт (stroke).\n", "2. Датасет о продажах недвижимости\n", - " - Бизнес-цель: Развитие системы рекомендации недвижимости рекомендованной к покупке для последующей перепродажи.\n", " - Цель технического проекта: Разработка модели машинного обучения для прогнозирования цены недвижимости.\n", " - Входные данные:\n", " Площадь Площадь комнат Площадь участка Тип дома Тип комнат и другие признаки.\n", " - Целевой признак: Цена недвижимости (Price).\n", "3. Датасет о цене мобильных устройств\n", - " - Бизнес-цель: Оптимизация ценообразования и улучшение стратегии продаж мобильных устройств.\n", " - Цель технического проекта: Построение модели для предсказания рекомендованной цены мобильного устройства на основе характеристик.\n", " - Входные данные:\n", " Имя Рейтинг Очки производительности Кол-во SIM-слотов Оперативная память Емкость аккумклятора Дисплей Камера Дополнительные слоты для карт памяти и остальное.\n", @@ -1337,7 +1334,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -1399,7 +1396,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 8, "metadata": {}, "outputs": [ { @@ -1437,7 +1434,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 9, "metadata": {}, "outputs": [ { @@ -1475,7 +1472,7 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -1513,7 +1510,7 @@ }, { "cell_type": "code", - "execution_count": 35, + "execution_count": 11, "metadata": {}, "outputs": [ { @@ -1534,7 +1531,7 @@ "dtype: int64" ] }, - "execution_count": 35, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" } @@ -1546,7 +1543,7 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ @@ -1555,7 +1552,7 @@ }, { "cell_type": "code", - "execution_count": 37, + "execution_count": 13, "metadata": {}, "outputs": [ { @@ -1576,7 +1573,7 @@ "dtype: int64" ] }, - "execution_count": 37, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" } @@ -1587,7 +1584,7 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 14, "metadata": {}, "outputs": [ { @@ -1617,7 +1614,7 @@ "dtype: int64" ] }, - "execution_count": 39, + "execution_count": 14, "metadata": {}, "output_type": "execute_result" } @@ -1629,7 +1626,7 @@ }, { "cell_type": "code", - "execution_count": 40, + "execution_count": 15, "metadata": {}, "outputs": [ { @@ -1656,7 +1653,7 @@ "dtype: int64" ] }, - "execution_count": 40, + "execution_count": 15, "metadata": {}, "output_type": "execute_result" } @@ -1668,20 +1665,20 @@ }, { "cell_type": "code", - "execution_count": 44, + "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "var18['Android_version'] = var18['Android_version'].fillna('No info')\n", - "var18['Inbuilt_memory'] = var18['Android_version'].fillna('No info')\n", - "var18['fast_charging'] = var18['Android_version'].fillna('No info')\n", - "var18['Screen_resolution'] = var18['Android_version'].fillna('No info')\n", - "var18['Processor'] = var18['Android_version'].fillna('No info')" + "var18['Inbuilt_memory'] = var18['Inbuilt_memory'].fillna('No info')\n", + "var18['fast_charging'] = var18['fast_charging'].fillna('No info')\n", + "var18['Screen_resolution'] = var18['Screen_resolution'].fillna('No info')\n", + "var18['Processor'] = var18['Processor'].fillna('No info')" ] }, { "cell_type": "code", - "execution_count": 45, + "execution_count": 17, "metadata": {}, "outputs": [ { @@ -1708,7 +1705,7 @@ "dtype: int64" ] }, - "execution_count": 45, + "execution_count": 17, "metadata": {}, "output_type": "execute_result" } @@ -1726,7 +1723,7 @@ }, { "cell_type": "code", - "execution_count": 47, + "execution_count": 18, "metadata": {}, "outputs": [], "source": [ @@ -1735,7 +1732,7 @@ }, { "cell_type": "code", - "execution_count": 48, + "execution_count": 19, "metadata": {}, "outputs": [ { @@ -1765,7 +1762,7 @@ }, { "cell_type": "code", - "execution_count": 49, + "execution_count": 20, "metadata": {}, "outputs": [ { @@ -1794,7 +1791,7 @@ }, { "cell_type": "code", - "execution_count": 50, + "execution_count": 21, "metadata": {}, "outputs": [ { @@ -1837,7 +1834,7 @@ }, { "cell_type": "code", - "execution_count": 56, + "execution_count": 22, "metadata": {}, "outputs": [ { @@ -1895,7 +1892,7 @@ }, { "cell_type": "code", - "execution_count": 57, + "execution_count": 23, "metadata": {}, "outputs": [ { @@ -1944,7 +1941,7 @@ }, { "cell_type": "code", - "execution_count": 59, + "execution_count": 24, "metadata": {}, "outputs": [ { @@ -2007,7 +2004,7 @@ }, { "cell_type": "code", - "execution_count": 60, + "execution_count": 25, "metadata": {}, "outputs": [ { @@ -2041,7 +2038,7 @@ }, { "cell_type": "code", - "execution_count": 61, + "execution_count": 26, "metadata": {}, "outputs": [ { @@ -2074,7 +2071,7 @@ }, { "cell_type": "code", - "execution_count": 65, + "execution_count": 27, "metadata": {}, "outputs": [ { @@ -2084,7 +2081,7 @@ "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mKeyError\u001b[0m Traceback (most recent call last)", - "Cell \u001b[1;32mIn[65], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m X_var6 \u001b[38;5;241m=\u001b[39m \u001b[43mvar6\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mdrop\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mPrice\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[0;32m 2\u001b[0m y_var6 \u001b[38;5;241m=\u001b[39m var6[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mPrice\u001b[39m\u001b[38;5;124m'\u001b[39m]\n\u001b[0;32m 4\u001b[0m \u001b[38;5;66;03m# Кодирование категориальных признаков\u001b[39;00m\n", + "Cell \u001b[1;32mIn[27], line 1\u001b[0m\n\u001b[1;32m----> 1\u001b[0m X_var6 \u001b[38;5;241m=\u001b[39m \u001b[43mvar6\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mdrop\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mPrice\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[0;32m 2\u001b[0m y_var6 \u001b[38;5;241m=\u001b[39m var6[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mPrice\u001b[39m\u001b[38;5;124m'\u001b[39m]\n\u001b[0;32m 4\u001b[0m \u001b[38;5;66;03m# Кодирование категориальных признаков\u001b[39;00m\n", "File \u001b[1;32mc:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\pandas\\core\\frame.py:5581\u001b[0m, in \u001b[0;36mDataFrame.drop\u001b[1;34m(self, labels, axis, index, columns, level, inplace, errors)\u001b[0m\n\u001b[0;32m 5433\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mdrop\u001b[39m(\n\u001b[0;32m 5434\u001b[0m \u001b[38;5;28mself\u001b[39m,\n\u001b[0;32m 5435\u001b[0m labels: IndexLabel \u001b[38;5;241m|\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 5442\u001b[0m errors: IgnoreRaise \u001b[38;5;241m=\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mraise\u001b[39m\u001b[38;5;124m\"\u001b[39m,\n\u001b[0;32m 5443\u001b[0m ) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m DataFrame \u001b[38;5;241m|\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m 5444\u001b[0m \u001b[38;5;250m \u001b[39m\u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[0;32m 5445\u001b[0m \u001b[38;5;124;03m Drop specified labels from rows or columns.\u001b[39;00m\n\u001b[0;32m 5446\u001b[0m \n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 5579\u001b[0m \u001b[38;5;124;03m weight 1.0 0.8\u001b[39;00m\n\u001b[0;32m 5580\u001b[0m \u001b[38;5;124;03m \"\"\"\u001b[39;00m\n\u001b[1;32m-> 5581\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43msuper\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mdrop\u001b[49m\u001b[43m(\u001b[49m\n\u001b[0;32m 5582\u001b[0m \u001b[43m \u001b[49m\u001b[43mlabels\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mlabels\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 5583\u001b[0m \u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43maxis\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 5584\u001b[0m \u001b[43m \u001b[49m\u001b[43mindex\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mindex\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 5585\u001b[0m \u001b[43m \u001b[49m\u001b[43mcolumns\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcolumns\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 5586\u001b[0m \u001b[43m \u001b[49m\u001b[43mlevel\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mlevel\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 5587\u001b[0m \u001b[43m \u001b[49m\u001b[43minplace\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43minplace\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 5588\u001b[0m \u001b[43m \u001b[49m\u001b[43merrors\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43merrors\u001b[49m\u001b[43m,\u001b[49m\n\u001b[0;32m 5589\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n", "File \u001b[1;32mc:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\pandas\\core\\generic.py:4788\u001b[0m, in \u001b[0;36mNDFrame.drop\u001b[1;34m(self, labels, axis, index, columns, level, inplace, errors)\u001b[0m\n\u001b[0;32m 4786\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m axis, labels \u001b[38;5;129;01min\u001b[39;00m axes\u001b[38;5;241m.\u001b[39mitems():\n\u001b[0;32m 4787\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m labels \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m-> 4788\u001b[0m obj \u001b[38;5;241m=\u001b[39m \u001b[43mobj\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_drop_axis\u001b[49m\u001b[43m(\u001b[49m\u001b[43mlabels\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43maxis\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mlevel\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mlevel\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43merrors\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43merrors\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 4790\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m inplace:\n\u001b[0;32m 4791\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_update_inplace(obj)\n", "File \u001b[1;32mc:\\Users\\HomePC\\Desktop\\MII_Lab1\\.venv\\Lib\\site-packages\\pandas\\core\\generic.py:4830\u001b[0m, in \u001b[0;36mNDFrame._drop_axis\u001b[1;34m(self, labels, axis, level, errors, only_slice)\u001b[0m\n\u001b[0;32m 4828\u001b[0m new_axis \u001b[38;5;241m=\u001b[39m axis\u001b[38;5;241m.\u001b[39mdrop(labels, level\u001b[38;5;241m=\u001b[39mlevel, errors\u001b[38;5;241m=\u001b[39merrors)\n\u001b[0;32m 4829\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m-> 4830\u001b[0m new_axis \u001b[38;5;241m=\u001b[39m \u001b[43maxis\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mdrop\u001b[49m\u001b[43m(\u001b[49m\u001b[43mlabels\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43merrors\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43merrors\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 4831\u001b[0m indexer \u001b[38;5;241m=\u001b[39m axis\u001b[38;5;241m.\u001b[39mget_indexer(new_axis)\n\u001b[0;32m 4833\u001b[0m \u001b[38;5;66;03m# Case for non-unique axis\u001b[39;00m\n\u001b[0;32m 4834\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n", @@ -2111,7 +2108,7 @@ }, { "cell_type": "code", - "execution_count": 69, + "execution_count": null, "metadata": {}, "outputs": [ { @@ -2148,7 +2145,7 @@ }, { "cell_type": "code", - "execution_count": 71, + "execution_count": null, "metadata": {}, "outputs": [ {