diff --git a/ml/lb1/Kardynov.Lab_1.ipynb b/ml/lb1/Kardynov.Lab_1.ipynb new file mode 100644 index 0000000..7a033e6 --- /dev/null +++ b/ml/lb1/Kardynov.Lab_1.ipynb @@ -0,0 +1,5149 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "purple-bottom", + "metadata": {}, + "source": [ + "# Markdown\n", + "\n", + "## Краткое руководство \n", + "\n", + "Абзаци создаются припомощи пустой строки. Если вокруг текста сверху и снизу есть пустые строки, то текст превращается в абзац.\n", + "\n", + "Чтобы сделать перенос строки, вместо абзаца, нужно поставить два пробела в конце предыдущей строки.\n", + "\n", + "Заголовки отмечаются диезом '#' в начале строки, от одного до шести. Например:\n", + "\n", + "# Заголовок первого уровня #\n", + "## Заголовок h2\n", + "### Заголовок h3\n", + "#### Заголовок h4\n", + "##### Заголовок h5\n", + "###### Заголовок h6\n", + "\n", + "В декоративных целях заголовки можно \"закрывать\" с обратной стороны." + ] + }, + { + "cell_type": "markdown", + "id": "boxed-iceland", + "metadata": {}, + "source": [ + "### Списки\n", + "\n", + "Для разметки неупорядоченных списков можно использовать или '*', или '-', или '+':\n", + "\n", + "- элемент 1\n", + "- элемент 2\n", + "- эелемент ...\n", + "\n", + "Вложенные пункты создаются четырьмя пробемелами перед меркером пункта:\n", + "\n", + "* элемент 1\n", + "* элемант 2\n", + " 1. вложенный элемент 2.1\n", + " 2. вложенный элемент 2.2\n", + "* элемент ...\n", + "\n", + "Упорядоченный список:\n", + "\n", + "1. элемент 1\n", + "2. элемент 2\n", + " 1. вложенный\n", + " 2. вложенный\n", + "3. элемент 3\n", + "4. Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipisccing." + ] + }, + { + "cell_type": "markdown", + "id": "following-mirror", + "metadata": {}, + "source": [ + "# NumPy\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "pharmaceutical-spider", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "copyrighted-moore", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "1" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "vec = np.array([1, 2, 3])\n", + "vec.ndim # количество осей" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "unknown-contribution", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "2" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mat = np.array([[1, 2, 3], [4, 5, 6]])\n", + "mat.ndim" + ] + }, + { + "cell_type": "markdown", + "id": "conscious-jewelry", + "metadata": {}, + "source": [ + "##### Чтобы узнать длинну массива по каждой из осей" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "individual-burden", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(3,)" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "vec.shape" + ] + }, + { + "cell_type": "markdown", + "id": "theoretical-insulation", + "metadata": {}, + "source": [ + "##### Чтобы узнать тип элементов и их размер в байтах" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "advance-karen", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'int32'" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mat.dtype.name" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "compliant-arnold", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "4" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mat.itemsize" + ] + }, + { + "cell_type": "markdown", + "id": "presidential-indian", + "metadata": {}, + "source": [ + "## Создание массивов" + ] + }, + { + "cell_type": "markdown", + "id": "chief-gregory", + "metadata": {}, + "source": [ + "##### Передать итерируемый объект в качестве параметра функции array" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "several-resident", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([1, 2, 3])" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A = np.array ([1, 2, 3])\n", + "A" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "another-ballet", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([1., 2., 3.])" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A = np.array ([1, 2, 3], dtype = float)\n", + "A" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "stable-kelly", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[1, 2, 3],\n", + " [4, 5, 6]])" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "B = np.array ([(1, 2, 3), (4, 5, 6)])\n", + "B" + ] + }, + { + "cell_type": "markdown", + "id": "certain-mechanics", + "metadata": {}, + "source": [ + "##### Создание массива специального вида при помощи функций zeros, ones, empty, identity:" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "deluxe-south", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([0., 0., 0.])" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.zeros ((3,))" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "endangered-clothing", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[1., 1., 1., 1.],\n", + " [1., 1., 1., 1.],\n", + " [1., 1., 1., 1.]])" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.ones((3, 4))" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "fifteen-indian", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[1., 0., 0.],\n", + " [0., 1., 0.],\n", + " [0., 0., 1.]])" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.identity(3)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "editorial-quantity", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[4.00528573e-307, 1.89144519e-307, 4.67265511e-307,\n", + " 3.33774999e-307, 1.61323712e-307],\n", + " [1.64352612e-288, 4.67265516e-307, 3.56039658e-307,\n", + " 2.78146116e-307, 2.11392372e-307]])" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.empty((2, 5))" + ] + }, + { + "cell_type": "markdown", + "id": "miniature-illness", + "metadata": {}, + "source": [ + "##### Создание последовательностей при помощи функций arange и linspace" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "assisted-overview", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([ 2, 5, 8, 11, 14, 17])" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.arange (2, 20, 3) # аналагично стандартной функции range python, правая граница не включается" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "unlike-payday", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([2.5, 3.4, 4.3, 5.2, 6.1, 7. , 7.9])" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.arange (2.5, 8.7, 0.9) #нш может работать и с вещественными числами" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "supposed-ticket", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([ 2. , 3.23076923, 4.46153846, 5.69230769, 6.92307692,\n", + " 8.15384615, 9.38461538, 10.61538462, 11.84615385, 13.07692308,\n", + " 14.30769231, 15.53846154, 16.76923077, 18. ])" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.linspace (2, 18, 14) #правая граница включается (по умолчанию)" + ] + }, + { + "cell_type": "markdown", + "id": "headed-april", + "metadata": {}, + "source": [ + "##### Для изменения размеров существующего массива можно воспользоваться функцией reshape" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "smaller-douglas", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0, 1, 2],\n", + " [3, 4, 5],\n", + " [6, 7, 8]])" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.arange(9).reshape(3, 3)" + ] + }, + { + "cell_type": "markdown", + "id": "formal-tennis", + "metadata": {}, + "source": [ + "##### Вместо значения длинны массива по одному из измерений можно указать -1 - в этом случае значение будет рассчитано автоматически" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "arranged-signal", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0, 1, 2, 3],\n", + " [4, 5, 6, 7]])" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.arange(8).reshape(2, -1)" + ] + }, + { + "cell_type": "markdown", + "id": "banner-armstrong", + "metadata": {}, + "source": [ + "##### Транспортирование существующего массива" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "disturbed-greensboro", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0, 1, 2],\n", + " [3, 4, 5]])" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C = np.arange(6).reshape(2, -1)\n", + "C" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "urban-guitar", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0, 3],\n", + " [1, 4],\n", + " [2, 5]])" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "C. T" + ] + }, + { + "cell_type": "markdown", + "id": "packed-chest", + "metadata": {}, + "source": [ + "##### Объединение существующих массиво по заданной оси" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "overhead-party", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 0, 1, 2, 0, 1, 4],\n", + " [ 3, 4, 5, 9, 16, 25]])" + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A = np.arange (6).reshape (2, -1)\n", + "np.hstack((A, A**2))" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "infrared-freedom", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 0, 1, 2],\n", + " [ 3, 4, 5],\n", + " [ 0, 1, 4],\n", + " [ 9, 16, 25]])" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.vstack((A, A**2))" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "honey-creek", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 0, 1, 2, 0, 1, 4],\n", + " [ 3, 4, 5, 9, 16, 25]])" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.concatenate ((A, A**2), axis =1)" + ] + }, + { + "cell_type": "markdown", + "id": "cooperative-watch", + "metadata": {}, + "source": [ + "##### Повторение сущствующего массива " + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "personalized-korean", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0, 1, 2, 0, 1, 2],\n", + " [0, 1, 2, 0, 1, 2]])" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "a = np.arange(3)\n", + "np.tile (a, (2, 2))" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "alleged-riverside", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0, 1, 2],\n", + " [0, 1, 2],\n", + " [0, 1, 2],\n", + " [0, 1, 2]])" + ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.tile(a, (4, 1))" + ] + }, + { + "cell_type": "markdown", + "id": "proprietary-daniel", + "metadata": {}, + "source": [ + "## Базовые операции" + ] + }, + { + "cell_type": "markdown", + "id": "accessible-aberdeen", + "metadata": {}, + "source": [ + "##### Базовые арифметические оперции над массивами выполняется поэлементно" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "id": "seventh-flooring", + "metadata": {}, + "outputs": [], + "source": [ + "A = np.arange(9).reshape(3, 3)\n", + "B = np.arange (1, 10).reshape (3, 3)" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "id": "friendly-insight", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[0 1 2]\n", + " [3 4 5]\n", + " [6 7 8]]\n", + "[[1 2 3]\n", + " [4 5 6]\n", + " [7 8 9]]\n" + ] + } + ], + "source": [ + "print (A)\n", + "print (B)" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "id": "bottom-ranking", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 1, 3, 5],\n", + " [ 7, 9, 11],\n", + " [13, 15, 17]])" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A + B" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "id": "inappropriate-landing", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0. , 0.5 , 0.66666667],\n", + " [0.75 , 0.8 , 0.83333333],\n", + " [0.85714286, 0.875 , 0.88888889]])" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A * 1.0/ B" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "prescription-carol", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[1, 2, 3],\n", + " [4, 5, 6],\n", + " [7, 8, 9]])" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A +1" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "id": "round-acoustic", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 0, 3, 6],\n", + " [ 9, 12, 15],\n", + " [18, 21, 24]])" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "3*A" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "id": "peaceful-stations", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 0, 1, 4],\n", + " [ 9, 16, 25],\n", + " [36, 49, 64]], dtype=int32)" + ] + }, + "execution_count": 45, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A ** 2" + ] + }, + { + "cell_type": "markdown", + "id": "urban-junior", + "metadata": {}, + "source": [ + "##### Отдельно обратим внимание на то, что умножение массива также является поэлементным, а не матричным " + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "id": "aboriginal-wheel", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 0, 2, 6],\n", + " [12, 20, 30],\n", + " [42, 56, 72]])" + ] + }, + "execution_count": 46, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A * B" + ] + }, + { + "cell_type": "markdown", + "id": "plastic-command", + "metadata": {}, + "source": [ + "##### Для выполнения метричного умножения необходимо использоовать функцию dot" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "coastal-robinson", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 18, 21, 24],\n", + " [ 54, 66, 78],\n", + " [ 90, 111, 132]])" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A.dot(B)" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "married-rendering", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 0, 1, 2],\n", + " [10, 11, 12],\n", + " [20, 21, 22],\n", + " [30, 31, 32]])" + ] + }, + "execution_count": 50, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.tile(np.arange(0, 40, 10), (3, 1)).T + np.array([0, 1, 2])" + ] + }, + { + "cell_type": "markdown", + "id": "upper-gabriel", + "metadata": {}, + "source": [ + "##### Универсальные функции так же применяются поэлементно" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "id": "broad-wallpaper", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[1.00000000e+00, 2.71828183e+00, 7.38905610e+00],\n", + " [2.00855369e+01, 5.45981500e+01, 1.48413159e+02],\n", + " [4.03428793e+02, 1.09663316e+03, 2.98095799e+03]])" + ] + }, + "execution_count": 51, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.exp(A)" + ] + }, + { + "cell_type": "markdown", + "id": "victorian-particular", + "metadata": {}, + "source": [ + "##### Некоторые оперции над массивами выполняются над всеми элементами вне зависимости отформы массива =, однако при указании оси выполняются вдоль нее" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "id": "thick-mauritius", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0, 1, 2],\n", + " [3, 4, 5],\n", + " [6, 7, 8]])" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "id": "premium-parent", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 53, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A.min()" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "id": "german-arcade", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([6, 7, 8])" + ] + }, + "execution_count": 54, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A.max(axis = 0)" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "id": "trained-spyware", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([ 3, 12, 21])" + ] + }, + "execution_count": 55, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A.sum (axis =1)" + ] + }, + { + "cell_type": "markdown", + "id": "consolidated-customer", + "metadata": {}, + "source": [ + "## Индексация" + ] + }, + { + "cell_type": "markdown", + "id": "purple-psychiatry", + "metadata": {}, + "source": [ + "##### Для индексации могут исопльзовать ся конкретные значения индесксов и среды. Для многомерных массивов индексы для различных осей разделяются запятой. Если для иногомерного массива указаны индексы не для всех измерений, недостающие заполняются полным срезом" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "id": "toxic-controversy", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])" + ] + }, + "execution_count": 56, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "a = np.arange(10)\n", + "a" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "id": "divided-interpretation", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([2, 3, 4])" + ] + }, + "execution_count": 57, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "a[2:5]" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "aboriginal-banana", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([3, 5, 7])" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "a[3:8:2]" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "id": "arbitrary-assurance", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 0, 1, 2, 3, 4, 5, 6, 7, 8],\n", + " [ 9, 10, 11, 12, 13, 14, 15, 16, 17],\n", + " [18, 19, 20, 21, 22, 23, 24, 25, 26],\n", + " [27, 28, 29, 30, 31, 32, 33, 34, 35],\n", + " [36, 37, 38, 39, 40, 41, 42, 43, 44],\n", + " [45, 46, 47, 48, 49, 50, 51, 52, 53],\n", + " [54, 55, 56, 57, 58, 59, 60, 61, 62],\n", + " [63, 64, 65, 66, 67, 68, 69, 70, 71],\n", + " [72, 73, 74, 75, 76, 77, 78, 79, 80]])" + ] + }, + "execution_count": 59, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A = np.arange(81).reshape(9, -1)\n", + "A" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "id": "focal-native", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[18, 19, 20, 21, 22, 23, 24, 25, 26],\n", + " [27, 28, 29, 30, 31, 32, 33, 34, 35]])" + ] + }, + "execution_count": 60, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A[2:4]" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "id": "welsh-edmonton", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 2, 3],\n", + " [11, 12],\n", + " [20, 21],\n", + " [29, 30],\n", + " [38, 39],\n", + " [47, 48],\n", + " [56, 57],\n", + " [65, 66],\n", + " [74, 75]])" + ] + }, + "execution_count": 61, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A[:, 2:4]" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "id": "approximate-start", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[20, 21],\n", + " [29, 30]])" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A[2:4, 2:4]" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "id": "after-longitude", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([72, 73, 74, 75, 76, 77, 78, 79, 80])" + ] + }, + "execution_count": 64, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A[-1]" + ] + }, + { + "cell_type": "markdown", + "id": "visible-links", + "metadata": {}, + "source": [ + "##### Также может использоваться индексация при помощи списков индексов " + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "id": "american-press", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 0, 1, 2, 3, 4, 5, 6, 7, 8],\n", + " [ 9, 10, 11, 12, 13, 14, 15, 16, 17],\n", + " [18, 19, 20, 21, 22, 23, 24, 25, 26],\n", + " [27, 28, 29, 30, 31, 32, 33, 34, 35],\n", + " [36, 37, 38, 39, 40, 41, 42, 43, 44],\n", + " [45, 46, 47, 48, 49, 50, 51, 52, 53],\n", + " [54, 55, 56, 57, 58, 59, 60, 61, 62],\n", + " [63, 64, 65, 66, 67, 68, 69, 70, 71],\n", + " [72, 73, 74, 75, 76, 77, 78, 79, 80]])" + ] + }, + "execution_count": 65, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A = np.arange(81).reshape (9, -1)\n", + "A" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "id": "committed-typing", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([18, 37, 48])" + ] + }, + "execution_count": 66, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A[[2, 4, 5], [0, 1, 3]]" + ] + }, + { + "cell_type": "markdown", + "id": "protective-identifier", + "metadata": {}, + "source": [ + "##### Может так же применяться логическая индексация" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "id": "successful-paintball", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])" + ] + }, + "execution_count": 67, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A = np.arange(11)\n", + "A" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "id": "systematic-filename", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([ 0, 1, 2, 4, 5, 6, 7, 9, 10])" + ] + }, + "execution_count": 69, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A[A % 5 != 3]" + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "id": "otherwise-admission", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([ 0, 1, 2, 4, 5, 6, 9, 10])" + ] + }, + "execution_count": 70, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "A[np.logical_and(A != 7, A % 5 !=3)]" + ] + }, + { + "cell_type": "markdown", + "id": "liberal-cooking", + "metadata": {}, + "source": [ + "### Cкорость" + ] + }, + { + "cell_type": "code", + "execution_count": 88, + "id": "helpful-tradition", + "metadata": {}, + "outputs": [], + "source": [ + "import time\n", + "A_quick_arr = np.random.normal(size=(1000000,))\n", + "B_quick_arr = np.random.normal(size=(1000000,))\n", + "\n", + "A_slow_list, B_slow_list = list(A_quick_arr), list(B_quick_arr)" + ] + }, + { + "cell_type": "code", + "execution_count": 94, + "id": "departmental-rocket", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.259075899997697\n" + ] + } + ], + "source": [ + "start = time.perf_counter()\n", + "ans = 0\n", + "for i in range(len(A_slow_list)):\n", + " ans += A_slow_list[i] * B_slow_list[i]\n", + "print (time.perf_counter() - start)" + ] + }, + { + "cell_type": "code", + "execution_count": 97, + "id": "infectious-moscow", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.2270256999981939\n" + ] + } + ], + "source": [ + "start = time.perf_counter()\n", + "ans = sum ([A_slow_list[i] * B_slow_list[i] for i in range(1000000)])\n", + "print (time.perf_counter() - start)" + ] + }, + { + "cell_type": "code", + "execution_count": 98, + "id": "operating-offering", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.007141000001865905\n" + ] + } + ], + "source": [ + "start = time.perf_counter()\n", + "ans = np.sum(A_quick_arr * B_quick_arr)\n", + "print (time.perf_counter() - start)" + ] + }, + { + "cell_type": "code", + "execution_count": 99, + "id": "wound-movie", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.06732900000133668\n" + ] + } + ], + "source": [ + "start = time.perf_counter()\n", + "ans = A_quick_arr.dot(B_quick_arr)\n", + "print (time.perf_counter() - start)" + ] + }, + { + "cell_type": "markdown", + "id": "front-flesh", + "metadata": {}, + "source": [ + "# Pandas" + ] + }, + { + "cell_type": "code", + "execution_count": 100, + "id": "fresh-september", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 5\n", + "1 6\n", + "2 7\n", + "3 8\n", + "4 9\n", + "5 10\n", + "dtype: int64" + ] + }, + "execution_count": 100, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "# Series\n", + "my_series = pd.Series([5, 6, 7, 8, 9, 10])\n", + "my_series" + ] + }, + { + "cell_type": "code", + "execution_count": 101, + "id": "suspected-sheet", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "RangeIndex(start=0, stop=6, step=1)" + ] + }, + "execution_count": 101, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series.index" + ] + }, + { + "cell_type": "code", + "execution_count": 102, + "id": "measured-scholar", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([ 5, 6, 7, 8, 9, 10], dtype=int64)" + ] + }, + "execution_count": 102, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series.values" + ] + }, + { + "cell_type": "code", + "execution_count": 103, + "id": "qualified-burner", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "9" + ] + }, + "execution_count": 103, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series[4]" + ] + }, + { + "cell_type": "code", + "execution_count": 105, + "id": "desperate-bedroom", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "10" + ] + }, + "execution_count": 105, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series2 = pd.Series([5, 6, 7, 8, 9, 10], index=['a', 'b', 'c', 'd', 'e', 'f'])\n", + "my_series2['f']" + ] + }, + { + "cell_type": "markdown", + "id": "western-tattoo", + "metadata": {}, + "source": [ + "##### Делать выборку по нескольких индексам и осуществлять групповое присваивание" + ] + }, + { + "cell_type": "code", + "execution_count": 106, + "id": "fresh-firewall", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "a 5\n", + "b 6\n", + "f 10\n", + "dtype: int64" + ] + }, + "execution_count": 106, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series2[['a', 'b', 'f']]" + ] + }, + { + "cell_type": "code", + "execution_count": 107, + "id": "trying-ottawa", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "a 0\n", + "b 0\n", + "c 7\n", + "d 8\n", + "e 9\n", + "f 0\n", + "dtype: int64" + ] + }, + "execution_count": 107, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series2[['a', 'b', 'f']] = 0\n", + "my_series2" + ] + }, + { + "cell_type": "markdown", + "id": "indoor-painting", + "metadata": {}, + "source": [ + "##### Фильтровать series и применять математические операции" + ] + }, + { + "cell_type": "code", + "execution_count": 108, + "id": "fixed-richmond", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "c 7\n", + "d 8\n", + "e 9\n", + "dtype: int64" + ] + }, + "execution_count": 108, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series2[my_series2 > 0]" + ] + }, + { + "cell_type": "code", + "execution_count": 109, + "id": "educational-walker", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "c 14\n", + "d 16\n", + "e 18\n", + "dtype: int64" + ] + }, + "execution_count": 109, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series2[my_series2 > 0] * 2" + ] + }, + { + "cell_type": "code", + "execution_count": 110, + "id": "genetic-angola", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "a 5\n", + "b 6\n", + "c 7\n", + "d 8\n", + "dtype: int64" + ] + }, + "execution_count": 110, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series3 = pd.Series({'a': 5, 'b': 6, 'c': 7, 'd': 8})\n", + "my_series3" + ] + }, + { + "cell_type": "markdown", + "id": "asian-plate", + "metadata": {}, + "source": [ + "##### у объекта Series можно задать имя индексам и объектам" + ] + }, + { + "cell_type": "code", + "execution_count": 111, + "id": "sweet-thermal", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "letters\n", + "a 5\n", + "b 6\n", + "c 7\n", + "d 8\n", + "Name: numbers, dtype: int64" + ] + }, + "execution_count": 111, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series3.name = 'numbers'\n", + "my_series3.index.name = 'letters'\n", + "my_series3" + ] + }, + { + "cell_type": "code", + "execution_count": 112, + "id": "stainless-carol", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "A 5\n", + "B 6\n", + "C 7\n", + "D 8\n", + "Name: numbers, dtype: int64" + ] + }, + "execution_count": 112, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "my_series3.index = ['A', 'B', 'C', 'D']\n", + "my_series3" + ] + }, + { + "cell_type": "markdown", + "id": "reliable-variance", + "metadata": {}, + "source": [ + "## DataFrame" + ] + }, + { + "cell_type": "code", + "execution_count": 113, + "id": "dependent-comparison", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countrypopulationsquare
0Kazakhstan17.042724902
1Russia143.5017125191
2Belarus9.50207600
3Ukraine45.50603628
\n", + "
" + ], + "text/plain": [ + " country population square\n", + "0 Kazakhstan 17.04 2724902\n", + "1 Russia 143.50 17125191\n", + "2 Belarus 9.50 207600\n", + "3 Ukraine 45.50 603628" + ] + }, + "execution_count": 113, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.DataFrame({\n", + " 'country': ['Kazakhstan', 'Russia', 'Belarus', 'Ukraine'],\n", + " 'population': [17.04, 143.5, 9.5, 45.5],\n", + " 'square': [2724902, 17125191, 207600, 603628],\n", + "})\n", + "df" + ] + }, + { + "cell_type": "markdown", + "id": "ethical-grocery", + "metadata": {}, + "source": [ + "##### Чтобы убедиться, что в столбец это series извлекаем любой" + ] + }, + { + "cell_type": "code", + "execution_count": 114, + "id": "macro-chassis", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 Kazakhstan\n", + "1 Russia\n", + "2 Belarus\n", + "3 Ukraine\n", + "Name: country, dtype: object" + ] + }, + "execution_count": 114, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df['country']" + ] + }, + { + "cell_type": "code", + "execution_count": 115, + "id": "packed-schedule", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['country', 'population', 'square'], dtype='object')" + ] + }, + "execution_count": 115, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.columns" + ] + }, + { + "cell_type": "code", + "execution_count": 116, + "id": "suspended-racing", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "RangeIndex(start=0, stop=4, step=1)" + ] + }, + "execution_count": 116, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.index" + ] + }, + { + "cell_type": "markdown", + "id": "active-declaration", + "metadata": {}, + "source": [ + "##### Доступ по индексу по строкам можно задать разными способами, например при формировании самого объекта" + ] + }, + { + "cell_type": "code", + "execution_count": 117, + "id": "light-transmission", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countrypopulationsquare
KZKazakhstan17.042724902
RURussia143.5017125191
BYBelarus9.50207600
UAUkraine45.50603628
\n", + "
" + ], + "text/plain": [ + " country population square\n", + "KZ Kazakhstan 17.04 2724902\n", + "RU Russia 143.50 17125191\n", + "BY Belarus 9.50 207600\n", + "UA Ukraine 45.50 603628" + ] + }, + "execution_count": 117, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.DataFrame({\n", + " 'country': ['Kazakhstan', 'Russia', 'Belarus', 'Ukraine'],\n", + " 'population': [17.04, 143.5, 9.5, 45.5],\n", + " 'square': [2724902, 17125191, 207600, 603628],\n", + " }, \n", + " # index=['KZ', 'RU', 'BY', 'UA']\n", + ")\n", + "df.index = ['KZ', 'RU', 'BY', 'UA']\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 118, + "id": "unnecessary-silence", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "KZ Kazakhstan\n", + "RU Russia\n", + "BY Belarus\n", + "UA Ukraine\n", + "Name: country, dtype: object" + ] + }, + "execution_count": 118, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df['country']" + ] + }, + { + "cell_type": "code", + "execution_count": 119, + "id": "decimal-prescription", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "KZ 17.04\n", + "RU 143.50\n", + "Name: population, dtype: float64" + ] + }, + "execution_count": 119, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.loc[['KZ', 'RU'], 'population']" + ] + }, + { + "cell_type": "code", + "execution_count": 120, + "id": "later-berkeley", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countrypopulationsquare
KZKazakhstan17.042724902
RURussia143.5017125191
BYBelarus9.50207600
\n", + "
" + ], + "text/plain": [ + " country population square\n", + "KZ Kazakhstan 17.04 2724902\n", + "RU Russia 143.50 17125191\n", + "BY Belarus 9.50 207600" + ] + }, + "execution_count": 120, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.loc['KZ':'BY', :]" + ] + }, + { + "cell_type": "code", + "execution_count": 121, + "id": "every-lloyd", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countrysquare
KZKazakhstan2724902
RURussia17125191
UAUkraine603628
\n", + "
" + ], + "text/plain": [ + " country square\n", + "KZ Kazakhstan 2724902\n", + "RU Russia 17125191\n", + "UA Ukraine 603628" + ] + }, + "execution_count": 121, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df[df.population > 10][['country', 'square']]" + ] + }, + { + "cell_type": "code", + "execution_count": 122, + "id": "confused-dealing", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
indexcountrypopulationsquare
0KZKazakhstan17.042724902
1RURussia143.5017125191
2BYBelarus9.50207600
3UAUkraine45.50603628
\n", + "
" + ], + "text/plain": [ + " index country population square\n", + "0 KZ Kazakhstan 17.04 2724902\n", + "1 RU Russia 143.50 17125191\n", + "2 BY Belarus 9.50 207600\n", + "3 UA Ukraine 45.50 603628" + ] + }, + "execution_count": 122, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.reset_index()" + ] + }, + { + "cell_type": "markdown", + "id": "unlimited-brother", + "metadata": {}, + "source": [ + "##### Добавим новый столбец, в котором население поделим на площадь страны" + ] + }, + { + "cell_type": "code", + "execution_count": 123, + "id": "micro-height", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countrypopulationsquaredensity
KZKazakhstan17.0427249026.253436
RURussia143.50171251918.379469
BYBelarus9.5020760045.761079
UAUkraine45.5060362875.377550
\n", + "
" + ], + "text/plain": [ + " country population square density\n", + "KZ Kazakhstan 17.04 2724902 6.253436\n", + "RU Russia 143.50 17125191 8.379469\n", + "BY Belarus 9.50 207600 45.761079\n", + "UA Ukraine 45.50 603628 75.377550" + ] + }, + "execution_count": 123, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df['density'] = df['population'] / df['square'] * 1000000\n", + "df" + ] + }, + { + "cell_type": "markdown", + "id": "passive-characterization", + "metadata": {}, + "source": [ + "##### Теперь удалим его" + ] + }, + { + "cell_type": "code", + "execution_count": 124, + "id": "elect-enforcement", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countrypopulationsquare
KZKazakhstan17.042724902
RURussia143.5017125191
BYBelarus9.50207600
UAUkraine45.50603628
\n", + "
" + ], + "text/plain": [ + " country population square\n", + "KZ Kazakhstan 17.04 2724902\n", + "RU Russia 143.50 17125191\n", + "BY Belarus 9.50 207600\n", + "UA Ukraine 45.50 603628" + ] + }, + "execution_count": 124, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.drop(['density'], axis='columns')" + ] + }, + { + "cell_type": "code", + "execution_count": 125, + "id": "sustained-amber", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
countrypopulationsquaredensity
KZKazakhstan17.0427249026.253436
RURussia143.50171251918.379469
BYBelarus9.5020760045.761079
UAUkraine45.5060362875.377550
\n", + "
" + ], + "text/plain": [ + " country population square density\n", + "KZ Kazakhstan 17.04 2724902 6.253436\n", + "RU Russia 143.50 17125191 8.379469\n", + "BY Belarus 9.50 207600 45.761079\n", + "UA Ukraine 45.50 603628 75.377550" + ] + }, + "execution_count": 125, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = df.rename(columns={'Country Code': 'country code'})\n", + "df" + ] + }, + { + "cell_type": "markdown", + "id": "fewer-rabbit", + "metadata": {}, + "source": [ + "##### Группировка и агрегирование в panadas" + ] + }, + { + "cell_type": "markdown", + "id": "interested-messenger", + "metadata": {}, + "source": [ + "##### Группировка данных один из самых часто используемых методов при анализе данных. В pandas за группировку отвечает метод .groupby." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "numeric-growing", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNS
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85C
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNS
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.1000C123S
4503Allen, Mr. William Henrymale35.0003734508.0500NaNS
.......................................
88688702Montvila, Rev. Juozasmale27.00021153613.0000NaNS
88788811Graham, Miss. Margaret Edithfemale19.00011205330.0000B42S
88888903Johnston, Miss. Catherine Helen \"Carrie\"femaleNaN12W./C. 660723.4500NaNS
88989011Behr, Mr. Karl Howellmale26.00011136930.0000C148C
89089103Dooley, Mr. Patrickmale32.0003703767.7500NaNQ
\n", + "

891 rows × 12 columns

\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "0 1 0 3 \n", + "1 2 1 1 \n", + "2 3 1 3 \n", + "3 4 1 1 \n", + "4 5 0 3 \n", + ".. ... ... ... \n", + "886 887 0 2 \n", + "887 888 1 1 \n", + "888 889 0 3 \n", + "889 890 1 1 \n", + "890 891 0 3 \n", + "\n", + " Name Sex Age SibSp \\\n", + "0 Braund, Mr. Owen Harris male 22.0 1 \n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", + "2 Heikkinen, Miss. Laina female 26.0 0 \n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 \n", + "4 Allen, Mr. William Henry male 35.0 0 \n", + ".. ... ... ... ... \n", + "886 Montvila, Rev. Juozas male 27.0 0 \n", + "887 Graham, Miss. Margaret Edith female 19.0 0 \n", + "888 Johnston, Miss. Catherine Helen \"Carrie\" female NaN 1 \n", + "889 Behr, Mr. Karl Howell male 26.0 0 \n", + "890 Dooley, Mr. Patrick male 32.0 0 \n", + "\n", + " Parch Ticket Fare Cabin Embarked \n", + "0 0 A/5 21171 7.2500 NaN S \n", + "1 0 PC 17599 71.2833 C85 C \n", + "2 0 STON/O2. 3101282 7.9250 NaN S \n", + "3 0 113803 53.1000 C123 S \n", + "4 0 373450 8.0500 NaN S \n", + ".. ... ... ... ... ... \n", + "886 0 211536 13.0000 NaN S \n", + "887 0 112053 30.0000 B42 S \n", + "888 2 W./C. 6607 23.4500 NaN S \n", + "889 0 111369 30.0000 C148 C \n", + "890 0 370376 7.7500 NaN Q \n", + "\n", + "[891 rows x 12 columns]" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "titanic_df = pd.read_csv('titanic.csv')\n", + "titanic_df" + ] + }, + { + "cell_type": "markdown", + "id": "chronic-worth", + "metadata": {}, + "source": [ + "##### Необходимо подсчитать, сколько женщин и мужчин выжило, а сколько нет. В этом нам поможет метод .groupby." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "thick-project", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sex Survived\n", + "female 0 81\n", + " 1 233\n", + "male 0 468\n", + " 1 109\n", + "Name: PassengerId, dtype: int64\n" + ] + } + ], + "source": [ + "print(titanic_df.groupby(['Sex', 'Survived'])['PassengerId'].count())" + ] + }, + { + "cell_type": "markdown", + "id": "existing-rabbit", + "metadata": {}, + "source": [ + "##### А теперь проанализируем в разрезе класса каюты:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "bottom-plain", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pclass Survived\n", + "1 0 80\n", + " 1 136\n", + "2 0 97\n", + " 1 87\n", + "3 0 372\n", + " 1 119\n", + "Name: PassengerId, dtype: int64\n" + ] + } + ], + "source": [ + "print(titanic_df.groupby(['Pclass', 'Survived'])['PassengerId'].count())" + ] + }, + { + "cell_type": "markdown", + "id": "reduced-livestock", + "metadata": {}, + "source": [ + "##### Pandas (Python Data Analysis Library) - библиотека для [удобных] обработки и анализа данных.\n", + "\n", + "##### Рассмотрим данную библиотеку на примере данных соревнования о предсказании судьбы пассажиров лайнера \"Титаник\". Имеется некоторая информация о пассажирах, по которой необходимо предсказать выживаемость каждого из них.\n", + "\n", + "##### Какого типа данная задача? Что является объектами? Что является ответами? Какие могут быть признаки? Какие у них типы? Загрузка данных в pandas происходит в специальный объект типа DataFrame:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "forced-resort", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNS
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85C
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNS
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.1000C123S
4503Allen, Mr. William Henrymale35.0003734508.0500NaNS
.......................................
88688702Montvila, Rev. Juozasmale27.00021153613.0000NaNS
88788811Graham, Miss. Margaret Edithfemale19.00011205330.0000B42S
88888903Johnston, Miss. Catherine Helen \"Carrie\"femaleNaN12W./C. 660723.4500NaNS
88989011Behr, Mr. Karl Howellmale26.00011136930.0000C148C
89089103Dooley, Mr. Patrickmale32.0003703767.7500NaNQ
\n", + "

891 rows × 12 columns

\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "0 1 0 3 \n", + "1 2 1 1 \n", + "2 3 1 3 \n", + "3 4 1 1 \n", + "4 5 0 3 \n", + ".. ... ... ... \n", + "886 887 0 2 \n", + "887 888 1 1 \n", + "888 889 0 3 \n", + "889 890 1 1 \n", + "890 891 0 3 \n", + "\n", + " Name Sex Age SibSp \\\n", + "0 Braund, Mr. Owen Harris male 22.0 1 \n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", + "2 Heikkinen, Miss. Laina female 26.0 0 \n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 \n", + "4 Allen, Mr. William Henry male 35.0 0 \n", + ".. ... ... ... ... \n", + "886 Montvila, Rev. Juozas male 27.0 0 \n", + "887 Graham, Miss. Margaret Edith female 19.0 0 \n", + "888 Johnston, Miss. Catherine Helen \"Carrie\" female NaN 1 \n", + "889 Behr, Mr. Karl Howell male 26.0 0 \n", + "890 Dooley, Mr. Patrick male 32.0 0 \n", + "\n", + " Parch Ticket Fare Cabin Embarked \n", + "0 0 A/5 21171 7.2500 NaN S \n", + "1 0 PC 17599 71.2833 C85 C \n", + "2 0 STON/O2. 3101282 7.9250 NaN S \n", + "3 0 113803 53.1000 C123 S \n", + "4 0 373450 8.0500 NaN S \n", + ".. ... ... ... ... ... \n", + "886 0 211536 13.0000 NaN S \n", + "887 0 112053 30.0000 B42 S \n", + "888 2 W./C. 6607 23.4500 NaN S \n", + "889 0 111369 30.0000 C148 C \n", + "890 0 370376 7.7500 NaN Q \n", + "\n", + "[891 rows x 12 columns]" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data = pd.read_csv('titanic.csv')\n", + "pass_data" + ] + }, + { + "cell_type": "markdown", + "id": "lyric-friendship", + "metadata": {}, + "source": [ + "##### Как видно, данные представляют из себя таблицу, где строка- объект, столбец- признак. Для экономии места можно выводить заданное количество первых строк объекта при помощи метода head():" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "electrical-thomson", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNS
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85C
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNS
\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "0 1 0 3 \n", + "1 2 1 1 \n", + "2 3 1 3 \n", + "\n", + " Name Sex Age SibSp \\\n", + "0 Braund, Mr. Owen Harris male 22.0 1 \n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", + "2 Heikkinen, Miss. Laina female 26.0 0 \n", + "\n", + " Parch Ticket Fare Cabin Embarked \n", + "0 0 A/5 21171 7.2500 NaN S \n", + "1 0 PC 17599 71.2833 C85 C \n", + "2 0 STON/O2. 3101282 7.9250 NaN S " + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data.head(3)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "union-celebrity", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['PassengerId', 'Survived', 'Pclass', 'Name', 'Sex', 'Age', 'SibSp',\n", + " 'Parch', 'Ticket', 'Fare', 'Cabin', 'Embarked'],\n", + " dtype='object')" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data.columns" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "prompt-klein", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.925NaNS
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.100C123S
4503Allen, Mr. William Henrymale35.0003734508.050NaNS
\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "2 3 1 3 \n", + "3 4 1 1 \n", + "4 5 0 3 \n", + "\n", + " Name Sex Age SibSp Parch \\\n", + "2 Heikkinen, Miss. Laina female 26.0 0 0 \n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 0 \n", + "4 Allen, Mr. William Henry male 35.0 0 0 \n", + "\n", + " Ticket Fare Cabin Embarked \n", + "2 STON/O2. 3101282 7.925 NaN S \n", + "3 113803 53.100 C123 S \n", + "4 373450 8.050 NaN S " + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data[2:5]" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "immediate-driver", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
SurvivedPclass
111
213
311
403
\n", + "
" + ], + "text/plain": [ + " Survived Pclass\n", + "1 1 1\n", + "2 1 3\n", + "3 1 1\n", + "4 0 3" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data.iloc[1:5, 1:3]" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "appointed-drawing", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 Braund, Mr. Owen Harris\n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th...\n", + "2 Heikkinen, Miss. Laina\n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel)\n", + "4 Allen, Mr. William Henry\n", + "Name: Name, dtype: object" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data['Name'].head()" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "accurate-amendment", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
NameSexAge
0Braund, Mr. Owen Harrismale22.0
1Cumings, Mrs. John Bradley (Florence Briggs Th...female38.0
2Heikkinen, Miss. Lainafemale26.0
3Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.0
4Allen, Mr. William Henrymale35.0
\n", + "
" + ], + "text/plain": [ + " Name Sex Age\n", + "0 Braund, Mr. Owen Harris male 22.0\n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0\n", + "2 Heikkinen, Miss. Laina female 26.0\n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0\n", + "4 Allen, Mr. William Henry male 35.0" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data[['Name', 'Sex', 'Age']].head()" + ] + }, + { + "cell_type": "markdown", + "id": "severe-candy", + "metadata": {}, + "source": [ + "##### Также действует и логическая индексация, которая позволяет рассматривать определенные группы объектов:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "hired-heath", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85C
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNS
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.1000C123S
8913Johnson, Mrs. Oscar W (Elisabeth Vilhelmina Berg)female27.00234774211.1333NaNS
91012Nasser, Mrs. Nicholas (Adele Achem)female14.01023773630.0708NaNC
\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "1 2 1 1 \n", + "2 3 1 3 \n", + "3 4 1 1 \n", + "8 9 1 3 \n", + "9 10 1 2 \n", + "\n", + " Name Sex Age SibSp \\\n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", + "2 Heikkinen, Miss. Laina female 26.0 0 \n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 \n", + "8 Johnson, Mrs. Oscar W (Elisabeth Vilhelmina Berg) female 27.0 0 \n", + "9 Nasser, Mrs. Nicholas (Adele Achem) female 14.0 1 \n", + "\n", + " Parch Ticket Fare Cabin Embarked \n", + "1 0 PC 17599 71.2833 C85 C \n", + "2 0 STON/O2. 3101282 7.9250 NaN S \n", + "3 0 113803 53.1000 C123 S \n", + "8 2 347742 11.1333 NaN S \n", + "9 0 237736 30.0708 NaN C " + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data[pass_data['Sex'] == 'female'].head() # женщины на борту" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "dramatic-factory", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNS
4503Allen, Mr. William Henrymale35.0003734508.0500NaNS
5603Moran, Mr. JamesmaleNaN003308778.4583NaNQ
6701McCarthy, Mr. Timothy Jmale54.0001746351.8625E46S
7803Palsson, Master. Gosta Leonardmale2.03134990921.0750NaNS
\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass Name Sex Age \\\n", + "0 1 0 3 Braund, Mr. Owen Harris male 22.0 \n", + "4 5 0 3 Allen, Mr. William Henry male 35.0 \n", + "5 6 0 3 Moran, Mr. James male NaN \n", + "6 7 0 1 McCarthy, Mr. Timothy J male 54.0 \n", + "7 8 0 3 Palsson, Master. Gosta Leonard male 2.0 \n", + "\n", + " SibSp Parch Ticket Fare Cabin Embarked \n", + "0 1 0 A/5 21171 7.2500 NaN S \n", + "4 0 0 373450 8.0500 NaN S \n", + "5 0 0 330877 8.4583 NaN Q \n", + "6 0 0 17463 51.8625 E46 S \n", + "7 3 1 349909 21.0750 NaN S " + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# женщины старше 60 и мужчины на борту\n", + "pass_data[(pass_data['Sex'] == 'female') & (pass_data['Age'] >= 60) | (pass_data['Sex'] == 'male')].head()" + ] + }, + { + "cell_type": "markdown", + "id": "exposed-tomorrow", + "metadata": {}, + "source": [ + "### Пример" + ] + }, + { + "cell_type": "markdown", + "id": "happy-thomas", + "metadata": {}, + "source": [ + "##### Посмотрим, сколько на борту было относительно молодых женщин, путешествующих в одиночку. Скорее всего, довольно мало потому что в такое длительное путешествие молодых девушек одних не отпустили бы опекающие родственники." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "polish-science", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(49, 12)" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data[(pass_data.Sex == 'female') & (pass_data.Age > 18) & (pass_data.Age < 25)].shape" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "balanced-french", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "pass_data.Age.hist(bins = 30)" + ] + }, + { + "cell_type": "markdown", + "id": "banned-contest", + "metadata": {}, + "source": [ + "## Редактирование в DataFrame" + ] + }, + { + "cell_type": "markdown", + "id": "deluxe-adapter", + "metadata": {}, + "source": [ + "##### Переименование признаков" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "obvious-insight", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNamesexAgeSibSpParchTicketFareCabinEmbarked
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNS
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85C
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNS
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.1000C123S
4503Allen, Mr. William Henrymale35.0003734508.0500NaNS
\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "0 1 0 3 \n", + "1 2 1 1 \n", + "2 3 1 3 \n", + "3 4 1 1 \n", + "4 5 0 3 \n", + "\n", + " Name sex Age SibSp \\\n", + "0 Braund, Mr. Owen Harris male 22.0 1 \n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", + "2 Heikkinen, Miss. Laina female 26.0 0 \n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 \n", + "4 Allen, Mr. William Henry male 35.0 0 \n", + "\n", + " Parch Ticket Fare Cabin Embarked \n", + "0 0 A/5 21171 7.2500 NaN S \n", + "1 0 PC 17599 71.2833 C85 C \n", + "2 0 STON/O2. 3101282 7.9250 NaN S \n", + "3 0 113803 53.1000 C123 S \n", + "4 0 373450 8.0500 NaN S " + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data.rename(columns = {'Sex' : 'sex'}, inplace = True)\n", + "pass_data.head()" + ] + }, + { + "cell_type": "markdown", + "id": "engaged-person", + "metadata": {}, + "source": [ + "##### Применение преобразования к существующему признаку. Например, выделим фамилию:" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "constitutional-margin", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 Braund\n", + "1 Cumings\n", + "2 Heikkinen\n", + "3 Futrelle\n", + "4 Allen\n", + "Name: Name, dtype: object" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "def get_last_name(name):\n", + " return name.split(',')[0].strip()\n", + "\n", + "last_names = pass_data['Name'].apply(get_last_name)\n", + "last_names.head()" + ] + }, + { + "cell_type": "markdown", + "id": "roman-variable", + "metadata": {}, + "source": [ + "##### Добавление признака" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "alternate-white", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNamesexAgeSibSpParchTicketFareCabinEmbarkedLast_name
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNSBraund
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85CCumings
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNSHeikkinen
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.1000C123SFutrelle
4503Allen, Mr. William Henrymale35.0003734508.0500NaNSAllen
\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "0 1 0 3 \n", + "1 2 1 1 \n", + "2 3 1 3 \n", + "3 4 1 1 \n", + "4 5 0 3 \n", + "\n", + " Name sex Age SibSp \\\n", + "0 Braund, Mr. Owen Harris male 22.0 1 \n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", + "2 Heikkinen, Miss. Laina female 26.0 0 \n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 \n", + "4 Allen, Mr. William Henry male 35.0 0 \n", + "\n", + " Parch Ticket Fare Cabin Embarked Last_name \n", + "0 0 A/5 21171 7.2500 NaN S Braund \n", + "1 0 PC 17599 71.2833 C85 C Cumings \n", + "2 0 STON/O2. 3101282 7.9250 NaN S Heikkinen \n", + "3 0 113803 53.1000 C123 S Futrelle \n", + "4 0 373450 8.0500 NaN S Allen " + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data['Last_name'] = last_names\n", + "pass_data.head()" + ] + }, + { + "cell_type": "markdown", + "id": "excited-finish", + "metadata": {}, + "source": [ + "##### Удаление признака" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "dressed-tucson", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNamesexAgeSibSpParchTicketFareCabinEmbarked
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNS
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85C
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNS
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.1000C123S
4503Allen, Mr. William Henrymale35.0003734508.0500NaNS
\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "0 1 0 3 \n", + "1 2 1 1 \n", + "2 3 1 3 \n", + "3 4 1 1 \n", + "4 5 0 3 \n", + "\n", + " Name sex Age SibSp \\\n", + "0 Braund, Mr. Owen Harris male 22.0 1 \n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", + "2 Heikkinen, Miss. Laina female 26.0 0 \n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 \n", + "4 Allen, Mr. William Henry male 35.0 0 \n", + "\n", + " Parch Ticket Fare Cabin Embarked \n", + "0 0 A/5 21171 7.2500 NaN S \n", + "1 0 PC 17599 71.2833 C85 C \n", + "2 0 STON/O2. 3101282 7.9250 NaN S \n", + "3 0 113803 53.1000 C123 S \n", + "4 0 373450 8.0500 NaN S " + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data.drop('Last_name', axis = 1, inplace = True)\n", + "pass_data.head()" + ] + }, + { + "cell_type": "markdown", + "id": "lasting-anime", + "metadata": {}, + "source": [ + "##### Работа с пропущенными данными Методы isnull() и notnull() позволяют получить бинарный массив, отражающий отсутствие или наличие данных для каждого из объектов соответсвенно" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "false-percentage", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 False\n", + "1 False\n", + "2 False\n", + "3 False\n", + "4 False\n", + "Name: SibSp, dtype: bool" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data['SibSp'].isnull().head()" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "foster-disco", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNamesexAgeSibSpParchTicketFareCabinEmbarked
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNS
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85C
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNS
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.1000C123S
4503Allen, Mr. William Henrymale35.0003734508.0500NaNS
\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "0 1 0 3 \n", + "1 2 1 1 \n", + "2 3 1 3 \n", + "3 4 1 1 \n", + "4 5 0 3 \n", + "\n", + " Name sex Age SibSp \\\n", + "0 Braund, Mr. Owen Harris male 22.0 1 \n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", + "2 Heikkinen, Miss. Laina female 26.0 0 \n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 \n", + "4 Allen, Mr. William Henry male 35.0 0 \n", + "\n", + " Parch Ticket Fare Cabin Embarked \n", + "0 0 A/5 21171 7.2500 NaN S \n", + "1 0 PC 17599 71.2833 C85 C \n", + "2 0 STON/O2. 3101282 7.9250 NaN S \n", + "3 0 113803 53.1000 C123 S \n", + "4 0 373450 8.0500 NaN S " + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data[pass_data['Age'].notnull()].head() # пассажиры с известным возрастом" + ] + }, + { + "cell_type": "markdown", + "id": "constitutional-scale", + "metadata": {}, + "source": [ + "##### Сортировка объектов/признаков" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "limiting-authentication", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNamesexAgeSibSpParchTicketFareCabinEmbarked
6701McCarthy, Mr. Timothy Jmale54.0001746351.8625E46S
272801Fortune, Mr. Charles Alexandermale19.03219950263.0000C23 C25 C27S
303101Uruchurtu, Don. Manuel Emale40.000PC 1760127.7208NaNC
343501Meyer, Mr. Edgar Josephmale28.010PC 1760482.1708NaNC
353601Holverson, Mr. Alexander Oskarmale42.01011378952.0000NaNS
\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass Name sex Age \\\n", + "6 7 0 1 McCarthy, Mr. Timothy J male 54.0 \n", + "27 28 0 1 Fortune, Mr. Charles Alexander male 19.0 \n", + "30 31 0 1 Uruchurtu, Don. Manuel E male 40.0 \n", + "34 35 0 1 Meyer, Mr. Edgar Joseph male 28.0 \n", + "35 36 0 1 Holverson, Mr. Alexander Oskar male 42.0 \n", + "\n", + " SibSp Parch Ticket Fare Cabin Embarked \n", + "6 0 0 17463 51.8625 E46 S \n", + "27 3 2 19950 263.0000 C23 C25 C27 S \n", + "30 0 0 PC 17601 27.7208 NaN C \n", + "34 1 0 PC 17604 82.1708 NaN C \n", + "35 1 0 113789 52.0000 NaN S " + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data.sort_values(by = ['Pclass', 'Survived'], ascending = True).head()" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "ranging-welcome", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
PassengerIdSurvivedPclassNamesexAgeSibSpParchTicketFareCabinEmbarked
1211Cumings, Mrs. John Bradley (Florence Briggs Th...female38.010PC 1759971.2833C85C
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.1000C123S
111211Bonnell, Miss. Elizabethfemale58.00011378326.5500C103S
232411Sloper, Mr. William Thompsonmale28.00011378835.5000A6S
313211Spencer, Mrs. William Augustus (Marie Eugenie)femaleNaN10PC 17569146.5208B78C
\n", + "
" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "1 2 1 1 \n", + "3 4 1 1 \n", + "11 12 1 1 \n", + "23 24 1 1 \n", + "31 32 1 1 \n", + "\n", + " Name sex Age SibSp \\\n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 \n", + "11 Bonnell, Miss. Elizabeth female 58.0 0 \n", + "23 Sloper, Mr. William Thompson male 28.0 0 \n", + "31 Spencer, Mrs. William Augustus (Marie Eugenie) female NaN 1 \n", + "\n", + " Parch Ticket Fare Cabin Embarked \n", + "1 0 PC 17599 71.2833 C85 C \n", + "3 0 113803 53.1000 C123 S \n", + "11 0 113783 26.5500 C103 S \n", + "23 0 113788 35.5000 A6 S \n", + "31 0 PC 17569 146.5208 B78 C " + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pass_data.sort_values(by = ['Pclass', 'Survived'], ascending = [True, False]).head()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "radical-kitchen", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "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.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/ml/lb2/Kardynov.Lab_2.ipynb b/ml/lb2/Kardynov.Lab_2.ipynb new file mode 100644 index 0000000..4de2397 --- /dev/null +++ b/ml/lb2/Kardynov.Lab_2.ipynb @@ -0,0 +1,2306 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "silver-scope", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", + "from pylab import rcParams\n", + "\n", + "%matplotlib inline" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "id": "nasty-tuesday", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
dateCrawlednamesellerofferTypepriceabtestvehicleTypeyearOfRegistrationgearboxpowerPSmodelkilometermonthOfRegistrationfuelTypebrandnotRepairedDamagedateCreatednrOfPicturespostalCodelastSeen
02016-03-24 11:52:17Golf_3_1.6privatAngebot480testNaN1993manuell0golf1500000benzinvolkswagenNaN2016-03-24 00:00:000704352016-04-07 03:16:57
12016-03-24 10:58:45A5_Sportback_2.7_TdiprivatAngebot18300testcoupe2011manuell190NaN1250005dieselaudija2016-03-24 00:00:000669542016-04-07 01:46:50
22016-03-14 12:52:21Jeep_Grand_Cherokee_\"Overland\"privatAngebot9800testsuv2004automatik163grand1250008dieseljeepNaN2016-03-14 00:00:000904802016-04-05 12:47:46
32016-03-17 16:54:04GOLF_4_1_4__3T�RERprivatAngebot1500testkleinwagen2001manuell75golf1500006benzinvolkswagennein2016-03-17 00:00:000910742016-03-17 17:40:17
42016-03-31 17:25:20Skoda_Fabia_1.4_TDI_PD_ClassicprivatAngebot3600testkleinwagen2008manuell69fabia900007dieselskodanein2016-03-31 00:00:000604372016-04-06 10:17:21
\n", + "
" + ], + "text/plain": [ + " dateCrawled name seller offerType \\\n", + "0 2016-03-24 11:52:17 Golf_3_1.6 privat Angebot \n", + "1 2016-03-24 10:58:45 A5_Sportback_2.7_Tdi privat Angebot \n", + "2 2016-03-14 12:52:21 Jeep_Grand_Cherokee_\"Overland\" privat Angebot \n", + "3 2016-03-17 16:54:04 GOLF_4_1_4__3T�RER privat Angebot \n", + "4 2016-03-31 17:25:20 Skoda_Fabia_1.4_TDI_PD_Classic privat Angebot \n", + "\n", + " price abtest vehicleType yearOfRegistration gearbox powerPS model \\\n", + "0 480 test NaN 1993 manuell 0 golf \n", + "1 18300 test coupe 2011 manuell 190 NaN \n", + "2 9800 test suv 2004 automatik 163 grand \n", + "3 1500 test kleinwagen 2001 manuell 75 golf \n", + "4 3600 test kleinwagen 2008 manuell 69 fabia \n", + "\n", + " kilometer monthOfRegistration fuelType brand notRepairedDamage \\\n", + "0 150000 0 benzin volkswagen NaN \n", + "1 125000 5 diesel audi ja \n", + "2 125000 8 diesel jeep NaN \n", + "3 150000 6 benzin volkswagen nein \n", + "4 90000 7 diesel skoda nein \n", + "\n", + " dateCreated nrOfPictures postalCode lastSeen \n", + "0 2016-03-24 00:00:00 0 70435 2016-04-07 03:16:57 \n", + "1 2016-03-24 00:00:00 0 66954 2016-04-07 01:46:50 \n", + "2 2016-03-14 00:00:00 0 90480 2016-04-05 12:47:46 \n", + "3 2016-03-17 00:00:00 0 91074 2016-03-17 17:40:17 \n", + "4 2016-03-31 00:00:00 0 60437 2016-04-06 10:17:21 " + ] + }, + "execution_count": 66, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_autos = pd.read_csv('autos.csv')\n", + "df_autos.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "alone-civilization", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
priceyearOfRegistrationpowerPSkilometermonthOfRegistrationnrOfPicturespostalCode
count3.715280e+05371528.000000371528.000000371528.000000371528.000000371528.0371528.00000
mean1.729514e+042004.577997115.549477125618.6882285.7344450.050820.66764
std3.587954e+0692.866598192.13957840112.3370513.7124120.025799.08247
min0.000000e+001000.0000000.0000005000.0000000.0000000.01067.00000
25%1.150000e+031999.00000070.000000125000.0000003.0000000.030459.00000
50%2.950000e+032003.000000105.000000150000.0000006.0000000.049610.00000
75%7.200000e+032008.000000150.000000150000.0000009.0000000.071546.00000
max2.147484e+099999.00000020000.000000150000.00000012.0000000.099998.00000
\n", + "
" + ], + "text/plain": [ + " price yearOfRegistration powerPS kilometer \\\n", + "count 3.715280e+05 371528.000000 371528.000000 371528.000000 \n", + "mean 1.729514e+04 2004.577997 115.549477 125618.688228 \n", + "std 3.587954e+06 92.866598 192.139578 40112.337051 \n", + "min 0.000000e+00 1000.000000 0.000000 5000.000000 \n", + "25% 1.150000e+03 1999.000000 70.000000 125000.000000 \n", + "50% 2.950000e+03 2003.000000 105.000000 150000.000000 \n", + "75% 7.200000e+03 2008.000000 150.000000 150000.000000 \n", + "max 2.147484e+09 9999.000000 20000.000000 150000.000000 \n", + "\n", + " monthOfRegistration nrOfPictures postalCode \n", + "count 371528.000000 371528.0 371528.00000 \n", + "mean 5.734445 0.0 50820.66764 \n", + "std 3.712412 0.0 25799.08247 \n", + "min 0.000000 0.0 1067.00000 \n", + "25% 3.000000 0.0 30459.00000 \n", + "50% 6.000000 0.0 49610.00000 \n", + "75% 9.000000 0.0 71546.00000 \n", + "max 12.000000 0.0 99998.00000 " + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_autos.describe()#для просмотра некоторых основных статистических данных" + ] + }, + { + "cell_type": "markdown", + "id": "hundred-bloom", + "metadata": {}, + "source": [ + "#### Удаление столбцов с ценностью ниже 1000" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "environmental-effects", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
dateCrawlednamesellerofferTypepriceabtestvehicleTypeyearOfRegistrationgearboxpowerPSmodelkilometermonthOfRegistrationfuelTypebrandnotRepairedDamagedateCreatednrOfPicturespostalCodelastSeen
12016-03-24 10:58:45A5_Sportback_2.7_TdiprivatAngebot18300testcoupe2011manuell190NaN1250005dieselaudija2016-03-24 00:00:000669542016-04-07 01:46:50
22016-03-14 12:52:21Jeep_Grand_Cherokee_\"Overland\"privatAngebot9800testsuv2004automatik163grand1250008dieseljeepNaN2016-03-14 00:00:000904802016-04-05 12:47:46
32016-03-17 16:54:04GOLF_4_1_4__3T�RERprivatAngebot1500testkleinwagen2001manuell75golf1500006benzinvolkswagennein2016-03-17 00:00:000910742016-03-17 17:40:17
42016-03-31 17:25:20Skoda_Fabia_1.4_TDI_PD_ClassicprivatAngebot3600testkleinwagen2008manuell69fabia900007dieselskodanein2016-03-31 00:00:000604372016-04-06 10:17:21
62016-04-01 20:48:51Peugeot_206_CC_110_PlatinumprivatAngebot2200testcabrio2004manuell1092_reihe1500008benzinpeugeotnein2016-04-01 00:00:000671122016-04-05 18:18:39
\n", + "
" + ], + "text/plain": [ + " dateCrawled name seller offerType \\\n", + "1 2016-03-24 10:58:45 A5_Sportback_2.7_Tdi privat Angebot \n", + "2 2016-03-14 12:52:21 Jeep_Grand_Cherokee_\"Overland\" privat Angebot \n", + "3 2016-03-17 16:54:04 GOLF_4_1_4__3T�RER privat Angebot \n", + "4 2016-03-31 17:25:20 Skoda_Fabia_1.4_TDI_PD_Classic privat Angebot \n", + "6 2016-04-01 20:48:51 Peugeot_206_CC_110_Platinum privat Angebot \n", + "\n", + " price abtest vehicleType yearOfRegistration gearbox powerPS model \\\n", + "1 18300 test coupe 2011 manuell 190 NaN \n", + "2 9800 test suv 2004 automatik 163 grand \n", + "3 1500 test kleinwagen 2001 manuell 75 golf \n", + "4 3600 test kleinwagen 2008 manuell 69 fabia \n", + "6 2200 test cabrio 2004 manuell 109 2_reihe \n", + "\n", + " kilometer monthOfRegistration fuelType brand notRepairedDamage \\\n", + "1 125000 5 diesel audi ja \n", + "2 125000 8 diesel jeep NaN \n", + "3 150000 6 benzin volkswagen nein \n", + "4 90000 7 diesel skoda nein \n", + "6 150000 8 benzin peugeot nein \n", + "\n", + " dateCreated nrOfPictures postalCode lastSeen \n", + "1 2016-03-24 00:00:00 0 66954 2016-04-07 01:46:50 \n", + "2 2016-03-14 00:00:00 0 90480 2016-04-05 12:47:46 \n", + "3 2016-03-17 00:00:00 0 91074 2016-03-17 17:40:17 \n", + "4 2016-03-31 00:00:00 0 60437 2016-04-06 10:17:21 \n", + "6 2016-04-01 00:00:00 0 67112 2016-04-05 18:18:39 " + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_autos.drop(df_autos[df_autos['price'] < 1000].index, axis=0, inplace=True)\n", + "df_autos.head()" + ] + }, + { + "cell_type": "markdown", + "id": "terminal-aaron", + "metadata": {}, + "source": [ + "#### Удаление пустых столбцов и повторяющихся столбцов (вывод объема данных до и после удаления)" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "located-bracket", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Int64Index: 288193 entries, 1 to 371527\n", + "Data columns (total 20 columns):\n", + " # Column Non-Null Count Dtype \n", + "--- ------ -------------- ----- \n", + " 0 dateCrawled 288193 non-null object\n", + " 1 name 288193 non-null object\n", + " 2 seller 288193 non-null object\n", + " 3 offerType 288193 non-null object\n", + " 4 price 288193 non-null int64 \n", + " 5 abtest 288193 non-null object\n", + " 6 vehicleType 267506 non-null object\n", + " 7 yearOfRegistration 288193 non-null int64 \n", + " 8 gearbox 277613 non-null object\n", + " 9 powerPS 288193 non-null int64 \n", + " 10 model 275991 non-null object\n", + " 11 kilometer 288193 non-null int64 \n", + " 12 monthOfRegistration 288193 non-null int64 \n", + " 13 fuelType 270360 non-null object\n", + " 14 brand 288193 non-null object\n", + " 15 notRepairedDamage 245471 non-null object\n", + " 16 dateCreated 288193 non-null object\n", + " 17 nrOfPictures 288193 non-null int64 \n", + " 18 postalCode 288193 non-null int64 \n", + " 19 lastSeen 288193 non-null object\n", + "dtypes: int64(7), object(13)\n", + "memory usage: 46.2+ MB\n" + ] + }, + { + "data": { + "text/plain": [ + "(None,\n", + " dateCrawled 0\n", + " name 0\n", + " seller 0\n", + " offerType 0\n", + " price 0\n", + " abtest 0\n", + " vehicleType 20687\n", + " yearOfRegistration 0\n", + " gearbox 10580\n", + " powerPS 0\n", + " model 12202\n", + " kilometer 0\n", + " monthOfRegistration 0\n", + " fuelType 17833\n", + " brand 0\n", + " notRepairedDamage 42722\n", + " dateCreated 0\n", + " nrOfPictures 0\n", + " postalCode 0\n", + " lastSeen 0\n", + " dtype: int64)" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_autos.info(), df_autos.isna().sum()" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "distinguished-topic", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
dateCrawlednamesellerofferTypepriceabtestvehicleTypeyearOfRegistrationgearboxpowerPSmodelkilometermonthOfRegistrationfuelTypebrandnotRepairedDamagedateCreatednrOfPicturespostalCodelastSeen
32016-03-17 16:54:04GOLF_4_1_4__3T�RERprivatAngebot1500testkleinwagen2001manuell75golf1500006benzinvolkswagennein2016-03-17 00:00:000910742016-03-17 17:40:17
42016-03-31 17:25:20Skoda_Fabia_1.4_TDI_PD_ClassicprivatAngebot3600testkleinwagen2008manuell69fabia900007dieselskodanein2016-03-31 00:00:000604372016-04-06 10:17:21
62016-04-01 20:48:51Peugeot_206_CC_110_PlatinumprivatAngebot2200testcabrio2004manuell1092_reihe1500008benzinpeugeotnein2016-04-01 00:00:000671122016-04-05 18:18:39
102016-03-26 19:54:18Mazda_3_1.6_SportprivatAngebot2000controllimousine2004manuell1053_reihe15000012benzinmazdanein2016-03-26 00:00:000962242016-04-06 10:45:34
112016-04-07 10:06:22Volkswagen_Passat_Variant_2.0_TDI_ComfortlineprivatAngebot2799controlkombi2005manuell140passat15000012dieselvolkswagenja2016-04-07 00:00:000572902016-04-07 10:25:17
\n", + "
" + ], + "text/plain": [ + " dateCrawled name \\\n", + "3 2016-03-17 16:54:04 GOLF_4_1_4__3T�RER \n", + "4 2016-03-31 17:25:20 Skoda_Fabia_1.4_TDI_PD_Classic \n", + "6 2016-04-01 20:48:51 Peugeot_206_CC_110_Platinum \n", + "10 2016-03-26 19:54:18 Mazda_3_1.6_Sport \n", + "11 2016-04-07 10:06:22 Volkswagen_Passat_Variant_2.0_TDI_Comfortline \n", + "\n", + " seller offerType price abtest vehicleType yearOfRegistration gearbox \\\n", + "3 privat Angebot 1500 test kleinwagen 2001 manuell \n", + "4 privat Angebot 3600 test kleinwagen 2008 manuell \n", + "6 privat Angebot 2200 test cabrio 2004 manuell \n", + "10 privat Angebot 2000 control limousine 2004 manuell \n", + "11 privat Angebot 2799 control kombi 2005 manuell \n", + "\n", + " powerPS model kilometer monthOfRegistration fuelType brand \\\n", + "3 75 golf 150000 6 benzin volkswagen \n", + "4 69 fabia 90000 7 diesel skoda \n", + "6 109 2_reihe 150000 8 benzin peugeot \n", + "10 105 3_reihe 150000 12 benzin mazda \n", + "11 140 passat 150000 12 diesel volkswagen \n", + "\n", + " notRepairedDamage dateCreated nrOfPictures postalCode \\\n", + "3 nein 2016-03-17 00:00:00 0 91074 \n", + "4 nein 2016-03-31 00:00:00 0 60437 \n", + "6 nein 2016-04-01 00:00:00 0 67112 \n", + "10 nein 2016-03-26 00:00:00 0 96224 \n", + "11 ja 2016-04-07 00:00:00 0 57290 \n", + "\n", + " lastSeen \n", + "3 2016-03-17 17:40:17 \n", + "4 2016-04-06 10:17:21 \n", + "6 2016-04-05 18:18:39 \n", + "10 2016-04-06 10:45:34 \n", + "11 2016-04-07 10:25:17 " + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_autos.dropna(axis=0, inplace=True)\n", + "df_autos.drop_duplicates(keep='first', inplace=True)#drop_duplicates помогает удалить дубликаты из фрейма данных.\n", + "df_autos.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "loved-cooling", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Int64Index: 219827 entries, 3 to 371527\n", + "Data columns (total 20 columns):\n", + " # Column Non-Null Count Dtype \n", + "--- ------ -------------- ----- \n", + " 0 dateCrawled 219827 non-null object\n", + " 1 name 219827 non-null object\n", + " 2 seller 219827 non-null object\n", + " 3 offerType 219827 non-null object\n", + " 4 price 219827 non-null int64 \n", + " 5 abtest 219827 non-null object\n", + " 6 vehicleType 219827 non-null object\n", + " 7 yearOfRegistration 219827 non-null int64 \n", + " 8 gearbox 219827 non-null object\n", + " 9 powerPS 219827 non-null int64 \n", + " 10 model 219827 non-null object\n", + " 11 kilometer 219827 non-null int64 \n", + " 12 monthOfRegistration 219827 non-null int64 \n", + " 13 fuelType 219827 non-null object\n", + " 14 brand 219827 non-null object\n", + " 15 notRepairedDamage 219827 non-null object\n", + " 16 dateCreated 219827 non-null object\n", + " 17 nrOfPictures 219827 non-null int64 \n", + " 18 postalCode 219827 non-null int64 \n", + " 19 lastSeen 219827 non-null object\n", + "dtypes: int64(7), object(13)\n", + "memory usage: 35.2+ MB\n" + ] + }, + { + "data": { + "text/plain": [ + "(None,\n", + " dateCrawled 0\n", + " name 0\n", + " seller 0\n", + " offerType 0\n", + " price 0\n", + " abtest 0\n", + " vehicleType 0\n", + " yearOfRegistration 0\n", + " gearbox 0\n", + " powerPS 0\n", + " model 0\n", + " kilometer 0\n", + " monthOfRegistration 0\n", + " fuelType 0\n", + " brand 0\n", + " notRepairedDamage 0\n", + " dateCreated 0\n", + " nrOfPictures 0\n", + " postalCode 0\n", + " lastSeen 0\n", + " dtype: int64)" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_autos.info(), df_autos.isna().sum()" + ] + }, + { + "cell_type": "markdown", + "id": "pretty-stanley", + "metadata": {}, + "source": [ + "#### Удаление данных выходящих за границу таблицы (вывод данных до и после)" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "martial-studio", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['dateCrawled', 'name', 'seller', 'offerType', 'price', 'abtest',\n", + " 'vehicleType', 'yearOfRegistration', 'gearbox', 'powerPS', 'model',\n", + " 'kilometer', 'monthOfRegistration', 'fuelType', 'brand',\n", + " 'notRepairedDamage', 'dateCreated', 'nrOfPictures', 'postalCode',\n", + " 'lastSeen'],\n", + " dtype='object')" + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_autos.columns" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "steady-bridal", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "df_autos.boxplot(column=['price', 'yearOfRegistration', 'powerPS'])" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "upper-airline", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "Q1 = df_autos['price'].quantile(0.25)\n", + "Q3 = df_autos['price'].quantile(0.75)\n", + "\n", + "df_autos[(df_autos['price'] > Q1) & (df_autos['price'] < Q3)].boxplot(column=['price'])\n", + "df_autos = df_autos[(df_autos['price'] > Q1) & (df_autos['price'] < Q3)]" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "artificial-folks", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "Q1 = df_autos['yearOfRegistration'].quantile(0.25)\n", + "Q3 = df_autos['yearOfRegistration'].quantile(0.75)\n", + "\n", + "df_autos[(df_autos['yearOfRegistration'] > Q1) & (df_autos['yearOfRegistration'] < Q3)].boxplot(column=['yearOfRegistration'])\n", + "df_autos = df_autos[(df_autos['yearOfRegistration'] > Q1) & (df_autos['yearOfRegistration'] < Q3)]" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "palestinian-imperial", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "Q1 = df_autos['powerPS'].quantile(0.25)\n", + "Q3 = df_autos['powerPS'].quantile(0.75)\n", + "\n", + "df_autos[(df_autos['powerPS'] > Q1) & (df_autos['powerPS'] < Q3)].boxplot(column=['powerPS'])\n", + "df_autos = df_autos[(df_autos['powerPS'] > Q1) & (df_autos['powerPS'] < Q3)]" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "id": "optical-syndrome", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Int64Index: 23167 entries, 11 to 371510\n", + "Data columns (total 20 columns):\n", + " # Column Non-Null Count Dtype \n", + "--- ------ -------------- ----- \n", + " 0 dateCrawled 23167 non-null object\n", + " 1 name 23167 non-null object\n", + " 2 seller 23167 non-null object\n", + " 3 offerType 23167 non-null object\n", + " 4 price 23167 non-null int64 \n", + " 5 abtest 23167 non-null object\n", + " 6 vehicleType 23167 non-null object\n", + " 7 yearOfRegistration 23167 non-null int64 \n", + " 8 gearbox 23167 non-null object\n", + " 9 powerPS 23167 non-null int64 \n", + " 10 model 23167 non-null object\n", + " 11 kilometer 23167 non-null int64 \n", + " 12 monthOfRegistration 23167 non-null int64 \n", + " 13 fuelType 23167 non-null object\n", + " 14 brand 23167 non-null object\n", + " 15 notRepairedDamage 23167 non-null object\n", + " 16 dateCreated 23167 non-null object\n", + " 17 nrOfPictures 23167 non-null int64 \n", + " 18 postalCode 23167 non-null int64 \n", + " 19 lastSeen 23167 non-null object\n", + "dtypes: int64(7), object(13)\n", + "memory usage: 3.7+ MB\n" + ] + } + ], + "source": [ + "df_autos.info()" + ] + }, + { + "cell_type": "markdown", + "id": "better-glance", + "metadata": {}, + "source": [ + "#### Гистограмма по маркам автомобилей, типу кузову и бензину" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "wireless-reaction", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "([0,\n", + " 1,\n", + " 2,\n", + " 3,\n", + " 4,\n", + " 5,\n", + " 6,\n", + " 7,\n", + " 8,\n", + " 9,\n", + " 10,\n", + " 11,\n", + " 12,\n", + " 13,\n", + " 14,\n", + " 15,\n", + " 16,\n", + " 17,\n", + " 18,\n", + " 19,\n", + " 20,\n", + " 21,\n", + " 22,\n", + " 23,\n", + " 24,\n", + " 25,\n", + " 26,\n", + " 27,\n", + " 28,\n", + " 29,\n", + " 30,\n", + " 31,\n", + " 32,\n", + " 33,\n", + " 34,\n", + " 35,\n", + " 36],\n", + " [Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, '')])" + ] + }, + "execution_count": 50, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "rcParams['figure.figsize'] = 12, 6\n", + "df_autos.brand.hist(bins=len(df_autos.brand.unique()))\n", + "plt.xticks(rotation=100)" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "id": "modular-mexican", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "([0, 1, 2, 3, 4, 5, 6, 7],\n", + " [Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, '')])" + ] + }, + "execution_count": 45, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "rcParams['figure.figsize'] = 12, 6\n", + "df_autos.vehicleType.hist(bins=len(df_autos.vehicleType.unique()))\n", + "plt.xticks(rotation=60)" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "id": "cordless-scanning", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "([0, 1, 2, 3, 4, 5, 6],\n", + " [Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, ''),\n", + " Text(0, 0, '')])" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "rcParams['figure.figsize'] = 12, 6\n", + "df_autos.fuelType.hist(bins=len(df_autos.fuelType.unique()))\n", + "plt.xticks(rotation=60)" + ] + }, + { + "cell_type": "markdown", + "id": "chemical-laundry", + "metadata": {}, + "source": [ + "#### Добавление длины названия" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "id": "seventh-temperature", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
dateCrawlednamesellerofferTypepriceabtestvehicleTypeyearOfRegistrationgearboxpowerPS...monthOfRegistrationfuelTypebrandnotRepairedDamagedateCreatednrOfPicturespostalCodelastSeenname_lenname_length
112016-04-07 10:06:22Volkswagen_Passat_Variant_2.0_TDI_ComfortlineprivatAngebot2799controlkombi2005manuell140...12dieselvolkswagenja2016-04-07 00:00:000572902016-04-07 10:25:174545
182016-03-23 15:48:05Ford_C_MAX_2.0_TDCi_DPF_TitaniumprivatAngebot7550testbus2007manuell136...6dieselfordnein2016-03-23 00:00:000883612016-04-05 18:45:113232
342016-03-17 18:55:12Mercedes_Benz_E_200_CDI_Automatik_ClassicprivatAngebot3500controllimousine2004automatik122...11dieselmercedes_benznein2016-03-17 00:00:000670712016-03-30 15:46:104141
642016-03-08 12:54:47Volkswagen_Jetta_1.9_TDI_DSG_DPF_SportlineprivatAngebot7000testlimousine2006automatik105...10dieselvolkswagennein2016-03-08 00:00:00062422016-03-11 17:16:184242
752016-03-31 18:46:36VW_Golf_V_Plus_TDI_1_8privatAngebot6600controllimousine2006manuell105...10dieselvolkswagennein2016-03-31 00:00:000418122016-03-31 18:46:362222
\n", + "

5 rows × 22 columns

\n", + "
" + ], + "text/plain": [ + " dateCrawled name \\\n", + "11 2016-04-07 10:06:22 Volkswagen_Passat_Variant_2.0_TDI_Comfortline \n", + "18 2016-03-23 15:48:05 Ford_C_MAX_2.0_TDCi_DPF_Titanium \n", + "34 2016-03-17 18:55:12 Mercedes_Benz_E_200_CDI_Automatik_Classic \n", + "64 2016-03-08 12:54:47 Volkswagen_Jetta_1.9_TDI_DSG_DPF_Sportline \n", + "75 2016-03-31 18:46:36 VW_Golf_V_Plus_TDI_1_8 \n", + "\n", + " seller offerType price abtest vehicleType yearOfRegistration \\\n", + "11 privat Angebot 2799 control kombi 2005 \n", + "18 privat Angebot 7550 test bus 2007 \n", + "34 privat Angebot 3500 control limousine 2004 \n", + "64 privat Angebot 7000 test limousine 2006 \n", + "75 privat Angebot 6600 control limousine 2006 \n", + "\n", + " gearbox powerPS ... monthOfRegistration fuelType brand \\\n", + "11 manuell 140 ... 12 diesel volkswagen \n", + "18 manuell 136 ... 6 diesel ford \n", + "34 automatik 122 ... 11 diesel mercedes_benz \n", + "64 automatik 105 ... 10 diesel volkswagen \n", + "75 manuell 105 ... 10 diesel volkswagen \n", + "\n", + " notRepairedDamage dateCreated nrOfPictures postalCode \\\n", + "11 ja 2016-04-07 00:00:00 0 57290 \n", + "18 nein 2016-03-23 00:00:00 0 88361 \n", + "34 nein 2016-03-17 00:00:00 0 67071 \n", + "64 nein 2016-03-08 00:00:00 0 6242 \n", + "75 nein 2016-03-31 00:00:00 0 41812 \n", + "\n", + " lastSeen name_len name_length \n", + "11 2016-04-07 10:25:17 45 45 \n", + "18 2016-04-05 18:45:11 32 32 \n", + "34 2016-03-30 15:46:10 41 41 \n", + "64 2016-03-11 17:16:18 42 42 \n", + "75 2016-03-31 18:46:36 22 22 \n", + "\n", + "[5 rows x 22 columns]" + ] + }, + "execution_count": 51, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_autos['name_length'] = df_autos['name'].apply(len)\n", + "df_autos.head()" + ] + }, + { + "cell_type": "markdown", + "id": "altered-savannah", + "metadata": {}, + "source": [ + "#### Карта кореляций между признаками" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "willing-bread", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
dateCrawlednamesellerofferTypepriceabtestyearOfRegistrationgearboxpowerPSmodel...brand_volkswagenbrand_volvovehicleType_anderevehicleType_busvehicleType_cabriovehicleType_coupevehicleType_kleinwagenvehicleType_kombivehicleType_limousinevehicleType_suv
112016-04-07 10:06:22Volkswagen_Passat_Variant_2.0_TDI_ComfortlineprivatAngebot2799control2005manuell140passat...1000000100
182016-03-23 15:48:05Ford_C_MAX_2.0_TDCi_DPF_TitaniumprivatAngebot7550test2007manuell136c_max...0001000000
342016-03-17 18:55:12Mercedes_Benz_E_200_CDI_Automatik_ClassicprivatAngebot3500control2004automatik122e_klasse...0000000010
642016-03-08 12:54:47Volkswagen_Jetta_1.9_TDI_DSG_DPF_SportlineprivatAngebot7000test2006automatik105jetta...1000000010
752016-03-31 18:46:36VW_Golf_V_Plus_TDI_1_8privatAngebot6600control2006manuell105golf...1000000010
\n", + "

5 rows × 65 columns

\n", + "
" + ], + "text/plain": [ + " dateCrawled name \\\n", + "11 2016-04-07 10:06:22 Volkswagen_Passat_Variant_2.0_TDI_Comfortline \n", + "18 2016-03-23 15:48:05 Ford_C_MAX_2.0_TDCi_DPF_Titanium \n", + "34 2016-03-17 18:55:12 Mercedes_Benz_E_200_CDI_Automatik_Classic \n", + "64 2016-03-08 12:54:47 Volkswagen_Jetta_1.9_TDI_DSG_DPF_Sportline \n", + "75 2016-03-31 18:46:36 VW_Golf_V_Plus_TDI_1_8 \n", + "\n", + " seller offerType price abtest yearOfRegistration gearbox powerPS \\\n", + "11 privat Angebot 2799 control 2005 manuell 140 \n", + "18 privat Angebot 7550 test 2007 manuell 136 \n", + "34 privat Angebot 3500 control 2004 automatik 122 \n", + "64 privat Angebot 7000 test 2006 automatik 105 \n", + "75 privat Angebot 6600 control 2006 manuell 105 \n", + "\n", + " model ... brand_volkswagen brand_volvo vehicleType_andere \\\n", + "11 passat ... 1 0 0 \n", + "18 c_max ... 0 0 0 \n", + "34 e_klasse ... 0 0 0 \n", + "64 jetta ... 1 0 0 \n", + "75 golf ... 1 0 0 \n", + "\n", + " vehicleType_bus vehicleType_cabrio vehicleType_coupe \\\n", + "11 0 0 0 \n", + "18 1 0 0 \n", + "34 0 0 0 \n", + "64 0 0 0 \n", + "75 0 0 0 \n", + "\n", + " vehicleType_kleinwagen vehicleType_kombi vehicleType_limousine \\\n", + "11 0 1 0 \n", + "18 0 0 0 \n", + "34 0 0 1 \n", + "64 0 0 1 \n", + "75 0 0 1 \n", + "\n", + " vehicleType_suv \n", + "11 0 \n", + "18 0 \n", + "34 0 \n", + "64 0 \n", + "75 0 \n", + "\n", + "[5 rows x 65 columns]" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_autos = pd.get_dummies(df_autos, columns=['vehicleType'])\n", + "df_autos.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "id": "therapeutic-telling", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "vehicleType_bus 0.032184\n", + "vehicleType_cabrio 0.019494\n", + "vehicleType_coupe -0.023589\n", + "vehicleType_kleinwagen -0.038249\n", + "vehicleType_kombi -0.054286\n", + "vehicleType_limousine 0.015894\n", + "vehicleType_suv 0.055120\n", + "Name: price, dtype: float64" + ] + }, + "execution_count": 59, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "spearman_corr = df_autos.corr(method='spearman')\n", + "spearman_corr['price']['vehicleType_bus':'vehicleType_suv']" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "id": "entitled-transcription", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "vehicleType_bus 0.028678\n", + "vehicleType_cabrio 0.027332\n", + "vehicleType_coupe -0.024775\n", + "vehicleType_kleinwagen -0.040386\n", + "vehicleType_kombi -0.046958\n", + "vehicleType_limousine 0.009756\n", + "vehicleType_suv 0.051834\n", + "Name: price, dtype: float64" + ] + }, + "execution_count": 60, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pearson_corr = df_autos.corr(method='pearson')\n", + "pearson_corr['price']['vehicleType_bus':'vehicleType_suv']" + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "id": "third-notification", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 62, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "pearson_corr['price'].plot.kde()" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "id": "registered-snowboard", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "spearman_corr['price'].plot.kde()" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "id": "active-antenna", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
dateCrawlednamesellerofferTypepriceabtestyearOfRegistrationgearboxpowerPSmodel...brand_volvovehicleType_anderevehicleType_busvehicleType_cabriovehicleType_coupevehicleType_kleinwagenvehicleType_kombivehicleType_limousinevehicleType_suvyear+kilometer
112016-04-07 10:06:22Volkswagen_Passat_Variant_2.0_TDI_ComfortlineprivatAngebot2799control2005manuell140passat...000000100152005
182016-03-23 15:48:05Ford_C_MAX_2.0_TDCi_DPF_TitaniumprivatAngebot7550test2007manuell136c_max...001000000152007
342016-03-17 18:55:12Mercedes_Benz_E_200_CDI_Automatik_ClassicprivatAngebot3500control2004automatik122e_klasse...000000010152004
642016-03-08 12:54:47Volkswagen_Jetta_1.9_TDI_DSG_DPF_SportlineprivatAngebot7000test2006automatik105jetta...000000010102006
752016-03-31 18:46:36VW_Golf_V_Plus_TDI_1_8privatAngebot6600control2006manuell105golf...000000010152006
\n", + "

5 rows × 66 columns

\n", + "
" + ], + "text/plain": [ + " dateCrawled name \\\n", + "11 2016-04-07 10:06:22 Volkswagen_Passat_Variant_2.0_TDI_Comfortline \n", + "18 2016-03-23 15:48:05 Ford_C_MAX_2.0_TDCi_DPF_Titanium \n", + "34 2016-03-17 18:55:12 Mercedes_Benz_E_200_CDI_Automatik_Classic \n", + "64 2016-03-08 12:54:47 Volkswagen_Jetta_1.9_TDI_DSG_DPF_Sportline \n", + "75 2016-03-31 18:46:36 VW_Golf_V_Plus_TDI_1_8 \n", + "\n", + " seller offerType price abtest yearOfRegistration gearbox powerPS \\\n", + "11 privat Angebot 2799 control 2005 manuell 140 \n", + "18 privat Angebot 7550 test 2007 manuell 136 \n", + "34 privat Angebot 3500 control 2004 automatik 122 \n", + "64 privat Angebot 7000 test 2006 automatik 105 \n", + "75 privat Angebot 6600 control 2006 manuell 105 \n", + "\n", + " model ... brand_volvo vehicleType_andere vehicleType_bus \\\n", + "11 passat ... 0 0 0 \n", + "18 c_max ... 0 0 1 \n", + "34 e_klasse ... 0 0 0 \n", + "64 jetta ... 0 0 0 \n", + "75 golf ... 0 0 0 \n", + "\n", + " vehicleType_cabrio vehicleType_coupe vehicleType_kleinwagen \\\n", + "11 0 0 0 \n", + "18 0 0 0 \n", + "34 0 0 0 \n", + "64 0 0 0 \n", + "75 0 0 0 \n", + "\n", + " vehicleType_kombi vehicleType_limousine vehicleType_suv year+kilometer \n", + "11 1 0 0 152005 \n", + "18 0 0 0 152007 \n", + "34 0 1 0 152004 \n", + "64 0 1 0 102006 \n", + "75 0 1 0 152006 \n", + "\n", + "[5 rows x 66 columns]" + ] + }, + "execution_count": 64, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_autos['year+kilometer'] = df_autos['yearOfRegistration'] + df_autos['kilometer']\n", + "df_autos.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "id": "alleged-turkey", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Int64Index: 23167 entries, 11 to 371510\n", + "Data columns (total 66 columns):\n", + " # Column Non-Null Count Dtype \n", + "--- ------ -------------- ----- \n", + " 0 dateCrawled 23167 non-null object\n", + " 1 name 23167 non-null object\n", + " 2 seller 23167 non-null object\n", + " 3 offerType 23167 non-null object\n", + " 4 price 23167 non-null int64 \n", + " 5 abtest 23167 non-null object\n", + " 6 yearOfRegistration 23167 non-null int64 \n", + " 7 gearbox 23167 non-null object\n", + " 8 powerPS 23167 non-null int64 \n", + " 9 model 23167 non-null object\n", + " 10 kilometer 23167 non-null int64 \n", + " 11 monthOfRegistration 23167 non-null int64 \n", + " 12 fuelType 23167 non-null object\n", + " 13 notRepairedDamage 23167 non-null object\n", + " 14 dateCreated 23167 non-null object\n", + " 15 nrOfPictures 23167 non-null int64 \n", + " 16 postalCode 23167 non-null int64 \n", + " 17 lastSeen 23167 non-null object\n", + " 18 name_len 23167 non-null int64 \n", + " 19 name_length 23167 non-null int64 \n", + " 20 brand_alfa_romeo 23167 non-null uint8 \n", + " 21 brand_audi 23167 non-null uint8 \n", + " 22 brand_bmw 23167 non-null uint8 \n", + " 23 brand_chevrolet 23167 non-null uint8 \n", + " 24 brand_chrysler 23167 non-null uint8 \n", + " 25 brand_citroen 23167 non-null uint8 \n", + " 26 brand_dacia 23167 non-null uint8 \n", + " 27 brand_daewoo 23167 non-null uint8 \n", + " 28 brand_daihatsu 23167 non-null uint8 \n", + " 29 brand_fiat 23167 non-null uint8 \n", + " 30 brand_ford 23167 non-null uint8 \n", + " 31 brand_honda 23167 non-null uint8 \n", + " 32 brand_hyundai 23167 non-null uint8 \n", + " 33 brand_jaguar 23167 non-null uint8 \n", + " 34 brand_jeep 23167 non-null uint8 \n", + " 35 brand_kia 23167 non-null uint8 \n", + " 36 brand_lada 23167 non-null uint8 \n", + " 37 brand_lancia 23167 non-null uint8 \n", + " 38 brand_land_rover 23167 non-null uint8 \n", + " 39 brand_mazda 23167 non-null uint8 \n", + " 40 brand_mercedes_benz 23167 non-null uint8 \n", + " 41 brand_mini 23167 non-null uint8 \n", + " 42 brand_mitsubishi 23167 non-null uint8 \n", + " 43 brand_nissan 23167 non-null uint8 \n", + " 44 brand_opel 23167 non-null uint8 \n", + " 45 brand_peugeot 23167 non-null uint8 \n", + " 46 brand_renault 23167 non-null uint8 \n", + " 47 brand_rover 23167 non-null uint8 \n", + " 48 brand_saab 23167 non-null uint8 \n", + " 49 brand_seat 23167 non-null uint8 \n", + " 50 brand_skoda 23167 non-null uint8 \n", + " 51 brand_smart 23167 non-null uint8 \n", + " 52 brand_subaru 23167 non-null uint8 \n", + " 53 brand_suzuki 23167 non-null uint8 \n", + " 54 brand_toyota 23167 non-null uint8 \n", + " 55 brand_volkswagen 23167 non-null uint8 \n", + " 56 brand_volvo 23167 non-null uint8 \n", + " 57 vehicleType_andere 23167 non-null uint8 \n", + " 58 vehicleType_bus 23167 non-null uint8 \n", + " 59 vehicleType_cabrio 23167 non-null uint8 \n", + " 60 vehicleType_coupe 23167 non-null uint8 \n", + " 61 vehicleType_kleinwagen 23167 non-null uint8 \n", + " 62 vehicleType_kombi 23167 non-null uint8 \n", + " 63 vehicleType_limousine 23167 non-null uint8 \n", + " 64 vehicleType_suv 23167 non-null uint8 \n", + " 65 year+kilometer 23167 non-null int64 \n", + "dtypes: int64(10), object(11), uint8(45)\n", + "memory usage: 4.9+ MB\n" + ] + } + ], + "source": [ + "df_autos.info()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "stone-search", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "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.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/ml/lb3/Kardynov.Laba_3.ipynb b/ml/lb3/Kardynov.Laba_3.ipynb new file mode 100644 index 0000000..f23ab89 --- /dev/null +++ b/ml/lb3/Kardynov.Laba_3.ipynb @@ -0,0 +1,1885 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "developmental-incident", + "metadata": {}, + "outputs": [], + "source": [ + "%matplotlib inline\n", + "\n", + "import warnings\n", + "import pandas as pd\n", + "import matplotlib.pyplot as plt \n", + "import sklearn as sk\n", + "from sklearn import preprocessing, neighbors\n", + "from sklearn.tree import DecisionTreeClassifier\n", + "from sklearn.metrics import accuracy_score\n", + "from sklearn.preprocessing import LabelEncoder\n", + "from sklearn.neighbors import KNeighborsClassifier,RadiusNeighborsClassifier\n", + "from sklearn.model_selection import train_test_split, cross_val_score, GridSearchCV\n", + "from sklearn.metrics import precision_recall_curve\n", + "from sklearn.metrics import average_precision_score\n", + "from sklearn.preprocessing import label_binarize\n", + "from sklearn.metrics import roc_curve, auc\n", + "import seaborn as sns\n", + "\n", + "import numpy as np\n", + "\n", + "df = pd.read_csv(r'bank.csv', sep=';')" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "changing-neighborhood", + "metadata": {}, + "outputs": [], + "source": [ + "warnings.simplefilter('ignore') #Скрыть все предупреждения от пользователей по умолчанию" + ] + }, + { + "cell_type": "markdown", + "id": "coordinated-imperial", + "metadata": {}, + "source": [ + "### 1. Изучить набор данных. Создать описание набора данных на русском языке. Описать признаки, используемые в наборе данных" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "settled-advance", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ПеременнаяОписаниеПараметры(Ключи)
0AgeВозрастчисловой
1JobМесто работыадминистратор; неизвестный; безработный; менед...
2MaritalСемейное положениеженат; разведен; холост
3EducationОбразованиенеизвестный; вторичный; первичный; третичный
4DefaultНевыполненные обязательствада; нет
5BalanceБалансчисловой
6HousingЕсть жилищный кредит?да; нет
7LoanЕсть личный заем?да; нет
8ContactКонтактный вид связинеизвестно; телефон; сотовая связь
9DayПоследний контактный день месяцачисловой
10MonthПоследний контактный месяц годаjan-dec
11DurationДлительность последнего контакта, в секундахчисловой
12CampaingКоличество контактов, выполненных во время это...числовой
13PdaysКоличество дней, прошедших с момента последнег...числовой
14PreviousКоличество контактов, выполненных до этой камп...числовой
15PoutcomeРезультат предыдущей маркетинговой кампаниинеизвестно; другое; успешно; неудача
16YКлиент подписался на срочный депозит?да; нет
\n", + "
" + ], + "text/plain": [ + " Переменная Описание \\\n", + "0 Age Возраст \n", + "1 Job Место работы \n", + "2 Marital Семейное положение \n", + "3 Education Образование \n", + "4 Default Невыполненные обязательства \n", + "5 Balance Баланс \n", + "6 Housing Есть жилищный кредит? \n", + "7 Loan Есть личный заем? \n", + "8 Contact Контактный вид связи \n", + "9 Day Последний контактный день месяца \n", + "10 Month Последний контактный месяц года \n", + "11 Duration Длительность последнего контакта, в секундах \n", + "12 Campaing Количество контактов, выполненных во время это... \n", + "13 Pdays Количество дней, прошедших с момента последнег... \n", + "14 Previous Количество контактов, выполненных до этой камп... \n", + "15 Poutcome Результат предыдущей маркетинговой кампании \n", + "16 Y Клиент подписался на срочный депозит? \n", + "\n", + " Параметры(Ключи) \n", + "0 числовой \n", + "1 администратор; неизвестный; безработный; менед... \n", + "2 женат; разведен; холост \n", + "3 неизвестный; вторичный; первичный; третичный \n", + "4 да; нет \n", + "5 числовой \n", + "6 да; нет \n", + "7 да; нет \n", + "8 неизвестно; телефон; сотовая связь \n", + "9 числовой \n", + "10 jan-dec \n", + "11 числовой \n", + "12 числовой \n", + "13 числовой \n", + "14 числовой \n", + "15 неизвестно; другое; успешно; неудача \n", + "16 да; нет " + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "tabledata = [[\"Age\",\"Возраст\", \"числовой\"],\n", + " [\"Job\", \"Место работы\", \"администратор; неизвестный; безработный; менеджмент; домработница; предприниматель; студент; рабочие; самозанятые; пенсионеры; техник; услуги\"],\n", + " [\"Marital\", \"Семейное положение\", \"женат; разведен; холост\"],\n", + " [\"Education\", \"Образование\", \"неизвестный; вторичный; первичный; третичный\"],\n", + " [\"Default\", \"Невыполненные обязательства\", \"да; нет\"],\n", + " [\"Balance\", \"Баланс\", \"числовой\"],\n", + " [\"Housing\", \"Есть жилищный кредит?\", \"да; нет\"], \n", + " [\"Loan\", \"Есть личный заем?\", \"да; нет\"],\n", + " [\"Contact\", \"Контактный вид связи\", \"неизвестно; телефон; сотовая связь\"],\n", + " [\"Day\", \"Последний контактный день месяца\", \"числовой\"],\n", + " [\"Month\", \"Последний контактный месяц года\", \"jan-dec\"],\n", + " [\"Duration\", \"Длительность последнего контакта, в секундах\", \"числовой\"],\n", + " [\"Campaing\", \"Количество контактов, выполненных во время этой кампании и для этого клиента\", \"числовой\"],\n", + " [\"Pdays\", \"Количество дней, прошедших с момента последнего обращения к клиенту из предыдущей кампании\", \"числовой\"],\n", + " [\"Previous\", \"Количество контактов, выполненных до этой кампании и для этого клиента\", \"числовой\"],\n", + " [\"Poutcome\", \"Результат предыдущей маркетинговой кампании\", \"неизвестно; другое; успешно; неудача\"],\n", + " [\"Y\", \"Клиент подписался на срочный депозит?\", \"да; нет\"],]\n", + "tabledata\n", + "pd.DataFrame(tabledata, columns=[\"Переменная\",\"Описание\", \"Параметры(Ключи)\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "attached-detail", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
agejobmaritaleducationdefaultbalancehousingloancontactdaymonthdurationcampaignpdayspreviouspoutcomey
030unemployedmarriedprimaryno1787nonocellular19oct791-10unknownno
133servicesmarriedsecondaryno4789yesyescellular11may22013394failureno
235managementsingletertiaryno1350yesnocellular16apr18513301failureno
330managementmarriedtertiaryno1476yesyesunknown3jun1994-10unknownno
459blue-collarmarriedsecondaryno0yesnounknown5may2261-10unknownno
\n", + "
" + ], + "text/plain": [ + " age job marital education default balance housing loan \\\n", + "0 30 unemployed married primary no 1787 no no \n", + "1 33 services married secondary no 4789 yes yes \n", + "2 35 management single tertiary no 1350 yes no \n", + "3 30 management married tertiary no 1476 yes yes \n", + "4 59 blue-collar married secondary no 0 yes no \n", + "\n", + " contact day month duration campaign pdays previous poutcome y \n", + "0 cellular 19 oct 79 1 -1 0 unknown no \n", + "1 cellular 11 may 220 1 339 4 failure no \n", + "2 cellular 16 apr 185 1 330 1 failure no \n", + "3 unknown 3 jun 199 4 -1 0 unknown no \n", + "4 unknown 5 may 226 1 -1 0 unknown no " + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.head()" + ] + }, + { + "cell_type": "markdown", + "id": "accessible-twenty", + "metadata": {}, + "source": [ + "### 2. Удалите дубликаты строк в наборе данных; приведите размер набора данных до и после данной операции" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "legal-rubber", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(4521, 17)" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "modular-nicholas", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(4521, 17)" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = df.drop_duplicates()\n", + "df.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "geological-hungarian", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
agejobmaritaleducationdefaultbalancehousingloancontactdaymonthdurationcampaignpdayspreviouspoutcomey
030unemployedmarriedprimaryno1787nonocellular19oct791-10unknownno
133servicesmarriedsecondaryno4789yesyescellular11may22013394failureno
235managementsingletertiaryno1350yesnocellular16apr18513301failureno
330managementmarriedtertiaryno1476yesyesunknown3jun1994-10unknownno
459blue-collarmarriedsecondaryno0yesnounknown5may2261-10unknownno
\n", + "
" + ], + "text/plain": [ + " age job marital education default balance housing loan \\\n", + "0 30 unemployed married primary no 1787 no no \n", + "1 33 services married secondary no 4789 yes yes \n", + "2 35 management single tertiary no 1350 yes no \n", + "3 30 management married tertiary no 1476 yes yes \n", + "4 59 blue-collar married secondary no 0 yes no \n", + "\n", + " contact day month duration campaign pdays previous poutcome y \n", + "0 cellular 19 oct 79 1 -1 0 unknown no \n", + "1 cellular 11 may 220 1 339 4 failure no \n", + "2 cellular 16 apr 185 1 330 1 failure no \n", + "3 unknown 3 jun 199 4 -1 0 unknown no \n", + "4 unknown 5 may 226 1 -1 0 unknown no " + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.head()" + ] + }, + { + "cell_type": "markdown", + "id": "conscious-folks", + "metadata": {}, + "source": [ + "### 3. Оцените сбалансированность данных по классам (постройте гистограмму)." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "norwegian-estonia", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "df['default'].value_counts().plot(kind='barh')" + ] + }, + { + "cell_type": "markdown", + "id": "subsequent-concert", + "metadata": {}, + "source": [ + "##### Соотношение количество элементов отличается,значит классы несбалансированны. Будем использовать ROC-кривую, т.к. она дает адекватную оценку качества работы алгоритма, где классы несбалансированны и их размеры выборки отличаются друг от друга." + ] + }, + { + "cell_type": "markdown", + "id": "direct-worship", + "metadata": {}, + "source": [ + "### 4. Выполните масштабирование количественных признаков; Постройте диаграммы BoxPlot для признаков до и после масштабирования." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "opened-mambo", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Numerical ['age', 'balance', 'day', 'duration', 'campaign', 'pdays', 'previous']\n", + "Categorial ['job', 'marital', 'education', 'default', 'housing', 'loan', 'contact', 'month', 'poutcome', 'y']\n" + ] + } + ], + "source": [ + "numerical = [i for i in df.columns if df[i].dtype.name != 'object'] # цикл для отбра колонок с количественными признаками\n", + "categorial = [i for i in df.columns if df[i].dtype.name == 'object'] # цикл для отбора качественных признаков\n", + "print(\"Numerical\",numerical)\n", + "print(\"Categorial\",categorial)" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "dependent-example", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.boxplot(data=df[numerical]) #Вывод диаграммы boxplot количествнных столбцов" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "accepted-wichita", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "df[numerical] = preprocessing.normalize(df[numerical]) #normalize() - Этот метод нормализует данные по строке\n", + "sns.boxplot(data=df[numerical]) #вывод маштабированной диаграммы boxplot" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "british-summit", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
agejobmaritaleducationdefaultbalancehousingloancontactdaymonthdurationcampaignpdayspreviouspoutcomey
00.016768unemployedmarriedprimaryno0.998827nonocellular0.010620oct0.0441560.000559-0.0005590.000000unknownno
10.006866servicesmarriedsecondaryno0.996432yesyescellular0.002289may0.0457750.0002080.0705350.000832failureno
20.024955managementsingletertiaryno0.962542yesnocellular0.011408apr0.1319040.0007130.2352880.000713failureno
30.020139managementmarriedtertiaryno0.990827yesyesunknown0.002014jun0.1335870.002685-0.0006710.000000unknownno
40.252534blue-collarmarriedsecondaryno0.000000yesnounknown0.021401may0.9673320.004280-0.0042800.000000unknownno
......................................................
45160.070174servicesmarriedsecondaryno-0.708118yesnocellular0.063794jul0.6996120.010632-0.0021260.000000unknownno
45170.017184self-employedmarriedtertiaryyes-0.998784yesyesunknown0.002713may0.0461260.000301-0.0003010.000000unknownno
45180.169148technicianmarriedsecondaryno0.875413nonocellular0.056383aug0.4480930.032643-0.0029680.000000unknownno
45190.024056blue-collarmarriedsecondaryno0.976847nonocellular0.005155feb0.1108300.0034370.1812800.002577otherno
45200.036247entrepreneursingletertiaryno0.935837yesyescellular0.002471apr0.2842110.0016480.2051260.005767otherno
\n", + "

4521 rows × 17 columns

\n", + "
" + ], + "text/plain": [ + " age job marital education default balance housing \\\n", + "0 0.016768 unemployed married primary no 0.998827 no \n", + "1 0.006866 services married secondary no 0.996432 yes \n", + "2 0.024955 management single tertiary no 0.962542 yes \n", + "3 0.020139 management married tertiary no 0.990827 yes \n", + "4 0.252534 blue-collar married secondary no 0.000000 yes \n", + "... ... ... ... ... ... ... ... \n", + "4516 0.070174 services married secondary no -0.708118 yes \n", + "4517 0.017184 self-employed married tertiary yes -0.998784 yes \n", + "4518 0.169148 technician married secondary no 0.875413 no \n", + "4519 0.024056 blue-collar married secondary no 0.976847 no \n", + "4520 0.036247 entrepreneur single tertiary no 0.935837 yes \n", + "\n", + " loan contact day month duration campaign pdays previous \\\n", + "0 no cellular 0.010620 oct 0.044156 0.000559 -0.000559 0.000000 \n", + "1 yes cellular 0.002289 may 0.045775 0.000208 0.070535 0.000832 \n", + "2 no cellular 0.011408 apr 0.131904 0.000713 0.235288 0.000713 \n", + "3 yes unknown 0.002014 jun 0.133587 0.002685 -0.000671 0.000000 \n", + "4 no unknown 0.021401 may 0.967332 0.004280 -0.004280 0.000000 \n", + "... ... ... ... ... ... ... ... ... \n", + "4516 no cellular 0.063794 jul 0.699612 0.010632 -0.002126 0.000000 \n", + "4517 yes unknown 0.002713 may 0.046126 0.000301 -0.000301 0.000000 \n", + "4518 no cellular 0.056383 aug 0.448093 0.032643 -0.002968 0.000000 \n", + "4519 no cellular 0.005155 feb 0.110830 0.003437 0.181280 0.002577 \n", + "4520 yes cellular 0.002471 apr 0.284211 0.001648 0.205126 0.005767 \n", + "\n", + " poutcome y \n", + "0 unknown no \n", + "1 failure no \n", + "2 failure no \n", + "3 unknown no \n", + "4 unknown no \n", + "... ... .. \n", + "4516 unknown no \n", + "4517 unknown no \n", + "4518 unknown no \n", + "4519 other no \n", + "4520 other no \n", + "\n", + "[4521 rows x 17 columns]" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df #после нормализации все значения теперь находятся в диапазоне от 0 до 1" + ] + }, + { + "cell_type": "markdown", + "id": "continuous-hazard", + "metadata": {}, + "source": [ + "### 5. Выполните замену категориальных признаков;выберите и обоснуйте способ замены" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "macro-browse", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
agejobmaritaleducationdefaultbalancehousingloancontactdaymonthdurationcampaignpdayspreviouspoutcomey
00.016768101000.9988270000.010620100.0441560.000559-0.0005590.00000030
10.00686671100.9964321100.00228980.0457750.0002080.0705350.00083200
20.02495542200.9625421000.01140800.1319040.0007130.2352880.00071300
30.02013941200.9908271120.00201460.1335870.002685-0.0006710.00000030
40.25253411100.0000001020.02140180.9673320.004280-0.0042800.00000030
......................................................
45160.0701747110-0.7081181000.06379450.6996120.010632-0.0021260.00000030
45170.0171846121-0.9987841120.00271380.0461260.000301-0.0003010.00000030
45180.16914891100.8754130000.05638310.4480930.032643-0.0029680.00000030
45190.02405611100.9768470000.00515530.1108300.0034370.1812800.00257710
45200.03624722200.9358371100.00247100.2842110.0016480.2051260.00576710
\n", + "

4521 rows × 17 columns

\n", + "
" + ], + "text/plain": [ + " age job marital education default balance housing loan \\\n", + "0 0.016768 10 1 0 0 0.998827 0 0 \n", + "1 0.006866 7 1 1 0 0.996432 1 1 \n", + "2 0.024955 4 2 2 0 0.962542 1 0 \n", + "3 0.020139 4 1 2 0 0.990827 1 1 \n", + "4 0.252534 1 1 1 0 0.000000 1 0 \n", + "... ... ... ... ... ... ... ... ... \n", + "4516 0.070174 7 1 1 0 -0.708118 1 0 \n", + "4517 0.017184 6 1 2 1 -0.998784 1 1 \n", + "4518 0.169148 9 1 1 0 0.875413 0 0 \n", + "4519 0.024056 1 1 1 0 0.976847 0 0 \n", + "4520 0.036247 2 2 2 0 0.935837 1 1 \n", + "\n", + " contact day month duration campaign pdays previous \\\n", + "0 0 0.010620 10 0.044156 0.000559 -0.000559 0.000000 \n", + "1 0 0.002289 8 0.045775 0.000208 0.070535 0.000832 \n", + "2 0 0.011408 0 0.131904 0.000713 0.235288 0.000713 \n", + "3 2 0.002014 6 0.133587 0.002685 -0.000671 0.000000 \n", + "4 2 0.021401 8 0.967332 0.004280 -0.004280 0.000000 \n", + "... ... ... ... ... ... ... ... \n", + "4516 0 0.063794 5 0.699612 0.010632 -0.002126 0.000000 \n", + "4517 2 0.002713 8 0.046126 0.000301 -0.000301 0.000000 \n", + "4518 0 0.056383 1 0.448093 0.032643 -0.002968 0.000000 \n", + "4519 0 0.005155 3 0.110830 0.003437 0.181280 0.002577 \n", + "4520 0 0.002471 0 0.284211 0.001648 0.205126 0.005767 \n", + "\n", + " poutcome y \n", + "0 3 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 3 0 \n", + "4 3 0 \n", + "... ... .. \n", + "4516 3 0 \n", + "4517 3 0 \n", + "4518 3 0 \n", + "4519 1 0 \n", + "4520 1 0 \n", + "\n", + "[4521 rows x 17 columns]" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "labelEncoder = LabelEncoder() #Создание экземпляра объекта LabelEncoder\n", + "df['job'] = labelEncoder.fit_transform(df['job']) \n", + "df['marital'] = labelEncoder.fit_transform(df['marital']) \n", + "df['education'] = labelEncoder.fit_transform(df['education']) \n", + "df['default'] = labelEncoder.fit_transform(df['default']) \n", + "df['housing'] = labelEncoder.fit_transform(df['housing']) \n", + "df['loan'] = labelEncoder.fit_transform(df['loan']) \n", + "df['contact'] = labelEncoder.fit_transform(df['contact']) \n", + "df['month'] = labelEncoder.fit_transform(df['month']) \n", + "df['poutcome'] = labelEncoder.fit_transform(df['poutcome']) \n", + "df['y'] = labelEncoder.fit_transform(df['y']) \n", + "df #Вывод таблицы" + ] + }, + { + "cell_type": "markdown", + "id": "japanese-washington", + "metadata": {}, + "source": [ + "### 6. Оцените корреляцию между признаков и удалите те признаки, которые коррелируют с наибольшим числом других (удалять признаки нужно только для линейных методов классификации)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "alike-easter", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "corr_df = df.corr() #создание нового фрейма по корреляции\n", + "sns.heatmap(corr_df, annot=True, fmt='.1f')\n", + "#Метод .corr() - будет добавлен к данным в качестве первого аргумента\n", + "#annot=True, который помогает отобразить коэффициент корреляции.\n", + "# fmt = '.1g' - отображение одной цифры, после запятой " + ] + }, + { + "cell_type": "markdown", + "id": "stuffed-founder", + "metadata": {}, + "source": [ + "### 7. Заполните пропущенные значения в данных" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "integrated-portable", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "age 4521\n", + "job 4521\n", + "marital 4521\n", + "education 4521\n", + "default 4521\n", + "balance 4521\n", + "housing 4521\n", + "loan 4521\n", + "contact 4521\n", + "day 4521\n", + "month 4521\n", + "duration 4521\n", + "campaign 4521\n", + "pdays 4521\n", + "previous 4521\n", + "poutcome 4521\n", + "y 4521\n", + "dtype: int64" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.notnull().count() #вывод ненулевых значений и их подсчет" + ] + }, + { + "cell_type": "markdown", + "id": "unexpected-native", + "metadata": {}, + "source": [ + "##### Пропущенных значений нет" + ] + }, + { + "cell_type": "markdown", + "id": "electrical-lancaster", + "metadata": {}, + "source": [ + "### 8.Решите поставленную задачу классификации в соответствии с заданием." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "incorporated-force", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(2260, 16)\n", + "(2261, 16)\n" + ] + } + ], + "source": [ + "x = np.array(df.drop('poutcome', axis=1)) #переменная x содержит массив с данными\n", + "y = np.array(df['poutcome']) #Переменная y содержит массив классов\n", + "#Бинаризируем выходные данные(преобразуем свои данные, используя двоичный порог. Все значения выше порога помечены как 1, а все равные или ниже помечены как 0.)\n", + "y = label_binarize(y, classes=[0, 1, 2]) \n", + "n_classes = y.shape[1]\n", + "# Перетасовка и разделение тренировочного и тестового набораююЧтобы избежать переобучения, мы разделим наш набор данных на обучающие и тестовые разбиения, что даст нам лучшее представление о том, как работает наш алгоритм на этапе тестирования.\n", + "X_train, X_test, y_train, y_test = train_test_split(x, y, test_size = 0.5)#разбивает набор данных на 50% обучающих данных и 50% тестовых данных.\n", + "print(X_train.shape) #Обучающий набор\n", + "print(X_test.shape) #текстовый набор" + ] + }, + { + "cell_type": "markdown", + "id": "cutting-extraction", + "metadata": {}, + "source": [ + "### Классификатор К соседей" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "returning-perry", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Accuracy of KNN model: 0.8279522335249889\n", + "Best score: 0.8323008849557523 Neighbor: 3\n" + ] + } + ], + "source": [ + "knn = KNeighborsClassifier() #Классификатор К ближайших соседей\n", + "\n", + "find = GridSearchCV(knn,{'n_neighbors':range(1,50)}) #Gridsearch подбирает наилучшие параметры для классификатора(соседи)\n", + "find.fit(X_train,y_train)\n", + "\n", + "neighbor = find.best_estimator_.n_neighbors #записываем количество соседей\n", + "best_score = find.best_score_ #лучшее значение классификатора, которое он выдает\n", + "\n", + "knn = KNeighborsClassifier(n_neighbors=neighbor)#передаем классификатору neighbor количество соседей\n", + "knn.fit(X_train,y_train) #обучаем его\n", + "predict = knn.predict(X_test) #предсказанные значения \n", + "print('Accuracy of KNN model: ',accuracy_score(y_test,predict)) #выводим точность\n", + "print('Best score: ',best_score,'Neighbor: ',neighbor) #Выводим наилучший счет и количество соседей" + ] + }, + { + "cell_type": "markdown", + "id": "absolute-trust", + "metadata": {}, + "source": [ + "### Логический классификатор(бинарное решающее дерево)" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "extended-belief", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Accuracy of DTC model: 0.9338051009877635\n", + "Best score: 0.9212389380530974\n", + "On depth 98 features 4\n" + ] + } + ], + "source": [ + "dtc = DecisionTreeClassifier() #классификатор решающего дерева\n", + "\n", + "\n", + "dtc_grid = GridSearchCV(dtc, {'max_depth':list(range(1,100)),'max_features':list(range(1,5))})#Gridsearch подбирает наилучшие параметры для классификатора(Глубина и количество признаков)\n", + "dtc_grid.fit(X_train,y_train)\n", + "\n", + "best_depth = dtc_grid.best_estimator_.max_depth #записываем лучший показатель шлубины\n", + "best_features = dtc_grid.best_estimator_.max_features #записываем лучший показатель количества признаков\n", + "\n", + "dtc = DecisionTreeClassifier(max_depth = best_depth, max_features = best_features) #передаем классификатору dtc эти параметры\n", + "dtc.fit(X_train, y_train) #обучаем его\n", + "predict = dtc.predict(X_test) #предсказанные значения\n", + "accuracy_score = np.mean(y_test == dtc.predict(X_test)) #новой переменной присваивается показатель точности\n", + "\n", + "print('Accuracy of DTC model: ',accuracy_score) #выводим точность классификатора\n", + "print('Best score: ', dtc_grid.best_score_) #выводим лучший результат классификатора\n", + "print('On depth ',best_depth,' features ',best_features) #выводим глубино и количество признаков" + ] + }, + { + "cell_type": "markdown", + "id": "scenic-bryan", + "metadata": {}, + "source": [ + "### ROC-кривая" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "parallel-python", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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iIiIiLiLZt5FREREREREYjgl7yIiIiIiIiIxnJJ3ERERERERkRhOybuIiIiIiIhIDKfkXURERERERCSGS+TpAB7Ws88+azJlyuTpMERERKJs69at54wxz3k6jrhI4wIREYltHnVcEOuS90yZMrFlyxZPhyEiIhJljuMc8XQMcZXGBSIiEts86rhAZfMiIiIiIiIiMZySdxEREREREZEYTsm7iIiIiIiISAyn5F1EREREREQkhlPyLiIiIiIiIhLDKXkXERERERERieGUvIuIiIiIiIjEcEreRURERERERGI4Je8iIiIiIiIiMZySdxEREREREZEYTsm7iIiIiIiISAyn5F1EREREREQkhlPyLiIiIiIiIhLDKXkXERERERERieGUvIuIiIiIiIjEcC5L3h3HGeM4zhnHcXbe53PHcZyBjuMccBxnu+M4OVwVi4iIiHiWxgUiIiKPx5Uz7+OAEpF8XhJ49faPJsBQF8YiIiIinjUOjQtEREQemcuSd2PMauBCJIeUAyYYawOQ2nGcdK6KR0RERDxH4wIREREIDQl55HM9ueb9ReDoHV8fu/17IiIicUavb372dAixhcYFIiISZ926BcMHbCFrpdSPfA1PJu9OBL9nIjzQcZo4jrPFcZwtZ8+edXFYIiIij+/GDaj0aTN63+rk6VBiC40LREQkzjl1Crp1g7wfdqfzjvcp+b/3H/lankzejwEZ7vg6PXAiogONMSOMMbmMMbmee+45twQnIiLyqP78Ewp+XJE5vsPpnb6bp8OJLTQuEBGROGPLFqhTB97IeosNB/Ky8/x3FDrxMb/+5vPI1/Rk8r4AqHN7d9kPgMvGmJMejEdEROSxTZoEVauUZPPeOQzr0ZX6bb/1dEixhcYFIiISqwUHw/Tp8NFHULEiZHxlO5nrpmWr30ZKZyvJtIV+j3X9RNESZQQcx5kKFACedRznGPAdkBjAGDMMWAKUAg4A14H6ropFRETE1a5fh1at4Mjx8hxOupzRvXpSr5VK5sNpXCAiInHV2bMwciT89hu88gq0bw+3kvWjzeoO1D+blQtFczF0xAgSJkz4WPdxWfJujKn+gM8N0NJV9xcREXGX3buhchXD0+lzcTz1H+zqs4YX3/7I02HFKBoXiIhIXPPHHzBwIMyZA599BosWwetv3eDL38qx4oAXjS6U4sdJC3GciLZ1eXie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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure(figsize=(10,8))\n", + "fig, (ax_0, ax_1) = plt.subplots(nrows=1, ncols=2, figsize=(17, 8)) #разбиваем область на два графика\n", + "\n", + "predict = knn.predict(X_test) #график для К соседей\n", + "fpr = dict()\n", + "tpr = dict()\n", + "roc_auc = dict()\n", + "for i in range(n_classes): #цикл который для каждого класса строит кривую\n", + " fpr[i], tpr[i], _ = roc_curve(y_test[:, i], predict[:, i])\n", + " roc_auc[i] = auc(fpr[i], tpr[i])\n", + "colors = ['blue', 'red', 'green']\n", + "for i, color in zip(range(n_classes), colors): #цикл считает площадь под кривой\n", + " ax_0.plot(fpr[i], tpr[i], color=color, lw=1,\n", + " label='ROC curve of class {0} (area = {1:0.2f})'\n", + " ''.format(i, roc_auc[i]))\n", + "ax_0.plot([0, 1], [0, 1], 'k--', lw=1)\n", + "ax_0.set_xlim([-0.05, 1.0])\n", + "ax_0.set_ylim([0.0, 1.05])\n", + "ax_0.set_xlabel('False Positive Rate')\n", + "ax_0.set_ylabel('True Positive Rate')\n", + "ax_0.set_title('ROC curve for knn')\n", + "ax_0.legend(loc=\"lower right\")\n", + "\n", + "predict = dtc.predict(X_test) #график для решающего дерева\n", + "fpr = dict()\n", + "tpr = dict()\n", + "roc_auc = dict()\n", + "for i in range(n_classes) :#цикл который для каждого класса строит кривую\n", + " fpr[i], tpr[i], _ = roc_curve(y_test[:, i], predict[:, i])\n", + " roc_auc[i] = auc(fpr[i], tpr[i])\n", + "colors = ['blue', 'red', 'green']\n", + "for i, color in zip(range(n_classes), colors): #цикл считает площадь под кривой\n", + " ax_1.plot(fpr[i], tpr[i], color=color, lw=1,\n", + " label='ROC curve of class {0} (area = {1:0.2f})'\n", + " ''.format(i, roc_auc[i]))\n", + "ax_1.plot([0, 1], [0, 1], 'k--', lw=1)\n", + "ax_1.set_xlim([-0.05, 1.0]) #значение по оси x\n", + "ax_1.set_ylim([0.0, 1.05]) #значение по оси y\n", + "ax_1.set_xlabel('False Positive Rate') #название по оси x\n", + "ax_1.set_ylabel('True Positive Rate') #название по оси x\n", + "ax_1.set_title('ROC curve for DTC') #вывод площадь под кривой\n", + "ax_1.legend(loc=\"lower right\")\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "express-while", + "metadata": {}, + "source": [ + "### PR-кривая" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "hawaiian-listing", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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fv36KioqSimlVExMjFJKqaFDh6rly5dnO8fWrVtV2bJl1fnz55VSSh08eFC1adMmczsPDw916dIltXHjRjV8+HBlNBpVenq6Cg4OVtu3b89y7rCwMFWtWjUVGRmpUlNTVWBgoPrtt9+UUkq1bdtW7du3L1u869atUy1btsz83RIVFaNCQ5Xq1m2omj9/uTIa//cZlFJq8ODBavXq1UoppVxdXVVycrJSSqnr168rpZTq2rWr2rlzp1JKqfj4eJWamprlfMuXL1fPP/985veLFy9Wr7zySra43nnnHTVr1qzM76OjozP/PnHixMz3hg4dqoKDg1VaWppSSqknnnhCnT59Wiml1O7du1VgYKBSSqnY2FhlNBqVUkp9++23aty4cdnOefLkSeXr65vjV8bnyxAVFaXq1KmT+f3ly5eVp6dntmPebc+ePaphw4YqPT09y+spKSnKz89P7dixI/O1H374Qb366qvZjnHvz4dSSgH7VRG4h5bEr6KaFxw6dEhVqlRJbd261dyhCFGgin1OcPCgql+7toratk2pY8dUzMmTSqWm5pgTGI1GtW7TOmVb1lat2b1GXbx+Uf2952+z5gQ55TBFNScIDVWqd++inROkp6ertm3bqsuXL6vvvvsu87M+aP/ccgKlHi4vkHXOTSQ1NZXk5GTWrFlD2bJlzR3OQ/Nz9ePbg9+aOwzzqF5dr+65eTN07mzuaIolZYZyBUlJSTRu3BjQn5I///zzWV6/ePEiTZs2pUOHDtn2zXjymTHE1MnJ6YHna9asWeYalX5+fkRGRnL16lWioqJwdHSkevXqzJo1i02bNuHn5wdAQkICZ86coU2bNpnH2bdvH+3ataNSpUqAPmx6x44d9OzZM9dzb968mWeffTbzd4uzsx5vhQp6rZszZ+Dgwa189tl0EhMTiY2NxdPTk27duuHj48OgQYPo2bNn5jlatWrFuHHjGDRoEL1798bd3T3L+VQO/6A5FbC6du0aHh4emd+HhIQwadIkbty4QUJCAkFBQZnv9evXD4PBQEJCAn///Tf9+vXLfO/2bX35mtDQUPr378+1a9dISUnJcU3QBg0acPjw4VyvVX4+x92fZ8iQISxatAiLe9bJHTlyJG3atKF169aZr7m4uHD16tU8xSJKn9OnTzNnzhzatWtn7lCEKFTFLifYuZO+Awbg3KYN3LyJU3S0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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fig, (ax_0, ax_1) = plt.subplots( nrows=1, ncols=2, figsize=(17, 8)) \n", + "\n", + "predict = knn.predict(X_test)\n", + "precision = dict()\n", + "recall = dict()\n", + "aps = dict()\n", + "for i in range(n_classes):\n", + " precision[i], recall[i], _ = precision_recall_curve(y_test[:, i], predict[:, i])\n", + " aps[i] = average_precision_score(y_test[:, i], predict[:, i])\n", + "colors = ['blue', 'red', 'green']\n", + "for i, color in zip(range(n_classes), colors):\n", + " ax_0.plot(precision[i], recall[i], color=color, lw=1,\n", + " label='PR curve of class {0} (area = {1:0.2f})'\n", + " ''.format(i, aps[i]))\n", + "ax_0.plot([0, 1], [0, 1], 'k--', lw=1)\n", + "ax_0.set_xlim([0.0, 1.1])\n", + "ax_0.set_ylim([0.0, 1.0])\n", + "ax_0.set_xlabel('Recall')\n", + "ax_0.set_ylabel('Precision')\n", + "ax_0.set_title('PR curve for KNN')\n", + "ax_0.legend(loc=\"lower right\")\n", + "\n", + "\n", + "\n", + "predict = dtc.predict(X_test)\n", + "precision = dict()\n", + "recall = dict()\n", + "aps = dict()\n", + "for i in range(n_classes):\n", + " precision[i], recall[i], _ = precision_recall_curve(y_test[:, i], predict[:, i])\n", + " aps[i] = average_precision_score(y_test[:, i], predict[:, i])\n", + "colors = ['blue', 'red', 'green']\n", + "for i, color in zip(range(n_classes), colors):\n", + " ax_1.plot(precision[i], recall[i], color=color, lw=1,\n", + " label='PR curve of class {0} (area = {1:0.2f})'\n", + " ''.format(i, aps[i]))\n", + "ax_1.plot([0, 1], [0, 1], 'k--', lw=1)\n", + "ax_1.set_xlim([0.0, 1.1])\n", + "ax_1.set_ylim([0.0, 1.0])\n", + "ax_1.set_xlabel('Recall')\n", + "ax_1.set_ylabel('Precision')\n", + "ax_1.set_title('PR curve for DTC')\n", + "ax_1.legend(loc=\"lower right\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "automatic-terrorist", + "metadata": {}, + "source": [ + "### Метод K ближайших соседей имеет лучший показатель точности" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "twelve-provision", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "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.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/ml/lb4/Kardynov.Lab_4.ipynb b/ml/lb4/Kardynov.Lab_4.ipynb new file mode 100644 index 0000000..0dbeb42 --- /dev/null +++ b/ml/lb4/Kardynov.Lab_4.ipynb @@ -0,0 +1,1702 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 27, + "id": "yellow-folks", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "from scipy import stats\n", + "import warnings\n", + "import numpy as np\n", + "import pandas as pd\n", + "import sklearn as sk\n", + "import seaborn as sns\n", + "import matplotlib.pyplot as plt\n", + "\n", + "from sklearn.preprocessing import LabelEncoder\n", + "from sklearn.preprocessing import MinMaxScaler, OneHotEncoder\n", + "from sklearn.model_selection import GridSearchCV, train_test_split\n", + "from sklearn.linear_model import LinearRegression, Lasso\n", + "\n", + "from scipy.stats import pearsonr, spearmanr" + ] + }, + { + "cell_type": "markdown", + "id": "mental-gauge", + "metadata": {}, + "source": [ + "### 1. Изучить набор данных. Создать описание набора данных на русском языке. Описать признаки, используемые в наборе данных (включить полученные описания в отчёт)." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "finite-headset", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateTimeCO(GT)PT08.S1(CO)NMHC(GT)C6H6(GT)PT08.S2(NMHC)NOx(GT)PT08.S3(NOx)NO2(GT)PT08.S4(NO2)PT08.S5(O3)TRHAHUnnamed: 15Unnamed: 16
010/03/200418.00.002,61360.0150.011,91046.0166.01056.0113.01692.01268.013,648,90,7578NaNNaN
110/03/200419.00.0021292.0112.09,4955.0103.01174.092.01559.0972.013,347,70,7255NaNNaN
210/03/200420.00.002,21402.088.09,0939.0131.01140.0114.01555.01074.011,954,00,7502NaNNaN
310/03/200421.00.002,21376.080.09,2948.0172.01092.0122.01584.01203.011,060,00,7867NaNNaN
410/03/200422.00.001,61272.051.06,5836.0131.01205.0116.01490.01110.011,259,60,7888NaNNaN
......................................................
9466NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
9467NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
9468NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
9469NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
9470NaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
\n", + "

9471 rows × 17 columns

\n", + "
" + ], + "text/plain": [ + " Date Time CO(GT) PT08.S1(CO) NMHC(GT) C6H6(GT) \\\n", + "0 10/03/2004 18.00.00 2,6 1360.0 150.0 11,9 \n", + "1 10/03/2004 19.00.00 2 1292.0 112.0 9,4 \n", + "2 10/03/2004 20.00.00 2,2 1402.0 88.0 9,0 \n", + "3 10/03/2004 21.00.00 2,2 1376.0 80.0 9,2 \n", + "4 10/03/2004 22.00.00 1,6 1272.0 51.0 6,5 \n", + "... ... ... ... ... ... ... \n", + "9466 NaN NaN NaN NaN NaN NaN \n", + "9467 NaN NaN NaN NaN NaN NaN \n", + "9468 NaN NaN NaN NaN NaN NaN \n", + "9469 NaN NaN NaN NaN NaN NaN \n", + "9470 NaN NaN NaN NaN NaN NaN \n", + "\n", + " PT08.S2(NMHC) NOx(GT) PT08.S3(NOx) NO2(GT) PT08.S4(NO2) \\\n", + "0 1046.0 166.0 1056.0 113.0 1692.0 \n", + "1 955.0 103.0 1174.0 92.0 1559.0 \n", + "2 939.0 131.0 1140.0 114.0 1555.0 \n", + "3 948.0 172.0 1092.0 122.0 1584.0 \n", + "4 836.0 131.0 1205.0 116.0 1490.0 \n", + "... ... ... ... ... ... \n", + "9466 NaN NaN NaN NaN NaN \n", + "9467 NaN NaN NaN NaN NaN \n", + "9468 NaN NaN NaN NaN NaN \n", + "9469 NaN NaN NaN NaN NaN \n", + "9470 NaN NaN NaN NaN NaN \n", + "\n", + " PT08.S5(O3) T RH AH Unnamed: 15 Unnamed: 16 \n", + "0 1268.0 13,6 48,9 0,7578 NaN NaN \n", + "1 972.0 13,3 47,7 0,7255 NaN NaN \n", + "2 1074.0 11,9 54,0 0,7502 NaN NaN \n", + "3 1203.0 11,0 60,0 0,7867 NaN NaN \n", + "4 1110.0 11,2 59,6 0,7888 NaN NaN \n", + "... ... ... ... ... ... ... \n", + "9466 NaN NaN NaN NaN NaN NaN \n", + "9467 NaN NaN NaN NaN NaN NaN \n", + "9468 NaN NaN NaN NaN NaN NaN \n", + "9469 NaN NaN NaN NaN NaN NaN \n", + "9470 NaN NaN NaN NaN NaN NaN \n", + "\n", + "[9471 rows x 17 columns]" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.read_csv(r'AirQualityUCI.csv', sep=';')\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "binding-efficiency", + "metadata": {}, + "outputs": [], + "source": [ + "warnings.simplefilter('ignore') #Скрыть все предупреждения от пользователей по умолчанию" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "minute-pastor", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "RangeIndex: 9471 entries, 0 to 9470\n", + "Data columns (total 17 columns):\n", + " # Column Non-Null Count Dtype \n", + "--- ------ -------------- ----- \n", + " 0 Date 9357 non-null object \n", + " 1 Time 9357 non-null object \n", + " 2 CO(GT) 9357 non-null object \n", + " 3 PT08.S1(CO) 9357 non-null float64\n", + " 4 NMHC(GT) 9357 non-null float64\n", + " 5 C6H6(GT) 9357 non-null object \n", + " 6 PT08.S2(NMHC) 9357 non-null float64\n", + " 7 NOx(GT) 9357 non-null float64\n", + " 8 PT08.S3(NOx) 9357 non-null float64\n", + " 9 NO2(GT) 9357 non-null float64\n", + " 10 PT08.S4(NO2) 9357 non-null float64\n", + " 11 PT08.S5(O3) 9357 non-null float64\n", + " 12 T 9357 non-null object \n", + " 13 RH 9357 non-null object \n", + " 14 AH 9357 non-null object \n", + " 15 Unnamed: 15 0 non-null float64\n", + " 16 Unnamed: 16 0 non-null float64\n", + "dtypes: float64(10), object(7)\n", + "memory usage: 1.2+ MB\n" + ] + } + ], + "source": [ + "df.info()" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "sapphire-cartoon", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ПризнакОписаниеТип
0DateДатаобъектный
1TimeВремяобъектный
2CO(GT)Истинная усредненная за час концентрация CO в ...объектный
3PT08.S1(CO)PT08.S1 (оксид олова) усредненный за час откли...вещественный
4NMHC(GT)Истинное часовое усреднение общей концентрации...вещественный
5C6H6(GT)Истинная усредненная почасовая концентрация бе...объектный
6PT08.S2(NMHC)PT08.S2 (диоксид титана), усредненный за час ...вещественный
7NOx(GT)Истинная усредненная за час концентрация NOx в...вещественный
8PT08.S3(NOx)PT08.S3 (оксид вольфрама), усредненный за час ...вещественный
9NO2(GT)Истинная усредненная за час концентрация NO2 в...вещественный
10PT08.S4(NO2)PT08.S4 (оксид вольфрама), усредненный за час ...вещественный
11PT08.S5(O3)PT08.S5 (оксид индия) усредненный за час откли...вещественный
12TТемпература в ° Cобъектный
13RHОтносительная влажность (%)объектный
14AHАбсолютная влажностьобъектный
\n", + "
" + ], + "text/plain": [ + " Признак Описание \\\n", + "0 Date Дата \n", + "1 Time Время \n", + "2 CO(GT) Истинная усредненная за час концентрация CO в ... \n", + "3 PT08.S1(CO) PT08.S1 (оксид олова) усредненный за час откли... \n", + "4 NMHC(GT) Истинное часовое усреднение общей концентрации... \n", + "5 C6H6(GT) Истинная усредненная почасовая концентрация бе... \n", + "6 PT08.S2(NMHC) PT08.S2 (диоксид титана), усредненный за час ... \n", + "7 NOx(GT) Истинная усредненная за час концентрация NOx в... \n", + "8 PT08.S3(NOx) PT08.S3 (оксид вольфрама), усредненный за час ... \n", + "9 NO2(GT) Истинная усредненная за час концентрация NO2 в... \n", + "10 PT08.S4(NO2) PT08.S4 (оксид вольфрама), усредненный за час ... \n", + "11 PT08.S5(O3) PT08.S5 (оксид индия) усредненный за час откли... \n", + "12 T Температура в ° C \n", + "13 RH Относительная влажность (%) \n", + "14 AH Абсолютная влажность \n", + "\n", + " Тип \n", + "0 объектный \n", + "1 объектный \n", + "2 объектный \n", + "3 вещественный \n", + "4 вещественный \n", + "5 объектный \n", + "6 вещественный \n", + "7 вещественный \n", + "8 вещественный \n", + "9 вещественный \n", + "10 вещественный \n", + "11 вещественный \n", + "12 объектный \n", + "13 объектный \n", + "14 объектный " + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "tabledata = [[\"Date \", \"Дата\", \"объектный\"], #создание новой таблицы\n", + " [\"Time\", \"Время\",\"объектный\"],\n", + " [\"CO(GT)\", \"Истинная усредненная за час концентрация CO в мг / м ^ 3 (эталонный анализатор)\",\"объектный\"],\n", + " [\"PT08.S1(CO)\", \"PT08.S1 (оксид олова) усредненный за час отклик датчика (номинальный целевой уровень CO)\",\"вещественный\"],\n", + " [\"NMHC(GT)\", \"Истинное часовое усреднение общей концентрации неметанических углеводородов в мкг / м ^ 3 (эталонный анализатор)\",\"вещественный\"],\n", + " [\"C6H6(GT)\", \"Истинная усредненная почасовая концентрация бензола в мкг / м ^ 3 (эталонный анализатор)\",\"объектный\"],\n", + " [\"PT08.S2(NMHC) \", \" PT08.S2 (диоксид титана), усредненный за час отклик сенсора (номинально нацеленный на NMHC)\", \"вещественный\"],\n", + " [\"NOx(GT) \", \"Истинная усредненная за час концентрация NOx в частях на миллиард (эталонный анализатор)\", \"вещественный\"],\n", + " [\"PT08.S3(NOx) \", \"PT08.S3 (оксид вольфрама), усредненный за час отклик датчика (номинальное значение NOx)\", \"вещественный\"],\n", + " [\"NO2(GT) \", \"Истинная усредненная за час концентрация NO2 в мкг / м ^ 3 (эталонный анализатор)\", \"вещественный\"],\n", + " [\"PT08.S4(NO2)\", \"PT08.S4 (оксид вольфрама), усредненный за час отклик датчика (номинальное значение NO2)\", \"вещественный\"],\n", + " [\"PT08.S5(O3)\", \"PT08.S5 (оксид индия) усредненный за час отклик датчика (номинально заданный O3)\", \"вещественный\"],\n", + " [\"T\", \"Температура в ° C\", \"объектный\"],\n", + " [\"RH \", \"Относительная влажность (%)\", \"объектный\"],\n", + " [\"AH \", \"Абсолютная влажность\", \"объектный\"],] \n", + "tabledata\n", + "pd.DataFrame(tabledata, columns=[\" Признак\",\"Описание\", \"Тип\"]) #название колонок" + ] + }, + { + "cell_type": "markdown", + "id": "filled-treaty", + "metadata": {}, + "source": [ + "### 2.Удалите дубликаты строк в наборе данных; приведите размер набора данных до и после данной операции." + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "historic-bosnia", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(9471, 17)" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.shape #shape - размера, формы и размеров фреймов данных и серий." + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "national-purse", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(9471, 17)" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.drop_duplicates() #drop_duplicates - помогает удалить дубликаты из фрейма данных.inplace=True - удаляет строки с дубликатами, если True.\n", + "df.shape" + ] + }, + { + "cell_type": "markdown", + "id": "relevant-calendar", + "metadata": {}, + "source": [ + "### 3.Выполните масштабирование количественных признаков; Постройте диаграммы BoxPlot для признаков до и после масштабирования. Выберите способ масштабирования (например, нормализацию или стандартизацию)" + ] + }, + { + "cell_type": "markdown", + "id": "intimate-mouse", + "metadata": {}, + "source": [ + "#### Разделим признаки на категориальные и количественные" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "attached-stevens", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Date 391\n", + "Time 24\n", + "CO(GT) 104\n", + "PT08.S1(CO) 1042\n", + "NMHC(GT) 430\n", + "C6H6(GT) 408\n", + "PT08.S2(NMHC) 1246\n", + "NOx(GT) 926\n", + "PT08.S3(NOx) 1222\n", + "NO2(GT) 284\n", + "PT08.S4(NO2) 1604\n", + "PT08.S5(O3) 1744\n", + "T 437\n", + "RH 754\n", + "AH 6684\n", + "Unnamed: 15 0\n", + "Unnamed: 16 0\n", + "dtype: int64" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.nunique() #nunique() используется для подсчета уникальных значений." + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "adjacent-moscow", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Numerical ['PT08.S1(CO)', 'NMHC(GT)', 'PT08.S2(NMHC)', 'NOx(GT)', 'PT08.S3(NOx)', 'NO2(GT)', 'PT08.S4(NO2)', 'PT08.S5(O3)', 'Unnamed: 15', 'Unnamed: 16']\n", + "Categorial ['Date', 'Time', 'CO(GT)', 'C6H6(GT)', 'T', 'RH', 'AH']\n" + ] + } + ], + "source": [ + "numerical = [i for i in df.columns if df[i].dtype.name != 'object'] # цикл для отбра колонок с количественными признаками\n", + "categorial = [i for i in df.columns if df[i].dtype.name == 'object'] # цикл для отбора качественных признаков\n", + "print(\"Numerical\",numerical)\n", + "print(\"Categorial\",categorial)" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "id": "first-gravity", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure(figsize=(15,8)) #создаем фигуру размером 15 на 8\n", + "sns.boxplot(data=df[numerical]) #выбираем нужные колонки\n", + "plt.show() #вывод боксплота" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "id": "encouraging-delhi", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateTimeCO(GT)PT08.S1(CO)NMHC(GT)C6H6(GT)PT08.S2(NMHC)NOx(GT)PT08.S3(NOx)NO2(GT)PT08.S4(NO2)PT08.S5(O3)TRHAHUnnamed: 15Unnamed: 16
010/03/200418.00.002,60.6964290.25198011,90.5161560.2179870.4356570.5796300.6359660.53911113,648,90,7578NaNNaN
110/03/200419.00.0020.6660710.2246229,40.4784590.1804650.4765870.5407410.5912610.43040813,347,70,7255NaNNaN
210/03/200420.00.002,20.7151790.2073439,00.4718310.1971410.4647940.5814810.5899160.46786611,954,00,7502NaNNaN
310/03/200421.00.002,20.7035710.2015849,20.4755590.2215600.4481440.5962960.5996640.51524111,060,00,7867NaNNaN
410/03/200422.00.001,60.6571430.1807066,50.4291630.1971410.4873400.5851850.5680670.48108711,259,60,7888NaNNaN
\n", + "
" + ], + "text/plain": [ + " Date Time CO(GT) PT08.S1(CO) NMHC(GT) C6H6(GT) PT08.S2(NMHC) \\\n", + "0 10/03/2004 18.00.00 2,6 0.696429 0.251980 11,9 0.516156 \n", + "1 10/03/2004 19.00.00 2 0.666071 0.224622 9,4 0.478459 \n", + "2 10/03/2004 20.00.00 2,2 0.715179 0.207343 9,0 0.471831 \n", + "3 10/03/2004 21.00.00 2,2 0.703571 0.201584 9,2 0.475559 \n", + "4 10/03/2004 22.00.00 1,6 0.657143 0.180706 6,5 0.429163 \n", + "\n", + " NOx(GT) PT08.S3(NOx) NO2(GT) PT08.S4(NO2) PT08.S5(O3) T RH \\\n", + "0 0.217987 0.435657 0.579630 0.635966 0.539111 13,6 48,9 \n", + "1 0.180465 0.476587 0.540741 0.591261 0.430408 13,3 47,7 \n", + "2 0.197141 0.464794 0.581481 0.589916 0.467866 11,9 54,0 \n", + "3 0.221560 0.448144 0.596296 0.599664 0.515241 11,0 60,0 \n", + "4 0.197141 0.487340 0.585185 0.568067 0.481087 11,2 59,6 \n", + "\n", + " AH Unnamed: 15 Unnamed: 16 \n", + "0 0,7578 NaN NaN \n", + "1 0,7255 NaN NaN \n", + "2 0,7502 NaN NaN \n", + "3 0,7867 NaN NaN \n", + "4 0,7888 NaN NaN " + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "scaler = MinMaxScaler() #Диапазон по умолчанию для функции, возвращаемой MinMaxScaler, составляет от 0 до 1.\n", + "df[numerical] = scaler.fit_transform(df[numerical]) #Применяем функцию к набору данных с помощью функции fit_transform().\n", + "df.head() #вывод таблицы" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "id": "important-mathematics", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure(figsize=(15,8)) #вывод таблицы после маштабирования\n", + "sns.boxplot(data=df[numerical])\n", + "plt.show() " + ] + }, + { + "cell_type": "markdown", + "id": "julian-robert", + "metadata": {}, + "source": [ + "### 4.Выполните замену категориальных признаков;выберите и обоснуйте способ замены" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "id": "sized-three", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
DateTimeCO(GT)PT08.S1(CO)NMHC(GT)C6H6(GT)PT08.S2(NMHC)NOx(GT)PT08.S3(NOx)NO2(GT)PT08.S4(NO2)PT08.S5(O3)TRHAHUnnamed: 15Unnamed: 16
011418330.6964290.251980390.5161560.2179870.4356570.5796300.6359660.539111663751896NaNNaN
111419260.6660710.2246224020.4784590.1804650.4765870.5407410.5912610.430408633631727NaNNaN
211420290.7151790.2073433980.4718310.1971410.4647940.5814810.5899160.467866494261853NaNNaN
311421290.7035710.2015844000.4755590.2215600.4481440.5962960.5996640.515241404862056NaNNaN
411422180.6571430.1807063720.4291630.1971410.4873400.5851850.5680670.481087424822066NaNNaN
......................................................
946639124104NaNNaN408NaNNaNNaNNaNNaNNaN4377546684NaNNaN
946739124104NaNNaN408NaNNaNNaNNaNNaNNaN4377546684NaNNaN
946839124104NaNNaN408NaNNaNNaNNaNNaNNaN4377546684NaNNaN
946939124104NaNNaN408NaNNaNNaNNaNNaNNaN4377546684NaNNaN
947039124104NaNNaN408NaNNaNNaNNaNNaNNaN4377546684NaNNaN
\n", + "

9471 rows × 17 columns

\n", + "
" + ], + "text/plain": [ + " Date Time CO(GT) PT08.S1(CO) NMHC(GT) C6H6(GT) PT08.S2(NMHC) \\\n", + "0 114 18 33 0.696429 0.251980 39 0.516156 \n", + "1 114 19 26 0.666071 0.224622 402 0.478459 \n", + "2 114 20 29 0.715179 0.207343 398 0.471831 \n", + "3 114 21 29 0.703571 0.201584 400 0.475559 \n", + "4 114 22 18 0.657143 0.180706 372 0.429163 \n", + "... ... ... ... ... ... ... ... \n", + "9466 391 24 104 NaN NaN 408 NaN \n", + "9467 391 24 104 NaN NaN 408 NaN \n", + "9468 391 24 104 NaN NaN 408 NaN \n", + "9469 391 24 104 NaN NaN 408 NaN \n", + "9470 391 24 104 NaN NaN 408 NaN \n", + "\n", + " NOx(GT) PT08.S3(NOx) NO2(GT) PT08.S4(NO2) PT08.S5(O3) T RH \\\n", + "0 0.217987 0.435657 0.579630 0.635966 0.539111 66 375 \n", + "1 0.180465 0.476587 0.540741 0.591261 0.430408 63 363 \n", + "2 0.197141 0.464794 0.581481 0.589916 0.467866 49 426 \n", + "3 0.221560 0.448144 0.596296 0.599664 0.515241 40 486 \n", + "4 0.197141 0.487340 0.585185 0.568067 0.481087 42 482 \n", + "... ... ... ... ... ... ... ... \n", + "9466 NaN NaN NaN NaN NaN 437 754 \n", + "9467 NaN NaN NaN NaN NaN 437 754 \n", + "9468 NaN NaN NaN NaN NaN 437 754 \n", + "9469 NaN NaN NaN NaN NaN 437 754 \n", + "9470 NaN NaN NaN NaN NaN 437 754 \n", + "\n", + " AH Unnamed: 15 Unnamed: 16 \n", + "0 1896 NaN NaN \n", + "1 1727 NaN NaN \n", + "2 1853 NaN NaN \n", + "3 2056 NaN NaN \n", + "4 2066 NaN NaN \n", + "... ... ... ... \n", + "9466 6684 NaN NaN \n", + "9467 6684 NaN NaN \n", + "9468 6684 NaN NaN \n", + "9469 6684 NaN NaN \n", + "9470 6684 NaN NaN \n", + "\n", + "[9471 rows x 17 columns]" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "labelEncoder = LabelEncoder() #Создание экземпляра объекта LabelEncoder\n", + "df['Date'] = labelEncoder.fit_transform(df['Date']) \n", + "df['Time'] = labelEncoder.fit_transform(df['Time']) \n", + "df['CO(GT)'] = labelEncoder.fit_transform(df['CO(GT)']) \n", + "df['C6H6(GT)'] = labelEncoder.fit_transform(df['C6H6(GT)']) \n", + "df['T'] = labelEncoder.fit_transform(df['T']) \n", + "df['RH'] = labelEncoder.fit_transform(df['RH']) \n", + "df['AH'] = labelEncoder.fit_transform(df['AH']) \n", + "df #Вывод таблицы" + ] + }, + { + "cell_type": "markdown", + "id": "judicial-designer", + "metadata": {}, + "source": [ + "### 5. Оцените корреляцию между признаков и удалите те признаки, которые коррелируют с наибольшим числом других (удалять признаки нужно только для линейных методов классификации);" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "id": "polyphonic-dealing", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "corr_df = df.corr() #создание нового фрейма по корреляции\n", + "sns.heatmap(corr_df, annot=True, fmt='.1f')\n", + "#Метод .corr() - будет добавлен к данным в качестве первого аргумента\n", + "#annot=True, который помогает отобразить коэффициент корреляции.\n", + "# fmt = '.1g' - отображение одной цифры, после запятой " + ] + }, + { + "cell_type": "markdown", + "id": "removed-slide", + "metadata": {}, + "source": [ + "### 6.Заполните пропущенные значения в данных;" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "id": "premium-catholic", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Date 9471\n", + "Time 9471\n", + "CO(GT) 9471\n", + "PT08.S1(CO) 9471\n", + "NMHC(GT) 9471\n", + "C6H6(GT) 9471\n", + "PT08.S2(NMHC) 9471\n", + "NOx(GT) 9471\n", + "PT08.S3(NOx) 9471\n", + "NO2(GT) 9471\n", + "PT08.S4(NO2) 9471\n", + "PT08.S5(O3) 9471\n", + "T 9471\n", + "RH 9471\n", + "AH 9471\n", + "Unnamed: 15 9471\n", + "Unnamed: 16 9471\n", + "dtype: int64" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.notnull().count() #вывод ненулевых значений и их подсчет" + ] + }, + { + "cell_type": "markdown", + "id": "veterinary-cinema", + "metadata": {}, + "source": [ + "### 7.Решите поставленную задачу регрессии в соответствии с заданием. При подборе параметров метода принятия решения (метода регрессии) используйтеперекрёстную проверку (изучите возможные для изменения параметры метода регрессии). Вычислите точность решения задачи, вычислив разницу между реальным значением и предсказанным. Вычислите коэффициент корреляции (Пирсона, Спирмена) между реальным значением и предсказаннымс учётом p-value." + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "seeing-collectible", + "metadata": {}, + "outputs": [], + "source": [ + "df.fillna(0, inplace=True)" + ] + }, + { + "cell_type": "markdown", + "id": "typical-diagnosis", + "metadata": {}, + "source": [ + "#### линейная регрессия, LASSO регуляризатор" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "id": "flying-carrier", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Lasso(alpha=0.1)" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sklearn import linear_model\n", + "#разделяем данных на “атрибуты” и “метки”. Атрибуты являются независимыми переменными, а метки-зависимыми переменными, значения которых должны быть предсказаны.\n", + "X, y = df.drop(['NMHC(GT)'], axis=1), df['NMHC(GT)']\n", + "#разделяем эти данные на обучающие и тестовые наборы. Мы сделаем это с помощью встроенного метода Scikit-Learn train_test_split()\n", + "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.3, random_state = 123) #разбивает 70% данных на обучающий набор, а 30% – на тестовый. Переменная test_size – это то место, где мы фактически указываем долю тестового набора.\n", + "#обучение алгоритма\n", + "reg = linear_model.Lasso (alpha = 0.1)\n", + "reg.fit (X_train, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "id": "little-wichita", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[ 0.04771095 0.07753458 0.00212299 0.05598622 0.04320068 0.01056354\n", + " 0.025511 -0.00413781 0.01049732 -0.02184445]\n" + ] + } + ], + "source": [ + "#выводим реальные значения\n", + "xt = reg.predict(X_test)\n", + "print(xt[:10])" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "id": "disabled-pavilion", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1102 0.190065\n", + "8763 0.000000\n", + "2091 0.000000\n", + "439 0.163427\n", + "8734 0.000000\n", + "2652 0.000000\n", + "8466 0.000000\n", + "3855 0.000000\n", + "5071 0.000000\n", + "3548 0.000000\n", + "Name: NMHC(GT), dtype: float64\n" + ] + } + ], + "source": [ + "#выводим предсказанные значения\n", + "print(y_test[:10])" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "id": "vanilla-insider", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1102 -0.142354\n", + "8763 0.077535\n", + "2091 0.002123\n", + "439 -0.107441\n", + "8734 0.043201\n", + "2652 0.010564\n", + "8466 0.025511\n", + "3855 -0.004138\n", + "5071 0.010497\n", + "3548 -0.021844\n", + "Name: NMHC(GT), dtype: float64\n" + ] + } + ], + "source": [ + "#Вычислияем точность решения задачи, вычислив разницу между реальным значением и предсказанным.\n", + "print(xt[:10]-y_test[:10])" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "id": "empirical-genealogy", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([ 4.12932911e-05, 0.00000000e+00, 6.90714262e-04, 0.00000000e+00,\n", + " -0.00000000e+00, 0.00000000e+00, -0.00000000e+00, 0.00000000e+00,\n", + " 0.00000000e+00, 0.00000000e+00, 0.00000000e+00, -1.17650067e-04,\n", + " -0.00000000e+00, -6.25703649e-06, 0.00000000e+00, 0.00000000e+00])" + ] + }, + "execution_count": 47, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "#выводим значение для перехвата,вычисленное алгоритмом линейной регрессии для нашего набора данных\n", + "reg.coef_" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "civilian-ordinance", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.047828023153999005" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "#выводи значения для наклона,вычисленное алгоритмом линейной регрессии для нашего набора данных\n", + "reg.intercept_" + ] + }, + { + "cell_type": "markdown", + "id": "signal-video", + "metadata": {}, + "source": [ + "#### линейная регрессия без использования регуляризаторов" + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "id": "behind-amsterdam", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "LinearRegression()" + ] + }, + "execution_count": 49, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "#разделяем данных на “атрибуты” и “метки”. Атрибуты являются независимыми переменными, а метки-зависимыми переменными, значения которых должны быть предсказаны.\n", + "X, y = df.drop(['NMHC(GT)'], axis=1), df['NMHC(GT)']\n", + "#разделяем эти данные на обучающие и тестовые наборы. Мы сделаем это с помощью встроенного метода Scikit-Learn train_test_split()\n", + "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.3, random_state = 123) ##разбивает 70% данных на обучающий набор, а 30% – на тестовый. Переменная test_size – это то место, где мы фактически указываем долю тестового набора.\n", + "#обучение алгоритма\n", + "reg = linear_model.LinearRegression()\n", + "reg.fit(X_train,y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "removable-auditor", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([ 4.56923153e-05, 1.52240215e-04, 2.81531508e-03, 4.32300419e-01,\n", + " 9.84273154e-07, -1.03499278e+00, -3.62236815e-01, -1.59441433e-01,\n", + " 8.68393565e-02, 8.44134600e-01, -1.82966816e-02, -1.01718428e-04,\n", + " -2.62805622e-06, -3.67194382e-05, 0.00000000e+00, 0.00000000e+00])" + ] + }, + "execution_count": 50, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "##выводим значение для перехвата,вычисленное алгоритмом линейной регрессии для нашего набора данны\n", + "reg.coef_" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "id": "resistant-advocate", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "-0.027625797309421104" + ] + }, + "execution_count": 51, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "#выводи значения для наклона,вычисленное алгоритмом линейной регрессии для нашего набора данных\n", + "reg.intercept_" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "id": "functional-thursday", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Pearson’s correlation coefficient: 0.4569777876403772\n", + "p-value: 0.18425869092838315\n", + "Spearman’s correlation coefficient: 0.5103493078392206\n", + "p-value: 0.1317596196544768\n" + ] + } + ], + "source": [ + "r, p = stats.pearsonr(xt[:10], y_test[:10])\n", + "k, l = stats.spearmanr(xt[:10], y_test[:10])\n", + "print('Pearson’s correlation coefficient: ', r)\n", + "print('p-value: ', p)\n", + "print('Spearman’s correlation coefficient: ', k)\n", + "print('p-value: ', l)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "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.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}