diff --git "a/ml/lb1/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#1.ipynb" "b/ml/lb1/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#1.ipynb"
new file mode 100644
index 00000000..39e7ecd4
--- /dev/null
+++ "b/ml/lb1/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#1.ipynb"
@@ -0,0 +1,4799 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "stock-wells",
+ "metadata": {},
+ "source": [
+ "# Markdown\n",
+ "# Заголовок первого уровня #\n",
+ "## Заголовок h2\n",
+ "### Заголовок h3\n",
+ "#### Заголок h4\n",
+ "##### Заголовок h5\n",
+ "###### Заголовок h6\n",
+ "### Списки"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "specific-creator",
+ "metadata": {},
+ "source": [
+ "- элемент 1\n",
+ "- элемент 2\n",
+ "- элемент ..."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "developing-instrumentation",
+ "metadata": {},
+ "source": [
+ "* элемент 1\n",
+ "* элемент 2\n",
+ " * вложенный элемент 2.1\n",
+ " * вложенный элемент 2.1\n",
+ "* элемент ...\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "spectacular-symbol",
+ "metadata": {},
+ "source": [
+ "1. элемент 1\n",
+ "2. элемент 2\n",
+ " 1. вложенный\n",
+ " 2. вложенный\n",
+ "3. элемент 3\n",
+ "4. Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Susependisse id sem consectetuer libero luctus adipiscing."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "confident-investing",
+ "metadata": {},
+ "source": [
+ "1. элемент 1\n",
+ "0. элемент 2\n",
+ "0. элемент 3\n",
+ "0. элемент 4"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "determined-simpson",
+ "metadata": {},
+ "source": [
+ "* Раз абзац. Lorem ipsum dolor sit amet, consectetur adipisicing elit.\n",
+ "\n",
+ "* Два абзац. Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.\n",
+ "\n",
+ "* Три абзац. Ea, quis, alias nobis porro quos laborum minus fuga odio dolore natus quas cum enim necessitatibus magni provident non sequi?\n",
+ "\n",
+ " Четыре абзац (Четыре пробела в начале или обин tab)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "binary-reproduction",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import numpy as np"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "every-fairy",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "1"
+ ]
+ },
+ "execution_count": 3,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "vec = np.array ([1,2,3])\n",
+ "vec.ndim #количество осей"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "earlier-scale",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "2"
+ ]
+ },
+ "execution_count": 4,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "mat = np.array([[1,2,3], [4,5,6]])\n",
+ "mat.ndim"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "id": "sustained-phenomenon",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(3,)"
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "vec.shape #длина массива по каждой из осей"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "id": "developmental-leone",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "'int32'"
+ ]
+ },
+ "execution_count": 6,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "mat.dtype.name #тип элементов"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "outdoor-converter",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "4"
+ ]
+ },
+ "execution_count": 7,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "mat.itemsize #размер элементов в байтах"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "id": "occupational-noise",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([1, 2, 3])"
+ ]
+ },
+ "execution_count": 8,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A = np.array([1,2,3])\n",
+ "A"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "id": "wicked-breach",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([1., 2., 3.])"
+ ]
+ },
+ "execution_count": 9,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A = np.array([1,2,3], dtype = float)\n",
+ "A"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 10,
+ "id": "departmental-cuisine",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[1, 2, 3],\n",
+ " [4, 5, 6]])"
+ ]
+ },
+ "execution_count": 10,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "B = np.array([(1,2,3),(4,5,6)])\n",
+ "B"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "id": "fewer-steering",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([0., 0., 0.])"
+ ]
+ },
+ "execution_count": 11,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.zeros((3,))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "id": "thirty-shuttle",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[1., 1., 1., 1.],\n",
+ " [1., 1., 1., 1.],\n",
+ " [1., 1., 1., 1.]])"
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.ones((3,4))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 13,
+ "id": "undefined-brooks",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[1., 0., 0.],\n",
+ " [0., 1., 0.],\n",
+ " [0., 0., 1.]])"
+ ]
+ },
+ "execution_count": 13,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.identity(3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "id": "challenging-berry",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 1.64929316e+022, -2.66418332e+109, 1.42419530e-306,\n",
+ " 5.29531917e+044, 1.00238505e-044],\n",
+ " [ 4.94065646e-324, 0.00000000e+000, 2.44763557e-307,\n",
+ " 0.00000000e+000, 6.36598737e-314]])"
+ ]
+ },
+ "execution_count": 14,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.empty ((2,5))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "id": "incorrect-species",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([ 2, 5, 8, 11, 14, 17])"
+ ]
+ },
+ "execution_count": 15,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.arange(2,20,3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 16,
+ "id": "illegal-forty",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([2.5, 3.4, 4.3, 5.2, 6.1, 7. , 7.9])"
+ ]
+ },
+ "execution_count": 16,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.arange(2.5,8.7,0.9)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 17,
+ "id": "talented-shame",
+ "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": 17,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.linspace(2,18,14)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "id": "fifth-latino",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[0, 1, 2],\n",
+ " [3, 4, 5],\n",
+ " [6, 7, 8]])"
+ ]
+ },
+ "execution_count": 18,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.arange(9).reshape(3,3)#изменение размера существующего массива"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "id": "upset-stockholm",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[0, 1, 2, 3],\n",
+ " [4, 5, 6, 7]])"
+ ]
+ },
+ "execution_count": 19,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.arange(8).reshape(2,-1)#вместо значения длины массива можно указать -1, значение будет рассчитано автоматически"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 20,
+ "id": "geographic-memphis",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[0, 1, 2],\n",
+ " [3, 4, 5]])"
+ ]
+ },
+ "execution_count": 20,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "C=np.arange(6).reshape(2,-1)#Транспонирование существующего массива\n",
+ "C"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 21,
+ "id": "collective-arlington",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[0, 3],\n",
+ " [1, 4],\n",
+ " [2, 5]])"
+ ]
+ },
+ "execution_count": 21,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "C.T"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "id": "auburn-effort",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 0, 1, 2, 0, 1, 4],\n",
+ " [ 3, 4, 5, 9, 16, 25]])"
+ ]
+ },
+ "execution_count": 22,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A = np.arange(6).reshape(2,-1)#Объединение существующих массивов по заданной оси\n",
+ "np.hstack((A, A**2))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 23,
+ "id": "corporate-shirt",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 0, 1, 2],\n",
+ " [ 3, 4, 5],\n",
+ " [ 0, 1, 4],\n",
+ " [ 9, 16, 25]])"
+ ]
+ },
+ "execution_count": 23,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.vstack((A,A**2))#по вертикали"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 24,
+ "id": "exclusive-affect",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 0, 1, 2, 0, 1, 4],\n",
+ " [ 3, 4, 5, 9, 16, 25]])"
+ ]
+ },
+ "execution_count": 24,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.concatenate((A, A**2),axis=1)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 25,
+ "id": "flush-desktop",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[0, 1, 2, 0, 1, 2],\n",
+ " [0, 1, 2, 0, 1, 2]])"
+ ]
+ },
+ "execution_count": 25,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "a = np.arange(3)\n",
+ "np.tile(a,(2,2))#повторение существующего массива"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 26,
+ "id": "environmental-rebound",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[0, 1, 2],\n",
+ " [0, 1, 2],\n",
+ " [0, 1, 2],\n",
+ " [0, 1, 2]])"
+ ]
+ },
+ "execution_count": 26,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.tile(a,(4,1))#повторение существующего массива"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 27,
+ "id": "magnetic-venezuela",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "A = np.arange(9).reshape(3,3)\n",
+ "B = np.arange(1,10).reshape(3,3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 28,
+ "id": "sound-administration",
+ "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": 29,
+ "id": "prerequisite-generic",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 1, 3, 5],\n",
+ " [ 7, 9, 11],\n",
+ " [13, 15, 17]])"
+ ]
+ },
+ "execution_count": 29,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A+B"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 30,
+ "id": "ceramic-parts",
+ "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": 30,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A*1.0/B"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 31,
+ "id": "large-report",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[1, 2, 3],\n",
+ " [4, 5, 6],\n",
+ " [7, 8, 9]])"
+ ]
+ },
+ "execution_count": 31,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A+1"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 32,
+ "id": "arabic-disposition",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 0, 3, 6],\n",
+ " [ 9, 12, 15],\n",
+ " [18, 21, 24]])"
+ ]
+ },
+ "execution_count": 32,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "3*A"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 33,
+ "id": "enhanced-anatomy",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 0, 1, 4],\n",
+ " [ 9, 16, 25],\n",
+ " [36, 49, 64]], dtype=int32)"
+ ]
+ },
+ "execution_count": 33,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A**2"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 34,
+ "id": "bottom-respondent",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 0, 2, 6],\n",
+ " [12, 20, 30],\n",
+ " [42, 56, 72]])"
+ ]
+ },
+ "execution_count": 34,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A*B"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 35,
+ "id": "handy-senator",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 18, 21, 24],\n",
+ " [ 54, 66, 78],\n",
+ " [ 90, 111, 132]])"
+ ]
+ },
+ "execution_count": 35,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A.dot(B)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "id": "certified-chapel",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 0, 1, 2],\n",
+ " [10, 11, 12],\n",
+ " [20, 21, 22],\n",
+ " [30, 31, 32]])"
+ ]
+ },
+ "execution_count": 36,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.tile(np.arange(0,40,10),(3,1)).T + np.array([0,1,2])\n",
+ "#3- столбцы,1-повторения строк"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 37,
+ "id": "chief-sullivan",
+ "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": 37,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "np.exp(A)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 39,
+ "id": "material-finder",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[0, 1, 2],\n",
+ " [3, 4, 5],\n",
+ " [6, 7, 8]])"
+ ]
+ },
+ "execution_count": 39,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 40,
+ "id": "joined-disabled",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0"
+ ]
+ },
+ "execution_count": 40,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A.min()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 41,
+ "id": "controlling-pocket",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([6, 7, 8])"
+ ]
+ },
+ "execution_count": 41,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A.max(axis=0)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 42,
+ "id": "cellular-memorabilia",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([ 3, 12, 21])"
+ ]
+ },
+ "execution_count": 42,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A.sum(axis=1)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 43,
+ "id": "affecting-portable",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])"
+ ]
+ },
+ "execution_count": 43,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "a = np.arange(10)\n",
+ "a"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 44,
+ "id": "outside-philadelphia",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([2, 3, 4])"
+ ]
+ },
+ "execution_count": 44,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "a[2:5]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 45,
+ "id": "focused-customs",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([3, 5, 7])"
+ ]
+ },
+ "execution_count": 45,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "a[3:8:2]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 46,
+ "id": "olympic-history",
+ "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": 46,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A = np.arange(81).reshape(9,-1)\n",
+ "A"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 47,
+ "id": "skilled-maximum",
+ "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": 47,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A[2:4]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 48,
+ "id": "recreational-employment",
+ "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": 48,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A[:,2:4]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 49,
+ "id": "veterinary-environment",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[20, 21],\n",
+ " [29, 30]])"
+ ]
+ },
+ "execution_count": 49,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A[2:4,2:4]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 50,
+ "id": "satellite-booking",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([72, 73, 74, 75, 76, 77, 78, 79, 80])"
+ ]
+ },
+ "execution_count": 50,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A[-1]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 51,
+ "id": "norwegian-officer",
+ "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": 51,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A = np.arange(81).reshape(9,-1)\n",
+ "A"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 52,
+ "id": "attractive-donna",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([18, 37, 48])"
+ ]
+ },
+ "execution_count": 52,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A[[2,4,5],[0,1,3]]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 53,
+ "id": "polyphonic-optimum",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])"
+ ]
+ },
+ "execution_count": 53,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A=np.arange(11)#Логическая индексация\n",
+ "A"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 54,
+ "id": "loose-loading",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])"
+ ]
+ },
+ "execution_count": 54,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 55,
+ "id": "serious-norman",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([ 0, 1, 2, 4, 5, 6, 7, 9, 10])"
+ ]
+ },
+ "execution_count": 55,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A[A%5!=3]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 56,
+ "id": "educational-extraction",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([ 0, 1, 2, 4, 5, 6, 9, 10])"
+ ]
+ },
+ "execution_count": 56,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "A[np.logical_and(A!=7,A%5!=3)]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 57,
+ "id": "announced-durham",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import time"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 62,
+ "id": "medium-milan",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "A_quick_arr = np.random.normal(size = (1000000,))\n",
+ "B_quick_arr = np.random.normal(size = (1000000,))\n",
+ "(A_slow_list, B_slow_list) = list(A_quick_arr), list(B_quick_arr)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 64,
+ "id": "departmental-thriller",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "0.4170105999996849\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": 65,
+ "id": "miniature-electric",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "0.28125\n"
+ ]
+ }
+ ],
+ "source": [
+ "start=time.process_time()\n",
+ "ans = sum([A_slow_list[i]*B_slow_list[i]for i in range (1000000)])\n",
+ "print(time.process_time()-start)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 66,
+ "id": "bottom-compiler",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "0.015625\n"
+ ]
+ }
+ ],
+ "source": [
+ "start = time.process_time()\n",
+ "ans - np.sum(A_quick_arr*B_quick_arr)\n",
+ "print (time.process_time()- start)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 67,
+ "id": "swedish-terror",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "0.0\n"
+ ]
+ }
+ ],
+ "source": [
+ "start = time.process_time()\n",
+ "ans = A_quick_arr.dot(B_quick_arr)\n",
+ "print(time.process_time()-start)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 68,
+ "id": "patient-marking",
+ "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": 68,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "import pandas as pd\n",
+ "my_series = pd.Series([5,6,7,8,9,10])\n",
+ "my_series"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 69,
+ "id": "communist-functionality",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "RangeIndex(start=0, stop=6, step=1)"
+ ]
+ },
+ "execution_count": 69,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "my_series.index#индексы от 0 до 6 с шагом 1"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 70,
+ "id": "consolidated-chess",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([ 5, 6, 7, 8, 9, 10], dtype=int64)"
+ ]
+ },
+ "execution_count": 70,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "my_series.values"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 71,
+ "id": "opened-prague",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "9"
+ ]
+ },
+ "execution_count": 71,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "my_series[4]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 72,
+ "id": "atmospheric-dominican",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "10"
+ ]
+ },
+ "execution_count": 72,
+ "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": "code",
+ "execution_count": 73,
+ "id": "popular-personality",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "a 5\n",
+ "b 6\n",
+ "f 10\n",
+ "dtype: int64"
+ ]
+ },
+ "execution_count": 73,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "my_series2[['a','b','f']]#групповое присваивание"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 74,
+ "id": "superb-brazilian",
+ "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": 74,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "my_series2[['a','b','f']]=0\n",
+ "my_series2"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 75,
+ "id": "civilian-optics",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "c 7\n",
+ "d 8\n",
+ "e 9\n",
+ "dtype: int64"
+ ]
+ },
+ "execution_count": 75,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "my_series2[my_series2>0]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 76,
+ "id": "generic-genesis",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "c 14\n",
+ "d 16\n",
+ "e 18\n",
+ "dtype: int64"
+ ]
+ },
+ "execution_count": 76,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "my_series2[my_series2>0]*2"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 77,
+ "id": "whole-melbourne",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "a 5\n",
+ "b 6\n",
+ "c 7\n",
+ "d 8\n",
+ "dtype: int64"
+ ]
+ },
+ "execution_count": 77,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "my_series3 = pd.Series({'a':5,'b':6,'c':7,'d':8})\n",
+ "my_series3"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 78,
+ "id": "annual-greensboro",
+ "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": 78,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "my_series3.name = 'numbers'\n",
+ "my_series3.index.name = 'letters'\n",
+ "my_series3"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 79,
+ "id": "cutting-middle",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "A 5\n",
+ "B 6\n",
+ "C 7\n",
+ "D 8\n",
+ "Name: numbers, dtype: int64"
+ ]
+ },
+ "execution_count": 79,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "my_series3.index = ['A','B','C','D']\n",
+ "my_series3"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 80,
+ "id": "capable-haiti",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " country | \n",
+ " population | \n",
+ " square | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " Kazakhstan | \n",
+ " 17.04 | \n",
+ " 2724902 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " Russia | \n",
+ " 143.50 | \n",
+ " 17125191 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " Belarus | \n",
+ " 9.50 | \n",
+ " 207600 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " Ukraine | \n",
+ " 45.50 | \n",
+ " 603628 | \n",
+ "
\n",
+ " \n",
+ "
\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": 80,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df = pd.DataFrame({'country': ['Kazakhstan','Russia','Belarus','Ukraine'],\n",
+ "'population': [17.04,143.5,9.5,45.5],\n",
+ "'square': [2724902,17125191,207600,603628]})\n",
+ "df"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 81,
+ "id": "detected-donna",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0 Kazakhstan\n",
+ "1 Russia\n",
+ "2 Belarus\n",
+ "3 Ukraine\n",
+ "Name: country, dtype: object"
+ ]
+ },
+ "execution_count": 81,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df['country']"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 82,
+ "id": "binary-finland",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Index(['country', 'population', 'square'], dtype='object')"
+ ]
+ },
+ "execution_count": 82,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.columns"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 83,
+ "id": "considered-ticket",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "RangeIndex(start=0, stop=4, step=1)"
+ ]
+ },
+ "execution_count": 83,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.index"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 84,
+ "id": "authorized-bernard",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " country | \n",
+ " population | \n",
+ " square | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | KZ | \n",
+ " Kazakhstan | \n",
+ " 17.04 | \n",
+ " 2724902 | \n",
+ "
\n",
+ " \n",
+ " | RU | \n",
+ " Russia | \n",
+ " 143.50 | \n",
+ " 17125191 | \n",
+ "
\n",
+ " \n",
+ " | BY | \n",
+ " Belarus | \n",
+ " 9.50 | \n",
+ " 207600 | \n",
+ "
\n",
+ " \n",
+ " | UA | \n",
+ " Ukraine | \n",
+ " 45.50 | \n",
+ " 603628 | \n",
+ "
\n",
+ " \n",
+ "
\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": 84,
+ "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",
+ "... },index=['KZ','RU','BY','UA'])\n",
+ "df"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 85,
+ "id": "julian-chancellor",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " country | \n",
+ " population | \n",
+ " square | \n",
+ "
\n",
+ " \n",
+ " | Country Code | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | KZ | \n",
+ " Kazakhstan | \n",
+ " 17.04 | \n",
+ " 2724902 | \n",
+ "
\n",
+ " \n",
+ " | RU | \n",
+ " Russia | \n",
+ " 143.50 | \n",
+ " 17125191 | \n",
+ "
\n",
+ " \n",
+ " | BY | \n",
+ " Belarus | \n",
+ " 9.50 | \n",
+ " 207600 | \n",
+ "
\n",
+ " \n",
+ " | UA | \n",
+ " Ukraine | \n",
+ " 45.50 | \n",
+ " 603628 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " country population square\n",
+ "Country Code \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": 85,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.index = ['KZ','RU','BY','UA']\n",
+ "df.index.name = 'Country Code'\n",
+ "df"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 86,
+ "id": "colored-facing",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Country Code\n",
+ "KZ Kazakhstan\n",
+ "RU Russia\n",
+ "BY Belarus\n",
+ "UA Ukraine\n",
+ "Name: country, dtype: object"
+ ]
+ },
+ "execution_count": 86,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df['country']"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 87,
+ "id": "organized-exclusive",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "country Kazakhstan\n",
+ "population 17.04\n",
+ "square 2724902\n",
+ "Name: KZ, dtype: object"
+ ]
+ },
+ "execution_count": 87,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.loc['KZ']#доступ к строкам по индексу по строковой метке"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 88,
+ "id": "finnish-palmer",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "country Kazakhstan\n",
+ "population 17.04\n",
+ "square 2724902\n",
+ "Name: KZ, dtype: object"
+ ]
+ },
+ "execution_count": 88,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.iloc[0]#по числовому значению"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 89,
+ "id": "worldwide-chick",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Country Code\n",
+ "KZ 17.04\n",
+ "RU 143.50\n",
+ "Name: population, dtype: float64"
+ ]
+ },
+ "execution_count": 89,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.loc[['KZ','RU'],'population']#выборка по индексам и колонкам"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 91,
+ "id": "eleven-template",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " country | \n",
+ " population | \n",
+ " square | \n",
+ "
\n",
+ " \n",
+ " | Country Code | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | KZ | \n",
+ " Kazakhstan | \n",
+ " 17.04 | \n",
+ " 2724902 | \n",
+ "
\n",
+ " \n",
+ " | RU | \n",
+ " Russia | \n",
+ " 143.50 | \n",
+ " 17125191 | \n",
+ "
\n",
+ " \n",
+ " | BY | \n",
+ " Belarus | \n",
+ " 9.50 | \n",
+ " 207600 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " country population square\n",
+ "Country Code \n",
+ "KZ Kazakhstan 17.04 2724902\n",
+ "RU Russia 143.50 17125191\n",
+ "BY Belarus 9.50 207600"
+ ]
+ },
+ "execution_count": 91,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.loc['KZ':'BY'"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 92,
+ "id": "expected-camel",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " country | \n",
+ " square | \n",
+ "
\n",
+ " \n",
+ " | Country Code | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | KZ | \n",
+ " Kazakhstan | \n",
+ " 2724902 | \n",
+ "
\n",
+ " \n",
+ " | RU | \n",
+ " Russia | \n",
+ " 17125191 | \n",
+ "
\n",
+ " \n",
+ " | UA | \n",
+ " Ukraine | \n",
+ " 603628 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " country square\n",
+ "Country Code \n",
+ "KZ Kazakhstan 2724902\n",
+ "RU Russia 17125191\n",
+ "UA Ukraine 603628"
+ ]
+ },
+ "execution_count": 92,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df[df.population>10][['country','square']]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 93,
+ "id": "bizarre-termination",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Country Code | \n",
+ " country | \n",
+ " population | \n",
+ " square | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " KZ | \n",
+ " Kazakhstan | \n",
+ " 17.04 | \n",
+ " 2724902 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " RU | \n",
+ " Russia | \n",
+ " 143.50 | \n",
+ " 17125191 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " BY | \n",
+ " Belarus | \n",
+ " 9.50 | \n",
+ " 207600 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " UA | \n",
+ " Ukraine | \n",
+ " 45.50 | \n",
+ " 603628 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Country Code 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": 93,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.reset_index()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 94,
+ "id": "selective-marine",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " country | \n",
+ " population | \n",
+ " square | \n",
+ " density | \n",
+ "
\n",
+ " \n",
+ " | Country Code | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | KZ | \n",
+ " Kazakhstan | \n",
+ " 17.04 | \n",
+ " 2724902 | \n",
+ " 6.253436 | \n",
+ "
\n",
+ " \n",
+ " | RU | \n",
+ " Russia | \n",
+ " 143.50 | \n",
+ " 17125191 | \n",
+ " 8.379469 | \n",
+ "
\n",
+ " \n",
+ " | BY | \n",
+ " Belarus | \n",
+ " 9.50 | \n",
+ " 207600 | \n",
+ " 45.761079 | \n",
+ "
\n",
+ " \n",
+ " | UA | \n",
+ " Ukraine | \n",
+ " 45.50 | \n",
+ " 603628 | \n",
+ " 75.377550 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " country population square density\n",
+ "Country Code \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": 94,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df['density'] = df['population']/df['square']*1000000\n",
+ "df"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 95,
+ "id": "german-belief",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " country | \n",
+ " population | \n",
+ " square | \n",
+ "
\n",
+ " \n",
+ " | Country Code | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | KZ | \n",
+ " Kazakhstan | \n",
+ " 17.04 | \n",
+ " 2724902 | \n",
+ "
\n",
+ " \n",
+ " | RU | \n",
+ " Russia | \n",
+ " 143.50 | \n",
+ " 17125191 | \n",
+ "
\n",
+ " \n",
+ " | BY | \n",
+ " Belarus | \n",
+ " 9.50 | \n",
+ " 207600 | \n",
+ "
\n",
+ " \n",
+ " | UA | \n",
+ " Ukraine | \n",
+ " 45.50 | \n",
+ " 603628 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " country population square\n",
+ "Country Code \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": 95,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.drop(['density'],axis='columns')#удаление"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 96,
+ "id": "twenty-techno",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " country | \n",
+ " population | \n",
+ " square | \n",
+ " density | \n",
+ "
\n",
+ " \n",
+ " | Country Code | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | KZ | \n",
+ " Kazakhstan | \n",
+ " 17.04 | \n",
+ " 2724902 | \n",
+ " 6.253436 | \n",
+ "
\n",
+ " \n",
+ " | RU | \n",
+ " Russia | \n",
+ " 143.50 | \n",
+ " 17125191 | \n",
+ " 8.379469 | \n",
+ "
\n",
+ " \n",
+ " | BY | \n",
+ " Belarus | \n",
+ " 9.50 | \n",
+ " 207600 | \n",
+ " 45.761079 | \n",
+ "
\n",
+ " \n",
+ " | UA | \n",
+ " Ukraine | \n",
+ " 45.50 | \n",
+ " 603628 | \n",
+ " 75.377550 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " country population square density\n",
+ "Country Code \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": 96,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df = df.rename(columns={'Country Code':'country_code'})\n",
+ "df"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 122,
+ "id": "maritime-variance",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ " 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 \n"
+ ]
+ }
+ ],
+ "source": [
+ "titanic_df = pd.read_csv('C:/Users/АРТЕМ АНТРОПОВ/Downloads/titanic.csv')\n",
+ "print(titanic_df.head())"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 123,
+ "id": "collected-guyana",
+ "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": "code",
+ "execution_count": 124,
+ "id": "victorian-reproduction",
+ "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": "code",
+ "execution_count": 127,
+ "id": "unlimited-result",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd\n",
+ "%matplotlib inline"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 128,
+ "id": "southwest-canon",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " PassengerId | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ " Name | \n",
+ " Sex | \n",
+ " Age | \n",
+ " SibSp | \n",
+ " Parch | \n",
+ " Ticket | \n",
+ " Fare | \n",
+ " Cabin | \n",
+ " Embarked | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Braund, Mr. Owen Harris | \n",
+ " male | \n",
+ " 22.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " A/5 21171 | \n",
+ " 7.2500 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Cumings, Mrs. John Bradley (Florence Briggs Th... | \n",
+ " female | \n",
+ " 38.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " PC 17599 | \n",
+ " 71.2833 | \n",
+ " C85 | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 3 | \n",
+ " 1 | \n",
+ " 3 | \n",
+ " Heikkinen, Miss. Laina | \n",
+ " female | \n",
+ " 26.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " STON/O2. 3101282 | \n",
+ " 7.9250 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 4 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Futrelle, Mrs. Jacques Heath (Lily May Peel) | \n",
+ " female | \n",
+ " 35.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 113803 | \n",
+ " 53.1000 | \n",
+ " C123 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 5 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Allen, Mr. William Henry | \n",
+ " male | \n",
+ " 35.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 373450 | \n",
+ " 8.0500 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 886 | \n",
+ " 887 | \n",
+ " 0 | \n",
+ " 2 | \n",
+ " Montvila, Rev. Juozas | \n",
+ " male | \n",
+ " 27.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 211536 | \n",
+ " 13.0000 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 887 | \n",
+ " 888 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Graham, Miss. Margaret Edith | \n",
+ " female | \n",
+ " 19.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 112053 | \n",
+ " 30.0000 | \n",
+ " B42 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 888 | \n",
+ " 889 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Johnston, Miss. Catherine Helen \"Carrie\" | \n",
+ " female | \n",
+ " NaN | \n",
+ " 1 | \n",
+ " 2 | \n",
+ " W./C. 6607 | \n",
+ " 23.4500 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 889 | \n",
+ " 890 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Behr, Mr. Karl Howell | \n",
+ " male | \n",
+ " 26.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 111369 | \n",
+ " 30.0000 | \n",
+ " C148 | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ " | 890 | \n",
+ " 891 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Dooley, Mr. Patrick | \n",
+ " male | \n",
+ " 32.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 370376 | \n",
+ " 7.7500 | \n",
+ " NaN | \n",
+ " Q | \n",
+ "
\n",
+ " \n",
+ "
\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": 128,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data = pd.read_csv('C:/Users/АРТЕМ АНТРОПОВ/Downloads/titanic.csv')\n",
+ "pass_data"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 129,
+ "id": "tough-double",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " PassengerId | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ " Name | \n",
+ " Sex | \n",
+ " Age | \n",
+ " SibSp | \n",
+ " Parch | \n",
+ " Ticket | \n",
+ " Fare | \n",
+ " Cabin | \n",
+ " Embarked | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Braund, Mr. Owen Harris | \n",
+ " male | \n",
+ " 22.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " A/5 21171 | \n",
+ " 7.2500 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Cumings, Mrs. John Bradley (Florence Briggs Th... | \n",
+ " female | \n",
+ " 38.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " PC 17599 | \n",
+ " 71.2833 | \n",
+ " C85 | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 3 | \n",
+ " 1 | \n",
+ " 3 | \n",
+ " Heikkinen, Miss. Laina | \n",
+ " female | \n",
+ " 26.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " STON/O2. 3101282 | \n",
+ " 7.9250 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ "
\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": 129,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data.head(3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 130,
+ "id": "reverse-flash",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Index(['PassengerId', 'Survived', 'Pclass', 'Name', 'Sex', 'Age', 'SibSp',\n",
+ " 'Parch', 'Ticket', 'Fare', 'Cabin', 'Embarked'],\n",
+ " dtype='object')"
+ ]
+ },
+ "execution_count": 130,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data.columns"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 131,
+ "id": "eight-junior",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 1 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 1 | \n",
+ " 3 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Survived Pclass\n",
+ "1 1 1\n",
+ "2 1 3\n",
+ "3 1 1\n",
+ "4 0 3"
+ ]
+ },
+ "execution_count": 131,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data.iloc[1:5,1:3]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 132,
+ "id": "finished-modem",
+ "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": 132,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data['Name'].head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 133,
+ "id": "ready-contract",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Name | \n",
+ " Sex | \n",
+ " Parch | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " Braund, Mr. Owen Harris | \n",
+ " male | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " Cumings, Mrs. John Bradley (Florence Briggs Th... | \n",
+ " female | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " Heikkinen, Miss. Laina | \n",
+ " female | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " Futrelle, Mrs. Jacques Heath (Lily May Peel) | \n",
+ " female | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " Allen, Mr. William Henry | \n",
+ " male | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Name Sex Parch\n",
+ "0 Braund, Mr. Owen Harris male 0\n",
+ "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 0\n",
+ "2 Heikkinen, Miss. Laina female 0\n",
+ "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 0\n",
+ "4 Allen, Mr. William Henry male 0"
+ ]
+ },
+ "execution_count": 133,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data[['Name','Sex','Parch']].head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 134,
+ "id": "mighty-tunnel",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " PassengerId | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ " Name | \n",
+ " Sex | \n",
+ " Age | \n",
+ " SibSp | \n",
+ " Parch | \n",
+ " Ticket | \n",
+ " Fare | \n",
+ " Cabin | \n",
+ " Embarked | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 1 | \n",
+ " 2 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Cumings, Mrs. John Bradley (Florence Briggs Th... | \n",
+ " female | \n",
+ " 38.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " PC 17599 | \n",
+ " 71.2833 | \n",
+ " C85 | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 3 | \n",
+ " 1 | \n",
+ " 3 | \n",
+ " Heikkinen, Miss. Laina | \n",
+ " female | \n",
+ " 26.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " STON/O2. 3101282 | \n",
+ " 7.9250 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 4 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Futrelle, Mrs. Jacques Heath (Lily May Peel) | \n",
+ " female | \n",
+ " 35.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 113803 | \n",
+ " 53.1000 | \n",
+ " C123 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 8 | \n",
+ " 9 | \n",
+ " 1 | \n",
+ " 3 | \n",
+ " Johnson, Mrs. Oscar W (Elisabeth Vilhelmina Berg) | \n",
+ " female | \n",
+ " 27.0 | \n",
+ " 0 | \n",
+ " 2 | \n",
+ " 347742 | \n",
+ " 11.1333 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 9 | \n",
+ " 10 | \n",
+ " 1 | \n",
+ " 2 | \n",
+ " Nasser, Mrs. Nicholas (Adele Achem) | \n",
+ " female | \n",
+ " 14.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 237736 | \n",
+ " 30.0708 | \n",
+ " NaN | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ "
\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": 134,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data[pass_data['Sex']=='female'].head()#женщины на борту"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 135,
+ "id": "strong-paragraph",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " PassengerId | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ " Name | \n",
+ " Sex | \n",
+ " Age | \n",
+ " SibSp | \n",
+ " Parch | \n",
+ " Ticket | \n",
+ " Fare | \n",
+ " Cabin | \n",
+ " Embarked | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Braund, Mr. Owen Harris | \n",
+ " male | \n",
+ " 22.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " A/5 21171 | \n",
+ " 7.2500 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 5 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Allen, Mr. William Henry | \n",
+ " male | \n",
+ " 35.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 373450 | \n",
+ " 8.0500 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 5 | \n",
+ " 6 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Moran, Mr. James | \n",
+ " male | \n",
+ " NaN | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 330877 | \n",
+ " 8.4583 | \n",
+ " NaN | \n",
+ " Q | \n",
+ "
\n",
+ " \n",
+ " | 6 | \n",
+ " 7 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " McCarthy, Mr. Timothy J | \n",
+ " male | \n",
+ " 54.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 17463 | \n",
+ " 51.8625 | \n",
+ " E46 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 7 | \n",
+ " 8 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Palsson, Master. Gosta Leonard | \n",
+ " male | \n",
+ " 2.0 | \n",
+ " 3 | \n",
+ " 1 | \n",
+ " 349909 | \n",
+ " 21.0750 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ "
\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": 135,
+ "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": "code",
+ "execution_count": 136,
+ "id": "external-telling",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(25, 12)"
+ ]
+ },
+ "execution_count": 136,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data[(pass_data.Sex== 'female')&\n",
+ "(pass_data.Age>18)&\n",
+ "(pass_data.Age<25)&\n",
+ "(pass_data.SibSp==0)&\n",
+ "(pass_data.Parch==0)].shape"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 137,
+ "id": "common-collective",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 137,
+ "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": "code",
+ "execution_count": 138,
+ "id": "decent-somalia",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " PassengerId | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ " Name | \n",
+ " sex | \n",
+ " Age | \n",
+ " SibSp | \n",
+ " Parch | \n",
+ " Ticket | \n",
+ " Fare | \n",
+ " Cabin | \n",
+ " Embarked | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Braund, Mr. Owen Harris | \n",
+ " male | \n",
+ " 22.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " A/5 21171 | \n",
+ " 7.2500 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Cumings, Mrs. John Bradley (Florence Briggs Th... | \n",
+ " female | \n",
+ " 38.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " PC 17599 | \n",
+ " 71.2833 | \n",
+ " C85 | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 3 | \n",
+ " 1 | \n",
+ " 3 | \n",
+ " Heikkinen, Miss. Laina | \n",
+ " female | \n",
+ " 26.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " STON/O2. 3101282 | \n",
+ " 7.9250 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 4 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Futrelle, Mrs. Jacques Heath (Lily May Peel) | \n",
+ " female | \n",
+ " 35.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 113803 | \n",
+ " 53.1000 | \n",
+ " C123 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 5 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Allen, Mr. William Henry | \n",
+ " male | \n",
+ " 35.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 373450 | \n",
+ " 8.0500 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ "
\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": 138,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data.rename(columns={'Sex':'sex'},inplace=True)\n",
+ "pass_data.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 144,
+ "id": "funny-violin",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def get_last_name(Name):\n",
+ " return Name.split(',')[0].strip()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 143,
+ "id": "amber-explosion",
+ "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": 143,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "last_names = pass_data['Name'].apply(get_last_name)\n",
+ "last_names.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 145,
+ "id": "quiet-receiver",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " PassengerId | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ " Name | \n",
+ " sex | \n",
+ " Age | \n",
+ " SibSp | \n",
+ " Parch | \n",
+ " Ticket | \n",
+ " Fare | \n",
+ " Cabin | \n",
+ " Embarked | \n",
+ " Last_name | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Braund, Mr. Owen Harris | \n",
+ " male | \n",
+ " 22.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " A/5 21171 | \n",
+ " 7.2500 | \n",
+ " NaN | \n",
+ " S | \n",
+ " Braund | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Cumings, Mrs. John Bradley (Florence Briggs Th... | \n",
+ " female | \n",
+ " 38.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " PC 17599 | \n",
+ " 71.2833 | \n",
+ " C85 | \n",
+ " C | \n",
+ " Cumings | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 3 | \n",
+ " 1 | \n",
+ " 3 | \n",
+ " Heikkinen, Miss. Laina | \n",
+ " female | \n",
+ " 26.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " STON/O2. 3101282 | \n",
+ " 7.9250 | \n",
+ " NaN | \n",
+ " S | \n",
+ " Heikkinen | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 4 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Futrelle, Mrs. Jacques Heath (Lily May Peel) | \n",
+ " female | \n",
+ " 35.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 113803 | \n",
+ " 53.1000 | \n",
+ " C123 | \n",
+ " S | \n",
+ " Futrelle | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 5 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Allen, Mr. William Henry | \n",
+ " male | \n",
+ " 35.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 373450 | \n",
+ " 8.0500 | \n",
+ " NaN | \n",
+ " S | \n",
+ " Allen | \n",
+ "
\n",
+ " \n",
+ "
\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": 145,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data['Last_name'] = last_names\n",
+ "pass_data.head()#добавление признака"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 146,
+ "id": "mature-valley",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " PassengerId | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ " Name | \n",
+ " sex | \n",
+ " Age | \n",
+ " SibSp | \n",
+ " Parch | \n",
+ " Ticket | \n",
+ " Fare | \n",
+ " Cabin | \n",
+ " Embarked | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Braund, Mr. Owen Harris | \n",
+ " male | \n",
+ " 22.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " A/5 21171 | \n",
+ " 7.2500 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Cumings, Mrs. John Bradley (Florence Briggs Th... | \n",
+ " female | \n",
+ " 38.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " PC 17599 | \n",
+ " 71.2833 | \n",
+ " C85 | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 3 | \n",
+ " 1 | \n",
+ " 3 | \n",
+ " Heikkinen, Miss. Laina | \n",
+ " female | \n",
+ " 26.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " STON/O2. 3101282 | \n",
+ " 7.9250 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 4 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Futrelle, Mrs. Jacques Heath (Lily May Peel) | \n",
+ " female | \n",
+ " 35.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 113803 | \n",
+ " 53.1000 | \n",
+ " C123 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 5 | \n",
+ " 0 | \n",
+ " 3 | \n",
+ " Allen, Mr. William Henry | \n",
+ " male | \n",
+ " 35.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 373450 | \n",
+ " 8.0500 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ "
\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": 146,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data.drop('Last_name',axis=1,inplace=True)\n",
+ "pass_data.head()#удаление признака"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 147,
+ "id": "voluntary-rwanda",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0 True\n",
+ "1 False\n",
+ "2 True\n",
+ "3 False\n",
+ "4 True\n",
+ "Name: Cabin, dtype: bool"
+ ]
+ },
+ "execution_count": 147,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data['Cabin'].isnull().head()#отсутствие данных"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 148,
+ "id": "cutting-filter",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " PassengerId | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ " Name | \n",
+ " sex | \n",
+ " Age | \n",
+ " SibSp | \n",
+ " Parch | \n",
+ " Ticket | \n",
+ " Fare | \n",
+ " Cabin | \n",
+ " Embarked | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 1 | \n",
+ " 2 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Cumings, Mrs. John Bradley (Florence Briggs Th... | \n",
+ " female | \n",
+ " 38.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " PC 17599 | \n",
+ " 71.2833 | \n",
+ " C85 | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 4 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Futrelle, Mrs. Jacques Heath (Lily May Peel) | \n",
+ " female | \n",
+ " 35.0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 113803 | \n",
+ " 53.1000 | \n",
+ " C123 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 6 | \n",
+ " 7 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " McCarthy, Mr. Timothy J | \n",
+ " male | \n",
+ " 54.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 17463 | \n",
+ " 51.8625 | \n",
+ " E46 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 11 | \n",
+ " 1 | \n",
+ " 3 | \n",
+ " Sandstrom, Miss. Marguerite Rut | \n",
+ " female | \n",
+ " 4.0 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " PP 9549 | \n",
+ " 16.7000 | \n",
+ " G6 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 11 | \n",
+ " 12 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Bonnell, Miss. Elizabeth | \n",
+ " female | \n",
+ " 58.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 113783 | \n",
+ " 26.5500 | \n",
+ " C103 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " PassengerId Survived Pclass \\\n",
+ "1 2 1 1 \n",
+ "3 4 1 1 \n",
+ "6 7 0 1 \n",
+ "10 11 1 3 \n",
+ "11 12 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",
+ "6 McCarthy, Mr. Timothy J male 54.0 0 \n",
+ "10 Sandstrom, Miss. Marguerite Rut female 4.0 1 \n",
+ "11 Bonnell, Miss. Elizabeth female 58.0 0 \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",
+ "6 0 17463 51.8625 E46 S \n",
+ "10 1 PP 9549 16.7000 G6 S \n",
+ "11 0 113783 26.5500 C103 S "
+ ]
+ },
+ "execution_count": 148,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data[pass_data['Cabin'].notnull()].head()#пассажиры с известным номером"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 149,
+ "id": "fifth-enterprise",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " PassengerId | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ " Name | \n",
+ " sex | \n",
+ " Age | \n",
+ " SibSp | \n",
+ " Parch | \n",
+ " Ticket | \n",
+ " Fare | \n",
+ " Cabin | \n",
+ " Embarked | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 263 | \n",
+ " 264 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " Harrison, Mr. William | \n",
+ " male | \n",
+ " 40.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 112059 | \n",
+ " 0.0 | \n",
+ " B94 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 633 | \n",
+ " 634 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " Parr, Mr. William Henry Marsh | \n",
+ " male | \n",
+ " NaN | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 112052 | \n",
+ " 0.0 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 806 | \n",
+ " 807 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " Andrews, Mr. Thomas Jr | \n",
+ " male | \n",
+ " 39.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 112050 | \n",
+ " 0.0 | \n",
+ " A36 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 815 | \n",
+ " 816 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " Fry, Mr. Richard | \n",
+ " male | \n",
+ " NaN | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 112058 | \n",
+ " 0.0 | \n",
+ " B102 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 822 | \n",
+ " 823 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " Reuchlin, Jonkheer. John George | \n",
+ " male | \n",
+ " 38.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 19972 | \n",
+ " 0.0 | \n",
+ " NaN | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " PassengerId Survived Pclass Name sex \\\n",
+ "263 264 0 1 Harrison, Mr. William male \n",
+ "633 634 0 1 Parr, Mr. William Henry Marsh male \n",
+ "806 807 0 1 Andrews, Mr. Thomas Jr male \n",
+ "815 816 0 1 Fry, Mr. Richard male \n",
+ "822 823 0 1 Reuchlin, Jonkheer. John George male \n",
+ "\n",
+ " Age SibSp Parch Ticket Fare Cabin Embarked \n",
+ "263 40.0 0 0 112059 0.0 B94 S \n",
+ "633 NaN 0 0 112052 0.0 NaN S \n",
+ "806 39.0 0 0 112050 0.0 A36 S \n",
+ "815 NaN 0 0 112058 0.0 B102 S \n",
+ "822 38.0 0 0 19972 0.0 NaN S "
+ ]
+ },
+ "execution_count": 149,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data.sort_values(by=['Pclass','Fare'],ascending=True).head()#сортировка объектов/признаков"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 150,
+ "id": "distributed-frame",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " PassengerId | \n",
+ " Survived | \n",
+ " Pclass | \n",
+ " Name | \n",
+ " sex | \n",
+ " Age | \n",
+ " SibSp | \n",
+ " Parch | \n",
+ " Ticket | \n",
+ " Fare | \n",
+ " Cabin | \n",
+ " Embarked | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 258 | \n",
+ " 259 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Ward, Miss. Anna | \n",
+ " female | \n",
+ " 35.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " PC 17755 | \n",
+ " 512.3292 | \n",
+ " NaN | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ " | 679 | \n",
+ " 680 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Cardeza, Mr. Thomas Drake Martinez | \n",
+ " male | \n",
+ " 36.0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " PC 17755 | \n",
+ " 512.3292 | \n",
+ " B51 B53 B55 | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ " | 737 | \n",
+ " 738 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Lesurer, Mr. Gustave J | \n",
+ " male | \n",
+ " 35.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " PC 17755 | \n",
+ " 512.3292 | \n",
+ " B101 | \n",
+ " C | \n",
+ "
\n",
+ " \n",
+ " | 27 | \n",
+ " 28 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " Fortune, Mr. Charles Alexander | \n",
+ " male | \n",
+ " 19.0 | \n",
+ " 3 | \n",
+ " 2 | \n",
+ " 19950 | \n",
+ " 263.0000 | \n",
+ " C23 C25 C27 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ " | 88 | \n",
+ " 89 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " Fortune, Miss. Mabel Helen | \n",
+ " female | \n",
+ " 23.0 | \n",
+ " 3 | \n",
+ " 2 | \n",
+ " 19950 | \n",
+ " 263.0000 | \n",
+ " C23 C25 C27 | \n",
+ " S | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " PassengerId Survived Pclass Name \\\n",
+ "258 259 1 1 Ward, Miss. Anna \n",
+ "679 680 1 1 Cardeza, Mr. Thomas Drake Martinez \n",
+ "737 738 1 1 Lesurer, Mr. Gustave J \n",
+ "27 28 0 1 Fortune, Mr. Charles Alexander \n",
+ "88 89 1 1 Fortune, Miss. Mabel Helen \n",
+ "\n",
+ " sex Age SibSp Parch Ticket Fare Cabin Embarked \n",
+ "258 female 35.0 0 0 PC 17755 512.3292 NaN C \n",
+ "679 male 36.0 0 1 PC 17755 512.3292 B51 B53 B55 C \n",
+ "737 male 35.0 0 0 PC 17755 512.3292 B101 C \n",
+ "27 male 19.0 3 2 19950 263.0000 C23 C25 C27 S \n",
+ "88 female 23.0 3 2 19950 263.0000 C23 C25 C27 S "
+ ]
+ },
+ "execution_count": 150,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data.sort_values(by=['Pclass','Fare'],ascending=[True,False]).head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 151,
+ "id": "surgical-concentration",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 151,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data.groupby('sex')#разбиение всех объектов на 2 группы по полу"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 152,
+ "id": "basic-thesis",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "sex Pclass\n",
+ "female 3 144\n",
+ " 1 94\n",
+ " 2 76\n",
+ "male 3 347\n",
+ " 1 122\n",
+ " 2 108\n",
+ "Name: Pclass, dtype: int64"
+ ]
+ },
+ "execution_count": 152,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data.groupby('sex')['Pclass'].value_counts()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 153,
+ "id": "included-communication",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " count | \n",
+ " mean | \n",
+ " std | \n",
+ " min | \n",
+ " 25% | \n",
+ " 50% | \n",
+ " 75% | \n",
+ " max | \n",
+ "
\n",
+ " \n",
+ " | Pclass | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 1 | \n",
+ " 216.0 | \n",
+ " 84.154687 | \n",
+ " 78.380373 | \n",
+ " 0.0 | \n",
+ " 30.92395 | \n",
+ " 60.2875 | \n",
+ " 93.5 | \n",
+ " 512.3292 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 184.0 | \n",
+ " 20.662183 | \n",
+ " 13.417399 | \n",
+ " 0.0 | \n",
+ " 13.00000 | \n",
+ " 14.2500 | \n",
+ " 26.0 | \n",
+ " 73.5000 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 491.0 | \n",
+ " 13.675550 | \n",
+ " 11.778142 | \n",
+ " 0.0 | \n",
+ " 7.75000 | \n",
+ " 8.0500 | \n",
+ " 15.5 | \n",
+ " 69.5500 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " count mean std min 25% 50% 75% max\n",
+ "Pclass \n",
+ "1 216.0 84.154687 78.380373 0.0 30.92395 60.2875 93.5 512.3292\n",
+ "2 184.0 20.662183 13.417399 0.0 13.00000 14.2500 26.0 73.5000\n",
+ "3 491.0 13.675550 11.778142 0.0 7.75000 8.0500 15.5 69.5500"
+ ]
+ },
+ "execution_count": 153,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "pass_data.groupby('Pclass')['Fare'].describe()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "distinguished-turkish",
+ "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.9.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git "a/ml/lb2/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#2.ipynb" "b/ml/lb2/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#2.ipynb"
new file mode 100644
index 00000000..db89180e
--- /dev/null
+++ "b/ml/lb2/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#2.ipynb"
@@ -0,0 +1,4612 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "equivalent-bankruptcy",
+ "metadata": {},
+ "source": [
+ "### Лабораторная работа № 2. \n",
+ "\n",
+ "### Антропов Артем Эдуардович 19-ИВТ-2\n",
+ "### Вариант 2\n",
+ "#### 1. Подсчитайте количество отменённых рейсов.\n",
+ "#### 2. Определите аэропорт, рейсы для которого отменяются наиболее часто.\n",
+ "#### 3. Определите коэффициент корреляции Пирсона и Спирмена между отменой рейса и днём недели, месяцем, авиакомпанией, аэропортом. Оцените значение p-value. Постройте плотность распределения признаков.\n",
+ "#### 4. Подсчитайте для трёх выбранных авиакомпаний: количество рейсов, количество отменённых рейсов, количество перенаправленных рейсов.\n",
+ "#### 5. Определите скорость полёта для каждого рейса, скорость полёта среднюю для трёх выбранных авиакомпаний.\n",
+ "#### 6. Визуализируйте тепловую карту частоты отмены рейсов. По одной оси – дни, по другой оси – рейс (для двух аэропортов).\n",
+ "#### 7. Посчитайте и визуализируйте время задержки отправки и прибытия по трём аэропортам.\n",
+ "#### 8. Определите для трёх выбранных аэропортов и визуализируйте задержки по каждой причине.\n",
+ "#### 9. Определите авиакомпанию с максимальными задержками рейсов по отправке и прибытию."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "floral-composer",
+ "metadata": {},
+ "source": [
+ "import pandas as pd\n",
+ "import matplotlib.pyplot as plt\n",
+ "import seaborn as sns\n",
+ "%matplotlib inline"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 121,
+ "id": "monetary-amsterdam",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " YEAR | \n",
+ " MONTH | \n",
+ " DAY | \n",
+ " DAY_OF_WEEK | \n",
+ " AIRLINE | \n",
+ " FLIGHT_NUMBER | \n",
+ " TAIL_NUMBER | \n",
+ " ORIGIN_AIRPORT | \n",
+ " DESTINATION_AIRPORT | \n",
+ " SCHEDULED_DEPARTURE | \n",
+ " ... | \n",
+ " ARRIVAL_TIME | \n",
+ " ARRIVAL_DELAY | \n",
+ " DIVERTED | \n",
+ " CANCELLED | \n",
+ " CANCELLATION_REASON | \n",
+ " AIR_SYSTEM_DELAY | \n",
+ " SECURITY_DELAY | \n",
+ " AIRLINE_DELAY | \n",
+ " LATE_AIRCRAFT_DELAY | \n",
+ " WEATHER_DELAY | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AS | \n",
+ " 98 | \n",
+ " N407AS | \n",
+ " ANC | \n",
+ " SEA | \n",
+ " 5 | \n",
+ " ... | \n",
+ " 408.0 | \n",
+ " -22.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AA | \n",
+ " 2336 | \n",
+ " N3KUAA | \n",
+ " LAX | \n",
+ " PBI | \n",
+ " 10 | \n",
+ " ... | \n",
+ " 741.0 | \n",
+ " -9.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " US | \n",
+ " 840 | \n",
+ " N171US | \n",
+ " SFO | \n",
+ " CLT | \n",
+ " 20 | \n",
+ " ... | \n",
+ " 811.0 | \n",
+ " 5.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AA | \n",
+ " 258 | \n",
+ " N3HYAA | \n",
+ " LAX | \n",
+ " MIA | \n",
+ " 20 | \n",
+ " ... | \n",
+ " 756.0 | \n",
+ " -9.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AS | \n",
+ " 135 | \n",
+ " N527AS | \n",
+ " SEA | \n",
+ " ANC | \n",
+ " 25 | \n",
+ " ... | \n",
+ " 259.0 | \n",
+ " -21.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 1048570 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " EV | \n",
+ " 4122 | \n",
+ " N11191 | \n",
+ " RDU | \n",
+ " EWR | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1133.0 | \n",
+ " -16.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048571 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " UA | \n",
+ " 1018 | \n",
+ " N79279 | \n",
+ " LGA | \n",
+ " IAH | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1335.0 | \n",
+ " -2.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048572 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " UA | \n",
+ " 1260 | \n",
+ " N76508 | \n",
+ " SAN | \n",
+ " ORD | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1627.0 | \n",
+ " 3.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048573 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " EV | \n",
+ " 4349 | \n",
+ " N14158 | \n",
+ " MSY | \n",
+ " ORD | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1229.0 | \n",
+ " -13.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048574 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " MQ | \n",
+ " 2916 | \n",
+ " N539MQ | \n",
+ " CID | \n",
+ " ORD | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " B | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1048575 rows × 31 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " YEAR MONTH DAY DAY_OF_WEEK AIRLINE FLIGHT_NUMBER TAIL_NUMBER \\\n",
+ "0 2015 1 1 4 AS 98 N407AS \n",
+ "1 2015 1 1 4 AA 2336 N3KUAA \n",
+ "2 2015 1 1 4 US 840 N171US \n",
+ "3 2015 1 1 4 AA 258 N3HYAA \n",
+ "4 2015 1 1 4 AS 135 N527AS \n",
+ "... ... ... ... ... ... ... ... \n",
+ "1048570 2015 3 10 2 EV 4122 N11191 \n",
+ "1048571 2015 3 10 2 UA 1018 N79279 \n",
+ "1048572 2015 3 10 2 UA 1260 N76508 \n",
+ "1048573 2015 3 10 2 EV 4349 N14158 \n",
+ "1048574 2015 3 10 2 MQ 2916 N539MQ \n",
+ "\n",
+ " ORIGIN_AIRPORT DESTINATION_AIRPORT SCHEDULED_DEPARTURE ... \\\n",
+ "0 ANC SEA 5 ... \n",
+ "1 LAX PBI 10 ... \n",
+ "2 SFO CLT 20 ... \n",
+ "3 LAX MIA 20 ... \n",
+ "4 SEA ANC 25 ... \n",
+ "... ... ... ... ... \n",
+ "1048570 RDU EWR 1013 ... \n",
+ "1048571 LGA IAH 1013 ... \n",
+ "1048572 SAN ORD 1013 ... \n",
+ "1048573 MSY ORD 1013 ... \n",
+ "1048574 CID ORD 1013 ... \n",
+ "\n",
+ " ARRIVAL_TIME ARRIVAL_DELAY DIVERTED CANCELLED \\\n",
+ "0 408.0 -22.0 0 0 \n",
+ "1 741.0 -9.0 0 0 \n",
+ "2 811.0 5.0 0 0 \n",
+ "3 756.0 -9.0 0 0 \n",
+ "4 259.0 -21.0 0 0 \n",
+ "... ... ... ... ... \n",
+ "1048570 1133.0 -16.0 0 0 \n",
+ "1048571 1335.0 -2.0 0 0 \n",
+ "1048572 1627.0 3.0 0 0 \n",
+ "1048573 1229.0 -13.0 0 0 \n",
+ "1048574 NaN NaN 0 1 \n",
+ "\n",
+ " CANCELLATION_REASON AIR_SYSTEM_DELAY SECURITY_DELAY AIRLINE_DELAY \\\n",
+ "0 NaN NaN NaN NaN \n",
+ "1 NaN NaN NaN NaN \n",
+ "2 NaN NaN NaN NaN \n",
+ "3 NaN NaN NaN NaN \n",
+ "4 NaN NaN NaN NaN \n",
+ "... ... ... ... ... \n",
+ "1048570 NaN NaN NaN NaN \n",
+ "1048571 NaN NaN NaN NaN \n",
+ "1048572 NaN NaN NaN NaN \n",
+ "1048573 NaN NaN NaN NaN \n",
+ "1048574 B NaN NaN NaN \n",
+ "\n",
+ " LATE_AIRCRAFT_DELAY WEATHER_DELAY \n",
+ "0 NaN NaN \n",
+ "1 NaN NaN \n",
+ "2 NaN NaN \n",
+ "3 NaN NaN \n",
+ "4 NaN NaN \n",
+ "... ... ... \n",
+ "1048570 NaN NaN \n",
+ "1048571 NaN NaN \n",
+ "1048572 NaN NaN \n",
+ "1048573 NaN NaN \n",
+ "1048574 NaN NaN \n",
+ "\n",
+ "[1048575 rows x 31 columns]"
+ ]
+ },
+ "execution_count": 121,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df = pd.read_csv('flights.csv')\n",
+ "df = flights_df\n",
+ "airline_df = flights_df\n",
+ "flights_df"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 80,
+ "id": "educational-convenience",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " YEAR | \n",
+ " MONTH | \n",
+ " DAY | \n",
+ " DAY_OF_WEEK | \n",
+ " AIRLINE | \n",
+ " FLIGHT_NUMBER | \n",
+ " TAIL_NUMBER | \n",
+ " ORIGIN_AIRPORT | \n",
+ " DESTINATION_AIRPORT | \n",
+ " SCHEDULED_DEPARTURE | \n",
+ " ... | \n",
+ " ARRIVAL_TIME | \n",
+ " ARRIVAL_DELAY | \n",
+ " DIVERTED | \n",
+ " CANCELLED | \n",
+ " CANCELLATION_REASON | \n",
+ " AIR_SYSTEM_DELAY | \n",
+ " SECURITY_DELAY | \n",
+ " AIRLINE_DELAY | \n",
+ " LATE_AIRCRAFT_DELAY | \n",
+ " WEATHER_DELAY | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AS | \n",
+ " 98 | \n",
+ " N407AS | \n",
+ " ANC | \n",
+ " SEA | \n",
+ " 5 | \n",
+ " ... | \n",
+ " 408.0 | \n",
+ " -22.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AA | \n",
+ " 2336 | \n",
+ " N3KUAA | \n",
+ " LAX | \n",
+ " PBI | \n",
+ " 10 | \n",
+ " ... | \n",
+ " 741.0 | \n",
+ " -9.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " US | \n",
+ " 840 | \n",
+ " N171US | \n",
+ " SFO | \n",
+ " CLT | \n",
+ " 20 | \n",
+ " ... | \n",
+ " 811.0 | \n",
+ " 5.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AA | \n",
+ " 258 | \n",
+ " N3HYAA | \n",
+ " LAX | \n",
+ " MIA | \n",
+ " 20 | \n",
+ " ... | \n",
+ " 756.0 | \n",
+ " -9.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AS | \n",
+ " 135 | \n",
+ " N527AS | \n",
+ " SEA | \n",
+ " ANC | \n",
+ " 25 | \n",
+ " ... | \n",
+ " 259.0 | \n",
+ " -21.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
5 rows × 31 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " YEAR MONTH DAY DAY_OF_WEEK AIRLINE FLIGHT_NUMBER TAIL_NUMBER \\\n",
+ "0 2015 1 1 4 AS 98 N407AS \n",
+ "1 2015 1 1 4 AA 2336 N3KUAA \n",
+ "2 2015 1 1 4 US 840 N171US \n",
+ "3 2015 1 1 4 AA 258 N3HYAA \n",
+ "4 2015 1 1 4 AS 135 N527AS \n",
+ "\n",
+ " ORIGIN_AIRPORT DESTINATION_AIRPORT SCHEDULED_DEPARTURE ... ARRIVAL_TIME \\\n",
+ "0 ANC SEA 5 ... 408.0 \n",
+ "1 LAX PBI 10 ... 741.0 \n",
+ "2 SFO CLT 20 ... 811.0 \n",
+ "3 LAX MIA 20 ... 756.0 \n",
+ "4 SEA ANC 25 ... 259.0 \n",
+ "\n",
+ " ARRIVAL_DELAY DIVERTED CANCELLED CANCELLATION_REASON AIR_SYSTEM_DELAY \\\n",
+ "0 -22.0 0 0 NaN NaN \n",
+ "1 -9.0 0 0 NaN NaN \n",
+ "2 5.0 0 0 NaN NaN \n",
+ "3 -9.0 0 0 NaN NaN \n",
+ "4 -21.0 0 0 NaN NaN \n",
+ "\n",
+ " SECURITY_DELAY AIRLINE_DELAY LATE_AIRCRAFT_DELAY WEATHER_DELAY \n",
+ "0 NaN NaN NaN NaN \n",
+ "1 NaN NaN NaN NaN \n",
+ "2 NaN NaN NaN NaN \n",
+ "3 NaN NaN NaN NaN \n",
+ "4 NaN NaN NaN NaN \n",
+ "\n",
+ "[5 rows x 31 columns]"
+ ]
+ },
+ "execution_count": 80,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 81,
+ "id": "attended-worcester",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " YEAR | \n",
+ " MONTH | \n",
+ " DAY | \n",
+ " DAY_OF_WEEK | \n",
+ " AIRLINE | \n",
+ " FLIGHT_NUMBER | \n",
+ " TAIL_NUMBER | \n",
+ " ORIGIN_AIRPORT | \n",
+ " DESTINATION_AIRPORT | \n",
+ " SCHEDULED_DEPARTURE | \n",
+ " ... | \n",
+ " ARRIVAL_TIME | \n",
+ " ARRIVAL_DELAY | \n",
+ " DIVERTED | \n",
+ " CANCELLED | \n",
+ " CANCELLATION_REASON | \n",
+ " AIR_SYSTEM_DELAY | \n",
+ " SECURITY_DELAY | \n",
+ " AIRLINE_DELAY | \n",
+ " LATE_AIRCRAFT_DELAY | \n",
+ " WEATHER_DELAY | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 1048570 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " EV | \n",
+ " 4122 | \n",
+ " N11191 | \n",
+ " RDU | \n",
+ " EWR | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1133.0 | \n",
+ " -16.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048571 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " UA | \n",
+ " 1018 | \n",
+ " N79279 | \n",
+ " LGA | \n",
+ " IAH | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1335.0 | \n",
+ " -2.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048572 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " UA | \n",
+ " 1260 | \n",
+ " N76508 | \n",
+ " SAN | \n",
+ " ORD | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1627.0 | \n",
+ " 3.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048573 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " EV | \n",
+ " 4349 | \n",
+ " N14158 | \n",
+ " MSY | \n",
+ " ORD | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1229.0 | \n",
+ " -13.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048574 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " MQ | \n",
+ " 2916 | \n",
+ " N539MQ | \n",
+ " CID | \n",
+ " ORD | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " B | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
5 rows × 31 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " YEAR MONTH DAY DAY_OF_WEEK AIRLINE FLIGHT_NUMBER TAIL_NUMBER \\\n",
+ "1048570 2015 3 10 2 EV 4122 N11191 \n",
+ "1048571 2015 3 10 2 UA 1018 N79279 \n",
+ "1048572 2015 3 10 2 UA 1260 N76508 \n",
+ "1048573 2015 3 10 2 EV 4349 N14158 \n",
+ "1048574 2015 3 10 2 MQ 2916 N539MQ \n",
+ "\n",
+ " ORIGIN_AIRPORT DESTINATION_AIRPORT SCHEDULED_DEPARTURE ... \\\n",
+ "1048570 RDU EWR 1013 ... \n",
+ "1048571 LGA IAH 1013 ... \n",
+ "1048572 SAN ORD 1013 ... \n",
+ "1048573 MSY ORD 1013 ... \n",
+ "1048574 CID ORD 1013 ... \n",
+ "\n",
+ " ARRIVAL_TIME ARRIVAL_DELAY DIVERTED CANCELLED \\\n",
+ "1048570 1133.0 -16.0 0 0 \n",
+ "1048571 1335.0 -2.0 0 0 \n",
+ "1048572 1627.0 3.0 0 0 \n",
+ "1048573 1229.0 -13.0 0 0 \n",
+ "1048574 NaN NaN 0 1 \n",
+ "\n",
+ " CANCELLATION_REASON AIR_SYSTEM_DELAY SECURITY_DELAY AIRLINE_DELAY \\\n",
+ "1048570 NaN NaN NaN NaN \n",
+ "1048571 NaN NaN NaN NaN \n",
+ "1048572 NaN NaN NaN NaN \n",
+ "1048573 NaN NaN NaN NaN \n",
+ "1048574 B NaN NaN NaN \n",
+ "\n",
+ " LATE_AIRCRAFT_DELAY WEATHER_DELAY \n",
+ "1048570 NaN NaN \n",
+ "1048571 NaN NaN \n",
+ "1048572 NaN NaN \n",
+ "1048573 NaN NaN \n",
+ "1048574 NaN NaN \n",
+ "\n",
+ "[5 rows x 31 columns]"
+ ]
+ },
+ "execution_count": 81,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df.tail()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 82,
+ "id": "received-holmes",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "RangeIndex: 1048575 entries, 0 to 1048574\n",
+ "Data columns (total 31 columns):\n",
+ " # Column Non-Null Count Dtype \n",
+ "--- ------ -------------- ----- \n",
+ " 0 YEAR 1048575 non-null int64 \n",
+ " 1 MONTH 1048575 non-null int64 \n",
+ " 2 DAY 1048575 non-null int64 \n",
+ " 3 DAY_OF_WEEK 1048575 non-null int64 \n",
+ " 4 AIRLINE 1048575 non-null object \n",
+ " 5 FLIGHT_NUMBER 1048575 non-null int64 \n",
+ " 6 TAIL_NUMBER 1040825 non-null object \n",
+ " 7 ORIGIN_AIRPORT 1048575 non-null object \n",
+ " 8 DESTINATION_AIRPORT 1048575 non-null object \n",
+ " 9 SCHEDULED_DEPARTURE 1048575 non-null int64 \n",
+ " 10 DEPARTURE_TIME 1009060 non-null float64\n",
+ " 11 DEPARTURE_DELAY 1009060 non-null float64\n",
+ " 12 TAXI_OUT 1008346 non-null float64\n",
+ " 13 WHEELS_OFF 1008346 non-null float64\n",
+ " 14 SCHEDULED_TIME 1048573 non-null float64\n",
+ " 15 ELAPSED_TIME 1005504 non-null float64\n",
+ " 16 AIR_TIME 1005504 non-null float64\n",
+ " 17 DISTANCE 1048575 non-null int64 \n",
+ " 18 WHEELS_ON 1007279 non-null float64\n",
+ " 19 TAXI_IN 1007279 non-null float64\n",
+ " 20 SCHEDULED_ARRIVAL 1048575 non-null int64 \n",
+ " 21 ARRIVAL_TIME 1007279 non-null float64\n",
+ " 22 ARRIVAL_DELAY 1005504 non-null float64\n",
+ " 23 DIVERTED 1048575 non-null int64 \n",
+ " 24 CANCELLED 1048575 non-null int64 \n",
+ " 25 CANCELLATION_REASON 40527 non-null object \n",
+ " 26 AIR_SYSTEM_DELAY 228528 non-null float64\n",
+ " 27 SECURITY_DELAY 228528 non-null float64\n",
+ " 28 AIRLINE_DELAY 228528 non-null float64\n",
+ " 29 LATE_AIRCRAFT_DELAY 228528 non-null float64\n",
+ " 30 WEATHER_DELAY 228528 non-null float64\n",
+ "dtypes: float64(16), int64(10), object(5)\n",
+ "memory usage: 248.0+ MB\n"
+ ]
+ }
+ ],
+ "source": [
+ "flights_df.info()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 83,
+ "id": "experienced-richmond",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " YEAR | \n",
+ " MONTH | \n",
+ " DAY | \n",
+ " DAY_OF_WEEK | \n",
+ " FLIGHT_NUMBER | \n",
+ " SCHEDULED_DEPARTURE | \n",
+ " DEPARTURE_TIME | \n",
+ " DEPARTURE_DELAY | \n",
+ " TAXI_OUT | \n",
+ " WHEELS_OFF | \n",
+ " ... | \n",
+ " SCHEDULED_ARRIVAL | \n",
+ " ARRIVAL_TIME | \n",
+ " ARRIVAL_DELAY | \n",
+ " DIVERTED | \n",
+ " CANCELLED | \n",
+ " AIR_SYSTEM_DELAY | \n",
+ " SECURITY_DELAY | \n",
+ " AIRLINE_DELAY | \n",
+ " LATE_AIRCRAFT_DELAY | \n",
+ " WEATHER_DELAY | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | count | \n",
+ " 1048575.0 | \n",
+ " 1.048575e+06 | \n",
+ " 1.048575e+06 | \n",
+ " 1.048575e+06 | \n",
+ " 1.048575e+06 | \n",
+ " 1.048575e+06 | \n",
+ " 1.009060e+06 | \n",
+ " 1.009060e+06 | \n",
+ " 1.008346e+06 | \n",
+ " 1.008346e+06 | \n",
+ " ... | \n",
+ " 1.048575e+06 | \n",
+ " 1.007279e+06 | \n",
+ " 1.005504e+06 | \n",
+ " 1.048575e+06 | \n",
+ " 1.048575e+06 | \n",
+ " 228528.000000 | \n",
+ " 228528.000000 | \n",
+ " 228528.000000 | \n",
+ " 228528.000000 | \n",
+ " 228528.000000 | \n",
+ "
\n",
+ " \n",
+ " | mean | \n",
+ " 2015.0 | \n",
+ " 1.694297e+00 | \n",
+ " 1.382097e+01 | \n",
+ " 3.953196e+00 | \n",
+ " 2.256759e+03 | \n",
+ " 1.322632e+03 | \n",
+ " 1.333705e+03 | \n",
+ " 1.133485e+01 | \n",
+ " 1.665380e+01 | \n",
+ " 1.357382e+03 | \n",
+ " ... | \n",
+ " 1.504820e+03 | \n",
+ " 1.492204e+03 | \n",
+ " 7.612191e+00 | \n",
+ " 2.426150e-03 | \n",
+ " 3.864960e-02 | \n",
+ " 13.692554 | \n",
+ " 0.057328 | \n",
+ " 18.203577 | \n",
+ " 22.921458 | \n",
+ " 3.545277 | \n",
+ "
\n",
+ " \n",
+ " | std | \n",
+ " 0.0 | \n",
+ " 7.051508e-01 | \n",
+ " 8.725656e+00 | \n",
+ " 1.999436e+00 | \n",
+ " 1.799166e+03 | \n",
+ " 4.707748e+02 | \n",
+ " 4.827415e+02 | \n",
+ " 3.922372e+01 | \n",
+ " 1.007006e+01 | \n",
+ " 4.830351e+02 | \n",
+ " ... | \n",
+ " 4.865613e+02 | \n",
+ " 5.071090e+02 | \n",
+ " 4.209367e+01 | \n",
+ " 4.919620e-02 | \n",
+ " 1.927585e-01 | \n",
+ " 25.524897 | \n",
+ " 1.779647 | \n",
+ " 46.323146 | \n",
+ " 41.888498 | \n",
+ " 23.611555 | \n",
+ "
\n",
+ " \n",
+ " | min | \n",
+ " 2015.0 | \n",
+ " 1.000000e+00 | \n",
+ " 1.000000e+00 | \n",
+ " 1.000000e+00 | \n",
+ " 1.000000e+00 | \n",
+ " 1.000000e+00 | \n",
+ " 1.000000e+00 | \n",
+ " -6.100000e+01 | \n",
+ " 1.000000e+00 | \n",
+ " 1.000000e+00 | \n",
+ " ... | \n",
+ " 1.000000e+00 | \n",
+ " 1.000000e+00 | \n",
+ " -8.200000e+01 | \n",
+ " 0.000000e+00 | \n",
+ " 0.000000e+00 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | 25% | \n",
+ " 2015.0 | \n",
+ " 1.000000e+00 | \n",
+ " 6.000000e+00 | \n",
+ " 2.000000e+00 | \n",
+ " 7.550000e+02 | \n",
+ " 9.200000e+02 | \n",
+ " 9.280000e+02 | \n",
+ " -5.000000e+00 | \n",
+ " 1.100000e+01 | \n",
+ " 9.440000e+02 | \n",
+ " ... | \n",
+ " 1.120000e+03 | \n",
+ " 1.115000e+03 | \n",
+ " -1.200000e+01 | \n",
+ " 0.000000e+00 | \n",
+ " 0.000000e+00 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | 50% | \n",
+ " 2015.0 | \n",
+ " 2.000000e+00 | \n",
+ " 1.300000e+01 | \n",
+ " 4.000000e+00 | \n",
+ " 1.725000e+03 | \n",
+ " 1.319000e+03 | \n",
+ " 1.329000e+03 | \n",
+ " -1.000000e+00 | \n",
+ " 1.400000e+01 | \n",
+ " 1.342000e+03 | \n",
+ " ... | \n",
+ " 1.524000e+03 | \n",
+ " 1.521000e+03 | \n",
+ " -3.000000e+00 | \n",
+ " 0.000000e+00 | \n",
+ " 0.000000e+00 | \n",
+ " 4.000000 | \n",
+ " 0.000000 | \n",
+ " 2.000000 | \n",
+ " 4.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | 75% | \n",
+ " 2015.0 | \n",
+ " 2.000000e+00 | \n",
+ " 2.100000e+01 | \n",
+ " 6.000000e+00 | \n",
+ " 3.485000e+03 | \n",
+ " 1.720000e+03 | \n",
+ " 1.731000e+03 | \n",
+ " 1.100000e+01 | \n",
+ " 1.900000e+01 | \n",
+ " 1.745000e+03 | \n",
+ " ... | \n",
+ " 1.915000e+03 | \n",
+ " 1.917000e+03 | \n",
+ " 1.200000e+01 | \n",
+ " 0.000000e+00 | \n",
+ " 0.000000e+00 | \n",
+ " 19.000000 | \n",
+ " 0.000000 | \n",
+ " 18.000000 | \n",
+ " 29.000000 | \n",
+ " 0.000000 | \n",
+ "
\n",
+ " \n",
+ " | max | \n",
+ " 2015.0 | \n",
+ " 3.000000e+00 | \n",
+ " 3.100000e+01 | \n",
+ " 7.000000e+00 | \n",
+ " 9.794000e+03 | \n",
+ " 2.359000e+03 | \n",
+ " 2.400000e+03 | \n",
+ " 1.988000e+03 | \n",
+ " 2.250000e+02 | \n",
+ " 2.400000e+03 | \n",
+ " ... | \n",
+ " 2.359000e+03 | \n",
+ " 2.400000e+03 | \n",
+ " 1.971000e+03 | \n",
+ " 1.000000e+00 | \n",
+ " 1.000000e+00 | \n",
+ " 830.000000 | \n",
+ " 241.000000 | \n",
+ " 1971.000000 | \n",
+ " 1313.000000 | \n",
+ " 1152.000000 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
8 rows × 26 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " YEAR MONTH DAY DAY_OF_WEEK FLIGHT_NUMBER \\\n",
+ "count 1048575.0 1.048575e+06 1.048575e+06 1.048575e+06 1.048575e+06 \n",
+ "mean 2015.0 1.694297e+00 1.382097e+01 3.953196e+00 2.256759e+03 \n",
+ "std 0.0 7.051508e-01 8.725656e+00 1.999436e+00 1.799166e+03 \n",
+ "min 2015.0 1.000000e+00 1.000000e+00 1.000000e+00 1.000000e+00 \n",
+ "25% 2015.0 1.000000e+00 6.000000e+00 2.000000e+00 7.550000e+02 \n",
+ "50% 2015.0 2.000000e+00 1.300000e+01 4.000000e+00 1.725000e+03 \n",
+ "75% 2015.0 2.000000e+00 2.100000e+01 6.000000e+00 3.485000e+03 \n",
+ "max 2015.0 3.000000e+00 3.100000e+01 7.000000e+00 9.794000e+03 \n",
+ "\n",
+ " SCHEDULED_DEPARTURE DEPARTURE_TIME DEPARTURE_DELAY TAXI_OUT \\\n",
+ "count 1.048575e+06 1.009060e+06 1.009060e+06 1.008346e+06 \n",
+ "mean 1.322632e+03 1.333705e+03 1.133485e+01 1.665380e+01 \n",
+ "std 4.707748e+02 4.827415e+02 3.922372e+01 1.007006e+01 \n",
+ "min 1.000000e+00 1.000000e+00 -6.100000e+01 1.000000e+00 \n",
+ "25% 9.200000e+02 9.280000e+02 -5.000000e+00 1.100000e+01 \n",
+ "50% 1.319000e+03 1.329000e+03 -1.000000e+00 1.400000e+01 \n",
+ "75% 1.720000e+03 1.731000e+03 1.100000e+01 1.900000e+01 \n",
+ "max 2.359000e+03 2.400000e+03 1.988000e+03 2.250000e+02 \n",
+ "\n",
+ " WHEELS_OFF ... SCHEDULED_ARRIVAL ARRIVAL_TIME ARRIVAL_DELAY \\\n",
+ "count 1.008346e+06 ... 1.048575e+06 1.007279e+06 1.005504e+06 \n",
+ "mean 1.357382e+03 ... 1.504820e+03 1.492204e+03 7.612191e+00 \n",
+ "std 4.830351e+02 ... 4.865613e+02 5.071090e+02 4.209367e+01 \n",
+ "min 1.000000e+00 ... 1.000000e+00 1.000000e+00 -8.200000e+01 \n",
+ "25% 9.440000e+02 ... 1.120000e+03 1.115000e+03 -1.200000e+01 \n",
+ "50% 1.342000e+03 ... 1.524000e+03 1.521000e+03 -3.000000e+00 \n",
+ "75% 1.745000e+03 ... 1.915000e+03 1.917000e+03 1.200000e+01 \n",
+ "max 2.400000e+03 ... 2.359000e+03 2.400000e+03 1.971000e+03 \n",
+ "\n",
+ " DIVERTED CANCELLED AIR_SYSTEM_DELAY SECURITY_DELAY \\\n",
+ "count 1.048575e+06 1.048575e+06 228528.000000 228528.000000 \n",
+ "mean 2.426150e-03 3.864960e-02 13.692554 0.057328 \n",
+ "std 4.919620e-02 1.927585e-01 25.524897 1.779647 \n",
+ "min 0.000000e+00 0.000000e+00 0.000000 0.000000 \n",
+ "25% 0.000000e+00 0.000000e+00 0.000000 0.000000 \n",
+ "50% 0.000000e+00 0.000000e+00 4.000000 0.000000 \n",
+ "75% 0.000000e+00 0.000000e+00 19.000000 0.000000 \n",
+ "max 1.000000e+00 1.000000e+00 830.000000 241.000000 \n",
+ "\n",
+ " AIRLINE_DELAY LATE_AIRCRAFT_DELAY WEATHER_DELAY \n",
+ "count 228528.000000 228528.000000 228528.000000 \n",
+ "mean 18.203577 22.921458 3.545277 \n",
+ "std 46.323146 41.888498 23.611555 \n",
+ "min 0.000000 0.000000 0.000000 \n",
+ "25% 0.000000 0.000000 0.000000 \n",
+ "50% 2.000000 4.000000 0.000000 \n",
+ "75% 18.000000 29.000000 0.000000 \n",
+ "max 1971.000000 1313.000000 1152.000000 \n",
+ "\n",
+ "[8 rows x 26 columns]"
+ ]
+ },
+ "execution_count": 83,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df.describe()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 84,
+ "id": "derived-gamma",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " YEAR | \n",
+ " MONTH | \n",
+ " DAY | \n",
+ " DAY_OF_WEEK | \n",
+ " AIRLINE | \n",
+ " FLIGHT_NUMBER | \n",
+ " TAIL_NUMBER | \n",
+ " ORIGIN_AIRPORT | \n",
+ " DESTINATION_AIRPORT | \n",
+ " SCHEDULED_DEPARTURE | \n",
+ " ... | \n",
+ " ARRIVAL_TIME | \n",
+ " ARRIVAL_DELAY | \n",
+ " DIVERTED | \n",
+ " CANCELLED | \n",
+ " CANCELLATION_REASON | \n",
+ " AIR_SYSTEM_DELAY | \n",
+ " SECURITY_DELAY | \n",
+ " AIRLINE_DELAY | \n",
+ " LATE_AIRCRAFT_DELAY | \n",
+ " WEATHER_DELAY | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
0 rows × 31 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ "Empty DataFrame\n",
+ "Columns: [YEAR, MONTH, DAY, DAY_OF_WEEK, AIRLINE, FLIGHT_NUMBER, TAIL_NUMBER, ORIGIN_AIRPORT, DESTINATION_AIRPORT, SCHEDULED_DEPARTURE, DEPARTURE_TIME, DEPARTURE_DELAY, TAXI_OUT, WHEELS_OFF, SCHEDULED_TIME, ELAPSED_TIME, AIR_TIME, DISTANCE, WHEELS_ON, TAXI_IN, SCHEDULED_ARRIVAL, ARRIVAL_TIME, ARRIVAL_DELAY, DIVERTED, CANCELLED, CANCELLATION_REASON, AIR_SYSTEM_DELAY, SECURITY_DELAY, AIRLINE_DELAY, LATE_AIRCRAFT_DELAY, WEATHER_DELAY]\n",
+ "Index: []\n",
+ "\n",
+ "[0 rows x 31 columns]"
+ ]
+ },
+ "execution_count": 84,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df.dropna()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 85,
+ "id": "swedish-creature",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " YEAR | \n",
+ " MONTH | \n",
+ " DAY | \n",
+ " DAY_OF_WEEK | \n",
+ " AIRLINE | \n",
+ " FLIGHT_NUMBER | \n",
+ " TAIL_NUMBER | \n",
+ " ORIGIN_AIRPORT | \n",
+ " DESTINATION_AIRPORT | \n",
+ " SCHEDULED_DEPARTURE | \n",
+ " ... | \n",
+ " ARRIVAL_TIME | \n",
+ " ARRIVAL_DELAY | \n",
+ " DIVERTED | \n",
+ " CANCELLED | \n",
+ " CANCELLATION_REASON | \n",
+ " AIR_SYSTEM_DELAY | \n",
+ " SECURITY_DELAY | \n",
+ " AIRLINE_DELAY | \n",
+ " LATE_AIRCRAFT_DELAY | \n",
+ " WEATHER_DELAY | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AS | \n",
+ " 98 | \n",
+ " N407AS | \n",
+ " ANC | \n",
+ " SEA | \n",
+ " 5 | \n",
+ " ... | \n",
+ " 408.0 | \n",
+ " -22.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AA | \n",
+ " 2336 | \n",
+ " N3KUAA | \n",
+ " LAX | \n",
+ " PBI | \n",
+ " 10 | \n",
+ " ... | \n",
+ " 741.0 | \n",
+ " -9.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " US | \n",
+ " 840 | \n",
+ " N171US | \n",
+ " SFO | \n",
+ " CLT | \n",
+ " 20 | \n",
+ " ... | \n",
+ " 811.0 | \n",
+ " 5.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AA | \n",
+ " 258 | \n",
+ " N3HYAA | \n",
+ " LAX | \n",
+ " MIA | \n",
+ " 20 | \n",
+ " ... | \n",
+ " 756.0 | \n",
+ " -9.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AS | \n",
+ " 135 | \n",
+ " N527AS | \n",
+ " SEA | \n",
+ " ANC | \n",
+ " 25 | \n",
+ " ... | \n",
+ " 259.0 | \n",
+ " -21.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 1048570 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " EV | \n",
+ " 4122 | \n",
+ " N11191 | \n",
+ " RDU | \n",
+ " EWR | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1133.0 | \n",
+ " -16.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048571 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " UA | \n",
+ " 1018 | \n",
+ " N79279 | \n",
+ " LGA | \n",
+ " IAH | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1335.0 | \n",
+ " -2.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048572 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " UA | \n",
+ " 1260 | \n",
+ " N76508 | \n",
+ " SAN | \n",
+ " ORD | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1627.0 | \n",
+ " 3.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048573 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " EV | \n",
+ " 4349 | \n",
+ " N14158 | \n",
+ " MSY | \n",
+ " ORD | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " 1229.0 | \n",
+ " -13.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1048574 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " MQ | \n",
+ " 2916 | \n",
+ " N539MQ | \n",
+ " CID | \n",
+ " ORD | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " B | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1048575 rows × 31 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " YEAR MONTH DAY DAY_OF_WEEK AIRLINE FLIGHT_NUMBER TAIL_NUMBER \\\n",
+ "0 2015 1 1 4 AS 98 N407AS \n",
+ "1 2015 1 1 4 AA 2336 N3KUAA \n",
+ "2 2015 1 1 4 US 840 N171US \n",
+ "3 2015 1 1 4 AA 258 N3HYAA \n",
+ "4 2015 1 1 4 AS 135 N527AS \n",
+ "... ... ... ... ... ... ... ... \n",
+ "1048570 2015 3 10 2 EV 4122 N11191 \n",
+ "1048571 2015 3 10 2 UA 1018 N79279 \n",
+ "1048572 2015 3 10 2 UA 1260 N76508 \n",
+ "1048573 2015 3 10 2 EV 4349 N14158 \n",
+ "1048574 2015 3 10 2 MQ 2916 N539MQ \n",
+ "\n",
+ " ORIGIN_AIRPORT DESTINATION_AIRPORT SCHEDULED_DEPARTURE ... \\\n",
+ "0 ANC SEA 5 ... \n",
+ "1 LAX PBI 10 ... \n",
+ "2 SFO CLT 20 ... \n",
+ "3 LAX MIA 20 ... \n",
+ "4 SEA ANC 25 ... \n",
+ "... ... ... ... ... \n",
+ "1048570 RDU EWR 1013 ... \n",
+ "1048571 LGA IAH 1013 ... \n",
+ "1048572 SAN ORD 1013 ... \n",
+ "1048573 MSY ORD 1013 ... \n",
+ "1048574 CID ORD 1013 ... \n",
+ "\n",
+ " ARRIVAL_TIME ARRIVAL_DELAY DIVERTED CANCELLED \\\n",
+ "0 408.0 -22.0 0 0 \n",
+ "1 741.0 -9.0 0 0 \n",
+ "2 811.0 5.0 0 0 \n",
+ "3 756.0 -9.0 0 0 \n",
+ "4 259.0 -21.0 0 0 \n",
+ "... ... ... ... ... \n",
+ "1048570 1133.0 -16.0 0 0 \n",
+ "1048571 1335.0 -2.0 0 0 \n",
+ "1048572 1627.0 3.0 0 0 \n",
+ "1048573 1229.0 -13.0 0 0 \n",
+ "1048574 NaN NaN 0 1 \n",
+ "\n",
+ " CANCELLATION_REASON AIR_SYSTEM_DELAY SECURITY_DELAY AIRLINE_DELAY \\\n",
+ "0 NaN NaN NaN NaN \n",
+ "1 NaN NaN NaN NaN \n",
+ "2 NaN NaN NaN NaN \n",
+ "3 NaN NaN NaN NaN \n",
+ "4 NaN NaN NaN NaN \n",
+ "... ... ... ... ... \n",
+ "1048570 NaN NaN NaN NaN \n",
+ "1048571 NaN NaN NaN NaN \n",
+ "1048572 NaN NaN NaN NaN \n",
+ "1048573 NaN NaN NaN NaN \n",
+ "1048574 B NaN NaN NaN \n",
+ "\n",
+ " LATE_AIRCRAFT_DELAY WEATHER_DELAY \n",
+ "0 NaN NaN \n",
+ "1 NaN NaN \n",
+ "2 NaN NaN \n",
+ "3 NaN NaN \n",
+ "4 NaN NaN \n",
+ "... ... ... \n",
+ "1048570 NaN NaN \n",
+ "1048571 NaN NaN \n",
+ "1048572 NaN NaN \n",
+ "1048573 NaN NaN \n",
+ "1048574 NaN NaN \n",
+ "\n",
+ "[1048575 rows x 31 columns]"
+ ]
+ },
+ "execution_count": 85,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df.drop_duplicates()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 86,
+ "id": "single-release",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(1048575, 31)"
+ ]
+ },
+ "execution_count": 86,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df.shape"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "congressional-productivity",
+ "metadata": {},
+ "source": [
+ "## 1. Подсчитайте количество отменённых рейсов."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 87,
+ "id": "pediatric-thesis",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "40527"
+ ]
+ },
+ "execution_count": 87,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df[flights_df['CANCELLED'] == 1]['CANCELLED'].count()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "altered-correlation",
+ "metadata": {},
+ "source": [
+ "## 2. Определите аэропорт, рейсы для которого отменяются наиболее часто."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 88,
+ "id": "earned-roots",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "cancelled_df = pd.DataFrame(flights_df.groupby(['ORIGIN_AIRPORT'])['CANCELLED'].sum())"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 89,
+ "id": "transsexual-control",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CANCELLED | \n",
+ "
\n",
+ " \n",
+ " | ORIGIN_AIRPORT | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | DFW | \n",
+ " 3578 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CANCELLED\n",
+ "ORIGIN_AIRPORT \n",
+ "DFW 3578"
+ ]
+ },
+ "execution_count": 89,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "cancelled_df.sort_values(by=['CANCELLED'], ascending = False).head(1)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "refined-fifty",
+ "metadata": {},
+ "source": [
+ "## 3. Определите коэффициент корреляции Пирсона и Спирмена между отменой рейса и днём недели, месяцем, авиакомпанией, аэропортом. Оцените значение p-value. Постройте плотность распределения признаков."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 90,
+ "id": "durable-conversation",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from scipy import stats\n",
+ "from sklearn.preprocessing import LabelEncoder"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 91,
+ "id": "collect-fraction",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(-0.034068711647744575, 8.421162978809802e-267)"
+ ]
+ },
+ "execution_count": 91,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "a = flights_df['CANCELLED']\n",
+ "b = flights_df['DAY_OF_WEEK']\n",
+ "stats.pearsonr(a, b)\n",
+ "#Коэффициент корреляции Пирсона измеряет линейную связь между двумя наборами данных. \n",
+ "#Расчет p-значения основан на предположении, что каждый набор данных распределен нормально.\n",
+ "#Значение p примерно указывает на вероятность того, что некоррелированная система произведет наборы данных, которые имеют \n",
+ "#корреляцию Пирсона, по крайней мере, столь же экстремальную, как корреляция, вычисленная на основе этих наборов данных."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 92,
+ "id": "dirty-demand",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "SpearmanrResult(correlation=-0.034673218497205664, pvalue=2.784239888470112e-276)"
+ ]
+ },
+ "execution_count": 92,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "stats.spearmanr(flights_df['CANCELLED'], flights_df['DAY_OF_WEEK'])\n",
+ "#В отличие от корреляции Пирсона, корреляция Спирмена не предполагает, что оба набора данных имеют нормальное распределение.\n",
+ "#Значение p примерно указывает на вероятность того, что некоррелированная система произведет наборы данных, которые имеют \n",
+ "#корреляцию Спирмена, по крайней мере, столь же экстремальную, как корреляция, вычисленная из этих наборов данных."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "wired-boxing",
+ "metadata": {},
+ "source": [
+ "#### отменой рейса и месяцем"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 93,
+ "id": "institutional-limitation",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(0.059183552923896376, 0.0)"
+ ]
+ },
+ "execution_count": 93,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "a = flights_df['CANCELLED']\n",
+ "b = flights_df['MONTH']\n",
+ "stats.pearsonr(a, b)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 94,
+ "id": "continuing-consistency",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "SpearmanrResult(correlation=0.061244820697519985, pvalue=0.0)"
+ ]
+ },
+ "execution_count": 94,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "stats.spearmanr(flights_df['CANCELLED'], flights_df['MONTH'])"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "photographic-firewall",
+ "metadata": {},
+ "source": [
+ "#### отменой рейса и авиакомпанией"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 95,
+ "id": "united-cigarette",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(-0.016338025044725698, 7.762345019437045e-63)"
+ ]
+ },
+ "execution_count": 95,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "label_encoder = LabelEncoder()\n",
+ "\n",
+ "label_encoder.fit(flights_df.AIRLINE)\n",
+ "flights_df['AIRLINE']=label_encoder.transform(flights_df.AIRLINE)\n",
+ "\n",
+ "a = flights_df['CANCELLED']\n",
+ "b = flights_df['AIRLINE']\n",
+ "stats.pearsonr(a, b)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 96,
+ "id": "cordless-rabbit",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "SpearmanrResult(correlation=-0.0159794188752134, pvalue=3.4598665200039363e-60)"
+ ]
+ },
+ "execution_count": 96,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "stats.spearmanr(flights_df['CANCELLED'], flights_df['AIRLINE'])"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "acting-paris",
+ "metadata": {},
+ "source": [
+ "#### отменой рейса и Аэропортом"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 97,
+ "id": "correct-worker",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "flights_df['ORIGIN_AIRPORT'] = flights_df['ORIGIN_AIRPORT'].astype(str)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 98,
+ "id": "optional-charter",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(-0.02812330868467366, 1.9158712866916684e-182)"
+ ]
+ },
+ "execution_count": 98,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "label_encoder2 = LabelEncoder()\n",
+ "\n",
+ "label_encoder2.fit(flights_df.ORIGIN_AIRPORT)\n",
+ "flights_df['ORIGIN_AIRPORT']=label_encoder2.transform(flights_df['ORIGIN_AIRPORT'])\n",
+ "\n",
+ "a = flights_df['CANCELLED']\n",
+ "b = flights_df['ORIGIN_AIRPORT']\n",
+ "stats.pearsonr(a, b)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 99,
+ "id": "average-tiger",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "SpearmanrResult(correlation=0.014499937559450502, pvalue=7.093949083185112e-50)"
+ ]
+ },
+ "execution_count": 99,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df['ORIGIN_AIRPORT'] = flights_df['ORIGIN_AIRPORT'].astype(str)\n",
+ "stats.spearmanr(flights_df['CANCELLED'], flights_df['ORIGIN_AIRPORT'])"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "collaborative-cleveland",
+ "metadata": {},
+ "source": [
+ "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 100,
+ "id": "catholic-quick",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 100,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "flights_df.groupby(['CANCELLED'])['CANCELLED'].count().plot()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 101,
+ "id": "reflected-backing",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 101,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYoAAAEHCAYAAACwUAEWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAA5PUlEQVR4nO3de3xV9Zno/8+TOwnktpNAIIEkO0FRVBQEEi4KWrT2om1pR9uqdfBQL9g57ZmZ056ZV+2vHufUTs9xxlJtFahSrdVRWxyn1lpBEAhIQARRLrkQCLeEACFcEnJ5fn/sFbrZhtyTtS/P+/Xar+58114rz6okT76X57tEVTHGGGMuJsrtAIwxxgQ3SxTGGGO6ZInCGGNMlyxRGGOM6ZIlCmOMMV2KcTuAgZaRkaF5eXluh2GMMSFl8+bNR1U1s7NjYZco8vLyKCsrczsMY4wJKSJSfbFjNvRkjDGmS5YojDHGdMkShTHGmC5ZojDGGNMlSxTGGGO6ZInCGGNMlyxRGGOM6ZIlCmNMrxw91cx/bTvEudZ2t0MxQyTsCu6MMQPvXGs7q3bV8srmGlbtrKW1XXnsK1fwN9eOdTs0MwQsURhjLmrHwQZe2VzDiq0HOXb6HJkj4lkwM59XtxxgXXm9JYoIYYnCGHOBo6ea+cMHB3hlcw07DzcSFx3FZy4byfzJOcwqyiAmOorDJ5tYV16PqiIibodsBpklCmMM51rbWbnTN7T07i7f0NJVuak8cttEvnBlNqmJcRd8vsTrYcXWg5TXnqJo5AiXojZDxRKFMRFKVdlx8KQztHSA42dayBoRz4JZ+cy/JqfLBFBckAFAaWW9JYoIYInCcfZcGy9srOamy0eRm57odjjGDJq6xmZWbPUbWoqJYt5lI/nK5BxmFfqGlrqTmz6MManDWF9ez13FeYMftHGVJQrHibPn+OmfdlF59DT/8qUr3A7HmAHV3NrGyk9qeXVLDat21dHWrkzKTeV/3zaRL1w5mpTE2F5dT0Qo8Xp4+5MjtLcrUVE2TxHOLFE4slOG8dUpOfxHWQ0PzS0kO2WY2yEZ0y+qykcHTvLK5v2s+PAgJ860MDI5nv82q4D5k8dQmNW/IaOSQg//sbmGTw6f5PLRKQMUtQlGlij83H+9l5c27edXqyv50RcvdzscY/qktrGJFR8c5JXNNew64htauunyUcyfnMPMwgyiB+iv//PzFBX1lijCnCUKPzlpiXz5mjG8+P4+HrjeS1ZygtshGdMjza1tvPOJb9XS6t2+oaWrx6by6Jcm8vkrR5MyrHdDSz0xKiWBgowk1lfUc++sggG/vgkeligCPDinkFe3HODpNZX88+cvczscYy5KVdl+4K8FcQ1nfUNLC2cX8JVrcijMGj7oMRQ7y2Rb29p7NAluQpMligDjPEncetVoXti4j/uv9+IZHu92SMZcoPZkE7//4ACvbqlh95FTxPsNLc0YwKGlnij2enhh4z62H2jg6rFpQ/Z9zdCyRNGJB+YU8vutB1iytor/efOlbodjDE0tHUNL+1m9u452hWvGpvIvX7qCz12ZPShDSz0xvcADwPqKeksUYcwSRScKs4bzuSuyWb5+L9+eXfCpqlRjhoKqsq3GN7T0+oe+oaXslATuu87LVybn4M0c/KGl7mQMj+fSUSMorajnwTmFbodjBokliot4aG4Rb2w7xLK1VXxv3iVuh2MiyBFnaOmVzTWU1/qGlm6e6BtaKvEO7dBST0wv8PC7Tftobm0jPiba7XDMIOh29klElolIrYh8FND+kIjsEpEdIvJTv/YfiEi5c+wmv/bJIrLdOfaEODuJiUi8iLzktG8UkTy/c+4WkT3O6+4BueMeumTUCG6+fBS/Xr+Xk00tQ/mtTQRqamnjjW0H+dav36f4/7zDT97cScqwWP7Pl69g0z/fyL/ffjWzijKDLkmAb9+nppZ2tu474XYoZpD0pEfxLLAYWN7RICJzgFuBK1W1WUSynPbLgNuBy4HRwF9EZLyqtgFPAQuBDcAfgZuBN4EFwHFVLRSR24HHgL8RkXTgYWAKoMBmEXldVY/3/7Z7ZtHcQv604zDPrdvLQzcUDdW3NRFCVdm6/wSvbK7hPz88yMmmVrJTEnjg+kK+fM0YCoJgaKknphV4iBLfPMU0Z87ChJduE4WqrvH/K99xP/ATVW12PlPrtN8K/M5prxKRcmCqiOwFklW1FEBElgO34UsUtwI/cs5/BVjs9DZuAt5W1WPOOW/jSy4v9ulO+2DimBRunJDF0nVV3DMzn+HxNlJn+u9wQ8fQ0n4q6k4THxPFZyeOYv7kXIq9nqDsNXQlZVgsE8ekUFpZz3fdDsYMir7+5hsPzBKRR4Em4O9VdRMwBl+PoUON09bivA9sx/nf/QCq2ioiDYDHv72Tcy4gIgvx9VYYO3ZgH6Ty0Nwibv3FOn5TWs3913sH9NomsqwrP8rTayp5b49v1dKUcWn85MsF3HJlNskJ7qxaGijFBR6Wravi7Lk2hsXZPEW46WuFTAyQBkwH/gF42ekFdPankHbRTh/PubBR9WlVnaKqUzIzM7uLvVeuyk1l9vhMlrxXyZlzrQN6bRM5jpxs4p5nN7H7SCMPzilk1d9fzyv3l3D71LEhnyTAV0/R0qaUVR9zOxQzCPqaKGqA19TnfaAdyHDac/0+lwMcdNpzOmnH/xwRiQFSgGNdXGvIfWduIfWnz/Hbjfvc+PYmDDyzppK2duWlhcX8j3mXkJ+R5HZIA+ravHRiooTSinq3QzGDoK+J4g/AXAARGQ/EAUeB14HbnZVM+UAR8L6qHgIaRWS60/O4C1jhXOt1oGNF03xgpaoq8BYwT0TSRCQNmOe0DbkpeemUeD38ak0lTS1tboRgQlj9qWZe2LiPW68azVhPeD7rJCk+hqtyU1lviSIs9WR57ItAKXCJiNSIyAJgGVDgLJn9HXC307vYAbwMfAz8CXjQWfEEvgnwJUA5UIFvIhtgKeBxJr6/B3wfwJnEfgTY5Lx+3DGx7YaH5hZR19jMS5v2d/9hY/wsW1dFU2sbD8wJ7zmuEq+HbTUnbDl5GBLfH+/hY8qUKVpWVjbg11VVvvarUmqOn+Xdf7jeCotMjzScbWHmT1Yye3wmv/jGNW6HM6jWVxzl689sZOndU7hhwki3wzG9JCKbVXVKZ8dsu8ceEhEemlvEoYYmXt18wO1wTIhYvn4vjc2tEbG9xTVj04iLibJ5ijBkiaIXZhVlMCk3lSffLaelrd3tcEyQO93cytJ1Vdw4IYvLRie7Hc6gS4iNZvLYNJunCEOWKHpBRPjODYXUHD/L7z+wXoXp2gsbqzlxpiUiehMdSrwePj50kuOnz7kdihlAlih6ac4lWUwck8yTq8pptV6FuYimljaeXlPFzMKMiNp+u9jr28JjY5X1KsKJJYpeEhEWzSlib/0Z3th2yO1wTJB6adN+jp5qZtHcyOlNAFyZk0piXLQNP4UZSxR9MO+ykVw6agQ/X7mHtvbwWjVm+u9cazu/XF3BtXlpTMtPdzucIRUXE8W1eemWKMKMJYo+iIoSFs0tpKLuNG9+ZL0Kc6HXttRwqKGJRXOLcHbTjyglXg/ltaeobWxyOxQzQCxR9NFnJ2bjzUxi8cpy2q1XYRytbe08tbqCK3NSmF2U4XY4ruiYp7BlsuHDEkUfRTu9ip2HG3n7kyNuh2OCxBvbDlFdf4ZFcwojsjcBcPnoFEYkxFiiCCOWKPrhC1eOJs+TyBPv7CHcKtxN77W3K4tXlXPpqBHcGMGVydFRwvQCD6WVlijChSWKfoiJjuKBOYXsOHiSVbtquz/BhLW3dhymvPYUD8wpJCrEHj400IoLPFTXn6Hm+Bm3QzEDwBJFP33p6jHkpA3jiXfKrVcRwVSVn68sJz8jic9dke12OK4rKbR5inBiiaKfYqOjuP96L1v3n2Bt+VG3wzEuWbWrlo8PneSB670h9yjTwTA+awSepDhLFGHCEsUAmD85h+yUBJuriFCqyhPvlDMmdRi3Xd3p03ojTpTfPIX9TIQ+SxQDID4mmvuu87Jp73E2VNqjICPN+op6tu4/wf3Xe4mNth+pDsVeD4camthbb/MUoc7+VQ+Qv7k2l8wR8fx85R63QzFDbPHKckYmxzN/ck73H44gJU49xfoKG5INdZYoBkhCbDTfnl3A+op6yvZaryJSlO09RmllPQtne0mItYdZ+cvPSGJUcoLNU4QBSxQD6OvTxuJJiuOJleVuh2KGyOJV5XiS4rhjaq7boQQdEaHY66G0wuYpQp0ligGUGBfDvbMKWLO7jq37T7gdjhlk22saeHdXHQtm5ZMYF+N2OEGp2Ouh/vQ5dh855XYoph8sUQywO4vHkZoYy2Kbqwh7i1ftITkhhjunj3M7lKBVcn7fJ5unCGXdJgoRWSYitSLykV/bj0TkgIhsdV63OO15InLWr/2XfudMFpHtIlIuIk+IsxGOiMSLyEtO+0YRyfM7524R2eO87h7QOx8kw+NjWDAjn798UstHBxrcDscMkl2HG3lrxxG+NSOfEQmxbocTtHLSEslNH2bbjoe4nvQongVu7qT9cVWd5Lz+6Nde4dd+n1/7U8BCoMh5dVxzAXBcVQuBx4HHAEQkHXgYmAZMBR4WkZB4VNjdM/IYkRDDYpurCFu/WFVOUlw095TkuR1K0CspyGBDZb09uyWEdZsoVHUN0K9lPCKSDSSraqn6ZrWWA7c5h28FnnPevwLc4PQ2bgLeVtVjqnoceJvOE1bQSU6I5Z6SPP604zC7Dje6HY4ZYFVHT/PGtoN8s3gcaUlxbocT9EoKPZxsauXjgyfdDsX0UX/mKBaJyDZnaMr/L/18EflARFaLyCynbQxQ4/eZGqet49h+AFVtBRoAj397J+dcQEQWikiZiJTV1dX145YGzt/OzCcpLprFq6xXEW6eerec2Ogo7p1Z4HYoIaG4wJmnqLR5ilDV10TxFOAFJgGHgP/rtB8Cxqrq1cD3gN+KSDLQ2eY3Hf3Qix3r6pwLG1WfVtUpqjolMzOzxzcxmFIT47irJI83th2kvNZWfISLmuNneG3LAe6YOpbMEfFuhxMSspIT8GYm2TxFCOtTolDVI6rapqrtwDP45hBQ1WZVrXfebwYqgPH4egP+Zas5wEHnfQ2QCyAiMUAKvqGu8+2dnBMS7p2ZT0JMNE9aryJs/Gp1JSLw7eusN9EbJd4M3q86Rktbu9uhmD7oU6Jw5hw6fAn4yGnPFJFo530BvknrSlU9BDSKyHRn/uEuYIVz/utAx4qm+cBKZx7jLWCeiKQ5Q1vznLaQ4RkezzemjWXFhweprj/tdjimn46cbOKlsv3Mn5xLdsowt8MJKcVeD2fOtbGtxlYChqKeLI99ESgFLhGRGhFZAPzUWeq6DZgDfNf5+Gxgm4h8iG9i+j5V7ZgIvx9YApTj62m86bQvBTwiUo5vuOr7AM55jwCbnNeP/a4VMhbOLiA6SnhyVYXboZh+emZNJW3tyv3Xed0OJeRML7B6ilDWbTmpqt7RSfPSi3z2VeDVixwrAyZ20t4EfPUi5ywDlnUXYzDLSk7g61PH8vyGahbNLSQ3PdHtkEwf1J9q5oWN+7j1qtGM9dh/w95KT4pjQnYy6yvqWTS3yO1wTC9ZZfYQ+PZ1BUSJ8MvV1qsIVcvWVdHU2sYDc6w30VclXg+bq4/T1NLmdiimlyxRDIHslGHMn5LDf5TVcLihye1wTC81nG1h+fpqbpmYTWHWCLfDCVnFBR6aW9v5YN8Jt0MxvWSJYojcf52XdlXrVYSg5ev30tjcyoNzCt0OJaRNLUgnSmyeIhRZohgiuemJfPmaMbz4/j5qG61XESpON7eydF0VN07I4rLRyW6HE9KSE2K5IieV0kqrpwg1liiG0APXF9LS1s4zayrdDsX00AsbqzlxpsV6EwOkuMDDB/tOcOZcq9uhmF6wRDGE8jKSuHXSGJ7fsI/6U81uh2O60dTSxtNrqphVlMHVY0NiP8qgV+L10NqubNp73O1QTC9YohhiD84ppKm1jaVrq9wOxXTjpU37OXqqmUXWmxgwU/LSiI0We452iLFEMcQKs4bzuSuyeW79Xk6cOed2OOYizrW288vVFVybl8Y0p1jM9F9iXAyTclPZYPs+hRRLFC5YNLeQ0+faWLZur9uhmIt4bUsNhxqarDhsEBR7M9h+oIGGsy1uh2J6yBKFCy4dlcxNl4/k1+uqONlkPyzBprWtnadWV3BlTgqzizLcDifslHg9tCu8XxVyO/JELEsULnlobhGNTa0sX7/X7VBMgDe2HaK6/gyL5hTiPLHXDKCrx6YSHxNFqQ0/hQxLFC6ZOCaFGy7NYsnaKk4121LBYNHerixeVc6lo0Zw44SRbocTluJjopmSl2YT2iHEEoWLHrqhiBNnWnh+Q7XboRjHWzsOU157igfnFBIVZb2JwVLizWDn4UZbJh4iLFG4aFJuKrOKMnhmTSVnz9lGaW5TVX6+spyCjCRuuSK7+xNMnxV7fSvJNto8RUiwROGy79xQRP3pc7yw0XoVblu1q5aPD53kgTmFRFtvYlBdMSaFpLhoG34KEZYoXHZtXjrFBR6eXlNp2y+7SFV54p1yctKGceuk0W6HE/Zio6OYmp9uz9EOEZYogsBDNxRS29jMy2X73Q4lYq2vqGfr/hPcd52X2Gj7sRgKJd4MKutOc+SkbZIZ7OwnIggUF3iYMi6Np96toLnVehVuWLyynJHJ8cyfnON2KBGjY57ClskGP0sUQUBE+M4NRRxqaOLVzQfcDifilO09RmllPQtne0mIjXY7nIgxITuZlGGxNk8RAixRBIlZRRlclZvKk++W09LW7nY4EWXxqnI8SXHcMTXX7VAiSnSUML3A5ilCQbeJQkSWiUitiHzk1/YjETkgIlud1y1+x34gIuUisktEbvJrnywi251jT4hT8ioi8SLyktO+UUTy/M65W0T2OK+7B+yug5CI8J25hdQcP8sfPrBexVDZXtPAu7vqWDArn8S4GLfDiTjFBR5qjp9l/7EzbodiutCTHsWzwM2dtD+uqpOc1x8BROQy4HbgcuecJ0Wkoy//FLAQKHJeHddcABxX1ULgceAx51rpwMPANGAq8LCIhPVDAeZemsXlo5N58t0KWq1XMSQWr9pDckIMd04f53YoEamk0LeXls1TBLduE4WqrgF6WhVzK/A7VW1W1SqgHJgqItlAsqqWqqoCy4Hb/M55znn/CnCD09u4CXhbVY+p6nHgbTpPWGFDRHhobhFVR0/zxrZDbocT9nYdbuStHUe4Z0Y+IxJi3Q4nIhVlDSdjeJzNUwS5/sxRLBKRbc7QVMdf+mMA/zWeNU7bGOd9YPsF56hqK9AAeLq41qeIyEIRKRORsrq6un7ckvvmXTaSS0aOYPGqctrb1e1wwtovVpWTFBfNPTPy3A4lYokIxd4MSivr8f0NaYJRXxPFU4AXmAQcAv6v095ZOat20d7Xcy5sVH1aVaeo6pTMzMwuwg5+UVHCormFlNee4s2PDrsdTtjy9doO8s3icaQmxrkdTkQrLvBw5GQzlUdPux2KuYg+JQpVPaKqbaraDjyDbw4BfH/1+y8dyQEOOu05nbRfcI6IxAAp+Ia6LnatsHfLFdkUZCbx85V7rFcxSJ56t5zY6CjunVngdigRr8Spp7DVT8GrT4nCmXPo8CWgY0XU68DtzkqmfHyT1u+r6iGgUUSmO/MPdwEr/M7pWNE0H1jpzGO8BcwTkTRnaGue0xb2oqOEh+YWsvNwI29/csTtcMJOzfEzvLblAHdMHUvmiHi3w4l44zyJjE5JsMejBrGeLI99ESgFLhGRGhFZAPzUWeq6DZgDfBdAVXcALwMfA38CHlTVjlLj+4El+Ca4K4A3nfalgEdEyoHvAd93rnUMeATY5Lx+7LRFhC9cOZpxnkR+vnKPjd0OsF+trkQEvn2d9SaCgYgw3euhtLLeetBBqtuF46p6RyfNS7v4/KPAo520lwETO2lvAr56kWstA5Z1F2M4iomO4sHrC/nHV7fx7q465lya5XZIYeHIySZeKtvP/Mm5ZKcMczsc4yjxZvDalgPsOtLIhOxkt8MxAawyO4h96ZoxjEkdxr+/Y72KgfLMmkra2pX7r/O6HYrxU2zzFP02mL8jLFEEsdjoKB6Y42Xr/hOsLbd15v1Vf6qZFzbu49ZJoxnrSXQ7HONnTOowxnkSrfCuH364Ygd/97sPBiVhWKIIcvMn55CdksDP3yl3O5SQt2xdFU2tbTxwfaHboZhOlHg9bKyst10J+uDY6XO8XLafxLhonN2RBpQliiAXHxPNt2cX8P7eY2yotL+2+qrhbAvL11dzy8RsCrOGux2O6USxN4PG5lZ2HDzpdigh54UN1TS3tvO3M/IH5fqWKELA7VPHkjE8np+v3ON2KCFr+fq9NDa38uAc600Eq+kF6QCU2h9EvdLc2sZzpdVcNz6TopEjBuV7WKIIAQmx0dx3XQHryuvZXB0xK4QHzOnmVpauq+LGCVlcNtpW1ASrrBEJFGUNtwntXnp960GOnmrm3lmD05sASxQh4+vTxpKeFMcTNlfRay9srObEmRbrTYSAEq+HTVXHONdq8xQ9oaosXVvFJSNHMNPZiXcwWKIIEYlxMdw7K5/Vu+v4cP8Jt8MJGU0tbTy9popZRRlcPTasd6kPC8XeDM62tLGt5oTboYSE9RX17DzcyIJZ+YMyid3BEkUIuas4j5RhsTZX0QsvbdrP0VPNLLLeREiYXpCOiNVT9NSS9yrJGB7PrZNGD+r3sUQRQobHx7BgZj5/+aSWHQcb3A4n6J1rbeeXqyuYmpfOtAKP2+GYHkhNjOOy7GR7PkUPlNc2smpXHXcVjyM+ZnCf9W6JIsTcXZLHiPgYFq+0uYruvLalhkMNTSyaa72JUFLi9bCl+gRNLW3dfziCLV27l7iYKL4xbeygfy9LFCEmZVgs35qRx5sfHWbX4Ua3wwlarW3tPLW6gqtyUphVNHiTfGbgFXs9nGtrZ0v1cbdDCVr1p5p5bUsNX7lmDJ7hg78DsiWKEPS3M/JJiotm8SrrVVzMG9sOUV1/hgfnFA7qJJ8ZeNfmpRMdJTZP0YUXNu4b1AK7QJYoQlBaUhx3FufxxraDVNSdcjucoNPerixeVc6lo0Zw44SRbodjemlEQixX5qTYPMVFNLe2sby0musvGbwCu0CWKELUvbPyiY+J4hfWq/iUt3Ycprz2FA/OKSQqynoToai4wMO2mgZONbe6HUrQOV9gN4RPZ7REEaIyhsfzjWnjWLH1INX19qzhDqrKz1eWU5CRxC1XZHd/gglKJd4MWtuVTXttJwJ/HQV2l44awYzCoVvJZ4kihH17dgHRUcKTqyrcDiVorNpVy8eHTvLAnEKirTcRsiaPSyMuOsq2HQ+wrtxXYPe3Mwe3wC6QJYoQlpWcwB3X5vLqlhpqjp9xOxzXqSpPvFNOTtqwQS9AMoNrWFw0V49NtUQRYMnaoSmwC2SJIsR9+zovIvDL1darWF9Rz9b9J7j/ei+x0fZPO9QVez18dLCBhjMtbocSFMprG3l3iArsAtlPU4gbnTqM+ZNzeXlTDYcbmtwOx1WLV5YzMjme+ZNz3A7FDIASbwaqsKHKehXgK7CLH6ICu0DdJgoRWSYitSLyUSfH/l5EVEQynK/zROSsiGx1Xr/0++xkEdkuIuUi8oQ4A2wiEi8iLzntG0Ukz++cu0Vkj/O6e0DuOAw9cL2XdtWI7lWU7T1GaWU9C2d7h/yvLTM4JuWmkhBr8xTw1wK7L1+TMyQFdoF60qN4Frg5sFFEcoHPAPsCDlWo6iTndZ9f+1PAQqDIeXVccwFwXFULgceBx5zrpwMPA9OAqcDDImLbf3YiNz2RL109hhff30dtY2T2KhavKseTFMcdU3PdDsUMkLiYKK7NS7dEwV8L7BbMzHPl+3ebKFR1DdDZGrXHgX8Eun2St4hkA8mqWqq+J38vB25zDt8KPOe8fwW4welt3AS8rarHVPU48DadJCzj8+CcQlra2lnyXpXboQy57TUNvLurjgWz8kmMi3E7HDOAir0edh1ppK6x2e1QXNPU0sby0r3MuSSTwqyhKbAL1Kc5ChH5InBAVT/s5HC+iHwgIqtFZJbTNgao8ftMjdPWcWw/gKq2Ag2Ax7+9k3MC41koImUiUlZXV9eXWwp5eRlJfPGq0fymtJr6U5H1Q7V41R6SE2K4c/o4t0MxA6zE69unK5KfF//6hwc5euocC4awwC5QrxOFiCQC/wT8sJPDh4Cxqno18D3gtyKSDHS24LejJ3KxY12dc2Gj6tOqOkVVp2RmZnZ3C2Fr0dxCmlrbWLo2cnoVuw438taOI9wzI58RCbFuh2MG2MTRyQyPj4nY52irKkvfG/oCu0B96VF4gXzgQxHZC+QAW0RklKo2q2o9gKpuBiqA8fh6A/5LUXKAg877GiAXQERigBR8Q13n2zs5x3SiMGsEt1yRzfLSak6cOed2OEPiF6vKSYqL5p4ZeW6HYgZBTHQU0/Ijd55ibflRdh1pZMEQF9gF6nWiUNXtqpqlqnmqmofvF/o1qnpYRDJFJBpARArwTVpXquohoFFEpjvzD3cBK5xLvg50rGiaD6x05jHeAuaJSJoziT3PaTNdeGhuIaeaW/n1ur1uhzLoqo6e5o1tB7mzOI/UxDi3wzGDpNjroeroaQ41nHU7lCG3dG0VGcPj+aLLBaQ9WR77IlAKXCIiNSKyoIuPzwa2iciH+Cam71PVjonw+4ElQDm+nsabTvtSwCMi5fiGq74P4Jz3CLDJef3Y71rmIi4dlcy8y0aybG0Vi1fuYVvNCdrbu11vEJKeerecuJgo7p01NFstG3cUe31DLpHWq9hzxFdgd7cLBXaBul0ioqp3dHM8z+/9q8CrF/lcGTCxk/Ym4KsXOWcZsKy7GM2Fvv/ZS/nuyx/ysz/v5md/3o0nKY6ZRRlcNz6TWUWZZI4Y+nXYA63m+Ble23KAO4vHkeHCunIzdCaMSiY1MZb1FfV8+ZrIKaZctq7KV2AXBIs0bC1hGCrIHM6KB2dw9FQza/ccZc3uOtbsqWPFVt8Uz+Wjk5k9PpPrxmdyzdg04mJCr0D/V6srEYGFs91bCWKGRlSUUFzgobSiHlWNiAdR1Z9q5tUtB5g/OYf0JPeHVS1RhLGM4fHcdvUYbrt6DO3tyseHTrJ6dx2rd9fxzJpKnnq3gqS4aEoKfb2N68Znkpue6HbY3TpysomXyvYzf3Iu2SnD3A7HDIESr4c3PzrM/mNnGesJ/n+j/fX8hn2cG8In2HXHEkWEiIoSJo5JYeKYFB6cU0hjUwvrK+pZ4ySOtz8+AkBBRtL53sa0gvSgLGB7Zk0lbe3K/dd53Q7FDJGOeYr1FUcZ6xn6vY6GUlNLG7/Z0FFgN9ztcABLFBFrREIsN10+ipsuH4WqUnX0NKt317Fmdx2/27SPZ9fvJS46iqn56cwen8F147MYP3K4693++lPNvLBxH7dOGh0Rf1kaH2/mcDJHxLO+op7bp4Z3ougosLt3VvAMq1qiMIgIBZnDKcgczj0z8mlqaaNs73FW765lze6j/Msfd/Ivf9zJqOQEZo/PYPb4TGYWZriyJHXZuiqaWtt44PrCIf/exj0iQonXw7ry8J6n8C+wK/G6V2AXyBKF+ZSE2GhmFmUwsyiDf/ocHGo4y3u7j7J6dx1/+ugwL5fVECVwVW4q143PZPb4TK7KSR30J8o1nG1h+fpqbrkiO2i65GboFBd4WLH1IBV1p1zb82iwdRTY/eyrVwVVMrREYbqVnTKMr12by9euzaW1rZ0PaxrOD1P9+zt7+Le/7CE1MZYZfpPiI5MTBjyO5ev30tjcyqI51puIRB37Pq2vqA/bRLHkvSoyR8TzhauC63nvlihMr8RERzF5XBqTx6Xxvc+M5/jpc6wtP3o+cfzXtkMAXDpqxPlJ8Sl5af0uGDrd3MrSdVXcOGEkE7KTB+JWTIjJTR/GmNRhrC+v567iPLfDGXC7jzSyencd/+Mz410vsAtkicL0S1pSHF+4ajRfuGo0qsrOw43nV1L9el0VT6+pZFhsNMVez/lhqjxPYq+71S9srObEmRYWzbXeRKQSEYq9Hv7yyRHa25WoQR7qHGrL1gZPgV0gSxRmwIgIE7KTmZCdzLev83K6uZUNlfXnexsrd9YCMDY98fxKqmKvh+HxXf8zbGpp4+k1VcwqymBSbuoQ3IkJViVeD69sruGTwye5fHSK2+EMmKOnmnntg+ApsAtkicIMmqT4GG6YMJIbJowEoLr+9PnexmtbDvD8hn3ERguTx6WdH6a6LDv5U72Nlzbt5+ipZhbNudqN2zBBxH/fp3BKFC8EWYFdIEsUZsiM8yRxZ3ESdxbnca61nbLqY6xxVlP99E+7+OmfdpExPN7pbfiW4I5IiOWXqyuYmpfOtILgWS5o3JGdMoyCjCRKK+qDqs6gPzoK7OZemhW0q/ksURhXxMVEUeLNoMSbwfc/eym1J5tYs8eXNFbtrOW1LQcQ8Q1THWpo4rGvXOl2yCZITPd6eH3rQVrb2omJDr19ygK9vtUpsJsZnL0JsERhgkRWcgLzJ+cwf3IObe3K9gMN54epJoxKZlZRhtshmiBR4vXw24372H6ggavHprkdTr+oKkvWVjIhO/n8sFowskRhgk50lDApN5VJual854Yit8MxQWZ6Qce+T/Uhnyje23OU3UdOBV2BXaDQ77cZYyJKxvB4Lhk5gg1h8BztJWuDs8AukCUKY0zIKfZ62LT3GM2tbW6H0me7j/hqjoLhCXbdsURhjAk5JV4PTS3tbN13wu1Q+mzZ2ioSYqP4+rTgK7ALZInCGBNypuV7EIHSEB1+6iiw+8o1wVlgF8gShTEm5KQkxjJxdArrK0IzUTy/odpXYBfES2L9dZsoRGSZiNSKyEedHPt7EVERyfBr+4GIlIvILhG5ya99sohsd449Ic4Uv4jEi8hLTvtGEcnzO+duEdnjvO7u990aY8JGidfDB/uOc/ZcaM1TNLW08ZvSauZemoU3MzgL7AL1pEfxLHBzYKOI5AKfAfb5tV0G3A5c7pzzpIh0zNI8BSwEipxXxzUXAMdVtRB4HHjMuVY68DAwDZgKPCwiob0WzhgzYKZ7PbS0KZurj7sdSq+s2HqA+tPBXWAXqNtEoaprgGOdHHoc+EdA/dpuBX6nqs2qWgWUA1NFJBtIVtVSVVVgOXCb3znPOe9fAW5wehs3AW+r6jFVPQ68TScJyxgTma7NSycmSlhfcdTtUHpMVVm6tiroC+wC9WmOQkS+CBxQ1Q8DDo0B9vt9XeO0jXHeB7ZfcI6qtgINgKeLa3UWz0IRKRORsrq6ur7ckjEmxAyPj+Gq3NSQmqfoKLC7d2Z+UBfYBep1ohCRROCfgB92driTNu2iva/nXNio+rSqTlHVKZmZmZ19xBgThkq8HrYfaKCxqcXtUHpkydoqskbE84WrRrsdSq/0pUfhBfKBD0VkL5ADbBGRUfj+6s/1+2wOcNBpz+mkHf9zRCQGSME31HWxaxljDOB7jnZbu7Jpb2ej48Fll/NQr7tL8oiLCa0Fp72OVlW3q2qWquapah6+X+jXqOph4HXgdmclUz6+Sev3VfUQ0Cgi0535h7uAFc4lXwc6VjTNB1Y68xhvAfNEJM2ZxJ7ntBljDADXjEsjLiaK9eXBP/x0vsBu6li3Q+m1bjcFFJEXgeuBDBGpAR5W1aWdfVZVd4jIy8DHQCvwoKp2rF27H98KqmHAm84LYCnwGxEpx9eTuN251jEReQTY5Hzux6oa/H82GGOGTEJsNJPHpgX9PEVdYzO/33qAr07OIS0ECuwCdZsoVPWObo7nBXz9KPBoJ58rAyZ20t4EfPUi114GLOsuRmNM5Cr2enj8L7s5fvpc0P4SDrUCu0ChNVBmjDEBSrweVGFjVXD2Kppa2nh+QzU3hFCBXSBLFMaYkHZlTiqJcdFBO/zUUWC3YFZo9ibAEoUxJsTFxUQxJS+d0iBMFKrKkvequCw7meIQfua7JQpjTMgr8XrYU3uK2sYmt0O5wJo9R9lTe4p7Z4VWgV0gSxTGmJBX4myHEWy9iiXvVZI1Ip7PXxlaBXaBLFEYY0Le5aNTGJEQE1SPR911uJH39hwNyQK7QKEdvTHGANFRwrR8T1BNaC9dWxmyBXaBLFEYY8JCiddDdf0Zao6fcTsU6hqb+cPWg8wP0QK7QJYojDFhoaQweOYpzhfYzQjdJbH+LFEYY8LC+KwRpCfFuf4c7Y4CuxsnZFEQogV2gSxRGGPCQlSUUFzgobSiHt++ou74wwdOgd3MAtdiGGiWKIwxYaPY6+FQQxN7692Zp1BVlqz1FdhNL0h3JYbBYInCGBM2il2up1i9u47yMCiwC2SJwhgTNgoykhiZHO/ac7SXOk+wC/UCu0CWKIwxYUNEKPFmsKFy6OcpwqnALlB43Y0xJuIVF3g4euoce2pPDen3Xbq2kmGx0XxjWugX2AWyRGGMCSsd8xTry4du+KmusZk/fOArsEtNDP0Cu0CWKIwxYSU3PZHc9GFDup3HbzZU09Lezj0z8obsew4lSxTGmLBTUpDBxqpjtLUP/jyF/xPswqXALpAlCmNM2Cn2emg428Inh04O+vf6wwcHOBZmBXaBuk0UIrJMRGpF5CO/tkdEZJuIbBWRP4vIaKc9T0TOOu1bReSXfudMFpHtIlIuIk+Is8hYROJF5CWnfaOI5Pmdc7eI7HFedw/onRtjwtb5eYpBXibbUWB3+ejwKrAL1JMexbPAzQFt/6qqV6rqJOAN4Id+xypUdZLzus+v/SlgIVDkvDquuQA4rqqFwOPAYwAikg48DEwDpgIPi0haL+7NGBOhRiYn4M1MGvR5inAtsAvUbaJQ1TXAsYA2//5cEtDlQKCIZAPJqlqqvsXNy4HbnMO3As85718BbnB6GzcBb6vqMVU9DrzNpxOWMcZ0qtjrYVPVMVra2gfteyxdW8XI5Hg+d0V4FdgF6vMchYg8KiL7gW9wYY8iX0Q+EJHVIjLLaRsD1Ph9psZp6zi2H0BVW4EGwOPf3sk5gbEsFJEyESmrq6vr6y0ZY8JIiTeD0+fa2FbTMCjX33n4ZNgW2AXq892p6j+pai7wArDIaT4EjFXVq4HvAb8VkWSgsz5ZRy/kYse6OicwlqdVdYqqTsnMzOzNbRhjwtT0go59nwZnnmLpe1UMi40OiyfYdWcg0uBvga8AqGqzqtY77zcDFcB4fL2BHL9zcoCDzvsaIBdARGKAFHxDXefbOznHGGO6lJ4Ux6WjRgzK8ylqG5tYsTV8C+wC9SlRiEiR35dfBHY67ZkiEu28L8A3aV2pqoeARhGZ7sw/3AWscM5/HehY0TQfWOnMY7wFzBORNGcSe57TZowxPVLizaBs73GaWtoG9LrPb9gX1gV2gXqyPPZFoBS4RERqRGQB8BMR+UhEtuH7Bf53zsdnA9tE5EN8E9P3qWrHRPj9wBKgHF9P402nfSngEZFyfMNV3wdwznsE2OS8fux3LWOM6VaJ10Nzazsf7DsxYNf8a4HdyLAtsAsU090HVPWOTpqXXuSzrwKvXuRYGTCxk/Ym4KsXOWcZsKy7GI0xpjNTC9KJEiitrD9fW9Ffv3cK7O6dFR7Pw+6J8J6qN8ZEtOSEWK4YkzJgE9rt7crStVVMHJPMtPzwLbALZInCGBPWir0ZfLDvBGfOtfb7Wqv3OAV2MwvCusAukCUKY0xYK/F6aG1XNu093u9rLX3PV2B3yxXZAxBZ6LBEYYwJa1Py0oiNln4/R3vn4ZOsLY+MArtAkXW3xpiIkxgXw6Tc1H7PU0RSgV0gSxTGmLBX7M1g+4EGTja19On8jgK7r06JjAK7QJYojDFhr7jAQ7vC+5V9K8V6vrTjCXaRsyTWnyUKY0zYu3psKvExUX3adryppY3fbKjmxgkjyc9IGoTogp8lCmNM2EuIjWZKXlqfHmT02pYDHD/Twr0zI7M3AZYojDERorjAw87DjRw7fa7H5/gK7CqZOCaZqRFUYBfIEoUxJiIUezMA2NCL3WRX76mjou50xBXYBbJEYYyJCFfmpJAUF92r4ael71UxKjkh4grsAlmiMMZEhNjoKKbmp/d4QvuTQ5FbYBcosu/eGBNRir0eKutOc+RkU7efXbo2cgvsAlmiMMZEjBJnnqK77TxqTzaxYusBvjYlh5TE2KEILahZojDGRIwJ2cmkDIvtdp7iNxuqaW3XiC2wC2SJwhgTMaKjhGn56V0+R7vjCXY3ThhJXoQW2AWyRGGMiSglXg/7j51l/7EznR63ArtPs0RhjIkoJYUXn6foKLC7YkxKRBfYBbJEYYyJKEVZw8kYHtfp8NPq3U6B3az8iC6wC9RtohCRZSJSKyIf+bU9IiLbRGSriPxZREb7HfuBiJSLyC4RucmvfbKIbHeOPSHOfwURiReRl5z2jSKS53fO3SKyx3ndPWB3bYyJWCLC9AIP6yuOoqoXHFuyttIK7DrRkx7Fs8DNAW3/qqpXquok4A3ghwAichlwO3C5c86TIhLtnPMUsBAocl4d11wAHFfVQuBx4DHnWunAw8A0YCrwsIik9f4WjTHmQiXeDI6cbKby6OnzbR8fPMm68nq+NSOP2GgbbPHX7f8bqroGOBbQdtLvyySgIy3fCvxOVZtVtQooB6aKSDaQrKql6kvhy4Hb/M55znn/CnCD09u4CXhbVY+p6nHgbT6dsIwxpteKvR7gwnmKjgK7O661ArtAfU6bIvKoiOwHvoHTowDGAPv9PlbjtI1x3ge2X3COqrYCDYCni2t1FstCESkTkbK6urq+3pIxJkLkeRLJTkk4nyhqTzbx+odWYHcxfU4UqvpPqpoLvAAscpo7m/3RLtr7ek5gLE+r6hRVnZKZmdl14MaYiCciFHs9lFbW096uVmDXjYEYiPst8BXnfQ2Q63csBzjotOd00n7BOSISA6TgG+q62LWMMabfSrwZHDt9jg9rTvD8hmo+YwV2F9WnRCEiRX5ffhHY6bx/HbjdWcmUj2/S+n1VPQQ0ish0Z/7hLmCF3zkdK5rmAyudeYy3gHkikuZMYs9z2owxpt865in+1+8/8hXYzSpwOaLgFdPdB0TkReB6IENEavCtRLpFRC4B2oFq4D4AVd0hIi8DHwOtwIOq2uZc6n58K6iGAW86L4ClwG9EpBxfT+J251rHROQRYJPzuR+rat+ejG6MMQHGpA5jnCeRTw6d5MqcFK7Ns0WVF9NtolDVOzppXtrF5x8FHu2kvQyY2El7E/DVi1xrGbCsuxiNMaYvSrwequvPsGCmFdh1pdtEYYwx4errU8fR1q5WYNcNSxTGmIh1RU4KP51/ldthBD0rPzTGGNMlSxTGGGO6ZInCGGNMlyxRGGOM6ZIlCmOMMV2yRGGMMaZLliiMMcZ0yRKFMcaYLkngowBDnYjU4dt/qq8ygKMDFI6bwuU+wO4lWIXLvYTLfUD/7mWcqnb6nIawSxT9JSJlqjrF7Tj6K1zuA+xeglW43Eu43AcM3r3Y0JMxxpguWaIwxhjTJUsUn/a02wEMkHC5D7B7CVbhci/hch8wSPdicxTGGGO6ZD0KY4wxXbJEYYwxpkuWKBwiskxEakXkI7dj6Q8RyRWRVSLyiYjsEJG/czumvhKRBBF5X0Q+dO7l/3M7pv4QkWgR+UBE3nA7lv4Qkb0isl1EtopImdvx9IeIpIrIKyKy0/mZKXY7pr4QkUuc/x4dr5Mi8t8H7Po2R+EjIrOBU8ByVf3Us71DhYhkA9mqukVERgCbgdtU9WOXQ+s18T3EOElVT4lILLAW+DtV3eByaH0iIt8DpgDJqvp5t+PpKxHZC0xR1ZAvUhOR54D3VHWJiMQBiap6wuWw+kVEooEDwDRV7U/x8XnWo3Co6hrgmNtx9JeqHlLVLc77RuATYIy7UfWN+pxyvox1XiH5l42I5ACfA5a4HYvxEZFkYDawFEBVz4V6knDcAFQMVJIASxRhTUTygKuBjS6H0mfOcM1WoBZ4W1VD9V7+DfhHoN3lOAaCAn8Wkc0istDtYPqhAKgDfu0MCS4RkSS3gxoAtwMvDuQFLVGEKREZDrwK/HdVPel2PH2lqm2qOgnIAaaKSMgNC4rI54FaVd3sdiwDZIaqXgN8FnjQGbYNRTHANcBTqno1cBr4vrsh9Y8zfPZF4D8G8rqWKMKQM57/KvCCqr7mdjwDwRkSeBe42d1I+mQG8EVnbP93wFwRed7dkPpOVQ86/1sL/B6Y6m5EfVYD1Pj1Ul/BlzhC2WeBLap6ZCAvaokizDgTwEuBT1T1/7kdT3+ISKaIpDrvhwE3AjtdDaoPVPUHqpqjqnn4hgVWquo3XQ6rT0QkyVkkgTNMMw8IyZWCqnoY2C8ilzhNNwAht+gjwB0M8LAT+LpeBhCRF4HrgQwRqQEeVtWl7kbVJzOAO4Htztg+wP9S1T+6F1KfZQPPOas4ooCXVTWkl5aGgZHA731/jxAD/FZV/+RuSP3yEPCCM2RTCdzjcjx9JiKJwGeAbw/4tW15rDHGmK7Y0JMxxpguWaIwxhjTJUsUxhhjumSJwhhjTJcsURhjjOmSJQpjjDFdskRhwp6ItDlbL+9wtiz/nohEBXxmhYiUOu+zRKRKREb5HX9SRC66vYOIzHS2RN/pvBb6HfuRiBzw2wL6Jxe5xq0i8ge/r38gIuV+X39BRF533vtv9b1VRJ5w2p91Yu9oX++0f0tEFjvvo0TkOWdrfenV/5kmIlnBnYkEZ539ohCRLOC3QArwsNOWim/rhlMikq+qVSLyGPAz4Jsicg0wE5jc2cWdhPJbfNu5bxGRDOAtETmgqv/lfOxxVf1ZN3Gu58JnHhcDJ0Uky9kuowRY53d8zkW2+v4HVX3lIrEK8Et8O/Heo1ZIZXrAehQmoji/cBcCi/z+mv4K8J/49mG63Wl7GvCKyBxgMbBIVVsuctkHgWf9tnc/im+n2F5tMKeqdUCDiBQ6TWPw7dlV4nxdgi+Z9Me/Ax7gLlUNh51szRCwRGEijqpW4vu3n+U0deyP86LzHueX6P34flHvdp5XcjGX43tAlL8yp73Dd/2Gg27q4lrrgRJn/6E9wAbn6xjgSmCT32dX+V3zu37t/+rX/oJf+9fx9YpuV9XWLmIw5gI29GQilQCIyEigEFirqioirSIyUVU/UtWt4ns07pM9uFZnQzj+bT0ZegLf0FIJEA2UAu8DP8T3XJFdqtrk99neDj1tAS7Ft9vruk6OG9Mp61GYiCMiBUAbvoch/Q2QBlQ524Dn8dfhJ/A9aKi7IZod+B5x6m8yfduJdD2+RFEClDpPKUzAt2Flf3+57wS+BrwkIpd392FjOliiMBFFRDLxTeYudiZy7wBuVtU8ZxvwyVyYKHriF8C3RGSS8z08wGPAT/sQ4sfAaGAW8IHTthW4j/7PT6Cq651r/ZeIjO3v9UxksKEnEwmGOVuuxwKtwG+A/+c8KnYsvnkAAJwVTydFZFpPH7uqqodE5JvAM86zGgT4N1X9z94G6gx/bQRS/CbPS/FNwAcmilUi0ua836aqdznv/1VE/tnvcxc8WEhV33AS5p9EZJaq1vc2ThNZbJtxY4wxXbKhJ2OMMV2yoSdjeshZ1vpYQHOVqn6pD9f6PZAf0Pw/VfWtvsZnzGCxoSdjjDFdsqEnY4wxXbJEYYwxpkuWKIwxxnTJEoUxxpgu/f8f6zGN3c7xaAAAAABJRU5ErkJggg==\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "flights_df.groupby(['DAY_OF_WEEK'])['CANCELLED'].count().plot()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 102,
+ "id": "extensive-anatomy",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 102,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "flights_df.groupby(['MONTH'])['MONTH'].count().plot()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 103,
+ "id": "particular-corruption",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 103,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "flights_df.groupby(['AIRLINE'])['AIRLINE'].count().plot()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 104,
+ "id": "experienced-determination",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 104,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "flights_df.groupby(['ORIGIN_AIRPORT'])['ORIGIN_AIRPORT'].count().plot()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "statistical-software",
+ "metadata": {},
+ "source": [
+ "### 4. Подсчитайте для трёх выбранных авиакомпаний: количество рейсов, количество отменённых рейсов, количество перенаправленных рейсов."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 131,
+ "id": "contained-incident",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "147486"
+ ]
+ },
+ "execution_count": 131,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df[flights_df['AIRLINE'] == \"DL\"]['CANCELLED'].count()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 132,
+ "id": "liquid-financing",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "2861"
+ ]
+ },
+ "execution_count": 132,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df[flights_df['AIRLINE'] == \"DL\"]['CANCELLED'].sum()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 133,
+ "id": "christian-sport",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "255"
+ ]
+ },
+ "execution_count": 133,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df[flights_df['AIRLINE'] == \"DL\"]['DIVERTED'].sum()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 134,
+ "id": "separate-monitoring",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "97549"
+ ]
+ },
+ "execution_count": 134,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df[flights_df['AIRLINE'] == \"AA\"]['CANCELLED'].count()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 135,
+ "id": "noticed-drinking",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "4685"
+ ]
+ },
+ "execution_count": 135,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df[flights_df['AIRLINE'] == \"AA\"]['CANCELLED'].sum()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 136,
+ "id": "rubber-apollo",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "230"
+ ]
+ },
+ "execution_count": 136,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df[flights_df['AIRLINE'] == \"AA\"]['DIVERTED'].sum()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 137,
+ "id": "prime-particle",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "107099"
+ ]
+ },
+ "execution_count": 137,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df[flights_df['AIRLINE'] == \"OO\"]['CANCELLED'].count()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 138,
+ "id": "historic-indie",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "2983"
+ ]
+ },
+ "execution_count": 138,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df[flights_df['AIRLINE'] == \"OO\"]['CANCELLED'].sum()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 139,
+ "id": "governing-syracuse",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "378"
+ ]
+ },
+ "execution_count": 139,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df[flights_df['AIRLINE'] == \"OO\"]['DIVERTED'].sum()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "radio-complaint",
+ "metadata": {},
+ "source": [
+ "### 5. Определите скорость полёта для каждого рейса, скорость полёта среднюю для трёх выбранных авиакомпаний."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 143,
+ "id": "certified-startup",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0 514.082840\n",
+ "1 531.558935\n",
+ "2 517.894737\n",
+ "3 544.651163\n",
+ "4 436.582915\n",
+ " ... \n",
+ "1048570 390.000000\n",
+ "1048571 387.945205\n",
+ "1048572 469.909091\n",
+ "1048573 395.433071\n",
+ "1048574 NaN\n",
+ "Name: SPEED, Length: 1048575, dtype: float64"
+ ]
+ },
+ "execution_count": 143,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "flights_df['SPEED'] = flights_df['DISTANCE']/(flights_df['AIR_TIME']/60)\n",
+ "flights_df['SPEED']"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 144,
+ "id": "consistent-sapphire",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "359.7236985378757\n"
+ ]
+ }
+ ],
+ "source": [
+ "A = flights_df[flights_df['AIRLINE'] == \"OO\"]['SPEED'].count()\n",
+ "B = flights_df[flights_df['AIRLINE'] == \"OO\"]['SPEED'].sum()\n",
+ "print(B/A)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 145,
+ "id": "foster-mailing",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "431.1760555940942\n"
+ ]
+ }
+ ],
+ "source": [
+ "A = flights_df[flights_df['AIRLINE'] == \"AA\"]['SPEED'].count()\n",
+ "B = flights_df[flights_df['AIRLINE'] == \"AA\"]['SPEED'].sum()\n",
+ "print(B/A)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 146,
+ "id": "biblical-coverage",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "416.62848412320284\n"
+ ]
+ }
+ ],
+ "source": [
+ "A = flights_df[flights_df['AIRLINE'] == \"DL\"]['SPEED'].count()\n",
+ "B = flights_df[flights_df['AIRLINE'] == \"DL\"]['SPEED'].sum()\n",
+ "print(B/A)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "plastic-needle",
+ "metadata": {},
+ "source": [
+ "### 6. Визуализируйте тепловую карту частоты отмены рейсов. По одной оси – дни, по другой оси – рейс (для двух аэропортов)."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 153,
+ "id": "composed-suspect",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " YEAR | \n",
+ " MONTH | \n",
+ " DAY | \n",
+ " DAY_OF_WEEK | \n",
+ " AIRLINE | \n",
+ " FLIGHT_NUMBER | \n",
+ " TAIL_NUMBER | \n",
+ " ORIGIN_AIRPORT | \n",
+ " DESTINATION_AIRPORT | \n",
+ " SCHEDULED_DEPARTURE | \n",
+ " ... | \n",
+ " ARRIVAL_DELAY | \n",
+ " DIVERTED | \n",
+ " CANCELLED | \n",
+ " CANCELLATION_REASON | \n",
+ " AIR_SYSTEM_DELAY | \n",
+ " SECURITY_DELAY | \n",
+ " AIRLINE_DELAY | \n",
+ " LATE_AIRCRAFT_DELAY | \n",
+ " WEATHER_DELAY | \n",
+ " SPEED | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 154 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " EV | \n",
+ " 5230 | \n",
+ " N181PQ | \n",
+ " CID | \n",
+ " ATL | \n",
+ " 554 | \n",
+ " ... | \n",
+ " -17.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 495.714286 | \n",
+ "
\n",
+ " \n",
+ " | 312 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " MQ | \n",
+ " 3189 | \n",
+ " N532MQ | \n",
+ " CID | \n",
+ " DFW | \n",
+ " 600 | \n",
+ " ... | \n",
+ " NaN | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " B | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 355 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " OO | \n",
+ " 6378 | \n",
+ " N767SK | \n",
+ " CID | \n",
+ " ORD | \n",
+ " 600 | \n",
+ " ... | \n",
+ " -1.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 273.488372 | \n",
+ "
\n",
+ " \n",
+ " | 946 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " EV | \n",
+ " 5423 | \n",
+ " N724EV | \n",
+ " CID | \n",
+ " MSP | \n",
+ " 700 | \n",
+ " ... | \n",
+ " -9.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 314.285714 | \n",
+ "
\n",
+ " \n",
+ " | 1289 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " MQ | \n",
+ " 3197 | \n",
+ " N523MQ | \n",
+ " CID | \n",
+ " DFW | \n",
+ " 730 | \n",
+ " ... | \n",
+ " 0.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 387.735849 | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 1044186 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " EV | \n",
+ " 5230 | \n",
+ " N724EV | \n",
+ " CID | \n",
+ " ATL | \n",
+ " 600 | \n",
+ " ... | \n",
+ " 69.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " 69.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 447.741935 | \n",
+ "
\n",
+ " \n",
+ " | 1044943 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " MQ | \n",
+ " 3276 | \n",
+ " N521MQ | \n",
+ " CID | \n",
+ " ORD | \n",
+ " 643 | \n",
+ " ... | \n",
+ " 317.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 317.0 | \n",
+ " 267.272727 | \n",
+ "
\n",
+ " \n",
+ " | 1046773 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " MQ | \n",
+ " 3116 | \n",
+ " N678MQ | \n",
+ " CID | \n",
+ " ORD | \n",
+ " 827 | \n",
+ " ... | \n",
+ " NaN | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " B | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ " | 1047684 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " OO | \n",
+ " 6477 | \n",
+ " N750SK | \n",
+ " CID | \n",
+ " DEN | \n",
+ " 915 | \n",
+ " ... | \n",
+ " 258.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 258.0 | \n",
+ " 0.0 | \n",
+ " 428.041237 | \n",
+ "
\n",
+ " \n",
+ " | 1048574 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " MQ | \n",
+ " 2916 | \n",
+ " N539MQ | \n",
+ " CID | \n",
+ " ORD | \n",
+ " 1013 | \n",
+ " ... | \n",
+ " NaN | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " B | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1480 rows × 32 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " YEAR MONTH DAY DAY_OF_WEEK AIRLINE FLIGHT_NUMBER TAIL_NUMBER \\\n",
+ "154 2015 1 1 4 EV 5230 N181PQ \n",
+ "312 2015 1 1 4 MQ 3189 N532MQ \n",
+ "355 2015 1 1 4 OO 6378 N767SK \n",
+ "946 2015 1 1 4 EV 5423 N724EV \n",
+ "1289 2015 1 1 4 MQ 3197 N523MQ \n",
+ "... ... ... ... ... ... ... ... \n",
+ "1044186 2015 3 10 2 EV 5230 N724EV \n",
+ "1044943 2015 3 10 2 MQ 3276 N521MQ \n",
+ "1046773 2015 3 10 2 MQ 3116 N678MQ \n",
+ "1047684 2015 3 10 2 OO 6477 N750SK \n",
+ "1048574 2015 3 10 2 MQ 2916 N539MQ \n",
+ "\n",
+ " ORIGIN_AIRPORT DESTINATION_AIRPORT SCHEDULED_DEPARTURE ... \\\n",
+ "154 CID ATL 554 ... \n",
+ "312 CID DFW 600 ... \n",
+ "355 CID ORD 600 ... \n",
+ "946 CID MSP 700 ... \n",
+ "1289 CID DFW 730 ... \n",
+ "... ... ... ... ... \n",
+ "1044186 CID ATL 600 ... \n",
+ "1044943 CID ORD 643 ... \n",
+ "1046773 CID ORD 827 ... \n",
+ "1047684 CID DEN 915 ... \n",
+ "1048574 CID ORD 1013 ... \n",
+ "\n",
+ " ARRIVAL_DELAY DIVERTED CANCELLED CANCELLATION_REASON \\\n",
+ "154 -17.0 0 0 NaN \n",
+ "312 NaN 0 1 B \n",
+ "355 -1.0 0 0 NaN \n",
+ "946 -9.0 0 0 NaN \n",
+ "1289 0.0 0 0 NaN \n",
+ "... ... ... ... ... \n",
+ "1044186 69.0 0 0 NaN \n",
+ "1044943 317.0 0 0 NaN \n",
+ "1046773 NaN 0 1 B \n",
+ "1047684 258.0 0 0 NaN \n",
+ "1048574 NaN 0 1 B \n",
+ "\n",
+ " AIR_SYSTEM_DELAY SECURITY_DELAY AIRLINE_DELAY LATE_AIRCRAFT_DELAY \\\n",
+ "154 NaN NaN NaN NaN \n",
+ "312 NaN NaN NaN NaN \n",
+ "355 NaN NaN NaN NaN \n",
+ "946 NaN NaN NaN NaN \n",
+ "1289 NaN NaN NaN NaN \n",
+ "... ... ... ... ... \n",
+ "1044186 69.0 0.0 0.0 0.0 \n",
+ "1044943 0.0 0.0 0.0 0.0 \n",
+ "1046773 NaN NaN NaN NaN \n",
+ "1047684 0.0 0.0 0.0 258.0 \n",
+ "1048574 NaN NaN NaN NaN \n",
+ "\n",
+ " WEATHER_DELAY SPEED \n",
+ "154 NaN 495.714286 \n",
+ "312 NaN NaN \n",
+ "355 NaN 273.488372 \n",
+ "946 NaN 314.285714 \n",
+ "1289 NaN 387.735849 \n",
+ "... ... ... \n",
+ "1044186 0.0 447.741935 \n",
+ "1044943 317.0 267.272727 \n",
+ "1046773 NaN NaN \n",
+ "1047684 0.0 428.041237 \n",
+ "1048574 NaN NaN \n",
+ "\n",
+ "[1480 rows x 32 columns]"
+ ]
+ },
+ "execution_count": 153,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "ASD1 = flights_df[flights_df['ORIGIN_AIRPORT'] == 'CID']\n",
+ "ASD1"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 154,
+ "id": "criminal-gentleman",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CANCELLED | \n",
+ "
\n",
+ " \n",
+ " | DAY | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1480 rows × 1 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CANCELLED\n",
+ "DAY \n",
+ "1 0\n",
+ "1 1\n",
+ "1 0\n",
+ "1 0\n",
+ "1 0\n",
+ ".. ...\n",
+ "10 0\n",
+ "10 0\n",
+ "10 1\n",
+ "10 0\n",
+ "10 1\n",
+ "\n",
+ "[1480 rows x 1 columns]"
+ ]
+ },
+ "execution_count": 154,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "asdf1 = ASD1[['DAY', 'CANCELLED']].set_index('DAY')\n",
+ "asdf1"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 155,
+ "id": "adjusted-gospel",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "asd1 = sns.heatmap(asdf1)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 159,
+ "id": "thick-apache",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " YEAR | \n",
+ " MONTH | \n",
+ " DAY | \n",
+ " DAY_OF_WEEK | \n",
+ " AIRLINE | \n",
+ " FLIGHT_NUMBER | \n",
+ " TAIL_NUMBER | \n",
+ " ORIGIN_AIRPORT | \n",
+ " DESTINATION_AIRPORT | \n",
+ " SCHEDULED_DEPARTURE | \n",
+ " ... | \n",
+ " ARRIVAL_DELAY | \n",
+ " DIVERTED | \n",
+ " CANCELLED | \n",
+ " CANCELLATION_REASON | \n",
+ " AIR_SYSTEM_DELAY | \n",
+ " SECURITY_DELAY | \n",
+ " AIRLINE_DELAY | \n",
+ " LATE_AIRCRAFT_DELAY | \n",
+ " WEATHER_DELAY | \n",
+ " SPEED | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 170 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " AA | \n",
+ " 1205 | \n",
+ " N3FKAA | \n",
+ " EWR | \n",
+ " MIA | \n",
+ " 559 | \n",
+ " ... | \n",
+ " -13.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 436.912752 | \n",
+ "
\n",
+ " \n",
+ " | 176 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " UA | \n",
+ " 319 | \n",
+ " N498UA | \n",
+ " EWR | \n",
+ " MCO | \n",
+ " 600 | \n",
+ " ... | \n",
+ " -18.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 416.444444 | \n",
+ "
\n",
+ " \n",
+ " | 244 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " B6 | \n",
+ " 605 | \n",
+ " N766JB | \n",
+ " EWR | \n",
+ " FLL | \n",
+ " 600 | \n",
+ " ... | \n",
+ " -21.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 440.689655 | \n",
+ "
\n",
+ " \n",
+ " | 365 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " UA | \n",
+ " 1689 | \n",
+ " N39461 | \n",
+ " EWR | \n",
+ " SFO | \n",
+ " 601 | \n",
+ " ... | \n",
+ " -20.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 433.521127 | \n",
+ "
\n",
+ " \n",
+ " | 417 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " UA | \n",
+ " 1601 | \n",
+ " N37466 | \n",
+ " EWR | \n",
+ " FLL | \n",
+ " 606 | \n",
+ " ... | \n",
+ " -37.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 446.853147 | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 1048327 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " UA | \n",
+ " 1110 | \n",
+ " N75425 | \n",
+ " EWR | \n",
+ " LAS | \n",
+ " 1000 | \n",
+ " ... | \n",
+ " -24.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 439.539474 | \n",
+ "
\n",
+ " \n",
+ " | 1048328 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " UA | \n",
+ " 1170 | \n",
+ " N78509 | \n",
+ " EWR | \n",
+ " FLL | \n",
+ " 1000 | \n",
+ " ... | \n",
+ " 40.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 40.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 426.000000 | \n",
+ "
\n",
+ " \n",
+ " | 1048329 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " UA | \n",
+ " 1248 | \n",
+ " N24702 | \n",
+ " EWR | \n",
+ " BOS | \n",
+ " 1000 | \n",
+ " ... | \n",
+ " -18.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 307.692308 | \n",
+ "
\n",
+ " \n",
+ " | 1048458 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " EV | \n",
+ " 4364 | \n",
+ " N11187 | \n",
+ " EWR | \n",
+ " MCI | \n",
+ " 1005 | \n",
+ " ... | \n",
+ " 34.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " 34.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 394.698795 | \n",
+ "
\n",
+ " \n",
+ " | 1048459 | \n",
+ " 2015 | \n",
+ " 3 | \n",
+ " 10 | \n",
+ " 2 | \n",
+ " EV | \n",
+ " 4495 | \n",
+ " N14570 | \n",
+ " EWR | \n",
+ " SAV | \n",
+ " 1005 | \n",
+ " ... | \n",
+ " -1.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " NaN | \n",
+ " 375.929204 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
19608 rows × 32 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " YEAR MONTH DAY DAY_OF_WEEK AIRLINE FLIGHT_NUMBER TAIL_NUMBER \\\n",
+ "170 2015 1 1 4 AA 1205 N3FKAA \n",
+ "176 2015 1 1 4 UA 319 N498UA \n",
+ "244 2015 1 1 4 B6 605 N766JB \n",
+ "365 2015 1 1 4 UA 1689 N39461 \n",
+ "417 2015 1 1 4 UA 1601 N37466 \n",
+ "... ... ... ... ... ... ... ... \n",
+ "1048327 2015 3 10 2 UA 1110 N75425 \n",
+ "1048328 2015 3 10 2 UA 1170 N78509 \n",
+ "1048329 2015 3 10 2 UA 1248 N24702 \n",
+ "1048458 2015 3 10 2 EV 4364 N11187 \n",
+ "1048459 2015 3 10 2 EV 4495 N14570 \n",
+ "\n",
+ " ORIGIN_AIRPORT DESTINATION_AIRPORT SCHEDULED_DEPARTURE ... \\\n",
+ "170 EWR MIA 559 ... \n",
+ "176 EWR MCO 600 ... \n",
+ "244 EWR FLL 600 ... \n",
+ "365 EWR SFO 601 ... \n",
+ "417 EWR FLL 606 ... \n",
+ "... ... ... ... ... \n",
+ "1048327 EWR LAS 1000 ... \n",
+ "1048328 EWR FLL 1000 ... \n",
+ "1048329 EWR BOS 1000 ... \n",
+ "1048458 EWR MCI 1005 ... \n",
+ "1048459 EWR SAV 1005 ... \n",
+ "\n",
+ " ARRIVAL_DELAY DIVERTED CANCELLED CANCELLATION_REASON \\\n",
+ "170 -13.0 0 0 NaN \n",
+ "176 -18.0 0 0 NaN \n",
+ "244 -21.0 0 0 NaN \n",
+ "365 -20.0 0 0 NaN \n",
+ "417 -37.0 0 0 NaN \n",
+ "... ... ... ... ... \n",
+ "1048327 -24.0 0 0 NaN \n",
+ "1048328 40.0 0 0 NaN \n",
+ "1048329 -18.0 0 0 NaN \n",
+ "1048458 34.0 0 0 NaN \n",
+ "1048459 -1.0 0 0 NaN \n",
+ "\n",
+ " AIR_SYSTEM_DELAY SECURITY_DELAY AIRLINE_DELAY LATE_AIRCRAFT_DELAY \\\n",
+ "170 NaN NaN NaN NaN \n",
+ "176 NaN NaN NaN NaN \n",
+ "244 NaN NaN NaN NaN \n",
+ "365 NaN NaN NaN NaN \n",
+ "417 NaN NaN NaN NaN \n",
+ "... ... ... ... ... \n",
+ "1048327 NaN NaN NaN NaN \n",
+ "1048328 0.0 0.0 40.0 0.0 \n",
+ "1048329 NaN NaN NaN NaN \n",
+ "1048458 34.0 0.0 0.0 0.0 \n",
+ "1048459 NaN NaN NaN NaN \n",
+ "\n",
+ " WEATHER_DELAY SPEED \n",
+ "170 NaN 436.912752 \n",
+ "176 NaN 416.444444 \n",
+ "244 NaN 440.689655 \n",
+ "365 NaN 433.521127 \n",
+ "417 NaN 446.853147 \n",
+ "... ... ... \n",
+ "1048327 NaN 439.539474 \n",
+ "1048328 0.0 426.000000 \n",
+ "1048329 NaN 307.692308 \n",
+ "1048458 0.0 394.698795 \n",
+ "1048459 NaN 375.929204 \n",
+ "\n",
+ "[19608 rows x 32 columns]"
+ ]
+ },
+ "execution_count": 159,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "ASD2 = flights_df[flights_df['ORIGIN_AIRPORT'] == 'EWR']\n",
+ "ASD2"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 160,
+ "id": "theoretical-symposium",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CANCELLED | \n",
+ "
\n",
+ " \n",
+ " | DAY | \n",
+ " | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 0 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
19608 rows × 1 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CANCELLED\n",
+ "DAY \n",
+ "1 0\n",
+ "1 0\n",
+ "1 0\n",
+ "1 0\n",
+ "1 0\n",
+ ".. ...\n",
+ "10 0\n",
+ "10 0\n",
+ "10 0\n",
+ "10 0\n",
+ "10 0\n",
+ "\n",
+ "[19608 rows x 1 columns]"
+ ]
+ },
+ "execution_count": 160,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "asdf2 = ASD2[['DAY', 'CANCELLED']].set_index('DAY')\n",
+ "asdf2"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 161,
+ "id": "handled-lodge",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "asd2 = sns.heatmap(asdf2)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "extensive-fortune",
+ "metadata": {},
+ "source": [
+ "### 7. Визуализируйте время задержки отправки и прибытия по трём аэропортам."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 162,
+ "id": "everyday-assessment",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 162,
+ "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[df['AIRLINE'] == \"AS\"]['DEPARTURE_DELAY'].hist(bins=30)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 163,
+ "id": "rapid-petersburg",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 163,
+ "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[df['AIRLINE'] == \"AS\"]['ARRIVAL_DELAY'].hist(bins=30)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 164,
+ "id": "focused-assurance",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 164,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYQAAAD4CAYAAADsKpHdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAa+ElEQVR4nO3df2xd9Znn8fenCW2zuIQwMFaURJOMiKoBsk0bK6RiGdkNO3goaqgEkiumJGpGqVAqtRpWSzIj7bSqog0rUXYRJdq06RCgU5OlZYmgmRkUsKqugDRpoU6ALGaxqJNMsrThh9GANumzf5zH2xtz43t9HV9/2X5e0tU99znne+/nmDaPzw/fryICMzOzD810ADMzK4MbgpmZAW4IZmaW3BDMzAxwQzAzszR7pgO06uKLL47FixdP++e88847nH/++dP+Oa0qPR+Un7H0fFB+xtLzQfkZ25XvwIEDr0fEJXVXRsQH8rFixYpoh6eeeqotn9Oq0vNFlJ+x9HwR5WcsPV9E+RnblQ/YH2f5d9WnjMzMDPA1BDMzS24IZmYGuCGYmVlyQzAzM8ANwczMkhuCmZkBbghmZpbcEMzMDPgAf3XFVCze9HhT2w1v/ew0JzEzK4ePEMzMDHBDMDOz5IZgZmaAG4KZmSU3BDMzA9wQzMwsuSGYmRkwiYYgaZakX0h6LF9fJOkJSS/n87yabTdLGpJ0WNK1NfUVkgZz3d2SlPWPSHoo689KWnwO99HMzJowmSOErwIv1rzeBOyNiKXA3nyNpMuAPuByoBe4V9KsHLMN2AAszUdv1tcDJyPiUuAu4I6W9sbMzFrWVEOQtBD4LPDdmvIaYGcu7wRuqKn3R8R7EfEqMASslDQfuCAins55Pe8fN2bsvR4GVo8dPZiZWXuo+re5wUbSw8B/BD4G/LuIuF7SGxFxYc02JyNinqR7gGci4sGs7wD2AMPA1oi4JutXA7fnex0EeiNiJNe9AlwZEa+Py7GB6giDzs7OFf39/S3t9OCRN5vabtmCuYyOjtLR0dHS57RD6fmg/Iyl54PyM5aeD8rP2K58PT09ByKiq966ht9lJOl64EREHJDU3cTn1fvNPiaoTzTmzELEdmA7QFdXV3R3NxPn/dY1+11GN3czMDBAq5/TDqXng/Izlp4Pys9Yej4oP2MJ+Zr5crurgM9Jug74KHCBpAeB45LmR8SxPB10IrcfARbVjF8IHM36wjr12jEjkmYDc4HftLhPZmbWgobXECJic0QsjIjFVBeLn4yIvwB2A2tzs7XAo7m8G+jLO4eWUF083hcRx4C3Ja3K6wO3jBsz9l435mc0PpdlZmbnzFS+/norsEvSeuA14CaAiDgkaRfwAnAK2BgRp3PMrcB9wByq6wp7sr4DeEDSENWRQd8UcpmZWQsm1RAiYgAYyOVfA6vPst0WYEud+n7gijr1d8mGYmZmM8N/qWxmZoAbgpmZJTcEMzMD3BDMzCy5IZiZGeCGYGZmyQ3BzMwANwQzM0tuCGZmBrghmJlZckMwMzPADcHMzJIbgpmZAW4IZmaW3BDMzAxwQzAzs9SwIUj6qKR9kp6XdEjSN7L+dUlHJD2Xj+tqxmyWNCTpsKRra+orJA3murtzKk1yus2Hsv6spMXTsK9mZjaBZo4Q3gM+ExGfAJYDvZJW5bq7ImJ5Pn4MIOkyqikwLwd6gXslzcrttwEbqOZZXprrAdYDJyPiUuAu4I4p75mZmU1Kw4YQldF8eV4+YoIha4D+iHgvIl4FhoCVkuYDF0TE0xERwP3ADTVjdubyw8DqsaMHMzNrD1X/NjfYqPoN/wBwKfDtiLhd0teBdcBbwH7gtog4Keke4JmIeDDH7gD2AMPA1oi4JutXA7dHxPWSDgK9ETGS614BroyI18fl2EB1hEFnZ+eK/v7+lnZ68MibTW23bMFcRkdH6ejoaOlz2qH0fFB+xtLzQfkZS88H5WdsV76enp4DEdFVb93sZt4gIk4DyyVdCDwi6Qqq0z/fpDpa+CZwJ/AloN5v9jFBnQbranNsB7YDdHV1RXd3dzPx32fdpseb2m745m4GBgZo9XPaofR8UH7G0vNB+RlLzwflZywh36TuMoqIN4ABqt/mj0fE6Yj4LfAdYGVuNgIsqhm2EDia9YV16meMkTQbmAv8ZjLZzMxsapq5y+iSPDJA0hzgGuClvCYw5vPAwVzeDfTlnUNLqC4e74uIY8Dbklbl9YFbgEdrxqzN5RuBJ6OZc1lmZnbONHPKaD6wM68jfAjYFRGPSXpA0nKqUzvDwJcBIuKQpF3AC8ApYGOecgK4FbgPmEN1XWFP1ncAD0gaojoy6Jv6rpmZ2WQ0bAgR8Uvgk3XqX5xgzBZgS536fuCKOvV3gZsaZTEzs+njv1Q2MzPADcHMzJIbgpmZAW4IZmaW3BDMzAxwQzAzs+SGYGZmgBuCmZklNwQzMwPcEMzMLLkhmJkZ4IZgZmbJDcHMzAA3BDMzS24IZmYGNDdj2kcl7ZP0vKRDkr6R9YskPSHp5XyeVzNms6QhSYclXVtTXyFpMNfdnTOnkbOrPZT1ZyUtnoZ9NTOzCTRzhPAe8JmI+ASwHOiVtArYBOyNiKXA3nyNpMuoZjy7HOgF7s3Z1gC2ARuoptVcmusB1gMnI+JS4C7gjqnvmpmZTUbDhhCV0Xx5Xj4CWAPszPpO4IZcXgP0R8R7EfEqMASszDmYL4iIp3O+5PvHjRl7r4eB1WNHD2Zm1h5qZi77/A3/AHAp8O2IuF3SGxFxYc02JyNinqR7gGci4sGs76CaO3kY2BoR12T9auD2iLhe0kGgNyJGct0rwJUR8fq4HBuojjDo7Oxc0d/f39JODx55s6ntli2Yy+joKB0dHS19TjuUng/Kz1h6Pig/Y+n5oPyM7crX09NzICK66q1rOKcyQEScBpZLuhB4RNL75kWuUe83+5igPtGY8Tm2A9sBurq6oru7e4IYZ7du0+NNbTd8czcDAwO0+jntUHo+KD9j6fmg/Iyl54PyM5aQb1J3GUXEG8AA1bn/43kaiHw+kZuNAItqhi0EjmZ9YZ36GWMkzQbmAr+ZTDYzM5uaZu4yuiSPDJA0B7gGeAnYDazNzdYCj+bybqAv7xxaQnXxeF9EHAPelrQqrw/cMm7M2HvdCDwZzZzLMjOzc6aZU0bzgZ15HeFDwK6IeEzS08AuSeuB14CbACLikKRdwAvAKWBjnnICuBW4D5hDdV1hT9Z3AA9IGqI6Mug7FztnZmbNa9gQIuKXwCfr1H8NrD7LmC3Aljr1/cD7rj9ExLtkQzEzs5nhv1Q2MzPADcHMzJIbgpmZAW4IZmaW3BDMzAxwQzAzs+SGYGZmgBuCmZklNwQzMwPcEMzMLLkhmJkZ4IZgZmbJDcHMzAA3BDMzS24IZmYGuCGYmVlqZgrNRZKekvSipEOSvpr1r0s6Ium5fFxXM2azpCFJhyVdW1NfIWkw192dU2mS020+lPVnJS2ehn01M7MJNHOEcAq4LSL+BFgFbJR0Wa67KyKW5+PHALmuD7gc6AXuzek3AbYBG6jmWV6a6wHWAycj4lLgLuCOqe+amZlNRsOGEBHHIuLnufw28CKwYIIha4D+iHgvIl4FhoCVkuYDF0TE0xERwP3ADTVjdubyw8DqsaMHMzNrD1X/Nje5cXUq5ydU8yL/FbAOeAvYT3UUcVLSPcAzEfFgjtkB7AGGga0RcU3WrwZuj4jrJR0EeiNiJNe9AlwZEa+P+/wNVEcYdHZ2rujv729ppwePvNnUdssWzGV0dJSOjo6WPqcdSs8H5WcsPR+Un7H0fFB+xnbl6+npORARXfXWzW72TSR1AD8EvhYRb0naBnwTiHy+E/gSUO83+5igToN1vytEbAe2A3R1dUV3d3ez8c+wbtPjTW03fHM3AwMDtPo57VB6Pig/Y+n5oPyMpeeD8jOWkK+pu4wknUfVDL4fET8CiIjjEXE6In4LfAdYmZuPAItqhi8EjmZ9YZ36GWMkzQbmAr9pZYfMzKw1zdxlJGAH8GJEfKumPr9ms88DB3N5N9CXdw4tobp4vC8ijgFvS1qV73kL8GjNmLW5fCPwZEzmXJaZmU1ZM6eMrgK+CAxKei5rfw18QdJyqlM7w8CXASLikKRdwAtUdyhtjIjTOe5W4D5gDtV1hT1Z3wE8IGmI6sigbyo7ZWZmk9ewIUTET6l/jv/HE4zZAmypU99PdUF6fP1d4KZGWczMbPr4L5XNzAxwQzAzs+SGYGZmgBuCmZklNwQzMwPcEMzMLLkhmJkZ4IZgZmbJDcHMzAA3BDMzS24IZmYGuCGYmVlyQzAzM8ANwczMkhuCmZkBzc2YtkjSU5JelHRI0lezfpGkJyS9nM/zasZsljQk6bCka2vqKyQN5rq7c+Y0cna1h7L+rKTF07CvZmY2gWaOEE4Bt0XEnwCrgI2SLgM2AXsjYimwN1+T6/qAy4Fe4F5Js/K9tgEbqKbVXJrrAdYDJyPiUuAu4I5zsG9mZjYJDRtCRByLiJ/n8tvAi8ACYA2wMzfbCdyQy2uA/oh4LyJeBYaAlTkH8wUR8XTOl3z/uDFj7/UwsHrs6MHMzNpDk5nLPk/l/IRqGszXIuLCmnUnI2KepHuAZyLiwazvoJo7eRjYGhHXZP1q4PaIuF7SQaA3IkZy3SvAlRHx+rjP30B1hEFnZ+eK/v7+lnZ68MibTW23bMFcRkdH6ejoaOlz2qH0fFB+xtLzQfkZS88H5WdsV76enp4DEdFVb13DOZXHSOoAfgh8LSLemuAX+HorYoL6RGPOLERsB7YDdHV1RXd3d4PU9a3b9HhzGw6+w23LTnPnT99puOnw1s+2lGWqBgYGaPXn0C6lZyw9H5SfsfR8UH7GEvI1dZeRpPOomsH3I+JHWT6ep4HI5xNZHwEW1QxfCBzN+sI69TPGSJoNzAV+M9mdMTOz1jVzl5GAHcCLEfGtmlW7gbW5vBZ4tKbel3cOLaG6eLwvIo4Bb0tale95y7gxY+91I/BkTOZclpmZTVkzp4yuAr4IDEp6Lmt/DWwFdklaD7wG3AQQEYck7QJeoLpDaWNEnM5xtwL3AXOorivsyfoO4AFJQ1RHBn1T2y0zM5ushg0hIn5K/XP8AKvPMmYLsKVOfT/VBenx9XfJhmJmZjPDf6lsZmaAG4KZmSU3BDMzA9wQzMwsuSGYmRnghmBmZskNwczMADcEMzNLbghmZga4IZiZWXJDMDMzwA3BzMySG4KZmQFuCGZmltwQzMwMaG7GtO9JOiHpYE3t65KOSHouH9fVrNssaUjSYUnX1tRXSBrMdXfnrGnkzGoPZf1ZSYvP8T6amVkTmjlCuA/orVO/KyKW5+PHAJIuo5rt7PIcc6+kWbn9NmAD1ZSaS2vecz1wMiIuBe4C7mhxX8zMbAoaNoSI+AnNT3i/BuiPiPci4lVgCFgpaT5wQUQ8nXMl3w/cUDNmZy4/DKweO3owM7P2mco1hK9I+mWeUpqXtQXAr2q2GcnaglweXz9jTEScAt4E/mAKuczMrAUN51Q+i23AN4HI5zuBL1F/7uWYoE6DdWeQtIHqtBOdnZ0MDAxMKvSY25adanrbzjnNbd9qlqkaHR2dsc9uVukZS88H5WcsPR+Un7GEfC01hIg4PrYs6TvAY/lyBFhUs+lC4GjWF9ap144ZkTQbmMtZTlFFxHZgO0BXV1d0d3e3Ep91mx5vetvblp3izsHGP6bhm1vLMlUDAwO0+nNol9Izlp4Pys9Yej4oP2MJ+Vo6ZZTXBMZ8Hhi7A2k30Jd3Di2huni8LyKOAW9LWpXXB24BHq0ZszaXbwSezOsMZmbWRg1/9ZX0A6AbuFjSCPC3QLek5VSndoaBLwNExCFJu4AXgFPAxog4nW91K9UdS3OAPfkA2AE8IGmI6sig7xzsl5mZTVLDhhARX6hT3jHB9luALXXq+4Er6tTfBW5qlMPMzKaX/1LZzMwANwQzM0tuCGZmBrghmJlZckMwMzPADcHMzJIbgpmZAW4IZmaW3BDMzAxwQzAzs+SGYGZmgBuCmZklNwQzMwPcEMzMLLkhmJkZ4IZgZmapYUOQ9D1JJyQdrKldJOkJSS/n87yadZslDUk6LOnamvoKSYO57u6cSpOcbvOhrD8rafE53kczM2tCM0cI9wG942qbgL0RsRTYm6+RdBnVFJiX55h7Jc3KMduADVTzLC+tec/1wMmIuBS4C7ij1Z0xM7PWNWwIEfETqrmOa60BdubyTuCGmnp/RLwXEa8CQ8BKSfOBCyLi6YgI4P5xY8be62Fg9djRg5mZtY+qf58bbFSdxnksIq7I129ExIU1609GxDxJ9wDPRMSDWd8B7AGGga0RcU3WrwZuj4jr81RUb0SM5LpXgCsj4vU6OTZQHWXQ2dm5or+/v6WdHjzyZtPbds6B4//SeLtlC+a2lGWqRkdH6ejomJHPblbpGUvPB+VnLD0flJ+xXfl6enoORERXvXWzz/Fn1fvNPiaoTzTm/cWI7cB2gK6uruju7m4hIqzb9HjT29627BR3Djb+MQ3f3FqWqRoYGKDVn0O7lJ6x9HxQfsbS80H5GUvI1+pdRsfzNBD5fCLrI8Cimu0WAkezvrBO/YwxkmYDc3n/KSozM5tmrTaE3cDaXF4LPFpT78s7h5ZQXTzeFxHHgLclrcrrA7eMGzP2XjcCT0Yz57HMzOycanguRNIPgG7gYkkjwN8CW4FdktYDrwE3AUTEIUm7gBeAU8DGiDidb3Ur1R1Lc6iuK+zJ+g7gAUlDVEcGfedkz8zMbFIaNoSI+MJZVq0+y/ZbgC116vuBK+rU3yUbipmZzRz/pbKZmQFuCGZmltwQzMwMcEMwM7PkhmBmZoAbgpmZJTcEMzMD3BDMzCy5IZiZGeCGYGZmyQ3BzMwANwQzM0tuCGZmBrghmJlZckMwMzNgig1B0rCkQUnPSdqftYskPSHp5XyeV7P9ZklDkg5LuramviLfZ0jS3TmrmpmZtdG5OELoiYjlEdGVrzcBeyNiKbA3XyPpMqrZ0C4HeoF7Jc3KMduADVRTbi7N9WZm1kbTccpoDbAzl3cCN9TU+yPivYh4FRgCVkqaD1wQEU/nXMr314wxM7M20VTms5f0KnASCOC/RsR2SW9ExIU125yMiHmS7gGeiYgHs76Dal7lYWBrRFyT9auB2yPi+jqft4HqSILOzs4V/f39LeUePPJm09t2zoHj/9J4u2UL5raUZapGR0fp6OiYkc9uVukZS88H5WcsPR+Un7Fd+Xp6eg7UnNE5Q8M5lRu4KiKOSvpD4AlJL02wbb3rAjFB/f3FiO3AdoCurq7o7u6eZNzKuk2PN73tbctOcedg4x/T8M2tZZmqgYEBWv05tEvpGUvPB+VnLD0flJ+xhHxTOmUUEUfz+QTwCLASOJ6ngcjnE7n5CLCoZvhC4GjWF9apm5lZG7XcECSdL+ljY8vAnwEHgd3A2txsLfBoLu8G+iR9RNISqovH+yLiGPC2pFV5d9EtNWPMzKxNpnLKqBN4JO8QnQ38fUT8g6SfAbskrQdeA24CiIhDknYBLwCngI0RcTrf61bgPmAO1XWFPVPIZWZmLWi5IUTE/wI+Uaf+a2D1WcZsAbbUqe8Hrmg1SwkWN3ldYnjrZ6c5iZlZa/yXymZmBrghmJlZckMwMzPADcHMzJIbgpmZAW4IZmaW3BDMzAxwQzAzs+SGYGZmgBuCmZmlqX79tU2Sv+LCzErlIwQzMwPcEMzMLLkhmJkZ4GsIxWr2WsN9vedPcxIz+33hIwQzMwMKOkKQ1Av8F2AW8N2I2DrDkT4QBo+8ybomjiZ815KZNVJEQ5A0C/g28G+BEeBnknZHxAszm+z/H77d1cwaKaIhACuBoZyWE0n9wBqq+ZetjZptHJNx27JTPoox+wBQRMx0BiTdCPRGxF/m6y8CV0bEV8ZttwHYkC8/DhxuQ7yLgdfb8DmtKj0flJ+x9HxQfsbS80H5GduV748i4pJ6K0o5QlCd2vs6VURsB7ZPf5zfkbQ/Irra+ZmTUXo+KD9j6fmg/Iyl54PyM5aQr5S7jEaARTWvFwJHZyiLmdnvpVIaws+ApZKWSPow0AfsnuFMZma/V4o4ZRQRpyR9BfhHqttOvxcRh2Y41pi2nqJqQen5oPyMpeeD8jOWng/Kzzjj+Yq4qGxmZjOvlFNGZmY2w9wQzMwMcEM4K0m9kg5LGpK0aQZzfE/SCUkHa2oXSXpC0sv5PK9m3ebMfFjStW3It0jSU5JelHRI0ldLyijpo5L2SXo+832jpHzjss6S9AtJj5WWUdKwpEFJz0naX1q+/MwLJT0s6aX83+OnS8ko6eP5sxt7vCXpa6Xk+38iwo9xD6oL268Afwx8GHgeuGyGsvwp8CngYE3tPwGbcnkTcEcuX5ZZPwIsyX2YNc355gOfyuWPAf8zcxSRkepvXDpy+TzgWWBVKfnGZf0r4O+Bxwr87zwMXDyuVky+/NydwF/m8oeBC0vLmJ89C/hn4I9KyzftO/9BfACfBv6x5vVmYPMM5lnMmQ3hMDA/l+cDh+vlpLpr69Ntzvoo1XdSFZcR+FfAz4ErS8tH9bc3e4HP1DSEYjKepSGUlO8C4FXyRpkSM9Z81p8B/6PEfD5lVN8C4Fc1r0eyVorOiDgGkM9/mPUZzS1pMfBJqt/Ci8mYp2KeA04AT0REUfnSfwb+PfDbmlpJGQP4J0kH8itkSsv3x8D/Bv4uT7t9V9L5hWUc0wf8IJeLyueGUF9TX6VRoBnLLakD+CHwtYh4a6JN69SmNWNEnI6I5VS/ha+UdMUEm7c9n6TrgRMRcaDZIXVq0/3f+aqI+BTw58BGSX86wbYzkW821anVbRHxSeAdqlMwZzMj/1/JP7z9HPDfGm1apzbt+dwQ6iv9qzSOS5oPkM8nsj4juSWdR9UMvh8RPyoxI0BEvAEMAL2F5bsK+JykYaAf+IykB0vKGBFH8/kE8AjVNxQXky8/cySP/gAepmoQJWWEqqH+PCKO5+ui8rkh1Ff6V2nsBtbm8lqq8/Zj9T5JH5G0BFgK7JvOIJIE7ABejIhvlZZR0iWSLszlOcA1wEul5AOIiM0RsTAiFlP9b+3JiPiLUjJKOl/Sx8aWqc6BHywlH0BE/DPwK0kfz9Jqqq/PLyZj+gK/O100lqOcfO24iPJBfADXUd0x8wrwNzOY4wfAMeD/UP3WsB74A6oLkC/n80U12/9NZj4M/Hkb8v0bqkPZXwLP5eO6UjIC/xr4ReY7CPyHrBeRr07ebn53UbmIjFTn55/Px6Gx/z+Ukq/mM5cD+/O/9X8H5pWUkeqmhl8Dc2tqxeSLCH91hZmZVXzKyMzMADcEMzNLbghmZga4IZiZWXJDMDMzwA3BzMySG4KZmQHwfwEJH0GBDjQxZAAAAABJRU5ErkJggg==\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "df[df['AIRLINE'] == \"US\"]['DEPARTURE_DELAY'].hist(bins=30)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 165,
+ "id": "whole-palmer",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 165,
+ "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[df['AIRLINE'] == \"US\"]['ARRIVAL_DELAY'].hist(bins=30)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 166,
+ "id": "framed-focus",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 166,
+ "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[df['AIRLINE'] == \"B6\"]['DEPARTURE_DELAY'].hist(bins=30)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 167,
+ "id": "broke-contrast",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 167,
+ "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[df['AIRLINE'] == \"B6\"]['ARRIVAL_DELAY'].hist(bins=30)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "australian-acceptance",
+ "metadata": {},
+ "source": [
+ "### 8. Для трёх выбранных аэропортов визуализируйте задержки по каждой причине."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 168,
+ "id": "infrared-chaos",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 168,
+ "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[df['AIRLINE'] == \"AS\"]['AIR_SYSTEM_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 169,
+ "id": "valid-mainstream",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 169,
+ "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[df['AIRLINE'] == \"AS\"]['SECURITY_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 170,
+ "id": "logical-partnership",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 170,
+ "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[df['AIRLINE'] == \"AS\"]['AIRLINE_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 171,
+ "id": "endangered-reputation",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 171,
+ "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[df['AIRLINE'] == \"AS\"]['LATE_AIRCRAFT_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 172,
+ "id": "synthetic-nashville",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 172,
+ "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[df['AIRLINE'] == \"AS\"]['WEATHER_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ahead-federation",
+ "metadata": {},
+ "source": [
+ "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 173,
+ "id": "universal-commerce",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 173,
+ "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[df['AIRLINE'] == \"OO\"]['AIR_SYSTEM_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 174,
+ "id": "unusual-angle",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 174,
+ "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[df['AIRLINE'] == \"OO\"]['SECURITY_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 175,
+ "id": "satisfactory-invite",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 175,
+ "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[df['AIRLINE'] == \"OO\"]['AIRLINE_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 176,
+ "id": "precise-particular",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 176,
+ "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[df['AIRLINE'] == \"OO\"]['LATE_AIRCRAFT_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 177,
+ "id": "included-plain",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 177,
+ "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[df['AIRLINE'] == \"OO\"]['WEATHER_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "accessory-insured",
+ "metadata": {},
+ "source": [
+ "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 178,
+ "id": "arbitrary-subject",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 178,
+ "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[df['AIRLINE'] == \"EV\"]['AIR_SYSTEM_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 179,
+ "id": "verbal-horizontal",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 179,
+ "metadata": {},
+ "output_type": "execute_result"
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYQAAAD4CAYAAADsKpHdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAASOElEQVR4nO3dbYxc5XnG8f9VnFKLlJSXZuvabo0UfwgvCSlbaolK3ZS2OKSqiQSSEQVXQXJCSEUkSy2kUhMpsgQfCBGo0DolwqQ0YJGktlJoSyGrKAovMSmKY1zKKrjBwQIlQQRHgmbJ3Q/zWBqWtXd2d3bW6/n/pNGcuc95ju9nR/Y158zZ41QVkiT90mI3IEk6NhgIkiTAQJAkNQaCJAkwECRJzbLFbmCuTj/99FqzZs1itzFrP/vZzzjppJMWu42BGrY5D9t8wTkvJU8++eSPqurXp1u3ZANhzZo17N69e7HbmLXx8XHGxsYWu42BGrY5D9t8wTkvJUn+90jrPGUkSQIMBElSYyBIkgADQZLUGAiSJMBAkCQ1BoIkCTAQJEmNgSBJApbwbypLx6o9P3yFv7j+X+c8fv+NH+xjN1LvPEKQJAEGgiSpMRAkSYCBIElqZgyEJKuTfD3JviR7k1zX6p9O8sMkT7XHxV1jbkgykeSZJBd11c9LsqetuzVJWv3EJPe1+uNJ1izAXCVJR9HLEcIksKWq3g2sA65NcmZbd0tVndseDwC0dRuBs4D1wO1JTmjb3wFsBta2x/pWvxp4uareBdwC3DT/qUmSZmPGQKiqg1X1nbb8KrAPWHmUIRuAe6vq9ap6DpgAzk+yAji5qh6tqgLuBi7pGrO9Ld8PXHj46EGSNBiz+g6hncp5H/B4K308yXeTfCHJKa22Eni+a9iBVlvZlqfW3zSmqiaBV4DTZtObJGl+ev7FtCRvB74MfKKqfprkDuAzQLXnm4EPA9N9sq+j1JlhXXcPm+mccmJkZITx8fFe2z9mHDp0aEn2PR/DNueR5bDlnMk5j1+KP6the4/h+JxzT4GQ5G10wuCeqvoKQFW92LX+88DX2ssDwOqu4auAF1p91TT17jEHkiwD3gH8ZGofVbUN2AYwOjpaS/H/M12q/w/rfAzbnG+7Zyc375n7TQD2XzHWv2YGZNjeYzg+59zLVUYB7gT2VdVnu+orujb7EPC9trwL2NiuHDqDzpfHT1TVQeDVJOvaPq8CdnaN2dSWLwUead8zSJIGpJePMRcAVwJ7kjzVap8ELk9yLp1TO/uBjwBU1d4kO4Cn6VyhdG1VvdHGXQPcBSwHHmwP6ATOF5NM0Dky2DifSUmSZm/GQKiqbzL9Of4HjjJmK7B1mvpu4Oxp6q8Bl83UiyRp4fibypIkwECQJDUGgiQJMBAkSY2BIEkCDARJUmMgSJIAA0GS1BgIkiTAQJAkNQaCJAkwECRJjYEgSQIMBElSYyBIkgADQZLUGAiSJMBAkCQ1BoIkCTAQJEmNgSBJAgwESVJjIEiSAANBktQYCJIkwECQJDUGgiQJMBAkSY2BIEkCDARJUmMgSJKAHgIhyeokX0+yL8neJNe1+qlJHkrybHs+pWvMDUkmkjyT5KKu+nlJ9rR1tyZJq5+Y5L5WfzzJmgWYqyTpKHo5QpgEtlTVu4F1wLVJzgSuBx6uqrXAw+01bd1G4CxgPXB7khPavu4ANgNr22N9q18NvFxV7wJuAW7qw9wkSbMwYyBU1cGq+k5bfhXYB6wENgDb22bbgUva8gbg3qp6vaqeAyaA85OsAE6uqkerqoC7p4w5vK/7gQsPHz1IkgZj2Ww2bqdy3gc8DoxU1UHohEaSd7bNVgKPdQ070Go/b8tT64fHPN/2NZnkFeA04EdT/vzNdI4wGBkZYXx8fDbtHxMOHTq0JPuej2Gb88hy2HLO5JzHL8Wf1bC9x3B8zrnnQEjyduDLwCeq6qdH+QA/3Yo6Sv1oY95cqNoGbAMYHR2tsbGxGbo+9oyPj7MU+56PYZvzbffs5OY9s/qs9Sb7rxjrXzMDMmzvMRyfc+7pKqMkb6MTBvdU1Vda+cV2Goj2/FKrHwBWdw1fBbzQ6qumqb9pTJJlwDuAn8x2MpKkuevlKqMAdwL7quqzXat2AZva8iZgZ1d9Y7ty6Aw6Xx4/0U4vvZpkXdvnVVPGHN7XpcAj7XsGSdKA9HJcewFwJbAnyVOt9kngRmBHkquBHwCXAVTV3iQ7gKfpXKF0bVW90cZdA9wFLAcebA/oBM4Xk0zQOTLYOL9pSZJma8ZAqKpvMv05foALjzBmK7B1mvpu4Oxp6q/RAkWStDj8TWVJEmAgSJIaA0GSBBgIkqTGQJAkAQaCJKkxECRJgIEgSWoMBEkSYCBIkhoDQZIEGAiSpMZAkCQBBoIkqTEQJEmAgSBJagwESRJgIEiSGgNBkgQYCJKkxkCQJAEGgiSpMRAkSYCBIElqDARJEmAgSJIaA0GSBBgIkqTGQJAkAQaCJKkxECRJQA+BkOQLSV5K8r2u2qeT/DDJU+1xcde6G5JMJHkmyUVd9fOS7Gnrbk2SVj8xyX2t/niSNX2eoySpB70cIdwFrJ+mfktVndseDwAkORPYCJzVxtye5IS2/R3AZmBtexze59XAy1X1LuAW4KY5zkWSNA8zBkJVfQP4SY/72wDcW1WvV9VzwARwfpIVwMlV9WhVFXA3cEnXmO1t+X7gwsNHD5KkwVk2j7EfT3IVsBvYUlUvAyuBx7q2OdBqP2/LU+u05+cBqmoyySvAacCPpv6BSTbTOcpgZGSE8fHxebS/OA4dOrQk+56PYZvzyHLYcs7knMcvxZ/VsL3HcHzOea6BcAfwGaDa883Ah4HpPtnXUerMsO7NxaptwDaA0dHRGhsbm1XTx4Lx8XGWYt/zMWxzvu2endy8Z+6ftfZfMda/ZgZk2N5jOD7nPKerjKrqxap6o6p+AXweOL+tOgCs7tp0FfBCq6+apv6mMUmWAe+g91NUkqQ+mVMgtO8EDvsQcPgKpF3Axnbl0Bl0vjx+oqoOAq8mWde+H7gK2Nk1ZlNbvhR4pH3PIEkaoBmPa5N8CRgDTk9yAPgUMJbkXDqndvYDHwGoqr1JdgBPA5PAtVX1RtvVNXSuWFoOPNgeAHcCX0wyQefIYGMf5iVJmqUZA6GqLp+mfOdRtt8KbJ2mvhs4e5r6a8BlM/UhSVpY/qayJAkwECRJjYEgSQIMBElSYyBIkgADQZLUGAiSJMBAkCQ1BoIkCTAQJEmNgSBJAgwESVJjIEiSAANBktQYCJIkwECQJDUGgiQJMBAkSY2BIEkCDARJUmMgSJIAA0GS1BgIkiTAQJAkNQaCJAkwECRJjYEgSQIMBElSYyBIkgADQZLUzBgISb6Q5KUk3+uqnZrkoSTPtudTutbdkGQiyTNJLuqqn5dkT1t3a5K0+olJ7mv1x5Os6fMcJUk96OUI4S5g/ZTa9cDDVbUWeLi9JsmZwEbgrDbm9iQntDF3AJuBte1xeJ9XAy9X1buAW4Cb5joZSdLczRgIVfUN4CdTyhuA7W15O3BJV/3eqnq9qp4DJoDzk6wATq6qR6uqgLunjDm8r/uBCw8fPUiSBmeu3yGMVNVBgPb8zlZfCTzftd2BVlvZlqfW3zSmqiaBV4DT5tiXJGmOlvV5f9N9sq+j1I825q07TzbTOe3EyMgI4+Pjc2hxcR06dGhJ9j0fwzbnkeWw5ZzJOY9fij+rYXuP4fic81wD4cUkK6rqYDsd9FKrHwBWd223Cnih1VdNU+8ecyDJMuAdvPUUFQBVtQ3YBjA6OlpjY2NzbH/xjI+PsxT7no9hm/Nt9+zk5j1z/6y1/4qx/jUzIMP2HsPxOee5njLaBWxqy5uAnV31je3KoTPofHn8RDut9GqSde37gaumjDm8r0uBR9r3DJKkAZrxY0ySLwFjwOlJDgCfAm4EdiS5GvgBcBlAVe1NsgN4GpgErq2qN9qurqFzxdJy4MH2ALgT+GKSCTpHBhv7MjNJ0qzMGAhVdfkRVl14hO23Alunqe8Gzp6m/hotUCRJi8ffVJYkAQaCJKkxECRJgIEgSWoMBEkSYCBIkhoDQZIEGAiSpMZAkCQBBoIkqTEQJEmAgSBJagwESRJgIEiSGgNBkgQYCJKkxkCQJAEGgiSpMRAkSYCBIElqDARJEmAgSJIaA0GSBBgIkqTGQJAkAQaCJKkxECRJgIEgSWoMBEkSYCBIkhoDQZIEzDMQkuxPsifJU0l2t9qpSR5K8mx7PqVr+xuSTCR5JslFXfXz2n4mktyaJPPpS5I0e/04Qnh/VZ1bVaPt9fXAw1W1Fni4vSbJmcBG4CxgPXB7khPamDuAzcDa9ljfh74kSbOwEKeMNgDb2/J24JKu+r1V9XpVPQdMAOcnWQGcXFWPVlUBd3eNkSQNyLJ5ji/gP5IU8A9VtQ0YqaqDAFV1MMk727Yrgce6xh5otZ+35an1t0iymc6RBCMjI4yPj8+z/cE7dOjQkux7PoZtziPLYcs5k3MevxR/VsP2HsPxOef5BsIFVfVC+0f/oST/fZRtp/teoI5Sf2uxEzjbAEZHR2tsbGyW7S6+8fFxlmLf8zFsc77tnp3cvGfuf7X2XzHWv2YGZNjeYzg+5zyvU0ZV9UJ7fgn4KnA+8GI7DUR7fqltfgBY3TV8FfBCq6+api5JGqA5B0KSk5L86uFl4E+A7wG7gE1ts03Azra8C9iY5MQkZ9D58viJdnrp1STr2tVFV3WNkSQNyHxOGY0AX21XiC4D/rmq/i3Jt4EdSa4GfgBcBlBVe5PsAJ4GJoFrq+qNtq9rgLuA5cCD7SFJGqA5B0JVfR947zT1HwMXHmHMVmDrNPXdwNlz7UWSNH/+prIkCTAQJEmNgSBJAgwESVJjIEiSAANBktQYCJIkwECQJDUGgiQJMBAkSY2BIEkCDARJUmMgSJIAA0GS1BgIkiTAQJAkNQaCJAkwECRJjYEgSQIMBElSYyBIkgADQZLUGAiSJMBAkCQ1BoIkCTAQJEmNgSBJAgwESVJjIEiSAANBktQYCJIk4BgKhCTrkzyTZCLJ9YvdjyQNm2MiEJKcAPwd8AHgTODyJGcubleSNFyOiUAAzgcmqur7VfV/wL3AhkXuSZKGyrLFbqBZCTzf9foA8HtTN0qyGdjcXh5K8swAeuu304EfLXYTAzZsc57XfHNTHzsZnGF7j2Hpzvm3j7TiWAmETFOrtxSqtgHbFr6dhZNkd1WNLnYfgzRscx62+YJzPl4cK6eMDgCru16vAl5YpF4kaSgdK4HwbWBtkjOS/DKwEdi1yD1J0lA5Jk4ZVdVkko8D/w6cAHyhqvYuclsLZUmf8pqjYZvzsM0XnPNxIVVvOVUvSRpCx8opI0nSIjMQJEmAgbDgkpya5KEkz7bnU46y7QlJ/ivJ1wbZY7/1Muckq5N8Pcm+JHuTXLcYvc7HTLdbScetbf13k/zOYvTZTz3M+Yo21+8m+VaS9y5Gn/3U6211kvxukjeSXDrI/vrJQFh41wMPV9Va4OH2+kiuA/YNpKuF1cucJ4EtVfVuYB1w7VK6XUmPt1v5ALC2PTYDdwy0yT7rcc7PAX9QVe8BPsMS/+K119vqtO1uonNhzJJlICy8DcD2trwduGS6jZKsAj4I/ONg2lpQM865qg5W1Xfa8qt0gnDloBrsg15ut7IBuLs6HgN+LcmKQTfaRzPOuaq+VVUvt5eP0fmdoqWs19vq/CXwZeClQTbXbwbCwhupqoPQ+UcQeOcRtvsc8FfALwbU10Lqdc4AJFkDvA94fOFb65vpbrcyNdB62WYpme18rgYeXNCOFt6Mc06yEvgQ8PcD7GtBHBO/h7DUJflP4DemWfU3PY7/U+ClqnoyyVgfW1sw851z137eTueT1Seq6qf96G1AerndSk+3ZFlCep5PkvfTCYTfX9COFl4vc/4c8NdV9UYy3eZLh4HQB1X1R0dal+TFJCuq6mA7XTDdIeUFwJ8luRj4FeDkJP9UVX++QC3PWx/mTJK30QmDe6rqKwvU6kLp5XYrx9stWXqaT5L30Dn1+YGq+vGAelsovcx5FLi3hcHpwMVJJqvqXwbSYR95ymjh7QI2teVNwM6pG1TVDVW1qqrW0LltxyPHchj0YMY5p/O3505gX1V9doC99Usvt1vZBVzVrjZaB7xy+FTaEjXjnJP8FvAV4Mqq+p9F6LHfZpxzVZ1RVWva39/7gY8txTAAA2EQbgT+OMmzwB+31yT5zSQPLGpnC6eXOV8AXAn8YZKn2uPixWl39qpqEjh8u5V9wI6q2pvko0k+2jZ7APg+MAF8HvjYojTbJz3O+W+B04Db23u6e5Ha7Yse53zc8NYVkiTAIwRJUmMgSJIAA0GS1BgIkiTAQJAkNQaCJAkwECRJzf8DqITNEF5ADX0AAAAASUVORK5CYII=\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "df[df['AIRLINE'] == \"EV\"]['SECURITY_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 180,
+ "id": "bibliographic-parent",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 180,
+ "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[df['AIRLINE'] == \"EV\"]['AIRLINE_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 181,
+ "id": "magnetic-basket",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 181,
+ "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[df['AIRLINE'] == \"EV\"]['LATE_AIRCRAFT_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 182,
+ "id": "imperial-liberty",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 182,
+ "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[df['AIRLINE'] == \"EV\"]['WEATHER_DELAY'].hist(bins=20)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "tracked-activation",
+ "metadata": {},
+ "source": [
+ "### 9. Определите авиакомпанию с максимальными задержками рейсов по отправке и прибытию."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 183,
+ "id": "lyric-person",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " YEAR | \n",
+ " MONTH | \n",
+ " DAY | \n",
+ " DAY_OF_WEEK | \n",
+ " AIRLINE | \n",
+ " FLIGHT_NUMBER | \n",
+ " TAIL_NUMBER | \n",
+ " ORIGIN_AIRPORT | \n",
+ " DESTINATION_AIRPORT | \n",
+ " SCHEDULED_DEPARTURE | \n",
+ " ... | \n",
+ " ARRIVAL_DELAY | \n",
+ " DIVERTED | \n",
+ " CANCELLED | \n",
+ " CANCELLATION_REASON | \n",
+ " AIR_SYSTEM_DELAY | \n",
+ " SECURITY_DELAY | \n",
+ " AIRLINE_DELAY | \n",
+ " LATE_AIRCRAFT_DELAY | \n",
+ " WEATHER_DELAY | \n",
+ " SPEED | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 337720 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 23 | \n",
+ " 5 | \n",
+ " AA | \n",
+ " 1322 | \n",
+ " N598AA | \n",
+ " BHM | \n",
+ " DFW | \n",
+ " 700 | \n",
+ " ... | \n",
+ " 1971.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1971.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 361.818182 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1 rows × 32 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " YEAR MONTH DAY DAY_OF_WEEK AIRLINE FLIGHT_NUMBER TAIL_NUMBER \\\n",
+ "337720 2015 1 23 5 AA 1322 N598AA \n",
+ "\n",
+ " ORIGIN_AIRPORT DESTINATION_AIRPORT SCHEDULED_DEPARTURE ... \\\n",
+ "337720 BHM DFW 700 ... \n",
+ "\n",
+ " ARRIVAL_DELAY DIVERTED CANCELLED CANCELLATION_REASON \\\n",
+ "337720 1971.0 0 0 NaN \n",
+ "\n",
+ " AIR_SYSTEM_DELAY SECURITY_DELAY AIRLINE_DELAY LATE_AIRCRAFT_DELAY \\\n",
+ "337720 0.0 0.0 1971.0 0.0 \n",
+ "\n",
+ " WEATHER_DELAY SPEED \n",
+ "337720 0.0 361.818182 \n",
+ "\n",
+ "[1 rows x 32 columns]"
+ ]
+ },
+ "execution_count": 183,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.sort_values(by=['ARRIVAL_DELAY'], ascending = False).head(1)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 184,
+ "id": "upper-columbus",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " YEAR | \n",
+ " MONTH | \n",
+ " DAY | \n",
+ " DAY_OF_WEEK | \n",
+ " AIRLINE | \n",
+ " FLIGHT_NUMBER | \n",
+ " TAIL_NUMBER | \n",
+ " ORIGIN_AIRPORT | \n",
+ " DESTINATION_AIRPORT | \n",
+ " SCHEDULED_DEPARTURE | \n",
+ " ... | \n",
+ " ARRIVAL_DELAY | \n",
+ " DIVERTED | \n",
+ " CANCELLED | \n",
+ " CANCELLATION_REASON | \n",
+ " AIR_SYSTEM_DELAY | \n",
+ " SECURITY_DELAY | \n",
+ " AIRLINE_DELAY | \n",
+ " LATE_AIRCRAFT_DELAY | \n",
+ " WEATHER_DELAY | \n",
+ " SPEED | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 337720 | \n",
+ " 2015 | \n",
+ " 1 | \n",
+ " 23 | \n",
+ " 5 | \n",
+ " AA | \n",
+ " 1322 | \n",
+ " N598AA | \n",
+ " BHM | \n",
+ " DFW | \n",
+ " 700 | \n",
+ " ... | \n",
+ " 1971.0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " NaN | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1971.0 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 361.818182 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1 rows × 32 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " YEAR MONTH DAY DAY_OF_WEEK AIRLINE FLIGHT_NUMBER TAIL_NUMBER \\\n",
+ "337720 2015 1 23 5 AA 1322 N598AA \n",
+ "\n",
+ " ORIGIN_AIRPORT DESTINATION_AIRPORT SCHEDULED_DEPARTURE ... \\\n",
+ "337720 BHM DFW 700 ... \n",
+ "\n",
+ " ARRIVAL_DELAY DIVERTED CANCELLED CANCELLATION_REASON \\\n",
+ "337720 1971.0 0 0 NaN \n",
+ "\n",
+ " AIR_SYSTEM_DELAY SECURITY_DELAY AIRLINE_DELAY LATE_AIRCRAFT_DELAY \\\n",
+ "337720 0.0 0.0 1971.0 0.0 \n",
+ "\n",
+ " WEATHER_DELAY SPEED \n",
+ "337720 0.0 361.818182 \n",
+ "\n",
+ "[1 rows x 32 columns]"
+ ]
+ },
+ "execution_count": 184,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.sort_values(by=['DEPARTURE_DELAY'], ascending = False).head(1)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "dutch-feeling",
+ "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.9.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git "a/ml/lb3/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#3.ipynb" "b/ml/lb3/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#3.ipynb"
new file mode 100644
index 00000000..0af01593
--- /dev/null
+++ "b/ml/lb3/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#3.ipynb"
@@ -0,0 +1,1295 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "standing-trademark",
+ "metadata": {},
+ "source": [
+ "### Лабораторная работа № 3. \n",
+ "\n",
+ "### Антропов Артем Эдуардович 19-ИВТ-2\n",
+ "### Вариант 2\n",
+ "\n",
+ "1. Изучить набор данных. Создать описание набора данных на русском языке. Описать признаки, \n",
+ "\n",
+ "2. используемые в наборе данных (включить полученные описания в отчёт).\n",
+ "\n",
+ "3. Удалите дубликаты строк в наборе данных; приведите размер набора данных до и после данной операции;\n",
+ "\n",
+ "0. Оцените сбалансированность данных по классам (постройте гистограмму). Используйте полученную \n",
+ "информацию при выборе метрики оценки качества классификации (PR или ROC кривая)\n",
+ "\n",
+ "0. Выполните масштабирование количественных признаков; Постройте диаграммы BoxPlot для признаков до и после масштабирования. Выберите способ масштабирования (например, нормализацию или стандартизацию);\n",
+ "\n",
+ "0. Выполните замену категориальных признаков; выберите и обоснуйте способ замены;\n",
+ "\n",
+ "0. Оцените корреляцию между признаков и удалите те признаки, которые коррелируют с наибольшим числом \n",
+ "других (удалять признаки нужно только для линейных методов классификации);\n",
+ "\n",
+ "0. Заполните пропущенные значения в данных;\n",
+ "\n",
+ "0. Решите поставленную задачу классификации в соответствии с заданием. При подборе параметров \n",
+ "классификатора используйте метод GridSearchCV и перекрёстную проверку (изучите возможные для изменения \n",
+ "параметры классификации). Определите схему построения многоклассового классификатора, используемую по \n",
+ "умолчанию (опишите используемую схему кодирования, обоснуйте свой выбор). Постройте, если это \n",
+ "возможно, многоклассовую классификацию на основе схем «один-против-всех» и «все-против-всех». Оцените \n",
+ "точность классификации для каждой их схем. Постройте кривые PR и ROC (для каждого из классов должны \n",
+ "быть построены отдельные кривые, а также кривые для микро и макроусреднения метрик качества). Для \n",
+ "линейного классификатора используйте регуляризацию.\n",
+ "\n",
+ "0. Сравните кривые для классификаторов, указанных в задании, сделайте выводы."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 89,
+ "id": "anonymous-deputy",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "\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",
+ "import warnings\n",
+ "warnings.filterwarnings(\"ignore\")\n",
+ "from scipy import interp\n",
+ "from sklearn.model_selection import GridSearchCV\n",
+ "from sklearn.preprocessing import MinMaxScaler\n",
+ "from sklearn.preprocessing import label_binarize\n",
+ "from sklearn.tree import DecisionTreeClassifier\n",
+ "from sklearn.model_selection import StratifiedKFold\n",
+ "from sklearn.neighbors import RadiusNeighborsClassifier\n",
+ "from sklearn.model_selection import train_test_split, cross_val_score\n",
+ "from sklearn.metrics import (auc, roc_curve, \n",
+ " precision_recall_curve, \n",
+ " average_precision_score)\n",
+ "from sklearn.metrics import accuracy_score\n",
+ "from sklearn.neighbors import KNeighborsClassifier\n",
+ "from sklearn import datasets\n",
+ "from sklearn.linear_model import Ridge\n",
+ "from sklearn import preprocessing\n",
+ "from sklearn import linear_model\n",
+ "from sklearn.multiclass import OneVsRestClassifier\n",
+ "from sklearn.preprocessing import LabelEncoder\n",
+ "from sklearn import neighbors\n",
+ "from sklearn.datasets import make_classification\n",
+ "from sklearn.calibration import CalibratedClassifierCV\n",
+ "from sklearn.model_selection import train_test_split\n",
+ "from sklearn.model_selection import cross_val_score\n",
+ "from sklearn.preprocessing import LabelEncoder, OneHotEncoder\n",
+ "from sklearn.linear_model import LogisticRegression\n",
+ "from sklearn.ensemble import RandomForestClassifier, GradientBoostingClassifier\n",
+ "from sklearn.metrics import precision_recall_curve, classification_report\n",
+ "from sklearn.model_selection import train_test_split\n",
+ "from sklearn.metrics import roc_curve, auc\n",
+ "from matplotlib.pylab import rc, plot\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 90,
+ "id": "needed-disabled",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " RI | \n",
+ " Na | \n",
+ " Mg | \n",
+ " Al | \n",
+ " Si | \n",
+ " K | \n",
+ " Ca | \n",
+ " Ba | \n",
+ " Fe | \n",
+ " Type | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 1.52101 | \n",
+ " 13.64 | \n",
+ " 4.49 | \n",
+ " 1.10 | \n",
+ " 71.78 | \n",
+ " 0.06 | \n",
+ " 8.75 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 1.51761 | \n",
+ " 13.89 | \n",
+ " 3.60 | \n",
+ " 1.36 | \n",
+ " 72.73 | \n",
+ " 0.48 | \n",
+ " 7.83 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 1.51618 | \n",
+ " 13.53 | \n",
+ " 3.55 | \n",
+ " 1.54 | \n",
+ " 72.99 | \n",
+ " 0.39 | \n",
+ " 7.78 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 1.51766 | \n",
+ " 13.21 | \n",
+ " 3.69 | \n",
+ " 1.29 | \n",
+ " 72.61 | \n",
+ " 0.57 | \n",
+ " 8.22 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 1.51742 | \n",
+ " 13.27 | \n",
+ " 3.62 | \n",
+ " 1.24 | \n",
+ " 73.08 | \n",
+ " 0.55 | \n",
+ " 8.07 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " RI Na Mg Al Si K Ca Ba Fe Type\n",
+ "0 1.52101 13.64 4.49 1.10 71.78 0.06 8.75 0.0 0.0 1\n",
+ "1 1.51761 13.89 3.60 1.36 72.73 0.48 7.83 0.0 0.0 1\n",
+ "2 1.51618 13.53 3.55 1.54 72.99 0.39 7.78 0.0 0.0 1\n",
+ "3 1.51766 13.21 3.69 1.29 72.61 0.57 8.22 0.0 0.0 1\n",
+ "4 1.51742 13.27 3.62 1.24 73.08 0.55 8.07 0.0 0.0 1"
+ ]
+ },
+ "execution_count": 90,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df = pd.read_csv('glass.csv')\n",
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "hungarian-charleston",
+ "metadata": {},
+ "source": [
+ "#### 1.Изучить набор данных. Создать описание набора данных на русском языке. Описать признаки, используемые в наборе данных\n",
+ "\n",
+ "РИ: индекс преломления, Na: натрий , Mg: Магний, Al: Алюминий, Si: Кремний, K: Калий, Ca: Кальция, Ба: Барий, Fe: Железо."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 91,
+ "id": "upset-spectrum",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(214, 10)"
+ ]
+ },
+ "execution_count": 91,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.shape"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 92,
+ "id": "circular-nicholas",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "RangeIndex: 214 entries, 0 to 213\n",
+ "Data columns (total 10 columns):\n",
+ " # Column Non-Null Count Dtype \n",
+ "--- ------ -------------- ----- \n",
+ " 0 RI 214 non-null float64\n",
+ " 1 Na 214 non-null float64\n",
+ " 2 Mg 214 non-null float64\n",
+ " 3 Al 214 non-null float64\n",
+ " 4 Si 214 non-null float64\n",
+ " 5 K 214 non-null float64\n",
+ " 6 Ca 214 non-null float64\n",
+ " 7 Ba 214 non-null float64\n",
+ " 8 Fe 214 non-null float64\n",
+ " 9 Type 214 non-null int64 \n",
+ "dtypes: float64(9), int64(1)\n",
+ "memory usage: 16.8 KB\n"
+ ]
+ }
+ ],
+ "source": [
+ "df.info()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "analyzed-retailer",
+ "metadata": {},
+ "source": [
+ "#### 2.Удалите дубликаты строк в наборе данных; приведите размер набора данных до и после данной операции;"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 93,
+ "id": "alternate-county",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(214, 10)"
+ ]
+ },
+ "execution_count": 93,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.drop_duplicates()\n",
+ "df.dropna()\n",
+ "df.shape"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 94,
+ "id": "lyric-messenger",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " RI | \n",
+ " Na | \n",
+ " Mg | \n",
+ " Al | \n",
+ " Si | \n",
+ " K | \n",
+ " Ca | \n",
+ " Ba | \n",
+ " Fe | \n",
+ " Type | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 1.52101 | \n",
+ " 13.64 | \n",
+ " 4.49 | \n",
+ " 1.10 | \n",
+ " 71.78 | \n",
+ " 0.06 | \n",
+ " 8.75 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 1.51761 | \n",
+ " 13.89 | \n",
+ " 3.60 | \n",
+ " 1.36 | \n",
+ " 72.73 | \n",
+ " 0.48 | \n",
+ " 7.83 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 1.51618 | \n",
+ " 13.53 | \n",
+ " 3.55 | \n",
+ " 1.54 | \n",
+ " 72.99 | \n",
+ " 0.39 | \n",
+ " 7.78 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 1.51766 | \n",
+ " 13.21 | \n",
+ " 3.69 | \n",
+ " 1.29 | \n",
+ " 72.61 | \n",
+ " 0.57 | \n",
+ " 8.22 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 1.51742 | \n",
+ " 13.27 | \n",
+ " 3.62 | \n",
+ " 1.24 | \n",
+ " 73.08 | \n",
+ " 0.55 | \n",
+ " 8.07 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " RI Na Mg Al Si K Ca Ba Fe Type\n",
+ "0 1.52101 13.64 4.49 1.10 71.78 0.06 8.75 0.0 0.0 1\n",
+ "1 1.51761 13.89 3.60 1.36 72.73 0.48 7.83 0.0 0.0 1\n",
+ "2 1.51618 13.53 3.55 1.54 72.99 0.39 7.78 0.0 0.0 1\n",
+ "3 1.51766 13.21 3.69 1.29 72.61 0.57 8.22 0.0 0.0 1\n",
+ "4 1.51742 13.27 3.62 1.24 73.08 0.55 8.07 0.0 0.0 1"
+ ]
+ },
+ "execution_count": 94,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "formed-clark",
+ "metadata": {},
+ "source": [
+ "#### 3.Оцените сбалансированность данных по классам (постройте гистограмму). Используйте полученную информацию при выборе метрики оценки качества классификации"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 95,
+ "id": "amber-visitor",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "sns.countplot(data=df, y='Type')\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "mathematical-continent",
+ "metadata": {},
+ "source": [
+ "#### 4.Выполните масштабирование количественных признаков; Постройте диаграммы BoxPlot для признаков до и после масштабирования. Выберите способ масштабирования (например, нормализацию или стандартизацию);"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 96,
+ "id": "metric-going",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "import seaborn as sns\n",
+ "#sns.boxplot(x=DMC);\n",
+ "df.plot.box();"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 97,
+ "id": "vital-island",
+ "metadata": {
+ "scrolled": true
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "numerical: ['RI', 'Na', 'Mg', 'Al', 'Si', 'K', 'Ca', 'Ba', 'Fe', 'Type']\n",
+ "categorial: []\n"
+ ]
+ }
+ ],
+ "source": [
+ "numerical_columns = [i for i in df.columns if df[i].dtype.name != 'object']\n",
+ "categorial_columns = [i for i in df.columns if df[i].dtype.name == 'object']\n",
+ "\n",
+ "print('numerical: ', numerical_columns)\n",
+ "print('categorial: ', categorial_columns)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 98,
+ "id": "laughing-store",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "numerical: ['RI', 'Na', 'Mg', 'Al', 'Si', 'K', 'Ca', 'Ba', 'Fe']\n",
+ "categorial: ['Type']\n"
+ ]
+ }
+ ],
+ "source": [
+ "df['Type'] = df['Type'].apply(lambda x: str(x))\n",
+ "\n",
+ "#заново выделим категориальные и числовые\n",
+ "numerical_columns = [i for i in df.columns if df[i].dtype.name != 'object']\n",
+ "categorial_columns = [i for i in df.columns if df[i].dtype.name == 'object']\n",
+ "\n",
+ "print('numerical: ', numerical_columns)\n",
+ "print('categorial: ', categorial_columns)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "subjective-interval",
+ "metadata": {},
+ "source": [
+ "Выбираем способ масштабирования - нормализация"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 99,
+ "id": "governing-secretary",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " RI | \n",
+ " Na | \n",
+ " Mg | \n",
+ " Al | \n",
+ " Si | \n",
+ " K | \n",
+ " Ca | \n",
+ " Ba | \n",
+ " Fe | \n",
+ " Type | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 0.432836 | \n",
+ " 0.437594 | \n",
+ " 1.000000 | \n",
+ " 0.252336 | \n",
+ " 0.351786 | \n",
+ " 0.009662 | \n",
+ " 0.308550 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 0.283582 | \n",
+ " 0.475188 | \n",
+ " 0.801782 | \n",
+ " 0.333333 | \n",
+ " 0.521429 | \n",
+ " 0.077295 | \n",
+ " 0.223048 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 0.220808 | \n",
+ " 0.421053 | \n",
+ " 0.790646 | \n",
+ " 0.389408 | \n",
+ " 0.567857 | \n",
+ " 0.062802 | \n",
+ " 0.218401 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 0.285777 | \n",
+ " 0.372932 | \n",
+ " 0.821826 | \n",
+ " 0.311526 | \n",
+ " 0.500000 | \n",
+ " 0.091787 | \n",
+ " 0.259294 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 0.275241 | \n",
+ " 0.381955 | \n",
+ " 0.806236 | \n",
+ " 0.295950 | \n",
+ " 0.583929 | \n",
+ " 0.088567 | \n",
+ " 0.245353 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ " 1 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " RI Na Mg Al Si K Ca Ba \\\n",
+ "0 0.432836 0.437594 1.000000 0.252336 0.351786 0.009662 0.308550 0.0 \n",
+ "1 0.283582 0.475188 0.801782 0.333333 0.521429 0.077295 0.223048 0.0 \n",
+ "2 0.220808 0.421053 0.790646 0.389408 0.567857 0.062802 0.218401 0.0 \n",
+ "3 0.285777 0.372932 0.821826 0.311526 0.500000 0.091787 0.259294 0.0 \n",
+ "4 0.275241 0.381955 0.806236 0.295950 0.583929 0.088567 0.245353 0.0 \n",
+ "\n",
+ " Fe Type \n",
+ "0 0.0 1 \n",
+ "1 0.0 1 \n",
+ "2 0.0 1 \n",
+ "3 0.0 1 \n",
+ "4 0.0 1 "
+ ]
+ },
+ "execution_count": 99,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "import sklearn as sk\n",
+ "from sklearn.preprocessing import MinMaxScaler\n",
+ "\n",
+ "scaler = MinMaxScaler()\n",
+ "df[numerical_columns] = scaler.fit_transform(df[numerical_columns])\n",
+ "\n",
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 100,
+ "id": "liable-squad",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "df.plot.box();"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "biological-local",
+ "metadata": {},
+ "source": [
+ "#### 5.Выполните замену категориальных признаков"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 101,
+ "id": "flying-retirement",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Type : ['1' '2' '3' '5' '6' '7']\n"
+ ]
+ }
+ ],
+ "source": [
+ "for i in categorial_columns:\n",
+ " print(i,':',df[i].unique())"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 102,
+ "id": "literary-height",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " Type_1 | \n",
+ " Type_2 | \n",
+ " Type_3 | \n",
+ " Type_5 | \n",
+ " Type_6 | \n",
+ " Type_7 | \n",
+ " RI | \n",
+ " Na | \n",
+ " Mg | \n",
+ " Al | \n",
+ " Si | \n",
+ " K | \n",
+ " Ca | \n",
+ " Ba | \n",
+ " Fe | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0.432836 | \n",
+ " 0.437594 | \n",
+ " 1.000000 | \n",
+ " 0.252336 | \n",
+ " 0.351786 | \n",
+ " 0.009662 | \n",
+ " 0.308550 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0.283582 | \n",
+ " 0.475188 | \n",
+ " 0.801782 | \n",
+ " 0.333333 | \n",
+ " 0.521429 | \n",
+ " 0.077295 | \n",
+ " 0.223048 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0.220808 | \n",
+ " 0.421053 | \n",
+ " 0.790646 | \n",
+ " 0.389408 | \n",
+ " 0.567857 | \n",
+ " 0.062802 | \n",
+ " 0.218401 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0.285777 | \n",
+ " 0.372932 | \n",
+ " 0.821826 | \n",
+ " 0.311526 | \n",
+ " 0.500000 | \n",
+ " 0.091787 | \n",
+ " 0.259294 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0.275241 | \n",
+ " 0.381955 | \n",
+ " 0.806236 | \n",
+ " 0.295950 | \n",
+ " 0.583929 | \n",
+ " 0.088567 | \n",
+ " 0.245353 | \n",
+ " 0.0 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Type_1 Type_2 Type_3 Type_5 Type_6 Type_7 RI Na \\\n",
+ "0 1 0 0 0 0 0 0.432836 0.437594 \n",
+ "1 1 0 0 0 0 0 0.283582 0.475188 \n",
+ "2 1 0 0 0 0 0 0.220808 0.421053 \n",
+ "3 1 0 0 0 0 0 0.285777 0.372932 \n",
+ "4 1 0 0 0 0 0 0.275241 0.381955 \n",
+ "\n",
+ " Mg Al Si K Ca Ba Fe \n",
+ "0 1.000000 0.252336 0.351786 0.009662 0.308550 0.0 0.0 \n",
+ "1 0.801782 0.333333 0.521429 0.077295 0.223048 0.0 0.0 \n",
+ "2 0.790646 0.389408 0.567857 0.062802 0.218401 0.0 0.0 \n",
+ "3 0.821826 0.311526 0.500000 0.091787 0.259294 0.0 0.0 \n",
+ "4 0.806236 0.295950 0.583929 0.088567 0.245353 0.0 0.0 "
+ ]
+ },
+ "execution_count": 102,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "binary_columns = [i for i in categorial_columns if len(df[i].unique()) == 2]\n",
+ "nonbinary_columns = [i for i in categorial_columns if len(df[i].unique()) > 2]\n",
+ "\n",
+ "# для бинарных заменим значения на 1 и 0\n",
+ "for col in binary_columns:\n",
+ " for i, unic_item in enumerate(df[col].unique()):\n",
+ " df[col] = df[col].replace(to_replace=[unic_item], value=[i])\n",
+ " \n",
+ "# для не бинарых применим dummy-кодирование\n",
+ "df_nonbinary = pd.get_dummies(df[nonbinary_columns])\n",
+ "df.drop(nonbinary_columns, axis=1, inplace=True)\n",
+ "df = pd.concat([df_nonbinary, df] , axis=1)\n",
+ "\n",
+ "df.shape\n",
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "burning-wiring",
+ "metadata": {},
+ "source": [
+ "#### 6..Оцените корреляцию между признаков и удалите те признаки, которые коррелируют с наибольшим числом других (удалять признаки нужно только для линейных методов классификации);"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 103,
+ "id": "cordless-scheme",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ " Type_1 Type_2 Type_3 Type_5 Type_6 Type_7 RI \\\n",
+ "Type_1 1.000000 -0.517410 -0.204814 -0.177313 -0.146087 -0.276046 0.081202 \n",
+ "Type_2 -0.517410 1.000000 -0.218001 -0.188730 -0.155493 -0.293819 0.062002 \n",
+ "Type_3 -0.204814 -0.218001 1.000000 -0.074708 -0.061551 -0.116307 -0.038967 \n",
+ "Type_5 -0.177313 -0.188730 -0.074708 1.000000 -0.053287 -0.100690 0.047197 \n",
+ "Type_6 -0.146087 -0.155493 -0.061551 -0.053287 1.000000 -0.082958 -0.062924 \n",
+ "Type_7 -0.276046 -0.293819 -0.116307 -0.100690 -0.082958 1.000000 -0.163246 \n",
+ "RI 0.081202 0.062002 -0.038967 0.047197 -0.062924 -0.163246 1.000000 \n",
+ "Na -0.141691 -0.269755 0.010532 -0.181103 0.318608 0.502610 -0.191885 \n",
+ "Mg 0.420498 0.163772 0.175352 -0.337670 -0.200785 -0.590505 -0.122274 \n",
+ "Al -0.393398 -0.054751 -0.143742 0.300695 -0.032912 0.538803 -0.407326 \n",
+ "Si -0.028685 -0.050811 -0.093605 -0.093725 0.150688 0.161359 -0.542052 \n",
+ "K -0.053178 0.027369 -0.040897 0.380280 -0.160063 -0.104590 -0.289833 \n",
+ "Ca -0.078411 0.061008 -0.036005 0.209010 0.058986 -0.129830 0.810403 \n",
+ "Ba -0.228161 -0.186678 -0.098436 0.006483 -0.073938 0.690359 -0.000386 \n",
+ "Fe -0.000067 0.173502 0.000150 0.009836 -0.122879 -0.177418 0.143010 \n",
+ "\n",
+ " Na Mg Al Si K Ca Ba \\\n",
+ "Type_1 -0.141691 0.420498 -0.393398 -0.028685 -0.053178 -0.078411 -0.228161 \n",
+ "Type_2 -0.269755 0.163772 -0.054751 -0.050811 0.027369 0.061008 -0.186678 \n",
+ "Type_3 0.010532 0.175352 -0.143742 -0.093605 -0.040897 -0.036005 -0.098436 \n",
+ "Type_5 -0.181103 -0.337670 0.300695 -0.093725 0.380280 0.209010 0.006483 \n",
+ "Type_6 0.318608 -0.200785 -0.032912 0.150688 -0.160063 0.058986 -0.073938 \n",
+ "Type_7 0.502610 -0.590505 0.538803 0.161359 -0.104590 -0.129830 0.690359 \n",
+ "RI -0.191885 -0.122274 -0.407326 -0.542052 -0.289833 0.810403 -0.000386 \n",
+ "Na 1.000000 -0.273732 0.156794 -0.069809 -0.266087 -0.275442 0.326603 \n",
+ "Mg -0.273732 1.000000 -0.481799 -0.165927 0.005396 -0.443750 -0.492262 \n",
+ "Al 0.156794 -0.481799 1.000000 -0.005524 0.325958 -0.259592 0.479404 \n",
+ "Si -0.069809 -0.165927 -0.005524 1.000000 -0.193331 -0.208732 -0.102151 \n",
+ "K -0.266087 0.005396 0.325958 -0.193331 1.000000 -0.317836 -0.042618 \n",
+ "Ca -0.275442 -0.443750 -0.259592 -0.208732 -0.317836 1.000000 -0.112841 \n",
+ "Ba 0.326603 -0.492262 0.479404 -0.102151 -0.042618 -0.112841 1.000000 \n",
+ "Fe -0.241346 0.083060 -0.074402 -0.094201 -0.007719 0.124968 -0.058692 \n",
+ "\n",
+ " Fe \n",
+ "Type_1 -0.000067 \n",
+ "Type_2 0.173502 \n",
+ "Type_3 0.000150 \n",
+ "Type_5 0.009836 \n",
+ "Type_6 -0.122879 \n",
+ "Type_7 -0.177418 \n",
+ "RI 0.143010 \n",
+ "Na -0.241346 \n",
+ "Mg 0.083060 \n",
+ "Al -0.074402 \n",
+ "Si -0.094201 \n",
+ "K -0.007719 \n",
+ "Ca 0.124968 \n",
+ "Ba -0.058692 \n",
+ "Fe 1.000000 \n"
+ ]
+ },
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "corr_matrix = df.corr()\n",
+ "sns.heatmap(corr_matrix);\n",
+ "print(corr_matrix)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "simplified-neighborhood",
+ "metadata": {},
+ "source": [
+ "#### 7.Заполните пропущенные значения в данных"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "explicit-legislation",
+ "metadata": {},
+ "source": [
+ "Пропущеных значений нет"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "instant-thousand",
+ "metadata": {},
+ "source": [
+ "#### 8.Решите поставленную задачу классификации в соответствии с заданием. "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 123,
+ "id": "racial-worth",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "best score: 0.9800000000000001 \t at features number: 3 \t at depth: 5\n",
+ "test score: 0.9384615384615385\n"
+ ]
+ }
+ ],
+ "source": [
+ "dtc = DecisionTreeClassifier()\n",
+ "X, y = df.drop('Type_6', axis=1), df['Type_6']\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.3, random_state = 123)\n",
+ "params = {'max_depth': list(range(1,12)), 'max_features': list(range(1,12))}\n",
+ "\n",
+ "dtc_grid = GridSearchCV(dtc, params)\n",
+ "dtc_grid.fit (X_train, y_train)\n",
+ "\n",
+ "best_features = dtc_grid.best_estimator_.max_features\n",
+ "best_depth = dtc_grid.best_estimator_.max_depth\n",
+ "best_score = dtc_grid.best_score_\n",
+ "print('best score:', best_score, \n",
+ " '\\t at features number:', best_features,\n",
+ " '\\t at depth:', best_depth)\n",
+ "\n",
+ "dtc = DecisionTreeClassifier(max_depth=best_depth, max_features=best_features)\n",
+ "dtc.fit(X_train, y_train)\n",
+ "best_score = np.mean(y_test == dtc.predict(X_test))\n",
+ "print('test score: ', best_score)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 128,
+ "id": "acoustic-factor",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "best score: 1.0 \t at neighbors number: 1\n"
+ ]
+ }
+ ],
+ "source": [
+ "knn = neighbors.KNeighborsClassifier()\n",
+ "params = {'n_neighbors': list(range(1, 30))}\n",
+ "knn_grid = GridSearchCV(knn, params)\n",
+ "knn_grid.fit(X_train, y_train)\n",
+ "best_num = knn_grid.best_estimator_.n_neighbors\n",
+ "best_score = knn_grid.best_score_\n",
+ "\n",
+ "print('best score: ', best_score,\n",
+ " '\\t at neighbors number: ', best_num)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 131,
+ "id": "familiar-trick",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmkAAAHwCAYAAAD98PjEAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAB8XUlEQVR4nO3dd3gU1cPF8e8lofcuEKSGXgKEJr0jIL0jTRE7ioqg/gRRXhSxoihioUnviCBFQaVDkB6ld6SFEiCBlPv+sSFSAoSQzWyS83keHrK7szNndyE5uXNnxlhrERERERHPksLpACIiIiJyO5U0EREREQ+kkiYiIiLigVTSRERERDyQSpqIiIiIB1JJExEREfFAKmkiIiIiHkglTUSSLWOMNcYUvccyeYwx3xtjThhjgo0xfxtjhhpj0idUThFJnlTSRETuwBiTDVgLpAWqW2szAo2ALEARB6OJSDKgkiYiiZox5qAx5jVjzDZjzAVjzHRjTJobHn/KGLPXGBNkjFlgjMkbdf8fUYtsNcZcMsZ0imH1rwDBwOPW2oMA1toj1tqXrLXbotbzuTHmiDHmojEmwBhTy60vWESSDZU0EUkKOgJNgUJAOaAXgDGmPvB+1ON5gEPANABrbe2o55a31maw1k6PYb0NgTnW2si7bHsj4AdkA6YAM28siSIicaWSJiJJwShr7XFrbRDwE67SBNAN+MFau9laexV4A6hujCkYy/VmB07cbQFr7Y/W2rPW2nBr7cdAaqB4XF6EiMiNVNJEJCn494avrwAZor7Oi2v0DABr7SXgLJAvlus9i2sE7o6MMa8aYwKjdrWeBzIDOWK5fhGRO1JJE5Gk7DhQ4PqNqCMyswPHYvn85UAbY0yM3yuj5p8NxLU7Nau1NgtwATAPkFlEBFBJE5GkbQrQ2xjjZ4xJDQwH1l8/CAA4CRS+y/M/ATIBE4wxBQCMMfmMMZ8YY8oBGYFw4DTgbYwZHLW8iMgDU0kTkSTLWvsr8DYwG9fcsiJA5xsWeQdXATtvjOkYw/ODgEeAMGC9MSYY+BXXaNleYAmwGNiNa7dqKHDEXa9HRJIXY611OoOIiIiI3EIjaSIiIiIeyG0lzRjzgzHmlDFmxx0eN8aYUVEnmdxmjKnoriwiIiIiiY07R9LG4zq55J08CvhG/ekLfO3GLCIiIiKJittKmrX2DyDoLou0AiZal3VAFmPMXc9HJCIiIpJcODknLR83HwV1lNifYFJEREQkSfN2cNsxnewxxkNNjTF9ce0SJUXajJUy51SXExEREc9kIyMwKVKQPeIMe4+dPWOtzRmX9ThZ0o4C+W+47YPr7OC3sdaOBcYCZCtQ0gYdCnR/OhEREZH7tGXLFtq1a0fXrp14r2YkpunwQ/d+Vsyc3N25AOgRdZRnNeCCtfauFzIWERER8VTjx4+nevXqXL16lebNmz/w+tx5Co6pwFqguDHmqDHmSWPMM8aYZ6IWWQTsx3XW7m+B59yVRURERMRdrl69yjPPPEPv3r2pXr06mzdvplq1ag+8Xrft7rTWdrnH4xZ43l3bFxEREUkIgYGBjB8/noEDBzJs2DC8veOnXjk5J01EREQk0dqzZw++vr74+fmxe/duHn744Xhdvy4LJSIiInIfIiMjGT58OCVKlOCnn34CiPeCBhpJExEREYm18+fP07NnTxYsWECXLl2oV6+e27alkiYiIiISC9u2baNt27YcOnSIzz//nBdffBFjYjrta/xQSRMRERGJha1bt3LlyhVWrlxJjRo13L49zUkTERERuYNr166xdu1aALp3787ff/+dIAUNVNJEREREYnT06FHq1KlDgwYNOHHCdb79TJkyJdj2VdJEREREbrFixQoqVqzIjh07mDhxInny5EnwDCppIiIiIjf48MMPadiwITly5GDjxo20b9/ekRwqaSIiIiI3OHXqFO3atWP9+vWUKFHCsRw6ulNERESSvZ07dxISEoK/vz8jRowgRYoUbj29RmxoJE1ERESStalTp1KlShWee+45rLV4eXk5XtBAJU1ERESSqbCwMF5++WW6du1KxYoVmT9/vkeUs+u0u1NERESSnXPnzvHYY4+xevVqXn75ZT788ENSpkzpdKybqKSJiIhIspMpUyZy587NtGnT6NSpk9NxYqSSJiIiIsmCtZbRo0fTtm1b8ubNy+zZs92zoYvHYf/vcPDPB1qNSpqIiIgkecHBwTzxxBPMmjWLM2fO8M4778TfykMvwMFVsH+lq5yd+cd1f9psD7RalTQRERFJ0gIDA2nbti27d+/mww8/5LXXXnuwFYaFwtEN/5Wy45vBRkLKdFDgEajwOBSuC7nLwCCvOG9GJU1ERESSrD///JNmzZqRLl06li9fTr169e5/JZER8O82VyHbvxIOr4XwUDBe4OMPtV5zlTKfyuCdKt6yq6SJiIhIklW2bFlatWrFiBEjyJcvX+yeZC0E7Y8aKVvpmlsWcs71WM6SUKk3FK4DBWpAGvddcN1Ya922cnfIVqCkDToU6HQMERER8VD//vsv7733Hh9//DFp0qSJ3ZMunXKNlB1Y6fr7whHX/Zl8XKNkhetAodqQ8aH7ymKMCbDW+t/Xk6JoJE1ERESSjNWrV9OhQwfOnz9Pt27deOSRR2Je8GowHFrz32jZqV2u+9NkgUK1oObLUKguZC8CDp3gViVNREREEj1rLaNGjeK1116jYMGC/PLLL5QrV+6/BcKvwbFN/032P7YJIsPBOw08XA3KdnCNmOUpDyniPtk/PqmkiYiISKL3v//9j+HDh9OqVSvGjx9PlkyZ4N/t/032P7QGwi6DSQF5K8Aj/VylLH9VSBnLXaIJTCVNREREEr0ePXqQOVUErzUrTopl/eHAH3DljOvB7L7g19VVygrWhLRZnIwaayppIiIikijNmTKBZfOn8FXXYhQ/+Aev24PwM5DhISjaMGqyfx3IHMujOj2MSpqIiIgkDtcuw6G1hO/9jbc+m8iHS49RJV8KLpXcQcbitaHac65SlrO4Y5P945NKmoiIiHimiHDX2fyvT/Y/sp5TwVfpPPsqKw6E8Wyr6nz60UhSF6oKXkmv0iS9VyQiIiKJk7Vw+u//StnBVXAtGDCQpxyRVZ6h4ctT2HPiBOPHf0vPnj2dTuxWKmkiIiLinAtH/zsC88DvcOmk6/6shaBseyhcF1uwFqTLRgpj+HR0PbJnz46fn5+TqROESpqIiIgknJBzcODP/0rZ2b2u+9PluOHM/nUgawEALl++zNNPP025cuV4/fXXadCggWPRE5pKmoiIiLhPWAgcXucqZPtXwvEtgIWU6aFgDfB/wlXKcpWCFClueuqePXto27YtO3fupFSpUk6kd5RKmoiIiMSfyAhXETuw0lXKDq+HiKuQwht8KkPdQa5Slq8SeKe642rmz59Pjx498Pb2ZvHixTRp0iShXoHHUEkTERGRuLPWtcvy+jUwD/4JoRdcj+UuA5X7uHZjFqgOqTPGapUHDhygXbt2VKhQgVmzZlGgQAF3pfdoKmkiIiJyf4L/vXmy/8VjrvszPwwlW7pKWaE6kCHnfa02NDSUNGnSUKhQIRYuXEjdunVJk8YzL9mUEFTSRERE5O5CL8DB1f+VstN/u+5Pm9VVxgq/5ipmWQvF+SSyGzZsoGPHjnz11Vc0a9aMpk2bxlv8xEolTURERG4WfhWObPhvsv+xzWAjwDuta7elX1dXOXuo3G2T/e+XtZZvvvmGl156ibx58/LQQw/Fz2tIAlTSREREkrvISPh323+l7NBaCA8Bk8I1wb/WK65Slr8KeKeOt82GhITw7LPPMmHCBJo2bcrkyZPJli1bvK0/sVNJExERSW6shXMH/juz/4E/ICTI9VjOElCxh2v3ZcEakCaz22LMnj2biRMnMmTIEAYPHkyKBxyVS2pU0kRERJKDS6f/Gynb/ztcOOy6P2NeKNY0arJ/bciUx+1Rzpw5Q44cOejWrRulSpWiYsWKbt9mYqSSJiIikhRdvQSH1vw32f/kDtf9qTNDoVpQo5+rmGUvGufJ/vcrIiKCd999l88//5yNGzfi6+urgnYXKmkiIiJJQUQYHN3032jZ0Y0QGQ5eqeHhqtBgMBSqC3n9IIVXgsc7e/Ys3bp1Y8mSJfTu3RsfH58Ez5DYqKSJiIgkRtbCyZ03TPZfA9cuAcZVxB550TXZ/+FqkDKto1E3bdpE+/btOXHiBGPHjqVPnz6YBBq9S8xU0kRERBKL84dvmOz/O1w+7bo/e1Eo1ylqsn9NSOdZR0j+8MMPREZGsmrVKipXrux0nETDWGudznBfshUoaYMOBTodQ0RExP2uBEWNlEWNlp074Lo/Q+6ok8jWhcJ1ILPn7ToMDQ3l33//pWDBgoSGhnLp0iVy5MjhdKwEZ4wJsNb6x+W5GkkTERHxFNeuwOG1/10H89/tgIVUGV0jZFWfdhWznCUSbLJ/XBw8eJB27dpx6dIltm/fTpo0aZL15Z3iSiVNRETEKRHhcPyv/47APLIeIq5BipSuE8fWe9M1YpavInildDptrPzyyy9069aNiIgIJk2aRKpUqZyOlGippImIiCQUa+H0P/9N9j+4Cq5edD32UFnXSFmhuq5LL6VK72DQ+xcZGcmwYcN45513KFu2LLNnz6Zo0aJOx0rUVNJERETc6cKxm+eVXfrXdX/WglC6zX8nkU2fuOdrRUREsGTJEh5//HHGjBlDunTpnI6U6KmkiYiIxKeQc64Rsuul7Owe1/3pcrjK2PXJ/lkLOhgy/mzZsoX8+fOTPXt2lixZQvr06XV6jXiikiYiIvIgwkJdc8muT/Y/sQVsJKRMBwVqQKWermKWqzQksWtTjhs3jueee45OnToxfvx4MmTI4HSkJEUlTURE5H5ERsCJrf9N9j+8DsJDwXiBjz/UHuAqZfn8wTtpTpq/evUq/fr1Y+zYsdSvX58PP/zQ6UhJkkqaiIjI3VgLZ/fBgZVRxexPCD3veixXKfB/wnUEZoFHIE0mB4MmjKNHj9K2bVs2btzIoEGDeO+99/D2Vp1wB72rIiIitwo++d8RmPt/h4tHXfdn8oESLf6b7J8xt5MpHZEqVSouX77M3Llzad26tdNxkjSVNBERkdCLcGj1f5P9T0dd2SZNFlcZq/WKq5hlK+zRJ5F1l8jISCZNmkTXrl3JlSsX27Ztw8sr4S/SntyopImISPITfg2Obvxvsv+xALAR4J0GHq4O5aOug/lQOUiRvMvI+fPn6dGjBz/99BPe3t5069ZNBS2BqKSJiEjSFxkJJ3f8N9n/0BoIuwImBeStADVfdpUynyqQUpcvum7r1q20a9eOQ4cOMWrUKLp27ep0pGRFJU1ERJKmoAP/lbIDf8CVs677cxSDCo+7JvsXrAlpsziZ0mPNmTOHxx9/nKxZs7Jy5Upq1KjhdKRkRyVNRESShstnbp7sf/6Q6/6MeaBoo/9OIpspr5MpE41ChQpRp04dxo8fT+7cye8ACU9grLVOZ7gv2QqUtEGHAp2OISIiTrt6CQ6v/a+Undzuuj91ZtcI2fVSlqNYspzsHxdHjx5l1qxZvPzyy05HSTKMMQHWWv+4PFcjaSIikjhEhLkm+F8/AvPoRogMA69UkL8q1P8fFK4HefzASz/e7tdvv/1G586dCQkJoW3btjz88MNOR0r29K9YREQ8k7VwKvC/eWUHV8G1S4CBPOWg+nOu0bL81SCVLuYdV9ZaPvzwQ958802KFy/OnDlzVNA8hEqaiIh4jvNH/itl+3+Hy6dc92crDOU6uib7F6oN6bI5GjMp6dmzJ5MmTaJjx458//33uv6mB1FJExER51wJgoN//jevLGif6/70OaPO6l/HNa8si0Z23KVFixZUqFCBl19+GaO5ex5FBw6IiEjC+2cxrPzAdaFyLKTKAAVq/DfZP1cpTfZ3o6lTpxISEsITTzzhdJQkTwcOiIhI4rFjNsx+CnL4Qt1BrmKWrxJ4pXQ6WZJ37do1XnvtNb744gsaNGhA7969NXrmwVTSREQk4WybAXOfdk327zYDUmd0OlGycfz4cTp06MCaNWvo378/I0aMUEHzcCppIiKSMLZMgXnPuc5h1nU6pErvdKJk4/z581SqVIng4GCmTZtGp06dnI4ksaCSJiIi7rd5Iizo59q12XmKTpmRwLJkycJbb71F/fr1KVWqlNNxJJZSOB1ARESSuI3fw4IXoWgD6DJNBS2BBAcH06VLF/744w8AXnjhBRW0REYlTURE3Gf9N/DzK1CsqWsELWUapxMlC7t27aJy5crMmDGDXbt2OR1H4ki7O0VExD3WfAlL34ISLaD9OPBO5XSiZGHGjBk88cQTpE+fnl9//ZW6des6HUniSCNpIiIS/1Z96ipopVpDh/EqaAlk2bJldOrUifLly7N582YVtEROJU1EROLX7yNh+TtQpj20+17nP0sAkZGRADRo0IBvvvmGFStWkC9fPodTyYNSSRMRkfhhLax4H1YMg3Kdoe1Y8NKsGndbtWoVfn5+HDp0iBQpUtC3b19SpdLIZVKgkiYiIg/OWvjtPfj9A/B7HFp/BSm8nE6VpFlr+eyzz6hXrx4hISFcuXLF6UgSz1TSRETkwVgLywbDnx9DpV7Q8gsVNDe7dOkSXbp0oX///jRv3pxNmzZRsmRJp2NJPFNJExGRuLMWlrwJa0ZB5T7Q/FNIoR8t7jZ06FBmzpzJ+++/z5w5c8icObPTkcQNjLXWfSs3pinwOeAFfGet/eCWxzMDPwIP4zodyEfW2nF3W2e2AiVt0KFANyUWEZFYsxYWvw4bxkLVZ6Hp+6BrQbpVSEgIadOmJTg4mL/++ovatWs7HUnuwRgTYK31j8tz3fbrjjHGCxgNPAqUAroYY2491fHzwC5rbXmgLvCxMUazHUVEPF1kJCzs7ypoj7yoguZm4eHhDBgwgOrVq3PlyhUyZsyogpYMuHNMugqw11q731p7DZgGtLplGQtkNMYYIAMQBIS7MZOIiDyoyEj4qR8EjIOar0Cj91TQ3OjkyZM0atSIjz76iBo1auDlpfl+yYU7j43OBxy54fZRoOoty3wJLACOAxmBTtbaSDdmEhGRBxEZAfOfh61Toc5AqPuGCpobrVmzhg4dOnDu3DkmTpxI9+7dnY4kCcidJS2m/7W3ToBrAmwB6gNFgGXGmD+ttRdvWpExfYG+ABnyFIn/pCIicm8R4TD3adgxC+q9BXVedzpRkmatpX///qRNm5ZFixZRvnx5pyNJAnNnSTsK5L/htg+uEbMb9QY+sK6jF/YaYw4AJYANNy5krR0LjAXXgQNuSywiIjGLCIPZfWDXPGgwBGq94nSiJOvy5ctERkaSMWNGZs6cSaZMmciSJYvTscQB7pyTthHwNcYUijoYoDOuXZs3Ogw0ADDG5AaKA/vdmElERO5X+DWY2ctV0Br/nwqaG+3Zs4dq1arRp08fAB5++GEVtGTMbSXNWhsOvAAsAQKBGdbancaYZ4wxz0Qt9h7wiDFmO/ArMNBae8ZdmURE5D6FX4UZPeDvhdB0BDzygtOJkqz58+fj7+/PiRMnePLJJ52OIx7AredJcwedJ01EJIGEhcKM7rBnKTT/2HWyWol3ERERvP3227z//vv4+/sza9YsChQo4HQsiSceeZ40ERFJxMJCYFoX2LMMHvtcBc2NTp06xbfffkvfvn35888/VdAkmjsPHBARkcTo2mWY2hkO/AmtRkOFbk4nSpJ27txJyZIlyZMnD9u3b+ehhx5yOpJ4GI2kiYjIf65egskd4OAqaPONCpobWGsZM2YMFSpU4PPPPwdQQZMYqaSJiIhL6EX4sR0cXgdtv4XynZxOlORcuXKFXr168eyzz9KwYUN69uzpdCTxYCppIiICIefhx7ZwbBO0/wHKtnc6UZKzb98+qlevzqRJk3jnnXdYuHAh2bJlczqWeDDNSRMRSe6uBLkK2r87oMMEKNnC6URJ0r///svJkydZtGgRTZs2dTqOJAIaSRMRSc6uBMHElnByJ3T6UQUtnkVERLB06VIAatSowf79+1XQJNZU0kREkqvLZ2B8Czi9GzpPheIqD/Hp7NmzNGvWjCZNmhAQEABAunTpHE4liYl2d4qIJEeXTsGElnDuIHSdDkXqOZ0oSdm0aRPt2rXj33//5dtvv6VSpUpOR5JESCNpIiLJTfC/ML45nD8E3WaqoMWzcePGUaNGDQBWrVoVfR1OkfulkiYikpxcOAbjmsHF4/D4bChUy+lESU54eDh169YlICCAypUrOx1HEjFdu1NEJLk4fwQmtIDLZ10F7eGqTidKMg4cOEBgYCDNmjXDWou1lhQpNA4iD3btTs1JExFJDs4dchW0kAvQYz74aI5UfFm8eDHdunUjXbp07N27lzRp0mCMcTqWJAGq+SIiSV3QftcuztCL0FMFLb5ERkYydOhQmjdvzsMPP8zvv/9OmjRpnI4lSYhG0kREkrIze2HCYxAeCj1/gjzlnE6UJISFhdG6dWsWLVpEjx49+Prrr3V6DYl3KmkiIknV6X9cBS0yAnothNylnU6UZKRMmZISJUrw2GOP8fTTT2v3priFDhwQEUmKTu5yXUkA4xpBy1XC6URJwrhx4yhXrpzOeyax9iAHDmhOmohIUvPvdtdBAim8ofciFbR4EBoaSt++fXniiScYPXq003EkmdDuThGRpOT4FpjUGlKmc42gZS/idKJE79ChQ7Rr146AgADeeOMN3nvvPacjSTKhkiYiklQcC4BJbSB1JldBy1bI6USJXmBgIDVr1iQ8PJx58+bRqlUrpyNJMqLdnSIiScGRjTCxNaTJ4trFqYIWL3x9fenYsSObNm1SQZMEp5ImIpLYHV7nGkFLn8NV0LI87HSiRO38+fP06dOHkydP4u3tzddff42vr6/TsSQZUkkTEUnMDq6CSW0hY27o9TNk9nE6UaK2detW/P39mTBhAmvWrHE6jiRzKmkiIonV/t/hx/auYtZrEWTK63SiRG3ixIlUr16dkJAQ/vjjD9q0aeN0JEnmVNJERBKjvb/ClI6uuWe9fnaNpEmcjRkzhp49e1K1alU2b95M9erVnY4koqM7RUQSnd1LYXo3yFHcdbH09NmdTpTodezYkbNnzzJw4EC8vfWjUTyDRtJERBKTvxfBtK6QqxT0XKCC9gB+++03WrVqxbVr18iWLRtvvfWWCpp4FJU0EZHEYtcCmNHddZH0HvMhXTanEyVK1lo++OADGjVqxN69ezl16pTTkURipJImIpIY7JgDM3tB3orQfS6kzeJ0okTpwoULtG3bljfeeIMOHTqwfv16fHx0RKx4JpU0ERFPt20mzH4S8leF7nMgTWanEyVajz/+OAsXLuSzzz5j6tSpZMiQwelIIndkrLVOZ7gv2QqUtEGHAp2OISKSMLZMhfnPQYEa0HU6pErvdKJEKTIykhQpUrBz506CgoKoVauW05EkmTDGBFhr/ePyXM2QFBHxVJsnwYIXoXAd6DwVUqVzOlGic+3aNV577TUuX77M999/T+nSpZ2OJBJr2t0pIuKJNv0AC16Aog2gyzQVtDg4duwYdevW5YsvviBz5sxERkY6HUnkvmgkTUTE02z4Fha9Br5NoONESJnG6USJzsqVK+nUqROXL19m+vTpdOzY0elIIvdNJU1ExJOsHQ1L3oTizaHDePBO5XSiRCc4OJh27dqRM2dOVqxYQalSpZyOJBInKmkiIp5i1WewfAiUbAntfwCvlE4nSlSuXLlC2rRpyZgxIwsXLqR06dJkypTJ6VgicaY5aSIinuCPka6CVqYdtB+ngnafdu3aRcWKFRk1ahQA1atXV0GTRE8lTUTESdbCyg/gt2FQrhO0GQte2slxP6ZPn06VKlU4d+4cfn5+TscRiTcqaSIiTrHWVc5Wvg9+3aD11ypo9yEsLIz+/fvTuXNnypcvz19//UWdOnWcjiUSb1TSREScYK1r9+afH0HFntDyS0jh5XSqRGXDhg18/vnn9OvXjxUrVpA3b16nI4nEK/3KJiKS0KyFJW/ButHg/yQ0+whS6Hfm2Dp+/Dh58+alRo0a7NixQ0dvSpKl7woiIgnJWlg80FXQqj4DzT9WQYslay2ffvophQsXZuXKlQAqaJKkaSRNRCShREbColddVxOo/gI0HgbGOJ0qUbh06RJPPvkkM2bMoHXr1lSoUMHpSCJup1/fREQSQmQkLHzJVdBq9ldBuw9///03VapUYdasWXzwwQfMmTOHzJkzOx1LxO00kiYi4m6RETD/Bdg6BWq/DvXeVEG7D7/88gtnzpxh2bJl1K9f3+k4IgnGWGudznBfshUoaYMOBTodQ0QkdiLCYd4zsH0m1H0T6g50OlGiEB4ezt9//02ZMmWw1nLmzBly5szpdCyR+2aMCbDW+sfludrdKSLiLhFhMKePq6A1GKyCFksnT56kUaNG1KxZkzNnzmCMUUGTZEm7O0VE3CH8Gsx+AgJ/gkbvQY1+TidKFNasWUOHDh04d+4c33zzDTly5HA6kohjNJImIhLfwq/CzJ6ugtb0AxW0WLDW8sUXX1CnTh3Spk3LunXr6N69u9OxRBylkiYiEp/CQmH64/DPItdJaqs963SiRGPjxo08+uijbNq0iXLlyjkdR8Rx2t0pIhJfwkJgWlfY9xu0+Az8ezudyOPt3r0bay3Fixfn22+/JWXKlKTQyX1FAI2kiYjEj2tXYEon2LcCWo1WQYuFuXPnUrlyZZ566ikAUqdOrYImcgP9bxAReVBXL8HkDnDwT2gzBio87nQijxYeHs6gQYNo27YtxYoV48cff3Q6kohH0u5OEZEHcTXYVdCObIC230LZ9k4n8mjnzp2jffv2/Pbbbzz99NN8/vnnpE6d2ulYIh5JJU1EJK5CL8CP7eD4X9D+eyjdxulEHi9dunREREQwbtw4evXq5XQcEY+mkiYiEhch52BSW/h3O3QYDyUfczqRx7LWMmHCBFq1akXWrFlZsWIFRpfFErknzUkTEblfV4JgQks4uQM6TVJBu4srV67Qs2dPevfuzVdffQWggiYSSxpJExG5H5fPwMRWcGYPdJ4Cvo2cTuSx9u7dS7t27di+fTtDhw7ljTfecDqSSKKikiYiEluXTrlG0M4dgK7ToEh9pxN5rD/++IOWLVvi5eXFokWLaNq0qdORRBId7e4UEYmN4H9hfHM4fwi6zVRBuwdfX19q1qxJQECACppIHKmkiYjcy8XjroJ24Rh0mwWFajudyCOdOXOG//3vf0RERJAnTx4WLlxIwYIFnY4lkmippImI3M35IzCuGQSfhO5zoWANpxN5pI0bN1KpUiU++ugjNm/e7HQckSRBJU1E5E7OHYLxzVxHc/aYBw9XdTqRx7HWMnbsWGrWrIkxhtWrV1O5cmWnY4kkCSppIiIxCdrv2sUZetFV0Hz8nU7kkd566y2efvpp6tWrR0BAAJUqVXI6kkiSoaM7RURudXYfjG8B4aHQcwHkKe90Io/Vpk0bUqVKxdtvv42Xl5fTcUSSFGOtdTrDfclWoKQNOhTodAwRSapO74YJj0FkGPRYAA+VcTqRx1m0aBHr1q3j3XffdTqKiMczxgRYa+M0FK/dnSIi150KdM1Bs5HQ62cVtFtERkbyzjvv0KJFC3766SeuXLnidCSRJE0lTUQE4N8drjloxstV0HKVdDqRRwkKCqJFixYMHTqUHj16sGbNGtKlS+d0LJEkTXPSRERObHVd6illOuj5E2Qv4nQijxIeHk7t2rXZs2cPY8aMoW/fvrr+pkgCUEkTkeTt2GaY1BpSZ3IVtGyFnE7kcby9vRk6dCj58+enSpUqTscRSTa0u1NEkq+jm2Bia0iTxbWLUwUtWmhoKE899RTjxo0DoF27dipoIglMI2kikjwdXgc/tof0OaDXQsjs43Qij3Ho0CHatWtHQEAA+fPndzqOSLKlkiYiyc/B1TC5A2TK49rFmSmv04k8xpIlS+jatSvh4eHMnz+fli1bOh1JJNnS7k4RSV72/w6T27tGznr9rIJ2g3/++YdmzZqRL18+AgICVNBEHKaRNBFJPvb9BlO7QLbC0GM+ZMjldCKPEBERgZeXF8WLF2fKlCk89thjOr2GiAfQSJqIJA97lsGUzpC9qGsXpwoaAFu2bKFMmTKsW7cOgE6dOqmgiXgIlTQRSfr+WQzTukLO4q6Clj6H04k8woQJE6hevTrBwcE675mIB1JJE5GkLfAnmP445C7julh6umxOJ3Lc1atXefbZZ+nVqxfVq1dn8+bNVK1a1elYInILt5Y0Y0xTY8w/xpi9xphBd1imrjFmizFmpzHmd3fmEZFkZudcmNET8laEHvMgbVanE3mEcePGMWbMGF5//XWWLl1Krlza9SviiYy11j0rNsYL2A00Ao4CG4Eu1tpdNyyTBVgDNLXWHjbG5LLWnrrberMVKGmDDgW6JbOIJCHbZ8GcvpC/CnSbCakzOp3IccHBwWTMmJGIiAhWrVpFnTp1nI4kkuQZYwKstf5xea47R9KqAHuttfuttdeAaUCrW5bpCsyx1h4GuFdBExGJla3TYM5TUOAR6DYr2Re0yMhI3n//fYoXL86xY8fw8vJSQRNJBNxZ0vIBR264fTTqvhsVA7IaY1YaYwKMMT3cmEdEkoPNk2DuM1CwFnSdAakzOJ3IUefPn6dNmza8+eab1KlTh8yZMzsdSURiKdbnSTPGpLfWXr6Pdcd0qNCt+1a9gUpAAyAtsNYYs85au/uWbfcF+gJkyFPkPiKISLKyaRwsfBmKNIDOkyFlWqcTOWr79u20bduWgwcP8vnnn/Piiy/qKE6RROSeI2nGmEeMMbuAwKjb5Y0xX8Vi3UeBGy/65gMcj2GZX6y1l621Z4A/gPK3rshaO9Za62+t9U+ZMmUsNi0iyc6Gb10FzbcJdJ6S7AsawPvvv8/ly5dZsWIF/fr1U0ETSWRis7vzU6AJcBbAWrsVqB2L520EfI0xhYwxqYDOwIJblpkP1DLGeBtj0gFViSqDIiKxtu5rWPQaFG8OnSZByjROJ3LMtWvXOHnyJABff/01mzdvpmbNmg6nEpG4iNXuTmvtkVt+A4uIxXPCjTEvAEsAL+AHa+1OY8wzUY+PsdYGGmN+AbYBkcB31tod9/siRCQZWz0Klr0NJR+Ddj+AdyqnEznm6NGjdOjQgbCwMNatW0fmzJk1B00kEYtNSTtijHkEsFEjYv2I5WiXtXYRsOiW+8bccnskMDJ2cUVEbvDHR/Dbe1C6DbT9FryS73SIFStW0LlzZy5fvsy4cePw9talmUUSu9js7nwGeB7XkZlHAT/gOTdmEhG5t5UjXAWtbEdo+12yLWjWWkaOHEnDhg3Jli0bGzdupEOHDk7HEpF4EJtftYpba7vdeIcxpgaw2j2RRETuwlpY8X/wx0jw6wYtv4AUXk6nckxISAgTJkygbdu2/PDDD2TMmLzPCSeSlMSmpH0BVIzFfSIi7mUtLH8HVn8GFXtAi88hRfK8BHFgYCAPP/ww6dOn5/fffydbtmw6elMkibljSTPGVAceAXIaY1654aFMuA4EEBFJONbC0v/B2i/B/0lo9lGyLWjTpk3jySefpFevXowePZrs2bM7HUlE3OBu3+FSARlwFbmMN/y5CLR3fzQRkSjWwi+DXAWtytPQ/ONkWdDCwsLo378/Xbp0oUKFCrz11ltORxIRN7rjSJq19nfgd2PMeGvtoQTMJCLyn8hI1znQNn0P1V+AxsMgGe7WO3HiBB07dmTVqlW89NJLjBw5Ep3cWyRpi82ctCvGmJFAaSD6DJHW2vpuSyUiAq6CtvAl2DwRarwMDd9JlgUNIDQ0lEOHDjFlyhS6dOnidBwRSQCx2V8wGfgbKAQMBQ7iupqAiIj7REbAghdcBa32gGRZ0Ky1zJs3D2sthQoVYs+ePSpoIslIbEpadmvt90CYtfZ3a+0TQDU35xKR5CwiHOY+A1smQ903of7/kl1BCw4OplOnTrRp04Y5c+YAkDp1aodTiUhCis3uzrCov08YY5rjuki6j/siiUiyFhEGc/rCzjlQ/22o/ZrTiRJcYGAg7dq1459//uHDDz+kbdu2TkcSEQfEpqQNM8ZkBl7FdX60TMDL7gwlIslU+DWY/SQELoBG70KNl5xOlODmz5/P448/Ttq0aVm+fDn16tVzOpKIOOSeJc1auzDqywtAPYi+4oCISPwJvwoze8M/P0OT96F68rz6XKZMmfDz82Pq1Kn4+GinhUhydsc5acYYL2NMF2PMa8aYMlH3tTDGrAG+TLCEIpL0hYXC9O6ugtbso2RX0P79918mTpwIQL169fjjjz9U0ETkriNp3wP5gQ3AKGPMIaA6MMhaOy8BsolIchAWAtO6wb5focVn4N/b6UQJavXq1XTo0IGLFy/SuHFjHnroIV3eSUSAu5c0f6CctTbSGJMGOAMUtdb+mzDRRCTJu3YFpnWB/b9Dyy+hYnenEyUYay1ffPEFr776KgULFuSXX37hoYcecjqWiHiQu5W0a9baSABrbagxZrcKmojEm6uXYGpnOLQaWn8Nfsnn/F/WWnr37s2ECRNo2bIlEyZMIEuWLE7HEhEPc7eSVsIYsy3qawMUibptAGutLef2dCKSNF0Nhskd4Mh6aDMWynVwOlGCMsZQpUoVihcvzsCBA0mRDK9DKiL3dreSVjLBUohI8hF6AX5sD8cCoP0PULqN04kSzNy5czHG0Lp1a557LnkdHCEi9+9uF1jXRdVFJH6FnIMf28GJrdBhPJRq6XSiBBEeHs7//vc/RowYQcOGDWnVqpUODhCRe4rNyWxFRB7clSCY1BpO7oKOk6BEM6cTJYhTp07RuXNnVqxYwTPPPMNnn32mgiYisaKSJiLud/kMTGwNZ3ZD5ylQrLHTiRLEmTNnqFixImfPnmXcuHH06tXL6UgikojEqqQZY9ICD1tr/3FzHhFJai6dhoktIWg/dJkKRRs4nSjB5MiRgz59+tC6dWv8/PycjiMiicw9DykyxjwGbAF+ibrtZ4xZ4OZcIpIUBP8L45vDuYPQdUayKGhXrlzhqaeeYts218Hx77zzjgqaiMRJbI77fgeoApwHsNZuAQq6K5CIJBEXj7sK2oWj0G0WFK7jdCK327t3L9WqVeP7779n9erVTscRkUQuNrs7w621FzTRVURi7cJRGN/CNRet+xx4uJrTidxuwYIF9OjRAy8vLxYvXkyTJk2cjiQiiVxsRtJ2GGO6Al7GGF9jzBfAGjfnEpHE6twhGNcMrpyF7nOTRUH7+eefadWqFUWLFiUgIEAFTUTiRWxK2otAaeAqMAW4ALzsxkwiklgFHXDt4gw9Dz3mQ/7KTidyK2stAI0bN2bEiBGsWrWKggULOhtKRJIMc/2bzB0XMKaCtfavBMpzT9kKlLRBhwKdjiEitzq7DyY8BmFXXAUtT3mnE7nVhg0bePXVV5k7dy45cuRwOo6IeChjTIC11j8uz43NSNonxpi/jTHvGWNKx2UjIpLEnd7t2sUZHgo9f0rSBc1ayzfffEOtWrU4cuQIJ0+edDqSiCRR9yxp1tp6QF3gNDDWGLPdGPM/dwcTkUTiVKBrF6eNgJ4L4aGyTidym5CQEHr37s0zzzxD/fr1CQgIoHRp/e4qIu4Rm5E0rLX/WmtHAc/gOmfaYHeGEpFE4t8drqM4jYFeP0PuUk4ncqvXX3+diRMnMmTIEBYuXEj27NmdjiQiSVhs5qSVBDoB7YGzwDRgtrX2lPvj3U5z0kQ8xIltMLEVeKdx7eLMUdTpRG4THh6Ot7c3p0+fZvPmzTp6U0Rizd1z0sYB54DG1to61tqvnSpoIuIhjv/lOkggVXro/XOSLWgREREMGTKEhg0bEhYWRs6cOVXQRCTB3PNkttbapH+SIxGJvaObYFJbSJvZNQctawGnE7nF2bNn6datG0uWLKFnz55ERESQMmVKp2OJSDJyx5JmjJlhre1ojNkO3LhP1ADWWlvO7elExLMcXg8/toP0OVy7OLPkdzqRWwQEBNCuXTtOnDjBmDFj6Nu3L7rqiogktLuNpL0U9XeLhAgiIh7u0BqY3AEy5IZeCyFTXqcTuUVkZCQ9evQgMjKSVatWUbly0j4hr4h4rjuWNGvtiagvn7PWDrzxMWPMCGDg7c8SkSTpwB8wpRNk9nGNoGV8yOlE8S40NBRjDKlTp2bWrFnkzJlTJ6kVEUfF5sCBRjHc92h8BxERD7VvBUzuCFkKuE6zkQQL2sGDB6lRowb9+/cHoGTJkipoIuK4O5Y0Y8yzUfPRihtjtt3w5wCwLeEiiohj9ix3jaBlL+LaxZkhl9OJ4t0vv/xCpUqV2LdvH48+qt8/RcRz3G1O2hRgMfA+MOiG+4OttUFuTSUizvvnF5jRHXKWcF2LM102pxPFq8jISP7v//6PIUOGULZsWWbPnk3RoknzVCIikjjd8WS2xphM1tqLxpgYvzM7VdR0MluRBBD4E8zsDQ+Vge5zIW1WpxPFu4MHD1K2bFlat27NN998Q7p06ZyOJCJJ0IOczPZeI2ktgABcp+C48fhzCxSOywZFxMPtnAezn4S8FeDx2ZAms9OJ4tXBgwcpUKAABQsWZMuWLRQuXFin1xARj3THOWnW2hZRfxey1haO+vv6HxU0kaRo+yyY9QTk84fH5yS5gjZ+/HhKlizJuHHjAChSpIgKmoh4rHse3WmMqWGMSR/19ePGmE+MMQ+7P5qIJKit02HOU/Bw9agRtExOJ4o3V69e5emnn6Z379488sgjtGih0z+KiOeLzSk4vgauGGPKA68Dh4BJbk0lIgnrrx9h7tNQsCZ0mwGpMzidKN4cPnyYWrVqMXbsWAYNGsSSJUvIlSvpHaUqIknPPa/dCYRba60xphXwubX2e2NMT3cHE5EEEjAefnoJitSHzlMgZVqnE8Wr7du3s3v3bubOnUvr1q2djiMiEmuxKWnBxpg3gO5ALWOMF6CrDIskBRu+hUWvgW9j6DgJUqZxOlG8iIyMZOPGjVStWpXmzZtz4MABsmZNekeoikjSFpvdnZ2Aq8AT1tp/gXzASLemEhH3WzfGVdCKN4NOPyaZgnb+/Hlat25NjRo12LlzJ4AKmogkSvcsaVHFbDKQ2RjTAgi11k50ezIRcZ81X8AvA6HkY9BhAnindjpRvNi2bRv+/v4sXryYTz75hFKlSjkdSUQkzmJzdGdHYAPQAegIrDfGtHd3MBFxkz8/gaX/g1Ktof048E7ldKJ48eOPP1KtWjVCQkJYuXIl/fr10+k1RCRRi82ctLeAytbaUwDGmJzAcmCWO4OJiBusHAErh0PZDtB6DHjF5ltA4nD48GGqVKnC9OnTyZ07t9NxREQe2B0vCxW9gDHbrbVlb7idAth6430JSZeFEokDa2HFcPjjQyjfBVqNhhReTqd6YEePHuXQoUPUqFGDyMhIIiMj8fZOOsVTRBI/d10W6rpfjDFLgKlRtzsBi+KyMRFxgLXw61BY9SlU6A6PjYIUsTlmyLOtWLGCTp06kT59enbv3k3KlClJkQRel4jIdbE5cGAA8A1QDigPjLXWDnR3MBGJB9a65p+t+hT8n0gSBc1ay4cffkjDhg3JkSMHixcvJmVKnRVIRJKeO46kGWN8gY+AIsB24DVr7bGECiYiD8ha+OUNWP81VOkLj34IiXwifWhoKN26dWPOnDl06NCB77//nowZMzodS0TELe72K/UPwEKgHRAAfJEgiUTkwUVGus6Btv5rqPZ8kihoAKlTpyZdunR88sknTJ8+XQVNRJK0u81Jy2it/Tbq63+MMZsTIpCIPKDISFj4MmyeADVegoZDE31BmzZtGpUqVcLX15eJEyfq1BoikizcbSQtjTGmgjGmojGmIpD2ltsi4mkiI2DBi66CVuu1RF/Qrl27xksvvUSXLl0YOdJ1oRMVNBFJLu42knYC+OSG2//ecNsC9d0VSkTiIDIC5j0H26ZB3TegzsBEXdCOHz9Ox44dWb16Nf3792fEiBFORxIRSVB3LGnW2noJGUREHkBEOMztCztmQ/3/Qe0BTid6IDt37qRBgwZcunSJadOm0alTJ6cjiYgkuMR9LL6IQEQYzOrtKmgNhyb6ggZQuHBh6taty4YNG1TQRCTZUkkTSczCr8HMXhC4AJoMh5ovO50ozoKDg3nllVe4ePEiadOmZdq0abpAuogkayppIolV+FWY0R3+XgiPjoTqzzudKM4CAwOpUqUKn3/+OStXrnQ6joiIR7hnSTMujxtjBkfdftgYU8X90UTkjsJCYFpX2P0LtPgUqvZ1OlGczZw5kypVqhAUFMTy5ctp2bKl05FERDxCbEbSvgKqA12ibgcDo92WSETu7toVmNoZ9v4KLb9wXe4pkfrqq6/o2LEjZcuWZfPmzdSrp+OVRESui80F1qtaaysaY/4CsNaeM8akcnMuEYnJtcswpRMcXAWtvwK/rk4neiAtW7bkyJEjDB06lFSp9G1FRORGsRlJCzPGeOE6NxrGmJxApFtTicjtrgbDj+3h0Gpo+22iLWirVq3iiSeeIDIyEh8fH95//30VNBGRGMSmpI0C5gK5jDH/B6wChrs1lYjcLPQi/NgOjqyHdt9DuQ5OJ7pv1lo+//xz6tWrx59//snJkyedjiQi4tHuubvTWjvZGBMANAAM0NpaG+j2ZCLiEnIefmwLJ7ZCh3FQqpXTie7bpUuX6NOnD9OnT6dVq1ZMmDCBzJkzOx1LRMSj3bOkGWMeBq4AP914n7X2sDuDiQhwJQgmtYGTO6HjRCjR3OlEcdK2bVt+/fVXhg8fzsCBA0mRQmf/ERG5F2OtvfsCxmzHNR/NAGmAQsA/1trS7o93u2wFStqgQxrIk2Tg8lmY2ArO/AOdfoRiTZxOdN+stRhjWLNmDVeuXKFhw4ZORxIRSVDGmABrrX9cnhub3Z1lb9lYReDpuGxMRGLp0mlXQQvaB12mQtHEVW7Cw8N58803McYwYsQIHnnkEacjiYgkOve9z8Fauxmo7IYsIgIQfBImtICg/dB1eqIraCdPnqRRo0aMHDmS4OBg7jVaLyIiMYvNnLRXbriZAqgInHZbIpHk7OIJmPAYXDwOj8+CgjWdTnRf1q5dS4cOHTh79iwTJkygR48eTkcSEUm0YnMy24w3fB0O/AzMdk8ckWTswlFXQbt0Ch6fDQWqO53ovpw7d44mTZqQM2dO1q5di5+fn9ORREQStbuWtKiT2Gaw1g5IoDwiydP5wzC+BYScg+7zIH/imVEQFhZGypQpyZo1a/R1OLNmzep0LBGRRO+Oc9KMMd7W2ghcuzdFxF2CDsC45hB6HnrMS1QFbc+ePVSqVInJkycD0KRJExU0EZF4creRtA24CtoWY8wCYCZw+fqD1to5bs4mkvSd3efaxRl2BXosgLx+TieKtfnz59OjRw+8vb3JmTOn03FERJKc2BzdmQ04C9QHWgCPRf19T8aYpsaYf4wxe40xg+6yXGVjTIQxpn1s1iuSJJzZA+ObQ3go9Pwp0RS0iIgI3nzzTVq3bk2xYsXYvHkzjRs3djqWiEiSc7eRtFxRR3bu4L+T2V53z2Pqo+azjQYaAUeBjcaYBdbaXTEsNwJYcp/ZRRKvU3/DxJZgI6HnQshdyulEsfbbb7/x/vvv89RTTzFq1CjSpEnjdCQRkSTpbiXNC8jAzeXsutic+KgKsNdaux/AGDMNaAXsumW5F3EdLZp4JuKIPIiTO2FCS0jhBb1+hpzFnU4UK+fPnydLliw0atSINWvWUL164jr6VEQksblbSTthrX33AdadDzhyw+2jQNUbFzDG5APa4NqVqpImSd+Jba4rCXindu3izOHrdKJ7stbyzTffMHDgQH777TcqVaqkgiYikgDuNictphG0+xGbEbjPgIFRR5HeeUXG9DXGbDLGbAoLC3vAWCIOOf6X6yCBlOlcI2iJoKBduXKF3r178+yzz1KjRg0KFSrkdCQRkWTjbiNpDR5w3UeB/Dfc9gGO37KMPzDNGAOQA2hmjAm31s67cSFr7VhgLLgusP6AuUQS3tEAmNQG0mZ2jaBlLeh0onvat28f7dq1Y9u2bbzzzju8/fbbpEhx31eSExGROLpjSbPWBj3gujcCvsaYQsAxoDPQ9ZZtRP9abowZDyy8taCJJHpHNsCP7SBdNtdBAlny3/s5HmDChAkcPnyYn3/+mUcffdTpOCIiyY7bfi221oYDL+A6ajMQmGGt3WmMecYY84y7tiviUQ6tcY2gpc8JvRZ5fEGLiIjgwIEDAAwePJitW7eqoImIOMRYm7j2HmYrUNIGHQp0OobIvR34E6Z0hMw+rhPVZsrjdKK7Onv2LN26dWPbtm3s2rWLLFmyOB1JRCTRM8YEWGv94/Lc2FxgXUTu174VMLULZC3gmoOWIZfTie5q06ZNtG/fnhMnTvDFF1+QOXNmpyOJiCR7mgUsEt/2LoepnSFbYddRnB5e0L777jtq1KiBtZZVq1bRt29fog7mERERB6mkicSnf35xjaDl8HWNoKXP4XSiu4qMjGTu3LnUqVOHgIAAKlfW6QpFRDyFdneKxJfAhTCzF+QuDd3nuo7m9FAHDhwgZcqU+Pj4MH36dNKmTYuXl5fTsURE5AYaSROJDzvnwcyekKc89Jjv0QVt8eLFVKpUiT59+gCQIUMGFTQREQ+kkibyoHbMhllPQL5KrhG0tFmcThSjyMhIhg4dSvPmzcmfPz9ffvml05FEROQutLtT5EFsnQ7znoGHq0PXGZA6g9OJYnTu3Dkef/xxFi1aRPfu3RkzZgzp0qVzOpaIiNyFRtJE4uqvyTD3aShYE7rN9NiCBuDl5cWRI0f46quvmDBhggqaiEgioJE0kbgImAA/vQSF60LnKZDKM0vP7NmzadasGZkyZWLz5s14e+u/vIhIYqGRNJH7tfE7+KkfFG0IXaZ5ZEG7evUqTz/9NO3bt2f06NEAKmgiIomMvmuL3I/138Di16HYo9BxAnindjrRbQ4fPkz79u3ZuHEjgwYN4uWXX3Y6koiIxIFKmkhsrfkSlr4FJVpA+3HgncrpRLf5888/adOmDWFhYcydO5fWrVs7HUlEROJIuztFYmPVp66CVqo1dBjvkQUNIE+ePJQsWZJNmzapoImIJHIqaSL38vuHsPwdKNMe2n0PXimdTnST8+fP88knn2CtpWjRovzxxx/4+vo6HUtERB6QSprInVgLK4bDiv+Dcp2h7Vjw8qwZAlu3bsXf35+BAweydetWAF0cXUQkiVBJE4mJtfDru/D7CKjwOLT+ClJ41qWTJk6cSPXq1QkJCeH333/Hz8/P6UgiIhKPVNJEbmUtLHsbVn0ClXrDY194XEF788036dmzJ1WqVGHz5s088sgjTkcSEZF45ln7bkScZi388gas/xoqPwXNRoIH7j6sW7cu4eHhDB8+XOc/ExFJooy11ukM9yVbgZI26FCg0zEkKYqMdJ0DbeO3UO05aDLcowrab7/9xo4dO+jXr5/TUUREJJaMMQHWWv+4PFe7O0XAVdB+7u8qaI/086iCZq1lxIgRNGrUiG+//ZarV686HUlERBKASppIZAT89CIEjIdar0Kjdz2moF24cIG2bdsyaNAg2rdvz9q1a0md2vOuciAiIvFPk1kkeYuMgHnPwbZpUGcQ1B3kMQXt2rVrPPLII+zevZtPP/2Ul156SafXEBFJRlTSJPmKCIe5T8OOWVDvf1BngNOJbpIqVSpefvllSpQoQa1atZyOIyIiCUy7OyV5igiD2U+6ClrDdzymoF27do2XXnqJn376CYCnnnpKBU1EJJlSSZPkJ/wazOwFu+ZB4/+Dmv2dTgTAsWPHqFu3LqNGjWLTpk1OxxEREYdpd6ckL+FXYUZP2L0Ymo6Aas84nQiAlStX0qlTJy5fvsz06dPp2LGj05FERMRhKmmSfISFwvTHYe8yaP4xVO7jdCIAtm3bRsOGDSlatCgrVqygVKlSTkcSEREPoN2dkjxcuwJTO8Pe5fDYKI8oaNdPJF22bFm++OILNmzYoIImIiLRVNIk6bt2GaZ0hP0rXRdKr9TT6UTs2rWLKlWqEBgYiDGGZ599lkyZMjkdS0REPIhKmiRtV4Nhcgc4tBrajgW/rk4nYsaMGVSpUoXDhw8TFBTkdBwREfFQKmmSdIVehB/bweF10O47KOfsZPywsDD69+9Pp06dKF++PJs3b6ZGjRqOZhIREc+lkiZJU8h5mNQGjgVAh3FQpp3Tifjiiy/47LPPePHFF1mxYgX58uVzOpKIiHgwHd0pSc+VIPixLfy7AzpOhBLNHY1z9epVUqdOzfPPP0/x4sVp3tzZPCIikjhoJE2SlstnYWJLOLkTOv3oaEGz1vLZZ59Rrlw5zp07R+rUqVXQREQk1lTSJOm4dBomPAand0PnqVC8qXNRLl2iS5cu9O/fn1KlSpEihf6riYjI/dFPDkkagk/ChBYQtB+6Tgffho5F+fvvv6latSozZ87kgw8+YM6cOWTOnNmxPCIikjhpTpokfhdPuEbQLh6HbjOhkLMXJH/ttdc4ffo0y5Yto379+o5mERGRxEslTRK3C8dcBe3SSXh8NhSo7kiM8PBwLl++TObMmfnuu+8IDw/Hx8fHkSwiIpI0qKRJ4nX+sKugXQmC7nMhfxVHYpw8eZLOnTuTIkUKli1bxkMPPeRIDhERSVo0J00Sp3MHYVxzCDkH3ec5VtDWrl1LxYoVWb9+Pb169dIBAiIiEm/0E0USn7P7XAXt6kXosQB8KiV4BGstX375JXXq1CFt2rSsXbuW7t27J3gOERFJulTSJHE5sxfGN4ewK9BrIeT1cyRGcHAwI0eOpGnTpmzatIny5cs7kkNERJIuzUmTxOP0P645aJERroKWu3SCR9i/fz/58+cnU6ZMrFmzhjx58mgXp4iIuIV+ukjicHKXawTNWuj1syMFbd68eVSoUIEhQ4YAkC9fPhU0ERFxG/2EEc/373ZXQUvhDb0XQa4SCbr58PBw3njjDdq0aUOxYsV45plnEnT7IiKSPGl3p3i241tgUmtImQ56/gTZiyTo5k+fPk2XLl349ddf6du3L59//jlp0qRJ0AwiIpI8qaSJ5zoWAJPaQOrM0OsnyFowwSP8+++//PXXX/zwww/07t07wbcvIiLJl0qaeKYjG+DHdpAum2sELcvDCbZpay0rV66kXr16lC1bloMHD5IxY8YE276IiAhoTpp4okNrXSNo6XNAr0UJWtCuXLlCr169qF+/PosXLwZQQRMREUdoJE08y8FVMLkjZMrrGkHLlCfBNr1v3z7atm3L9u3bGTp0KE2aNEmwbYuIiNxKJU08x/6VMKUzZC3gupJAxtwJtumff/6Zbt26kSJFCn7++WceffTRBNu2iIhITFTSxDPsXQ7TukG2ItBjPmTImaCbDw0NpUiRIsyaNYtChQol6LZFRERiYqy1Tme4L9kKlLRBhwKdjiHxafdSmN4NchaH7vMhffYE2eyZM2dYs2YNLVu2BCAiIgIvL68E2baIiCQPxpgAa61/XJ6rkTRx1t8/w4yerisIdJ/rOpozAWzcuJH27dsTFBTEwYMHyZ49uwqaiIh4FB3dKc7ZNR9m9IA85Vy7OBOgoFlr+fbbb6lZsyYAK1asIHv2hBm5ExERuR8qaeKMHbNhZm/IW9E1gpY2i9s3aa2lb9++9O3bl7p16xIQEIC/f5xGoEVERNxOJU0S3rYZMLsP5K8K3edAmswJslljDD4+Prz99tssWrSIHDlyJMh2RURE4kIHDkjC2jIF5j0HBWtC1+mQKr3bN7l48WLSpk1L3bp13b4tERGRGz3IgQMaSZOEs3miq6AVrgtdZ7i9oEVGRvLOO+/QvHlzhg8f7tZtiYiIxDcd3SkJY+P38PMrULQhdJoMKdO4dXNBQUE8/vjjLF68mJ49e/LVV1+5dXsiIiLxTSVN3G/9WFg8AIo1hY4TwTu1Wzd34sQJHnnkEY4dO8aYMWPo27cvxhi3blNERCS+qaSJe60dDUvehBItoP048E7l9k0+9NBDNGvWjB49elC1alW3b09ERMQdNCdN3GfVZ66CVqoVdBjv1oIWGhrKK6+8woEDBzDGMHr0aBU0ERFJ1FTSxD3+GAnLh0CZdtDuB/BK6bZNHTp0iFq1avHpp5+yZMkSt21HREQkIWl3p8Qva2HlB/D7B1CuE7T6Crzc989s6dKldOnShfDwcObNm0erVq3cti0REZGEpJE0iT/Wwm/vuQqaXzdo/bVbC9r8+fNp2rQpefPmZdOmTSpoIiKSpKikSfywFpYNhj8/hoo9oeWXkMK9Fyxv2LAhgwYNYt26dfj6+rp1WyIiIglNJU0enLWuAwTWjILKfaDFZ5DCPf+0tm7dSqtWrbh06RLp06dn+PDhpE/v/qsWiIiIJDSVNHkw1sLi12HdV1D1WWj2kdsK2sSJE6lWrRoBAQEcPnzYLdsQERHxFCppEneRkbCwP2wYC4+8CE3fBzecNPbq1as899xz9OzZk+rVq7N582ZKlSoV79sRERHxJCppEjeRkfBTPwgYBzVfgUbvuaWgAbzwwgt8/fXXvP766yxdupRcuXK5ZTsiIiKexFhrnc5wX7IVKGmDDgU6HSN5i4yA+c/D1qlQZyDUfcMtBc1aizGGgwcP8tdff9GmTZt434aIiIg7GWMCrLX+cXmuzpMm9yciHOY9A9tnQr23oM7r8b4Jay0jRoxg06ZNzJgxg4IFC1KwYMF4346IiIgn0+5Oib2IMJjTx1XQGgxxS0G7cOECbdq04Y033sDb25tr167F+zZEREQSA42kSeyEX4NZveHvhdB4mOtAgXi2fft22rZty8GDB/nss8/o168fxk3z3ERERDydSprcW/hVmNETdi+Gph9AtWfjfxPh4bRq1YqQkBBWrFhBzZo1430bIiIiiYlKmtxdWCjM6A57lrrOgVblqXhd/bVr1/Dy8sLb25vp06fj4+NDnjx54nUbIiIiiZHmpMmdhYXAtC6wZxk89nm8F7Rjx45Rt25dhg4dCkDlypVV0ERERKK4taQZY5oaY/4xxuw1xgyK4fFuxphtUX/WGGPKuzOP3Idrl2FKR9i3AlqNhkq94nX1K1eupGLFimzbto0yZcrE67pFRESSAreVNGOMFzAaeBQoBXQxxtx6mvgDQB1rbTngPWCsu/LIfbh6CSZ3gIOroM03UKFbvK3aWsvIkSNp2LAh2bJlY8OGDXTs2DHe1i8iIpJUuHMkrQqw11q731p7DZgGtLpxAWvtGmvtuaib6wAfN+aR2Ai9CD+2g8ProO23UL5TvK7+n3/+4a233qJNmzZs2LBBl3cSERG5A3ceOJAPOHLD7aNA1bss/ySw2I155F5CL7gK2vG/oP0PULp1vK369OnT5MyZkxIlSrBx40bKlSun02uIiIjchTtH0mL6CRzjNaiMMfVwlbSBd3i8rzFmkzFmU1hYWDxGlGgh52BiKzi+BTpMiNeCNn36dAoXLsycOXMAKF++vAqaiIjIPbizpB0F8t9w2wc4futCxphywHdAK2vt2ZhWZK0da631t9b6p0yZ0i1hk7UrQTChJZzcCZ1+hJIt4mW1YWFh9O/fn86dO1OuXDmqVasWL+sVERFJDtxZ0jYCvsaYQsaYVEBnYMGNCxhjHgbmAN2ttbvdmEXu5PIZGN8CTv8DnadC8abxstoTJ05Qv3796CsHrFixgrx588bLukVERJIDt81Js9aGG2NeAJYAXsAP1tqdxphnoh4fAwwGsgNfRe3+Co/rleIlDi6dco2gnTsAXadBkfrxturffvuNzZs3M2XKFLp06RJv6xUREUkujLUxThPzWNkKlLRBhwKdjpH4Bf8LEx6DC0eh63QoVPuBV2mt5e+//6ZkyZIAHD9+XKNnIiKSrBljAuI6AKUrDiRHF47BuGZw8Tg8PjteClpwcDCdO3emUqVK7Nu3D0AFTURE5AHo2p3JzfkjMKEFXD4Lj8+Bh+92VpTYCQwMpF27dvzzzz+8//77FC5cOB6CioiIJG8qacnJuUOughZyAXrMB59KD7zKWbNm0bt3b9KmTcuyZcuoXz/+5rWJiIgkZyppyUXQfhj/GFy7BD3nQ94K8bLa1atXU6ZMGWbOnImPjy4YISIiEl904EBycGav6yCB8FDXCFqecg+0upMnT3Ly5EnKlStHWFgY1lpSpUoVT2FFRESSjgc5cEAjaUnd6d2ughYZDr0WQu7SD7S6NWvW0KFDBzJmzMjOnTvRyYVFRETcQ0d3JmWnAmF8M7CR0OvnBypo1lpGjRpFnTp1SJs2LTNmzMDLyysew4qIiMiNVNKSqn+3w/jmYLxcBS1XiTivKiQkhG7duvHSSy/RrFkzNm3aRLlyD7bLVERERO5OJS0pOr7FtYvTOw30XgQ5iz3Q6lKlSkVQUBDDhw9n7ty5ZMmSJV5iioiIyJ1pTlpScywAJrWB1Jmg50+QrVCcV7VgwQIqV65Mnjx5WLRoESlSqNOLiIgkFP3UTUqObISJrSFNFtcuzjgWtPDwcAYNGkSrVq0YNmwYgAqaiIhIAtNIWlJxeB382B4y5HSNoGWO2znLTp06RefOnVmxYgVPP/00n3zySTwHFRERkdhQSUsKDq6CyR0hUx5XQcsUt2tm7tixg6ZNm3L27FnGjRtHr1694jeniIiIxJr2YSV2+393jaBl9oFei+Jc0AB8fHwoVaoUa9euVUETERFxmEpaYrb3V5jS0TX3rNfPkDH3fa/iypUrDB06lKtXr5IlSxaWLl2Kn59f/GcVERGR+6KSlljtXgpTu0B2X+i50DUX7T7t3buX6tWrM3ToUJYvX+6GkCIiIhJXKmmJ0T+LYXo31wlqey6A9NnvexULFizA39+fo0ePsmjRIpo3b+6GoCIiIhJXKmmJza4FMP1xyF3GdbH0dNnuexWjR4+mVatWFClShICAAJo2beqGoCIiIvIgVNISkx1zYGYvyFsResyDtFnjtJoGDRrw/PPPs3r1agoWLBifCUVERCSeqKQlFttmwuwnIX8V6D4H0mS+r6dv3LiR119/HWstJUqU4MsvvyRNmjRuCisiIiIPSiUtMdgyFeb2hQI1oNssSJ0x1k+11jJ27Fhq1qzJjBkzOH36tBuDioiISHxRSfN0myfBvGehUG3oOgNSZ4j1U0NCQnjiiSd4+umnqV+/PgEBAeTKlcuNYUVERCS+qKR5sk0/wIIXoGgD6DINUqWL9VOttTRv3pzx48czZMgQFi5cSPbs938UqIiIiDjDWGudznBfshUoaYMOBTodw/02fAuLXgPfJtBxIqS8//ljixcvJjIyUqfXEBERcYgxJsBa6x+X5+ranZ5o7Vew5A0o3hw6jAfvVLF6WkREBO+++y6ZM2fmlVde4dFHH3VvThEREXEb7e70NKs/dxW0ki2h44RYF7SgoCBatGjBu+++y65du0hsI6QiIiJyM42keZI/PoLf3oPSbaHtWPBKGaunbd68mXbt2nH8+HHGjBlD3759Mca4OayIiIi4k0qaJ7AWfh8BK9+Hsh2h9dfgFbuP5tSpU9SqVYvs2bOzatUqKleu7OawIiIikhBU0pxmLfw2DP78CPy6QcsvIIXXPZ8WGRlJihQpyJUrF+PGjaN+/frkyJEjAQKLiIhIQtCcNCdZC8uHuApaxR7Q8stYFbSDBw9SrVo1fvnlFwA6duyogiYiIpLEqKQ5xVpY8pbrQAH/J6HF55Di3h/HkiVLqFSpEv/88w8REREJEFREREScoJLmBGth8UBYNxqqPgPNP75nQYuMjOS9997j0UcfJV++fGzatEnnPxMREUnCVNISWmQk/PwKbPgGqr8ATT+AWByJuWDBAgYPHky3bt1Yu3Ytvr6+CRBWREREnKIDBxJSZCQsfAk2T4Sa/aHBkHsWtCtXrpAuXTpatWrF4sWLadKkiU6vISIikgxoJC2hREbA/OddBa3267EqaBMmTKBw4cLs3r0bYwxNmzZVQRMREUkmVNISQkQ4zH0Gtk6Bum9C/bfuWtCuXr3Ks88+S69evShVqhRZsmRJuKwiIiLiEVTS3C0iDOY8BdtnQIPBUHfgXRc/cuQItWvXZsyYMQwcOJClS5eSK1euBAorIiIinkJz0twp/BrMfhICF0Cj96BGv3s+5eOPPyYwMJDZs2fTtm3bBAgpIiIinsgktgtxZytQ0gYdCnQ6xr2FX4WZveCfRdDkfaj+3B0XjYyM5PTp0+TOnZuQkBCOHj2qozdFRESSAGNMgLXWPy7P1e5OdwgLhemPuwpas4/uWtDOnz9PmzZtqFWrFpcvXyZt2rQqaCIiIqLdnfEuLASmdYV9v0GLz8C/9x0X3bZtG23btuXQoUN8/PHHpEuXLuFyioiIiEdTSYtP167A1M5w4A/XdTgrdr/joj/++CN9+/YlS5YsrFy5kho1aiRgUBEREfF0Kmnx5eolmNIJDq+BNmOgfOc7LhoREcHo0aOpXLky06dP56GHHkrAoCIiIpIYqKTFh6vBMLkDHNkAbb+Fsu1jXOzo0aOkTZuW7Nmz89NPP5E5c2ZSpkyZwGFFREQkMVBJe1ChF+DHdnD8L2j/PZRuE+NiK1asoFOnTtSpU4eZM2eSI0eOBA4qIg8qLCyMo0ePEhoa6nQUEfEwadKkwcfHJ14HX1TSHkTIOZjUFv7dDh3GQ8nHblvEWsvIkSN54403KF68OO+++27C5xSReHH06FEyZsxIwYIFdYk2EYlmreXs2bMcPXqUQoUKxdt6dQqOuLoSBBNbwckd0GlSjAXt4sWLtG/fnoEDB9KuXTvWr19PyZIlHQgrIvEhNDSU7Nmzq6CJyE2MMWTPnj3eR9lV0uLi8hmY0BJO/Q2dp0DxR2NcLCQkhICAAD7++GOmT59OxowZEzioiMQ3FTQRiYk7vjeopN2vS6dgfAs4uwe6TAXfRrctsmzZMsLDw8mdOzeBgYG88sor+sYuIvEiQ4YM0V8vWrQIX19fDh8+zDvvvEO6dOk4depUjMveSbNmzTh//vxdl6lbty6bNm267f7x48fzwgsvxD78ffjoo48oUaIEZcqUoXz58kycOPGuWeJi06ZN9Ovnulzf1atXadiwIX5+fkyfPp0+ffqwa9euOK/7nXfeIV++fPj5+VGqVCmmTp0a/Zi1lmHDhuHr60uxYsWoV68eO3fujH780qVLPP300xQpUoTSpUtTu3Zt1q9ff9s2rLXUr1+fixcvxjmnuzVt2pQsWbLQokWLOy5z9epVOnXqRNGiRalatSoHDx6MfmzChAn4+vri6+vLhAkTou8/cOAAVatWxdfXl06dOnHt2jXA9Z7069ePokWLUq5cOTZv3hz9nF9++YXixYtTtGhRPvjgg+j7g4KCaNSoEb6+vjRq1Ihz584BsH37dnr16hVP70TcqKTdj+B/YXxzOH8Ius6Aog1uejgsLIyXX36Zxo0b88033wCQNm1aJ5KKSBL366+/8uKLL/LLL7/w8MMPA5AjRw4+/vjj+1rPokWLyJIlixsS3p21lsjIyBgfGzNmDMuWLWPDhg3s2LGDP/74A3dcwtDf359Ro0YB8NdffxEWFsaWLVvo1KkT3333HaVKlYr1uiIiIm67r3///mzZsoX58+fz9NNPExYWBsDo0aNZs2YNW7duZffu3bzxxhu0bNkyeldZnz59yJYtG3v27GHnzp2MHz+eM2fO3Lb+RYsWUb58eTJlyvRAOd1pwIABTJo06a7LfP/992TNmpW9e/fSv39/Bg4cCLjK09ChQ1m/fj0bNmxg6NCh0QVq4MCB9O/fnz179pA1a1a+//57ABYvXsyePXvYs2cPY8eO5dlnnwVcr/v5559n8eLF7Nq1i6lTp0aX8A8++IAGDRqwZ88eGjRoEF3gypYty9GjRzl8+LBb3ptYsdYmqj9ZHy5hHXHhmLWjKlo7LI+1B1bd9vDx48dtjRo1LGBffvlle+3aNQdCiog77dq1y+kINn369PaPP/6whQoVsoGBgdH3DxkyxA4ZMsQWKFDAnj17NnrZ6yZNmmQrV65sy5cvb/v27WvDw8OttdYWKFDAnj592lpr7bvvvmuLFy9uGzZsaDt37mxHjhxprbW2Tp069vXXX7eVK1e2vr6+9o8//rDWWjtu3DjbsmVL26RJE1usWDH7zjvvRG/v448/tqVLl7alS5e2n376qbXW2gMHDtgSJUrYZ5991vr5+dmDBw/anj172tKlS9syZcrYTz75xFprbf78+e3evXtjfP116tSxGzdutNZa+8wzz9hKlSrZUqVK2cGDB0cvM3DgQFuyZElbtmxZ++qrr1prrZ0xY4YtXbq0LVeunK1Vq5a11toVK1bY5s2b25MnT9oiRYrYTJky2fLly9u9e/fetJ0lS5bYatWq2QoVKtj27dvb4ODg6Pdu6NChtkaNGnbq1Kk35RwyZEj0+2ettblz57YnT5601lrr4+Nz2+t7/PHH7XfffWf37t1rCxYsGP353E2XLl3sihUrom+3atXKVqxY0ZYqVcp+88030fenT5/evv3227ZKlSr2zz//vOO/hTu9nw/q+vt8J40bN7Zr1qyx1lobFhZms2fPbiMjI+2UKVNs3759o5fr27evnTJlio2MjLTZs2e3YWFh1lpr16xZYxs3bnzTMtcVK1bMHj9+/KZlrLV2+PDhdvjw4TctY63rZ3mxYsWil/vss8/siBEjYv1aY/oeAWyycew8OrozNs4fgQmPueaidZ8DD1e76eE1a9bQtm1bgoODmTp1Kp073/lEtiKSNAz9aSe7jsfvbqZSeTMx5LHSd13m6tWrtGrVipUrV1KiRImbHsuQIQNPPPEEn3/+OUOHDo2+PzAwkOnTp7N69WpSpkzJc889x+TJk+nRo0f0Mps2bWL27Nn89ddfhIeHU7FiRSpVqhT9eHh4OBs2bGDRokUMHTqU5cuXA0SPdqVLl47KlSvTvHlzjDGMGzeO9evXY62latWq1KlTh6xZs/LPP/8wbtw4vvrqKwICAjh27Bg7duwAXNcyDg4OJjg4mCJFitzz/fq///s/smXLRkREBA0aNGDbtm34+Pgwd+5c/v77b4wx0bty3333XZYsWUK+fPlu272bK1cuvvvuOz766CMWLlx402Nnzpxh2LBhLF++nPTp0zNixAg++eQTBg8eDLhOu7Bq1aq75ty8eTO+vr7kypWLixcvcvny5dten7+/Pzt37iRnzpz4+fnh5eV1z9e/evXq6L02AD/88APZsmUjJCSEypUr065dO7Jnz87ly5cpU6YM7777LoGBgYwYMSLGfwsxvZ/lypW7aZsjR45k8uTJt2WpXbt29Kjk/Tp27Bj58+cHwNvbm8yZM3P27Nmb7gfw8fHh2LFjnD17lixZsuDt7X3T/beu68bHYrr/+i7kkydPkidPHgDy5Mlz05QBf39/PvjgA15//fU4vbYHpZJ2L+cOwYQWEHIBeswDn9svZJ8mTRpy587Nr7/+SunSd/8GKyLyIFKmTMkjjzzC999/z+eff37b4/369cPPz49XX301+r5ff/2VgIAAKleuDLgOasqVK9dNz1u1ahWtWrWKnqLx2GM3H7Hetm1bACpVqnTTnKFGjRqRPXv26GVWrVqFMYY2bdqQPn366Pv//PNPWrZsSYECBahWzfWLbuHChdm/fz8vvvgizZs3p3Hjxly6dCnWc3hnzJjB2LFjCQ8P58SJE+zatYtSpUqRJk0a+vTpQ/PmzaPnQtWoUYNevXrRsWPH6NcSG+vWrWPXrl3Rl+67du0a1atXj368U6dOd3zup59+yrfffsv+/fv55Zdf7roda+19z10OCgq66YC0UaNGMXfuXACOHDnCnj17yJ49O15eXrRr1w64+7+FmN7PW0vagAEDGDBgwH3lvBcbw65sY8x93x+Xdd1Lrly5OH78+D2XcxeVtLsJ2u86ivNqsKug5asY/VBwcDBz5syhZ8+eVKxYkb/++osUKTTFTyS5uNeIl7ukSJGCGTNm0LBhQ4YPH86bb7550+NZsmSha9eufPXVV9H3WWvp2bMn77///h3XG9MPsRulTp0aAC8vL8LDw6Pvv/UH3Z1+IF53vbgBZM2ala1bt7JkyRJGjx7NjBkz+OGHH0ifPj379++ncOHCd1zPgQMH+Oijj9i4cSNZs2alV69ehIaG4u3tzYYNG/j111+ZNm0aX375Jb/99htjxoxh/fr1/Pzzz/j5+bFly5a7vt7rrLU0atTopon/d3o9t+rfvz+vvfYac+bMoUePHuzbt49MmTLF+Po2b95MnTp1KF26NFu3biUyMvKeP1O8vb2jl1u5ciXLly9n7dq1pEuXjrp160bPcUuTJk30yNyd/i3c6f28lTtG0nx8fDhy5Ag+Pj6Eh4dz4cIFsmXLho+PDytXroxe7ujRo9StW5ccOXJw/vx5wsPD8fb25ujRo+TNm/emdd34nLx583Lt2rUY7wfInTs3J06cIE+ePJw4ceKmX2BCQ0MdnVuuVnEnZ/fBuOZw7TL0XHBTQQsMDKRKlSo88cQTBAYGAqigiUiCSZcuHQsXLmTy5MnRE6Zv9Morr/DNN99El6kGDRowa9as6N04QUFBHDp06Kbn1KxZk59++onQ0FAuXbrEzz//HKssy5YtIygoiJCQEObNm0eNGjWoXbs28+bN48qVK1y+fJm5c+dSq1at25575swZIiMjadeuHe+99170kXhvvPEGzz//fPRRixcvXmTs2LE3PffixYukT5+ezJkzc/LkSRYvXgy4joy8cOECzZo147PPPosuY/v27aNq1aq8++675MiR46Yf2HdTrVo1Vq9ezd69ewG4cuUKu3fvjtVzr2vbti3+/v7RRycOGDCAfv36ERISAsDy5ctZtWoVXbt2pUiRIvj7+zNkyJDosrtnzx7mz59/23qLFy/O/v37Abhw4QJZs2YlXbp0/P3336xbty7GLHf6t3Cn9/NWAwYMYMuWLbf9iWtBA2jZsmX0ezNr1izq16+PMYYmTZqwdOlSzp07x7lz51i6dClNmjTBGEO9evWYNWsW4DoCtFWrVtHrmjhxItZa1q1bR+bMmcmTJw+VK1dmz549HDhwgGvXrjFt2jRatmx52/ZvXBfA7t27KVOmTJxf24PSSFpMTu92zUGLDIOeP8FD/31AM2fO5IknniBt2rQsW7ZMJ6cVEUdky5aNX375hdq1a992mbkcOXLQpk0bPv30UwBKlSrFsGHDaNy4MZGRkaRMmZLRo0dToECB6OdUrlyZli1bUr58eQoUKIC/vz+ZM2e+Z46aNWvSvXt39u7dS9euXfH3d00J6dWrF1WqVAFcRytWqFDhpt2k4Jo/1Lt37+ijPK+P7jz77LNcunSJypUrkzJlSlKmTHnT7luA8uXLU6FCBUqXLk3hwoWjd0cGBwfTqlUrQkNDsdZGvwcDBgxgz549WGtp0KAB5cuX5/fff7/n68uZMyfjx4+nS5cuXL16FYBhw4ZRrFixez73RoMHD6Zr16489dRTvPjii5w7d46yZcvi5eXFQw89xPz586NHbL777jteffVVihYtSrp06ciePTsjR468bZ3Nmzdn5cqVFC1alKZNmzJmzBjKlStH8eLFo3cp3+pO/xaqVasW4/v5oGrVqsXff//NpUuX8PHx4fvvv6dJkyYMHjwYf39/WrZsyZNPPkn37t0pWrQo2bJlY9q0aYDr3/jbb78dvWt28ODBZMuWDYARI0bQuXNn/ve//1GhQgWefPJJwHVKmUWLFkW/d+PGjQNco45ffvklTZo0ISIigieeeCJ6etKgQYPo2LEj33//PQ8//DAzZ86Mzr9ixQqaN28eL+9FXJh7DXF7mmwFStqgQ4Hu28CpQNcuTnCNoOX6r4S9/fbbDBs2jGrVqjFz5kx8fHzcl0NEPE5gYGCS/sXs0qVLZMiQgStXrlC7dm3Gjh1LxYoV7/1EccSJEyfo0aMHy5YtczpKknT16lXq1KnDqlWrog9SuJeYvkcYYwKstbdPaI8F7aO70b87XCeqNSmg1883FTSA0qVL8/zzz/P777+roIlIktO3b1/8/PyoWLEi7dq1U0HzcHny5OGpp57y6JPZJmaHDx/mgw8+iHVBcweNpF13YqvrWpzeaaHXQsjuOjx69erVHDx4kG7dusX/NkUkUUnqI2ki8mA0kuYOxza75qClygC9f4bsRbDW8vnnn1O3bl3ef//9m45mEhEREXE3lbSjm2Bia0iT2bWLM1thLl26RNeuXXn55Zdp1qzZfe2PFhEREYkPybt5HF4HP7aH9DlcR3FmyU9ISAjVq1dn165dDB8+nIEDB+r0GiIiIpLgkm9JO7gaJneATHlcBS2T66R2adOmpWvXrlSuXJmGDRs6HFJERESSq+Q5RLT/d5jcHjL7QK+fCU+XizfeeCP6+mtvvPGGCpqIiIg4KvmVtH2/wZSOkLUg9FrIqZAUNG7cmA8++OCe11YTEXGal5cXfn5+lC5dmvLly/PJJ59Enwz2fg0ePDj6QukxGTNmDBMnTrzv9S5ZsgQ/Pz/8/PzIkCEDxYsXx8/P76YLusfVRx99RIkSJShTpgzly5ePzle3bl02bdr0wOsH18Xm+/XrB7jOldWwYUP8/PyYPn06ffr0YdeuXXFe9zvvvEO+fPnw8/OjVKlSN11uylrLsGHD8PX1pVixYtSrV4+dO3dGP37p0iWefvppihQpQunSpaldu3b0RcJvZK2lfv36Hn1qjgkTJuDr64uvr2/02f5vNX78+OgLzvv5+fHdd98BrhPMXr/Pz8+PNGnSMG/ePMB18tzr9+fNm5fWrVsDcO7cOdq0aUO5cuWoUqUKO3bsiN5OwYIFKVu2LH5+ftEnYwbXdVmvr6tgwYL4+fkBsH37dnr16hXv70mMrLWJ6k/Wh0vYONu91Np3c1r71SPWXjpt16xZY/Ply2fTpEljx48fH/f1ikiysGvXLqcj2PTp00d/ffLkSdugQQM7ePBgBxPdXZ06dezGjRtvuz88PPy+1/X111/bxo0b2wsXLlhrrT1//nz09+47bedBrV271tauXTvOz7/1dQ4ZMsSOHDnSWmvt7t27bcaMGe21a9estdZ+8cUX9tFHH7WXL1+21lq7ZMkSW7hwYRsSEmKttbZTp0520KBBNiIiwlpr7b59++zChQtv2+bChQvtyy+//EA53ens2bO2UKFC9uzZszYoKMgWKlTIBgUF3bbcuHHj7PPPP3/PdWXNmjX6PbtR27Zt7YQJE6y11r722mv2nXfesdZaGxgYaOvXrx+9XIECBezp06fvup1XXnnFDh06NPp2gwYN7KFDh25bLqbvEcAmG8fOk3xG0v5ZDNO6Qs7i0PMnNgUepE6dOqRKlYq1a9fSs2dPpxOKSGKyeJDr+r7x+WfxoPuKkCtXLsaOHcuXX36JtZaIiAgGDBhA5cqVKVeuHN988030sh9++CFly5alfPnyDBrk2k6vXr2ir384aNAgSpUqRbly5XjttdcA16jPRx99BMCWLVuoVq0a5cqVo02bNpw7dw5wjWANHDiQKlWqUKxYMf7888875i1YsCDvvvsuNWvWZObMmSxdupTq1atTsWJFOnTowKVLlwAICAigTp06VKpUiSZNmnDixAkAhg8fzldffUWmTJkAyJw5c4zfu5999ln8/f0pXbo0Q4YMib4/ptc4c+bM6FG52rVrA7By5UpatGjBqVOnePzxx9myZQt+fn7s27fvphG7O+W/9XXeia+vL+nSpYt+L0eMGMEXX3xBunTpAGjcuDGPPPIIkydPZt++faxfv55hw4ZFH8xWuHDhGC9ZNHny5JuuP9m6dWsqVapE6dKlb7oGaoYMGRg8eDBVq1Zl7dq1/Pjjj1SpUgU/Pz+efvppIiIi7vp+xtWSJUto1KgR2bJlI2vWrDRq1CjOe7JmzZrFo48+Gv2eXRccHMxvv/0WPZK2a9cuGjRoAECJEiU4ePAgJ0+ejNU2rLXMmDGDLl26RN/32GOPRV++yp2SR0kL/Ammd4fcZVyXekqXjYoVKzJkyBACAgKihzBFRBKbwoULExkZyalTp/j+++/JnDkzGzduZOPGjXz77bccOHCAxYsXM2/ePNavX8/WrVt5/fXXb1pHUFAQc+fOZefOnWzbto3//e9/t22nR48ejBgxgm3btlG2bFmGDh0a/Vh4eDgbNmzgs88+u+n+mKRJk4ZVq1bRsGFDhg0bxvLly9m8eTP+/v588sknhIWF8eKLLzJr1iwCAgJ44okneOuttwgODiY4OJgiRYrc8z35v//7PzZt2sS2bdv4/fff2bZt2x1f47vvvsuSJUvYunUrCxYsuGk9uXLl4rvvvqNWrVps2bLlpm2fOXMmxvy3vs7OnTvfMefmzZvx9fUlV65cXLx4kcuXL9/2+vz9/dm5cyc7d+7Ez88PLy+ve77+1atXU6lSpejbP/zwAwEBAWzatIlRo0Zx9uxZAC5fvkyZMmVYv3492bNnZ/r06axevZotW7bg5eXF5MmT7/h+3mrkyJE37YK8/uf6buMbHTt2jPz580ff9vHx4dixYzG+ltmzZ1OuXDnat2/PkSNHbnt82rRpN5Wn6+bOnUuDBg2iC3358uWZM2cOABs2bODQoUMcPXoUAGMMjRs3plKlSjeV2Ov+/PNPcufOja+vb/R9/v7+d/2FJL4k/aM7d86F2X0gbwX2Vh/JM491YNy4ceTPn5+33nrL6XQiklg9+oHTCaLZqCvHLF26lG3btkWPjl24cIE9e/awfPlyevfuHT3acP0i1ddlypSJNGnS0KdPH5o3b06LFi1uevzChQucP3+eOnXqANCzZ086dOgQ/Xjbtm0BqFSp0m0XUb9Vp06dAFi3bh27du2KvpD3tWvXqF69Ov/88w87duygUaNGAERERJAnTx6stRhjYvV+zJgxg7FjxxIeHs6JEyfYtWsXpUqVivE11qhRg169etGxY8fo1xEbd8p/6+uMyaeffsq3337L/v377zmCdD+v+7qgoCAyZswYfXvUqFHMnTsXgCNHjrBnzx6yZ8+Ol5cX7dq1A+DXX38lICAg+mLmISEh5MqVC4j5/SxXrtxN2xwwYAADBgyIVb7r/15vFNNrfOyxx+jSpQupU6dmzJgx9OzZk99++y368RMnTrB9+3aaNGly23OnTp1Knz59om8PGjSIl156CT8/P8qWLUuFChWiz3+6evVq8ubNy6lTp2jUqBElSpSIHlW9vq5bi2CuXLk4fvx4rF7vg0jaJW37LJjTF3wqsyBzb3rUqIeXlxeHDh26qcWLiCRW+/fvx8vLi1y5cmGt5Ysvvrjth9Yvv/xy1x/03t7ebNiwgV9//ZVp06bx5Zdf3vTD8F5Sp04NuA5quNfVWdKnTw+4flA3atToponz4JqUXbp0adauXRvjc/fv30/hwoXvuP4DBw7w0UcfsXHjRrJmzUqvXr0IDQ2942scM2YM69ev5+eff8bPz48tW7bE6jXfKf+trzMm/fv357XXXmPOnDn06NGDffv2kSlTphhf3+bNm6lTpw6lS5dm69atREZG3vPcnd7e3tHLrVy5kuXLl7N27VrSpUtH3bp1CQ0NBVyjfddH5qy19OzZk/fff/+mdd3p/bzVyJEjo0feblS7dm1GjRp1030+Pj6sXLky+vbRo0epW7fubc/Nnj179NdPPfUUAwcOvOnxGTNm0KZNG1KmTHnT/WfPnmXDhg3RxRRcv4iMGzcu+rUWKlSIQoUKAZA3r+sUXLly5aJNmzZs2LAhuqSFh4czZ84cAgICbtpGaGgoadOmvS1zfEu6uzu3ToM5TxHhU423dpejVYcuFC1alICAAGrWrOl0OhGRB3b69GmeeeYZXnjhBYwxNGnShK+//pqwsDAAdu/ezeXLl2ncuDE//PADV65cAVwjLTe6dOkSFy5coFmzZnz22We3FZXMmTOTNWvW6N07kyZNih5Vi6tq1aqxevVq9u7dC8CVK1fYvXs3xYsX5/Tp09ElLSwsLPoIxzfeeIPnn38++qjFixcv3rZ76uLFi6RPn57MmTNz8uRJFi9efNfXuG/fPqpWrcq7775Ljhw5Ytyldj/570fbtm3x9/ePPrpxwIAB9OvXj5CQEACWL1/OqlWr6Nq1K0WKFMHf358hQ4ZEj0Tt2bOH+fPn37be4sWLs3//fsA1Cpo1a1bSpUvH33//zbp162LM0qBBA2bNmsWpU6cA17+RQ4cO3fH9vNWAAQPYsmXLbX9uLWgATZo0YenSpZw7d45z586xdOnSGEfDrs9FBFiwYMFt18SMaYQLXPMMW7RoQZo0aaLvO3/+PNeuXQPgu+++o3bt2mTKlInLly8THBwMuHb/Ll26lDJlykQ/b/ny5ZQoUQIfH5+btrF79+6blnOXpDmStnkSLHgRCtVmxOGKDP9wKH369OGLL7646UMTEUlsQkJC8PPzIywsDG9vb7p3784rr7wCQJ8+fTh48CAVK1bEWkvOnDmZN28eTZs2ZcuWLfj7+5MqVSqaNWvG8OHDo9cZHBxMq1atCA0NxVrLp59+ett2J0yYwDPPPMOVK1coXLhw9KhEXOXMmZPx48fTpUsXrl69CsCwYcMoVqwYs2bNol+/fly4cIHw8HBefvllSpcuzbPPPsulS5eoXLkyKVOmJGXKlLz66qs3rbd8+fJUqFCB0qVLU7hw4ejdkXd6jQMGDGDPnj1Ya2nQoAHly5fn999/f6D892Pw4MF07dqVp556ihdffJFz585RtmxZvLy8eOihh5g/f370iM13333Hq6++StGiRUmXLh3Zs2dn5MiRt62zefPmrFy5kqJFi9K0aVPGjBlDuXLlKF68ONWqVYsxR6lSpRg2bBiNGzcmMjKSlClTMnr0aKpVqxbj+/kgsmXLxttvvx29a3Xw4MHRu+AHDx6Mv78/LVu2ZNSoUSxYsABvb2+yZcvG+PHjo9dx8OBBjhw5EuMvC9OmTYs+OOa6wMBAevTogZeXF6VKleL7778H4OTJk7Rp0wZwjZp17dqVpk2b3rSumIrgihUrYjxoI76ZmPYNe7JsBUraoEOBd15g0zhY+DIRherj1XUKwaHh/Pzzz3edvCkiEhuBgYG3/TYv4mlOnDhBjx49WLZsmdNRkqSrV69Sp06dGK/rHdP3CGNMgLXWnzhIWrs7N3yL/eklxhwuSo2vjnElzJIxY0YVNBERSTby5MnDU0895dEns03MDh8+zAcffHBbQXOHpFPS1n1NyPxX6b0yB8+O20zWbNmj9z+LiIgkJx07dow+/YTEL19f3xgPdHCHpFHSVo9i/9TXeWSKNxP/PMiQIUNYuHAhWbJkcTqZiCQxiW2KiIgkDHd8b0j8Bw78+TH8+i5PLE/PoQvXWLhwIc2aNXM6lYgkQWnSpOHs2bNkz579vs9dJSJJl7WWs2fPxvvBiYm6pEX8+j7XfnuftBU78kO31zHeKaPPeyIiEt98fHw4evQop0+fdjqKiHiYNGnS3Haqjgfl1pJmjGkKfA54Ad9Zaz+45XET9Xgz4ArQy1q7+Z4rtpaz896i24APyZS7ANPfHUNhr0TdN0UkEUiZUr8IikjCcducNGOMFzAaeBQoBXQxxpS6ZbFHAd+oP32Br++9Zsumr/pSqfcHrDhkadh9AKS497XMRERERBITdw4/VQH2Wmv3AxhjpgGtgF03LNMKmGhds+3WGWOyGGPyWGtP3L66qMAXj1Ljpe/InTUjq1Yto3LVqm58CSIiIiLOcOfRnfmAG6+vcTTqvvtd5iZBFy5Tp1wBNu/ap4ImIiIiSZY7R9JiOvTp1uNTY7MMxpi+uHaHAlxd9tehHTlz5XrAeOKQHMAZp0NInOizS9z0+SVu+vwSr+JxfaI7S9pRIP8Nt32A43FYBmvtWGAsgDFmU1wvryDO0+eXeOmzS9z0+SVu+vwSL2PMprg+1527OzcCvsaYQsaYVEBnYMEtyywAehiXasCFu81HExEREUku3DaSZq0NN8a8ACzBdQqOH6y1O40xz0Q9PgZYhOv0G3txnYKjt7vyiIiIiCQmbj25mLV2Ea4iduN9Y2742gLP3+dqx8ZDNHGOPr/ES59d4qbPL3HT55d4xfmzM7oOnYiIiIjnSRoXWBcRERFJYjy2pBljmhpj/jHG7DXGDIrhcWOMGRX1+DZjTEUncsrtYvHZdYv6zLYZY9YYY8o7kVNidq/P74blKhtjIowx7RMyn9xdbD4/Y0xdY8wWY8xOY8zvCZ1RYhaL752ZjTE/GWO2Rn12msftIYwxPxhjThljdtzh8Th1Fo8sae67pJS4Wyw/uwNAHWttOeA9NNfCY8Ty87u+3AhcBwaJh4jN52eMyQJ8BbS01pYGOiR0TrldLP/vPQ/sstaWB+oCH0edPUGcNx5oepfH49RZPLKkccMlpay114Drl5S6UfQlpay164Asxpg8CR1UbnPPz85au8Zaey7q5jpc58cTzxCb/3sALwKzgVMJGU7uKTafX1dgjrX2MIC1Vp+hZ4jNZ2eBjMYYA2QAgoDwhI0pMbHW/oHr87iTOHUWTy1pbrmklCSI+/1cngQWuzWR3I97fn7GmHxAG2AM4mli8/+vGJDVGLPSGBNgjOmRYOnkbmLz2X0JlMR10vftwEvW2siEiScPKE6dxa2n4HgA8XZJKUlwsf5cjDH1cJW0mm5NJPcjNp/fZ8BAa22E6xd68SCx+fy8gUpAAyAtsNYYs85au9vd4eSuYvPZNQG2APWBIsAyY8yf1tqLbs4mDy5OncVTS1q8XVJKElysPhdjTDngO+BRa+3ZBMom9xabz88fmBZV0HIAzYwx4dbaeQmSUO4mtt87z1hrLwOXjTF/AOUBlTRnxeaz6w18EHWO0b3GmANACWBDwkSUBxCnzuKpuzt1SanE656fnTHmYWAO0F2/vXuce35+1tpC1tqC1tqCwCzgORU0jxGb753zgVrGGG9jTDqgKhCYwDnldrH57A7jGgHFGJMb14W79ydoSomrOHUWjxxJ0yWlEq9YfnaDgezAV1GjMeG6cLBniOXnJx4qNp+ftTbQGPMLsA2IBL6z1sZ42gBJOLH8v/ceMN4Ysx3X7rOB1tozjoWWaMaYqbiOuM1hjDkKDAFSwoN1Fl1xQERERMQDeeruThEREZFkTSVNRERExAOppImIiIh4IJU0EREREQ+kkiYiIiLigVTSRCTeGWMijDFbbvhT8C7LXoqH7Y03xhyI2tZmY0z1OKzju+sXtDbGvHnLY2seNGPUeq6/LzuMMT9FXez8bsv7GWOaxce2RSTx0Sk4RCTeGWMuWWszxPeyd1nHeGChtXaWMaYx8JG1ttwDrO+BM91rvcaYCcBua+3/3WX5XoC/tfaF+M4iIp5PI2ki4nbGmAzGmF+jRrm2G2NaxbBMHmPMHzeMNNWKur+xMWZt1HNnGmPuVZ7+AIpGPfeVqHXtMMa8HHVfemPMz8aYrVH3d4q6f6Uxxt8Y8wGQNirH5KjHLkX9Pf3Gka2oEbx2xhgvY8xIY8xGY8w2Y8zTsXhb1hJ1gWVjTBVjzBpjzF9RfxePOuv8u0CnqCydorL/ELWdv2J6H0Uk6fDIKw6ISKKX1hizJerrA0AHoI219qIxJgewzhizwN48lN8VWGKt/T9jjBeQLmrZ/wENrbWXjTEDgVdwlZc7eQzYboyphOus3lVxnZ19vTHmd6AwcNxa2xzAGJP5xidbawcZY16w1vrFsO5pQCdgUVSJagA8CzyJ6zIvlY0xqYHVxpil1toDMQWMen0NgO+j7vobqB111vmGwHBrbTtjzGBuGEkzxgwHfrPWPhG1q3SDMWZ51HU4RSSJUUkTEXcIubHkGGNSAsONMbVxXYooH5Ab+PeG52wEfohadp61dosxpg5QClfpAUiFawQqJiONMf8DTuMqTQ2AudcLjDFmDlAL+AX4yBgzAtcu0j/v43UtBkZFFbGmwB/W2pCoXazljDHto5bLDPjiKqg3ul5eCwIBwLIblp9gjPEFLFGXk4lBY6ClMea1qNtpgIfRtTdFkiSVNBFJCN2AnEAla22YMeYgroIRzVr7R1SJaw5MMsaMBM4By6y1XWKxjQHW2lnXb0SNSN3GWrs7apStGfB+1IjX3UbmbnxuqDFmJdAE14ja1OubA1601i65xypCrLV+UaN3C4HngVG4rsm4wlrbJuogi5V3eL4B2llr/4lNXhFJ3DQnTUQSQmbgVFRBqwcUuHUBY0yBqGW+xbUbsCKwDqhhjLk+xyydMaZYLLf5B9A66jnpgTbAn8aYvMAVa+2PwEdR27lVWNSIXkym4dqNWgvXxbCJ+vvZ688xxhSL2maMrLUXgH7Aa1HPyQwci3q41w2LBgMZb7i9BHjRRA0rGmMq3GkbIpL4qaSJSEKYDPgbYzbhGlX7O4Zl6gJbjDF/Ae2Az621p3GVlqnGmG24SluJ2GzQWrsZGA9sANYD31lr/wLK4prLtQV4CxgWw9PHAtuuHzhwi6VAbWC5tfZa1H3fAbuAzcaYHcA33GNPRVSWrUBn4ENco3qrAa8bFlsBlLp+4ACuEbeUUdl2RN0WkSRKp+AQERER8UAaSRMRERHxQCppIiIiIh5IJU1ERETEA6mkiYiIiHgglTQRERERD6SSJiIiIuKBVNJEREREPJBKmoiIiIgH+n/SYwLJF9eTkQAAAABJRU5ErkJggg==\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "image/png": "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IiKSaLhtTJq1NtwY8zKwEPABJlhrdxhjXoh6fAzQD8gCfBnV/RVurQ144Itfn9mpljTHLFu2jE2bNvH999/z5JNPOh1HREQk0THWxjhMzGNlzlvMnj286+4Hbf8RZnWFHqvhoRIJE0yw1vL3339TrFgxAP755x+1nomISJJmjAmKawOUd+44cH23Ac3uTDCXLl2iffv2lC9fnv379wOoQBMREXkA3rl35/kjkDoTpErvdJIkYdeuXQQGBrJ7926GDh1KgQIFnI4kIiKS6HlvkabxaAli1qxZPPPMM6ROnZrFixdTt25dpyOJiIh4BS/t7lSRllBWrVpFyZIl2bRpkwo0ERGReOR9LWnX10grVN/pJF7r5MmTnDx5ktKlS/PRRx9hrSVFihROxxIREfEq3lekBZ+B8BC1pLnJ6tWradOmDenSpWPHjh3EanFhERERuW/e1915/rDru4q0eGWtZdSoUdSqVYvUqVMzY8YMfHx8nI4lIiLitbywSNNCtvEtJCSEjh078sorr9CkSRM2btxI6dKlnY4lIiLi1by4SNMaafElRYoUnD17liFDhjBnzhwyZszodCQRERGv531j0s4fhVQZXF/yQH7++WcqVKhAzpw5mTdvHsmSeV9NLyIi4qm877eult94YOHh4fTt25fmzZszePBgABVoIiIiCcwLW9KOQJaCTqdItE6dOkX79u1Zvnw53bt359NPP3U6koiISJLkXUXa9TXSCtZxOkmitH37dho3bsyZM2eYOHEiXbp0cTqSiIhIkuVdfVjBZyHsiro74yh37twUL16cNWvWqEATERFxmHcVaReiZnZm0MzO2AoODmbgwIFcvXqVjBkzsmjRIvz9/Z2OJSIikuR5V5GmNdLuy759+6hSpQoDBw5kyZIlTscRERGRG6hIS6J+/vlnAgICOHbsGPPmzaNp06ZORxIREZEbeF+RljIDpM7odBKPNnr0aJo3b07BggUJCgqicePGTkcSERGRW3hfkaZWtHuqV68eL730EqtWrSJfvnxOxxEREZEYeFmRdlTbQd3Bhg0bePPNN7HWUrRoUb744gtSpUrldCwRERG5A+8p0q6vkaaWtJtYaxk7dizVq1dnxowZ/Pfff05HEhERkVjwniIt5Bxcu6Qi7QYhISF07dqV7t27U7duXYKCgsiePbvTsURERCQWvKdI08zOm1hradq0KZMmTaJ///78+uuvZMmSxelYIiIiEkvesy3UeS1keyNjDH369OH111/X8hoiIiKJkPcUaReOur4n4Za0iIgIBg0aRIYMGXjttdd47LHHnI4kIiIiceRd3Z0p0kHqTE4nccTZs2d5/PHHGTRoEDt37sRa63QkEREReQDe05J2fWanMU4nSXCbNm0iMDCQf/75hzFjxtCtWzdMEnwfREREvIn3FWlJzKlTp6hRowZZsmRh5cqVVKhQwelIIiIiEg+8qEg7CnmrOp0iwURGRpIsWTKyZ8/OxIkTqVu3LlmzZnU6loiIiMQT7xiTFnIerl5IMi1phw4donLlyixYsACAtm3bqkATERHxMt5RpCWhNdIWLlxI+fLl2b17NxEREU7HERERETdRkZZIREZG8v777/PYY4+RK1cuNm7cqPXPREREvJiXFWl5nc3hRj///DP9+vWjY8eOrFmzhsKFCzsdSURERNzIOyYOXDgKvmm8co204OBg/Pz8aN68OfPnz6dRo0ZaXkNERCQJ8J6WNC9cI23y5MkUKFCAPXv2YIyhcePGKtBERESSCC8p0g571Xi0q1ev0qNHD7p06ULx4sXJmDGj05FEREQkgXlJkeY9C9kePXqUmjVrMmbMGN566y0WLVpE9uzZnY4lIiIiCSzxj0kLveD68pIi7ZNPPmHXrl38+OOPtGrVyuk4IiIi4pDE35J2/qjre8Y8zuZ4AJGRkZw8eRKAoUOHEhQUpAJNREQkifOCIi1xr5F2/vx5WrZsSY0aNbhy5QqpU6fW8hoiIiLiBd2diXiNtK1bt9KqVSsOHz7MJ598gp+fn9ORRERExEN4R0uarx/4ZXE6yX357rvvqFy5MsHBwaxYsYJevXppeQ0RERGJ5gVF2uFEt0ZaREQEo0ePpkKFCmzatIlq1ao5HUlEREQ8TOLv7rxwFDIkjkkDx44dI3Xq1GTJkoVffvmFDBky4Ovr63QsERER8UCJv0g7fwRyBTid4p6WL19Ou3btqFWrFjNnziRr1qxORxKR+xQWFsaxY8cIDQ11OoqIeJhUqVKRO3fueG18SdxFWuhFCDnn0TM7rbUMHz6ct99+myJFijBo0CCnI4lIHB07dox06dKRL18+jSEVkWjWWs6cOcOxY8fInz9/vJ03cY9Ju3B9jTTPLNIuXrxI69ateeuttwgMDGTdunUUK1bM6VgiEkehoaFkyZJFBZqI3MQYQ5YsWeK9lT1xF2nRC9l65vIbISEhBAUF8cknnzB9+nTSpUvndCQReUAq0EQkJu742ZDIi7Tra6R51sSBxYsXEx4ezkMPPcSuXbt47bXX9INdROJF2rRpo/88b948ChcuzJEjRxgwYAB+fn6cOnUqxmPvpEmTJpw/f/6ux9SuXZuNGzfedv+kSZN4+eWXYx/+Pnz88ccULVqUkiVLUqZMGaZMmXLXLHGxceNGevXqBcDVq1epX78+/v7+TJ8+neeee46dO3fG+dwDBgwgV65c+Pv7U7x4cX744Yfox6y1DB48mMKFC/Poo49Sp04dduzYEf345cuX6d69OwULFqREiRLUrFmTdevW3XYNay1169bl4sWLcc7pbo0bNyZjxow8/vjjdzzm6tWrtGvXjkKFClGpUiUOHToU/djkyZMpXLgwhQsXZvLkydH3Hzx4kEqVKlG4cGHatWvHtWvXANd70qtXLwoVKkTp0qXZtGlT9HMWLFhAkSJFKFSoEB9++GH0/WfPnqVBgwYULlyYBg0acO7cOQC2bdtGly5d4umdiJtEXqQdhuSpIE02p5MArkHFr776Kg0bNuTrr78GIHXq1A6nEhFvtHTpUnr27MmCBQt45BHXkI+sWbPyySef3Nd55s2bR8aMGd2Q8O6stURGRsb42JgxY1i8eDHr169n+/bt/PHHH1hr4z1DQEAAo0aNAuCvv/4iLCyMzZs3065dO7755huKFy8e63NFRETcdl/v3r3ZvHkzc+fOpXv37oSFhQEwevRoVq9ezZYtW9izZw9vv/02zZo1i+4qe+6558icOTN79+5lx44dTJo0idOnT992/nnz5lGmTBnSp0//QDndqU+fPnz77bd3PWb8+PFkypSJffv20bt3b9566y3AVTwNHDiQdevWsX79egYOHBhdQL311lv07t2bvXv3kilTJsaPHw/A/Pnz2bt3L3v37mXs2LH06NEDcL3ul156ifnz57Nz505++OGH6CL8ww8/pF69euzdu5d69epFF3ClSpXi2LFjHDlyxC3vTWwk8iLtiMeskXbixAnq1KnDyJEjefXVV+nWrZvTkUTES/355588//zz/PbbbxQsWDD6/q5duzJ9+nTOnj1723O+++47KlasiL+/P927d4/+ZZ0vX77oAuD999+naNGiNGjQgCeffJKPP/44+vkzZ86kYsWKPProo/z555/R9x89epTGjRtTpEgRBg4cGH3/p59+SsmSJSlZsiQjRowA4NChQxQrVowXX3yRcuXKcfToUbp06ULJkiUpVaoUn332GQBDhgzhyy+/jC4+MmTIQOfOnW97TT169CAgIIASJUrQv3//6Pv79u1L8eLFKV26NG+88UZ0/uutcjVr1gRgxYoVPP7445w6dYqnnnqKzZs34+/vz/79+29qsVu0aBFVqlShXLlytGnThsuXL0e/d4MGDaJ69erMnDnzjp9X4cKF8fPziy4whg0bxueffx69y0zDhg2pWrUqU6dOZf/+/axbt47BgweTLJnrV3SBAgVo2rTpbeedOnUqzZs3j77dokULypcvT4kSJRg7dmz0/WnTpqVfv35UqlSJNWvW3PHvwp3ezwdRr169ew71mTt3bvTn27p1a5YuXYq1loULF9KgQQMyZ85MpkyZaNCgAQsWLMBay7Jly2jdujUAnTt35qeffoo+V6dOnTDGULlyZc6fP8+JEydYv349hQoVokCBAqRIkYL27dszd+7c265/47kAnnjiCaZNmxYv70VcJO7ZndeLNIetXr2aVq1acenSJX744Qfat2/vdCQRcbOBv+xg5z/x281U/OH09H+ixF2PuXr1Ks2bN2fFihUULVr0psfSpk1L165dGTly5E0F065du5g+fTqrVq3C19eXF198kalTp9KpU6foYzZu3MiPP/7IX3/9RXh4OOXKlaN8+fLRj4eHh7N+/XrmzZvHwIEDWbJkCUB0a5efnx8VKlSgadOmGGOYOHEi69atw1pLpUqVqFWrFpkyZWL37t1MnDiRL7/8kqCgII4fP8727dsB117Gly5d4tKlSzcVn3fywQcfkDlzZiIiIqhXrx5bt24ld+7czJkzh7///htjTHRX7qBBg1i4cCG5cuW6rXs3e/bsfPPNN3z88cf8+uuvNz12+vRpBg8ezJIlS0iTJg3Dhg3j008/pV+/foBr2YWVK1feNeemTZsoXLgw2bNn5+LFi1y5cuW21xcQEMCOHTvIli0b/v7++Pj43PP1r1q1KrrXBmDChAlkzpyZkJAQKlSoQGBgIFmyZOHKlSuULFmSQYMGsWvXLoYNGxbj34WY3s/SpUvfdM3hw4czderU27LUrFkzulXyfh0/fpw8eVzDlpInT06GDBk4c+bMTfcD5M6dm+PHj3PmzBkyZsxI8uTJb7r/1nPd+FhM91/vQj558iQ5c+YEIGfOnDcNGQgICODDDz/kzTffjNNre1CJu0i7cBQeLut0ClKlSsVDDz3E0qVLKVHi7j9gRUQehK+vL1WrVmX8+PGMHDnytsd79eqFv78/r7/+evR9S5cuJSgoiAoVKgCuSU3Zs2e/6XkrV66kefPm0UM0nnjiiZseb9WqFQDly5e/acxQgwYNyJIlS/QxK1euxBhDy5YtSZMmTfT9f/75J82aNSNv3rxUrlwZcLUQHThwgJ49e9K0aVMaNmzI5cuXYz2Gd8aMGYwdO5bw8HBOnDjBzp07KV68OKlSpeK5556jadOm0WOhqlWrRpcuXWjbtm30a4mNtWvXsnPnzuidYa5du0aVKlWiH2/Xrt0dn/vZZ58xbtw4Dhw4wIIFC+56HWvtfY9dPnv27E2tVKNGjWLOnDmAq4Vz7969ZMmSBR8fHwIDA4G7/12I6f28tUjr06cPffr0ua+c9xJTV7Yx5r7vj8u57iV79uz8888/9zzOXRJvkXb1MgSfcawl7dKlS8yePZvOnTtTrlw5/vrrr+imaRHxfvdq8XKXZMmSMWPGDOrXr8+QIUP43//+d9PjGTNmpEOHDnz55ZfR91lr6dy5M0OHDr3jee815itlypQA+Pj4EB4eHn3/rb/o7vQL8brrhRtApkyZ2LJlCwsXLmT06NHMmDGDCRMmkCZNGg4cOECBAgXueJ6DBw/y8ccfs2HDBjJlykSXLl0IDQ0lefLkrF+/nqVLlzJt2jS++OILli1bxpgxY1i3bh2//fYb/v7+bN68+a6v9zprLQ0aNLhp4P+dXs+tevfuzRtvvMHs2bPp1KkT+/fvJ3369DG+vk2bNlGrVi1KlCjBli1biIyMvOfvlOTJk0cft2LFCpYsWcKaNWvw8/Ojdu3a0WPcUqVKFd0yd6e/C3d6P2/ljpa03Llzc/ToUXLnzk14eDgXLlwgc+bM5M6dmxUrVkQfd+zYMWrXrk3WrFk5f/484eHhJE+enGPHjvHwww/fdK4bn/Pwww9z7dq1GO8HeOihhzhx4gQ5c+bkxIkTN/0HJjQ01NGx5Ym3qnBwjbRdu3ZRsWJFunbtyq5duwBUoIlIgvHz8+PXX39l6tSp0QOmb/Taa6/x9ddfRxdT9erVY9asWdHdOGfPnuXw4cM3Pad69er88ssvhIaGcvnyZX777bdYZVm8eDFnz54lJCSEn376iWrVqlGzZk1++ukngoODuXLlCnPmzKFGjRq3Pff06dNERkYSGBjI+++/Hz0T7+233+all16KnrV48eLFm8ZYXb8vTZo0ZMiQgZMnTzJ//nzANTPywoULNGnShBEjRkQXY/v376dSpUoMGjSIrFmz3vQL+24qV67MqlWr2LdvHwDBwcHs2bMnVs+9rlWrVgQEBETPTuzTpw+9evUiJCQEgCVLlrBy5Uo6dOhAwYIFCQgIoH///tHF7t69e6PHT92oSJEiHDhwAIALFy6QKVMm/Pz8+Pvvv1m7dm2MWe70d+FO7+et+vTpw+bNm2/7imuBBtCsWbPo92bWrFnUrVsXYwyNGjVi0aJFnDt3jnPnzrFo0SIaNWqEMYY6deowa9YswDUD9PrYvGbNmjFlyhSstaxdu5YMGTKQM2dOKlSowN69ezl48CDXrl1j2rRpNGvW7Lbr33gugD179lCyZMk4v7YHlXhb0qKX30jYNdJmzpxJ165dSZ06NYsXL9bitCLiiMyZM7NgwQJq1qx52zZzWbNmpWXLltED8YsXL87gwYNp2LAhkZGR+Pr6Mnr0aPLm/f+fnxUqVKBZs2aUKVOGvHnzEhAQQIYMGe6Zo3r16jz99NPs27ePDh06EBDg2qavS5cuVKxYEXDNVixbtuxN3aTgGj/0zDPPRM/yvN6606NHDy5fvkyFChXw9fXF19f3pu5bgDJlylC2bFlKlChBgQIForsjL126RPPmzQkNDcVaG/0e9OnTh71792KtpV69epQpU4bff//9nq8vW7ZsTJo0iSeffJKrV68CMHjwYB599NF7PvdG/fr1o0OHDjz//PP07NmTc+fOUapUKXx8fMiRIwdz586NbrH55ptveP311ylUqBB+fn5kyZKF4cOH33bOpk2bsmLFCgoVKkTjxo0ZM2YMpUuXpkiRItFdyre609+FypUrx/h+PqgaNWrw999/c/nyZXLnzs348eNp1KgR/fr1IyAggGbNmvHss8/y9NNPU6hQITJnzhw9UD9z5sy899570V2z/fr1I3PmzIBr8kX79u159913KVu2LM8++yzgWlJm3rx50e/dxIkTAVer4xdffEGjRo2IiIiga9eu0cOT+vbtS9u2bRk/fjyPPPLITZNAli9f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4IMP2LhxI1u3buX3339n69atd3yNgwYNYuHChWzZsoWff/75pvNkz56db775hho1arB58+abrn369OkY89/6Otu3b3/HnJs2baJw4cJkz56dixcvcuXKldteX0BAADt27GDHjh34+/vj4+Nzz9e/atUqypcvH317woQJBAUFsXHjRkaNGsWZM2cAuHLlCiVLlmTdunVkyZKF6dOns2rVKjZv3oyPjw9Tp0694/t5q+HDh0d3Jd74db3b+EbHjx8nT57//x2eO3dujh8/fttxe/bsYc+ePVSrVo3KlSvfVMiFhoYSEBBA5cqVowuxM2fOkDFjxugls24975o1ayhTpgyPPfbYTd3IERER+Pv7kz17dho0aEClSpUAGDFiBH369CFPnjy88cYb0XvLgutzudt/SOJL4pzdef4IFGl830/bt28fL7zwAhMnTiRPnjy88847bggnIknCYx86nSCajdo5ZtGiRWzdujW6dezChQvs3buXJUuW8Mwzz0S30FzfpPq69OnTkypVKp577jmaNm3K448/ftPjFy5c4Pz589SqVQtwtVC0adMm+vFWrVoBUL58+ds2Ub9Vu3btAFi7di07d+6M3sj72rVrVKlShd27d7N9+3YaNGgAuH6B5syZE2ttdAvHvcyYMYOxY8cSHh7OiRMn2LlzJ8WLF4/xNVarVo0uXbrQtm3b6NcRG3fKf+vrjMlnn33GuHHjOHDgwD3HQt/P677u7NmzpEuXLvr2qFGjmDNnDgBHjx5l7969ZMmSBR8fHwIDAwFYunQpQUFB0ZuZh4SERLdcxfR+li5d+qZr9unThz59+sQq3/W/rzeK6TWGh4ezd+9eVqxYwbFjx6hRowbbt28nY8aMHDlyhIcffpgDBw5Qt25dSpUqFd3CGtN5y5Urx+HDh0mbNi3z5s2jRYsW7N27F3CNb9u8eTPnz5+nZcuWbN++nZIlS/LVV1/x2WefERgYyIwZM3j22Wejx3Bmz56df/75J1av90EkupY0QyRcOXXfkwZ+/vlnAgIC+Ouvvzh8+LCb0omIJKwDBw7g4+ND9uzZsdby+eefs3nzZjZv3szBgwdp2LDhPX/RJ0+enPXr1xMYGMhPP/1E48b395/glClTAq5fdvfanSVNmjSA6xd1gwYNorPu3LmT8ePHY62lRIkS0fdv27aNRYsWkT59etKkScOBAwfu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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "plt.figure(figsize=(10,8))\n",
+ "# K соседей\n",
+ "knn = KNeighborsClassifier ( n_neighbors =best_num)\n",
+ "probas_knn0 = knn.fit(X_train, y_train).predict_proba (X_test)\n",
+ "tpr, fpr, thresholds = roc_curve(y_test, probas_knn0[:,0])\n",
+ "roc_auc = auc(fpr, tpr)\n",
+ "plt.plot(fpr, tpr, label='%s ROC (area = %f)' % ('KNeighborsClassifier', roc_auc)) \n",
+ "\n",
+ "# решающее дерево\n",
+ "dtc = DecisionTreeClassifier(max_depth=best_depth, max_features=best_features)\n",
+ "probas_dtc0 = dtc.fit(X_train, y_train).predict_proba (X_test)\n",
+ "tpr, fpr, thresholds = roc_curve(y_test, probas_dtc0[:,0])\n",
+ "roc_auc = auc (fpr, tpr)\n",
+ "plt.plot(fpr, tpr, label='%s ROC (area = %f)' % ('DecisionTreeClassifier', roc_auc)) \n",
+ "\n",
+ "# вывод графика\n",
+ "plt.plot([0, 1], [0, 1], 'k--')\n",
+ "plt.xlim([0.0, 1.0])\n",
+ "plt.ylim([0.0, 1.0])\n",
+ "plt.xlabel('False Positive Rate')\n",
+ "plt.ylabel('True Positive Rate')\n",
+ "plt.legend(loc=4, fontsize='medium')\n",
+ "plt.title('not Ca')\n",
+ "plt.show()\n",
+ "\n",
+ "\n",
+ "plt.figure(figsize=(10,8))\n",
+ "# K соседей\n",
+ "knn = KNeighborsClassifier( n_neighbors = best_num)\n",
+ "probas_knn1 = knn.fit(X_train, y_train).predict_proba (X_test)\n",
+ "fpr, tpr, thresholds = roc_curve(y_test, probas_knn1[:,1])\n",
+ "roc_auc = auc(fpr, tpr)\n",
+ "plt.plot(fpr, tpr, label='%s ROC (area = %f)' % ('KNeighborsClassifier', roc_auc)) \n",
+ "# решающее дерево\n",
+ "dtc = DecisionTreeClassifier(max_depth=best_depth, max_features=best_features)\n",
+ "probas_dtc1 = dtc.fit(X_train, y_train).predict_proba(X_test)\n",
+ "fpr, tpr, thresholds = roc_curve(y_test, probas_dtc1[:,1])\n",
+ "roc_auc = auc(fpr, tpr)\n",
+ "plt.plot(fpr, tpr, label='%s ROC (area = %f)' % ('DecisionTreeClassifier', roc_auc)) \n",
+ "# вывод графика\n",
+ "plt.plot([0, 1], [0, 1], 'k--')\n",
+ "plt.xlim([0.0, 1.0])\n",
+ "plt.ylim([0.0, 1.0])\n",
+ "plt.xlabel('False Positive Rate')\n",
+ "plt.ylabel('True Positive Rate')\n",
+ "plt.legend(loc=4, fontsize='medium')\n",
+ "plt.title('Ca')\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 132,
+ "id": "emerging-temple",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmkAAAHwCAYAAAD98PjEAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAA5rElEQVR4nO3deXxV1bn/8e9DgjIPMvSHoAgSZkiAIFAV5DKKFi4girYqjhWntrRWWrmASJ2KQltFioBo9QpqlTqCF7l41cqoQAVlpoqiTAaICCTw/P444ZjhBA4hh6zA5/16nRfn7L32Ps/OzvBlrX3WNncXAAAAwlKmpAsAAABAQYQ0AACAABHSAAAAAkRIAwAACBAhDQAAIECENAAAgAAR0gAAAAJESANwyjIzN7NGR2lTx8ymmtkWM9tjZp+Z2b1mVvFE1Qng1ERIA4BCmNkZkj6UVF5SJ3evLKmHpGqSzi3B0gCcAghpAEo1M9tkZr8xsxVmtsvMZppZuVzrbzKzdWa208xeNbMzc5b/X06T5WaWaWZXxNj9MEl7JP3M3TdJkrt/4e6/cPcVOfv5k5l9YWa7zWypmV2Y0AMGcMogpAE4GVwuqbekBpJaSxoiSWb2H5IeyFlfR9K/Jc2QJHfvnLNtqrtXcveZMfbbXdLL7n7oCO+9WFKapDMk/bekF3OHRAAoKkIagJPBn939K3ffKek1RUKTJP1U0jR3/8jd90v6naROZnZOnPutIWnLkRq4+7PuvsPds939EUmnS2pSlIMAgNwIaQBOBl/ner5XUqWc52cq0nsmSXL3TEk7JNWNc787FOmBK5SZ/drMPs0Zas2QVFVSzTj3DwCFIqQBOJl9Jan+4Rc5n8isIenLOLefK6m/mcX8XZlz/dndigynVnf3apJ2SbLjqBkAJBHSAJzc/lvSdWaWZmanS7pf0sLDHwKQ9I2khkfY/lFJVSQ9bWb1JcnM6prZo2bWWlJlSdmStklKNrOROe0B4LgR0gCctNz9HUn/Jenvilxbdq6kwbmajFYkgGWY2eUxtt8p6ceSsiQtNLM9kt5RpLdsnaQ5kt6StEaRYdV9kr5I1PEAOLWYu5d0DQAAAMiHnjQAAIAAJSykmdk0M9tqZp8Ust7M7M85k0yuMLO2iaoFAACgtElkT9p0RSaXLMzFklJyHjdLeiKBtQAAAJQqCQtp7v5/knYeoUk/Sc94xAJJ1czsiPMRAQAAnCpK8pq0usr7KajNin+CSQAAgJNacgm+d6zJHmN+1NTMblZkSFRVypdtV/eMcjJ3mSIP6YfnJkX+zbe+OMuOvqMVeNe8D7NYlRW6Pm87xVhfJudIYm/L/JkAAITl288/2+7utYqybUmGtM2Szsr1up4is4MX4O6TJU2WpPT0dF+yZMmxvdPBbOngAengfin7QM7zA1L2/h+e53+dndO+0OdZOe1zPy9sP4W896EDRfvKFaZMspR0WuSRfHq+52WlpNPzPc9Zn+f5EbZNOi2nXf7nZXPa5X6ea/syyZIRIAEApx4z+/fRW8VWkiHtVUm3m9kMSR0k7XL3I97IuMiSkiMPVUjI7ovMPVeoy8oJcrmfxwp4RwuFRwuaWdK+3fn2E+P9/FAxHqjFCH/HGBDjCZcxtz/tCOHyNKkMs9AAAMKUsJBmZs9LukhSTTPbLGmUpLKS5O6TJL0pqY8is3bvlXRdomoJllkkSCSfXtKVFBRP72OB5zGC5rH0Pmbvk/bvPnLP5aGs4j3OMslH6A0sht7Hwral9xEAcBQJC2nufuVR1ruk2xL1/jhOofY+HjoUCWrH2vsYT9A8pt7HfO2z96u4r32MrzcwRsA7rnB52lHej95HADhRSnK4Ezh2ZcpIZULufcwd8IrY+xhP0Ay29zGeoebjHdouZJib3kcAJxlCGlBcor2PFUu6krzy9D7G++GW4xzmzj4gZe0qRb2PscLiMfY+FhY06X0EUESENOBkV6p6Hwu7djHWB12KOMydvU/atyv2tsH2Ph7vdZOFBE16H4GgEdIAlJxS3fsYzxQ9Rex9LBAuc7Uv7t7HuKbcOVrvY3H0XNL7CORHSAOA/E663sd4gmYRex8PP09U72PcU+7E2/tY2Lb0PiI8hDQAKE1C7n3M/cGWhE0QHnDvY7HN4RgrXB5lmJvex5MSIQ0AcPzKlJHKlJPKlivpSvJylw4dPPJ1jEXufTzCMHfW99L3GWH1Ph7T0HZRrpssZJib3sciI6QBAE5eZj/0Pp4WeO9jcU8QXljQzMrIN8wdYO/jMc/heLTex0L2FXjvIyENAICSUJp7H+OZrqfIvY9HuG6y2HsfyxZ+XWLl/yc1vVRq1leqVKT7ox83QhoAAPjBydb7eNSgWci+tq2W3hgmvfkb6ZwLpRb9pWY/kSrWPGGHS0gDAAClw4nsfXSXtq6SVr4Sebz+S+mNX0sNOkst/lNq+hOpYo2ElmCRW2iWHunp6b5kyZKSLgMAAJwq3KVvPvkhsO3cIFmS1LBLpIet6aVShTNibmpmS909vShvS0gDAACIl7v09Qpp5Sxp5cvSt5sin2BteFFOYLtEKl892pyQBgAAcKK5S1uW/9DDlvHvyIcRzu0aCWxN+sgqVC9ySOOaNAAAgKIwk85Mizy6j5a++jgnsM2S1g6NBLbjQEgDAAA4XmZS3baRR48x0pcfRYZDdX+Rdxn2LG4AAACljZlUr53U6w/HtRtCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIASGtLMrLeZrTazdWY2PMb6qmb2mpktN7OVZnZdIusBAAAoLRIW0swsSdLjki6W1FzSlWbWPF+z2yStcvdUSRdJesTMTktUTQAAAKVFInvSzpO0zt03uPsBSTMk9cvXxiVVNjOTVEnSTknZCawJAACgVEhkSKsr6YtcrzfnLMvtMUnNJH0l6V+SfuHuhxJYEwAAQKmQyJBmMZZ5vte9JC2TdKakNEmPmVmVAjsyu9nMlpjZkm3bthV3nQAAAMFJZEjbLOmsXK/rKdJjltt1kl72iHWSNkpqmn9H7j7Z3dPdPb1WrVoJKxgAACAUiQxpiyWlmFmDnA8DDJb0ar42n0vqJklm9iNJTSRtSGBNAAAApUJyonbs7tlmdrukOZKSJE1z95VmdkvO+kmS7pM03cz+pcjw6N3uvj1RNQEAAJQWCQtpkuTub0p6M9+ySbmefyWpZyJrAAAAKI244wAAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAAUpoSDOz3ma22szWmdnwQtpcZGbLzGylmb2byHoAAABKi+RE7djMkiQ9LqmHpM2SFpvZq+6+KlebapImSurt7p+bWe1E1QMAAFCaJLIn7TxJ69x9g7sfkDRDUr98ba6S9LK7fy5J7r41gfUAAACUGokMaXUlfZHr9eacZbk1llTdzOab2VIzuyaB9QAAAJQaCRvulGQxlnmM928nqZuk8pI+NLMF7r4mz47MbpZ0sySdffbZCSgVAAAgLInsSdss6axcr+tJ+ipGm9nu/p27b5f0f5JS8+/I3Se7e7q7p9eqVSthBQMAAIQikSFtsaQUM2tgZqdJGizp1Xxt/iHpQjNLNrMKkjpI+jSBNQEAAJQKCRvudPdsM7td0hxJSZKmuftKM7slZ/0kd//UzGZLWiHpkKQp7v5JomoCAAAoLcw9/2ViYUtPT/clS5aUdBkAAABHZWZL3T29KNtyxwEAAIAAEdIAAAACREgDAAAIECENAAAgQIQ0AACAABHSAAAAAkRIAwAACBAhDQAAIECENAAAgAAR0gAAAAJESAMAAAgQIQ0AACBAhDQAAIAAEdIAAAACREgDAAAIECENAAAgQIQ0AACAABHSAAAAAkRIAwAACFByPI3M7HxJoyXVz9nGJLm7N0xcaQAAAKeuuEKapKmSfiVpqaSDiSsHAAAAUvwhbZe7v5XQSgAAABAVb0j7XzP7o6SXJe0/vNDdP0pIVQAAAKe4eENah5x/03Mtc0n/UbzlAAAAQIozpLl710QXAgAAgB/ENQWHmVU1s0fNbEnO4xEzq5ro4gAAAE5V8c6TNk3SHkmX5zx2S3oqUUUBAACc6uK9Ju1cdx+Y6/W9ZrYsAfUAAABA8fekfW9mFxx+kTO57feJKQkAAADx9qQNlfR0znVoJmmnpCGJKgoAAOBUF++nO5dJSjWzKjmvdyeyKAAAgFPdEUOamf3M3Z81s2H5lkuS3P3RBNYGAABwyjpaT1rFnH8rJ7oQAAAA/OCIIc3d/5rz770nphwAAABI8U9m+7CZVTGzsmb2jpltN7OfJbo4AACAU1W8U3D0zPmwwKWSNktqLOmuhFUFAABwios3pJXN+bePpOfdfWeC6gEAAIDinyftNTP7TJEJbG81s1qS9iWuLAAAgFNbXD1p7j5cUidJ6e6eJek7Sf0SWRgAAMCp7GjzpP2Hu88zswG5luVu8nKiCgMAADiVHW24s4ukeZJ+EmOdi5AGAACQEEebJ21Uzr/XnZhyAAAAIMU/T9r9ZlYt1+vqZjY2YVUBAACc4uKdguNid884/MLdv1VkOg4AAAAkQLwhLcnMTj/8wszKSzr9CO0BAABwHOKdJ+1ZSe+Y2VOKfGDgeklPJ6wqAACAU1xcIc3dHzazFZK6SzJJ97n7nIRWBgAAcAqLtydNkj6VlO3uc82sgplVdvc9iSoMAADgVBbvpztvkvSSpL/mLKoraVaCagIAADjlxfvBgdsknS9ptyS5+1pJtRNVFAAAwKku3pC2390PHH5hZsmKfIAAAAAACRBvSHvXzH4vqbyZ9ZD0oqTXElcWAADAqS3ekHa3pG2S/iXp55LelDQiUUUBAACc6o766U4zKyNphbu3lPRk4ksCAADAUXvS3P2QpOVmdvYJqAcAAACKf560OpJWmtkiSd8dXujufRNSFQAAwCku3pB2b0KrAAAAQB5HDGlmVk7SLZIaKfKhganunn0iCgMAADiVHe2atKclpSsS0C6W9EjCKwIAAMBRhzubu3srSTKzqZIWJb4kAAAAHK0nLevwE4Y5AQAATpyj9aSlmtnunOemyB0Hduc8d3evktDqAAAATlFHDGnunnSiCgEAAMAP4r0tFAAAAE4gQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABSmhIM7PeZrbazNaZ2fAjtGtvZgfN7LJE1gMAAFBaJCykmVmSpMclXSypuaQrzax5Ie0ekjQnUbUAAACUNonsSTtP0jp33+DuByTNkNQvRrs7JP1d0tYE1gIAAFCqJDKk1ZX0Ra7Xm3OWRZlZXUn9JU1KYB0AAAClTiJDmsVY5vleT5B0t7sfPOKOzG42syVmtmTbtm3FVR8AAECwkhO4782Szsr1up6kr/K1SZc0w8wkqaakPmaW7e6zcjdy98mSJktSenp6/qAHAABw0klkSFssKcXMGkj6UtJgSVflbuDuDQ4/N7Ppkl7PH9AAAABORQkLae6ebWa3K/KpzSRJ09x9pZndkrOe69AAAAAKkcieNLn7m5LezLcsZjhz9yGJrAUAAKA04Y4DAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAAQooSHNzHqb2WozW2dmw2Os/6mZrch5/NPMUhNZDwAAQGmRsJBmZkmSHpd0saTmkq40s+b5mm2U1MXdW0u6T9LkRNUDAABQmiSyJ+08SevcfYO7H5A0Q1K/3A3c/Z/u/m3OywWS6iWwHgAAgFIjkSGtrqQvcr3enLOsMDdIeiuB9QAAAJQayQnct8VY5jEbmnVVJKRdUMj6myXdLElnn312cdUHAAAQrET2pG2WdFau1/UkfZW/kZm1ljRFUj933xFrR+4+2d3T3T29Vq1aCSkWAAAgJIkMaYslpZhZAzM7TdJgSa/mbmBmZ0t6WdLV7r4mgbUAAACUKgkb7nT3bDO7XdIcSUmSprn7SjO7JWf9JEkjJdWQNNHMJCnb3dMTVRMAAEBpYe4xLxMLVnp6ui9ZsqSkywAAADgqM1ta1A4o7jgAAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBAAAEiJAGAAAQIEIaAABAgAhpAAAAASKkAQAABIiQBgAAECBCGgAAQIAIaQAAAAEipAEAAAQouaQLAICTRVZWljZv3qx9+/aVdCkATrBy5cqpXr16Klu2bLHtk5AGAMVk8+bNqly5ss455xyZWUmXA+AEcXft2LFDmzdvVoMGDYptvwx3AkAx2bdvn2rUqEFAA04xZqYaNWoUey86IQ0AihEBDTg1JeJnn5AGACeRSpUqRZ+/+eabSklJ0eeff67Ro0erQoUK2rp1a8y2henTp48yMjKO2Oaiiy7SkiVLCiyfPn26br/99viLPwbjxo1T06ZN1bJlS6WmpuqZZ545Yi1FsWTJEt15552SpP3796t79+5KS0vTzJkzdeONN2rVqlVF3vfo0aNVt25dpaWlqWXLlnr11VcLLG/evLmef/75QvcxYcKE6HGH6LHHHlOjRo1kZtq+fXuh7Z5++mmlpKQoJSVFTz/9dHT5xo0b1aFDB6WkpOiKK67QgQMHJEWGFu+88041atRIrVu31kcffRTdZvbs2WrSpIkaNWqkBx98MLp8586d6tGjh1JSUtSjRw99++230XUPPPCAGjVqpCZNmmjOnDnR5d27d8/TrkS4e6l6tGvXzgEgRKtWrSrpErxixYru7j537lxv2LChr1u3zt3dR40a5WeddZb/9re/LdD2eHXp0sUXL15cYPlTTz3lt912W5H2eejQIT948GDMdU888YT37NnTd+3a5e7uGRkZPn369CPWcrw+/PBD79y5c5G3z87OzvN61KhR/sc//tHdI983NWrU8IMHD+ZZvmbNGq9cubIfOHCgwP6ysrK8VatWnpWVFXcNx9K2OHz00Ue+ceNGr1+/vm/bti1mmx07dniDBg18x44dvnPnTm/QoIHv3LnT3d0HDRrkzz//vLu7//znP/eJEye6u/sbb7zhvXv39kOHDvmHH37o5513nrtHvsYNGzb09evX+/79+71169a+cuVKd3e/6667/IEHHnB39wceeCD6c7By5Upv3bq179u3zzds2OANGzaMnqvp06f72LFjj+mYY/0OkLTEi5h56EkDgJPMe++9p5tuuklvvPGGzj333Ojy66+/XjNnztTOnTsLbPPss8/qvPPOU1pamn7+85/r4MGDkqRzzjkn2gty3333qWnTpurRo4euvPJKjRs3Lrr9iy++qPPOO0+NGzfWe++9F13+xRdfqHfv3mrSpInuvffe6PJHH31ULVu2VMuWLTVhwgRJ0qZNm9SsWTPdeuutatu2rb744gsNGTJELVu2VKtWrTR+/HhJ0v3336+JEyeqSpUqkqSqVavq2muvLXBMQ4cOVXp6ulq0aKFRo0ZFlw8fPlzNmzdX69at9Zvf/CZa/+Feuc6dO0uS5s+fr0svvVRbt27Vz372My1btkxpaWlav359nh67t99+W506dVLbtm01aNAgZWZmRr92Y8aM0QUXXKAXX3yx0PPVrFkzJScnF+htSklJUYUKFWL25sybN09t27ZVcnLk839PPvmk2rdvr9TUVA0cOFB79+6VJA0ZMkTDhg1T165ddffdd2v9+vXq3bu32rVrpwsvvFCfffaZJOm1115Thw4d1KZNG3Xv3l3ffPNNofXGq02bNjrnnHOO2GbOnDnq0aOHzjjjDFWvXl09evTQ7Nmz5e6aN2+eLrvsMknStddeq1mzZkmS/vGPf+iaa66Rmaljx47KyMjQli1btGjRIjVq1EgNGzbUaaedpsGDB+sf//hHdJvD3yP59zV48GCdfvrpatCggRo1aqRFixZJkvr27XvEnswTgU93AkAC3PvaSq36anex7rP5mVU06ictjthm//796tevn+bPn6+mTZvmWVepUiVdf/31+tOf/pQnMH366aeaOXOmPvjgA5UtW1a33nqrnnvuOV1zzTXRNkuWLNHf//53ffzxx8rOzlbbtm3Vrl276Prs7GwtWrRIb775pu69917NnTtXkrRo0SJ98sknqlChgtq3b69LLrlEZqannnpKCxculLurQ4cO6tKli6pXr67Vq1frqaee0sSJE7V06VJ9+eWX+uSTTyRJGRkZ2rNnj/bs2ZMnfBbmD3/4g8444wwdPHhQ3bp104oVK1SvXj298sor+uyzz2Rm0aHcMWPGaM6cOapbt26B4d3atWtrypQpGjdunF5//fU867Zv366xY8dq7ty5qlixoh566CE9+uijGjlypKTItAzvv//+EetcuHChypQpo1q1auVZ/tFHHyklJUW1a9cusM0HH3yQ5+s/YMAA3XTTTZKkESNGaOrUqbrjjjskSWvWrNHcuXOVlJSkbt26adKkSUpJSdHChQt16623at68ebrgggu0YMECmZmmTJmihx9+WI888kie91y9erWuuOKKmMcwf/58VatW7YjHGcuXX36ps846K/q6Xr16+vLLL7Vjxw5Vq1YtGkIPLz/SNrGWL1y4UJL0zTffqE6dOpKkOnXqRIf9v/zyS3Xs2LHAviSpevXq2r9/v3bs2KEaNWoc87EVB0IaAJxEypYtqx//+MeaOnWq/vSnPxVYf+eddyotLU2//vWvo8veeecdLV26VO3bt5ckff/99wWCwfvvv69+/fqpfPnykqSf/OQnedYPGDBAktSuXTtt2rQpurxHjx7RP3ADBgzQ+++/LzNT//79VbFixejy9957T3379lX9+vWjfzQbNmyoDRs26I477tAll1yinj17KjMzM+4LtF944QVNnjxZ2dnZ2rJli1atWqXmzZurXLlyuvHGG3XJJZfo0ksvlSSdf/75GjJkiC6//PLoscRjwYIFWrVqlc4//3xJ0oEDB9SpU6fo+sJCjSSNHz9ezz77rCpXrqyZM2dGj2v8+PF68skntWHDBs2ePTvmtlu2bFGzZs2irz/55BONGDFCGRkZyszMVK9evaLrBg0apKSkJGVmZuqf//ynBg0aFF23f/9+SZHpY6644gpt2bJFBw4ciDmNRJMmTbRs2bI4virxi4wG5mVmhS4v6jbH+v6H1a5dW1999RUhDQBOJkfr8UqUMmXK6IUXXlD37t11//336/e//32e9dWqVdNVV12liRMnRpe5u6699lo98MADhe431h+z3E4//XRJUlJSkrKzs6PL8/+RLOyP6WGHg5sU6clYvny55syZo8cff1wvvPCCpk2bpooVK2rDhg1q2LBhofvZuHGjxo0bp8WLF6t69eoaMmSI9u3bp+TkZC1atEjvvPOOZsyYoccee0zz5s3TpEmTtHDhQr3xxhtKS0uLO4y4u3r06FHosFju48nvV7/6VXS4Ndbyl19+Wddcc43Wr1+vcuXK5WlTvnz5PNM9DBkyRLNmzVJqaqqmT5+u+fPnF6jh0KFDqlatWsxju+OOOzRs2DD17dtX8+fP1+jRowu0SURPWr169fLUunnzZl100UWqWbOmMjIylJ2dreTkZG3evFlnnnlmdJsvvvgizzZnnnmmDhw4EHO5JP3oRz/Sli1bVKdOHW3ZsiX6n5DC9nXYvn37ov8xKQlckwYAJ5kKFSro9ddf13PPPaepU6cWWD9s2DD99a9/jYapbt266aWXXooOAe3cuVP//ve/82xzwQUX6LXXXtO+ffuUmZmpN954I65a/ud//kc7d+7U999/r1mzZun8889X586dNWvWLO3du1ffffedXnnlFV144YUFtt2+fbsOHTqkgQMH6r777ot+iu93v/udbrvtNu3eHRlO3r17tyZPnpxn2927d6tixYqqWrWqvvnmG7311luSpMzMTO3atUt9+vTRhAkTooFl/fr16tChg8aMGaOaNWvm+cN9JB07dtQHH3ygdevWSZL27t2rNWvWxLXt0QwYMEDp6el5PvF4WLNmzaLvKUl79uxRnTp1lJWVpeeeey7m/qpUqaIGDRpEr49zdy1fvlyStGvXLtWtW1eSYr6f9ENPWqxHUQKaJPXq1Utvv/22vv32W3377bd6++231atXL5mZunbtqpdeeilaU79+/SRFrhV75pln5O5asGCBqlatqjp16qh9+/Zau3atNm7cqAMHDmjGjBnq27dvdJvDx5V/XzNmzND+/fu1ceNGrV27Vuedd1706/P1118f9bq6RKInDQBOQmeccYZmz56tzp07q2bNmnnW1axZU/37949eiN+8eXONHTtWPXv21KFDh1S2bFk9/vjjql+/fnSb9u3bq2/fvkpNTVX9+vWVnp6uqlWrHrWOCy64QFdffbXWrVunq666Sunp6ZIiPT+H/xjeeOONatOmTZ5hUilyvdB1112nQ4cOSVK0p2/o0KHKzMxU+/btVbZsWZUtWzbP8K0kpaamqk2bNmrRooUaNmwYHY7cs2eP+vXrp3379sndo1+Du+66S2vXrpW7q1u3bkpNTdW777571OOrVauWpk+friuvvDI6dDh27Fg1btz4qNvGY+TIkbrqqqt00003qUyZH/pVLr74Yl199dXR1/fdd586dOig+vXrq1WrVtqzZ0/M/T333HMaOnSoxo4dq6ysLA0ePFipqakaPXq0Bg0apLp166pjx47auHHjcdf+5z//WQ8//LC+/vprtW7dWn369NGUKVO0ZMkSTZo0SVOmTNEZZ5yh//qv/4oOtY8cOVJnnHGGJOmhhx7S4MGDNWLECLVp00Y33HCDpMi0MG+++aYaNWqkChUq6KmnnpIkJScn67HHHlOvXr108OBBXX/99WrRItKjPXz4cF1++eWaOnWqzj777GhQbdGihS6//HI1b95cycnJevzxx5WUlCRJWrp0qTp27Bi9Lq4k2NG6sEOTnp7uxTUHDgAUp08//TTPdUInm8zMTFWqVEl79+5V586dNXnyZLVt27akyzpl9e/fXw8//LBSUlJKupST0i9+8Qv17dtX3bp1i3ubWL8DzGypu6cXpQaGOwEAcbn55puVlpamtm3bauDAgQS0Evbggw9qy5YtJV3GSatly5bHFNASgeFOAEBc/vu//7ukS0AuTZo0UZMmTUq6jJPW4SlNShI9aQAAAAEipAEAAASIkAYAABAgQhoAAECACGkAAAABIqQBwEkkKSlJaWlpatGihVJTU/Xoo49GJ4M9ViNHjozeKD2WSZMm6Zlnnjnm/c6ZM0dp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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmkAAAHwCAYAAAD98PjEAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAABSD0lEQVR4nO3dd3hUZeL28e+TAqF3FIg0CYEESIAgIEiRXgyCouhaWNvaQMXuuoDKWhAFO6u4oj99rasIgoCAKKJUBYXQixJ6SyCEQMrz/nGGCSXAEDI5M8n9ua65YM6cObmHA8nNc8pjrLWIiIiISGAJcTuAiIiIiJxKJU1EREQkAKmkiYiIiAQglTQRERGRAKSSJiIiIhKAVNJEREREApBKmoiIiEgAUkkTkWLHGHO9MWaJMSbNGLPdGPOtMaa927lERI6nkiYixYoxZhgwDngWuACoDbwJ9HMxlojIKYxmHBCR4sIYUwHYCvzdWvt5Hq9fArwCNAYOA/8DhllrjxZqUBERNJImIsVLWyAC+Oo0r2cDDwBVPet2Ae4unGgiIidSSROR4qQKsMdam5XXi9bapdbaBdbaLGvtZuA/QMfCDCgickyY2wFERArRXqCqMSYsr6JmjGkIvAwkAKVxvkcuLdyIIiIOjaSJSHHyC5ABXHma198CVgNR1trywBOAKZxoIiIn0kiaiBQb1tpUY8xw4A1jTBYwE8gEugKdgXLAASDNGNMIuAvY7VZeESnedHWniBQ7xpi/4Vwg0Bg4iHNI8984/3F9G4gEfgO+By631uoeaiJS6FTSRERERAKQzkkTERERCUB+K2nGmP8aY3YZY1ac5nVjjHnVGLPeGPO7MaaFv7KIiIiIBBt/jqRNBHqe4fVeQJTncQfOVVUiIiIigh9LmrX2R2DfGVbpB3xgHQuAisaYGv7KIyIiIhJM3DwnrRaw5bjnyZ5lIiIiIsWem/dJy+sGkXleamqMuQPnkChVStGyfJXqpIRU9mc2ERERkfO2/6/Ve6y11fLzXjdLWjJw0XHPI4Ftea1orX0b595FJNSvYpfcAtz1DVS52O8hRURERPLLGPNnft/r5uHOycBNnqs82wCp1trtZ31XhUgILQlT7gPd401ERESKKH/eguNjnHnyoo0xycaYW40xdxpj7vSsMg3YCKwH3gHu9mnDoeHQ/WnYPA9++9Af0UVERERc57fDndba687yugXuydfGm98Ev38OM/8JUd2g3IX52oyIiIhIoArOGQdCQuCKVyAzA759xO00IiIiIgUuOEsaQNUG0OlRSPoaVn3jdhoRERGRAhW8JQ3g0qFwQVOY9hBkpLqdRkRERKTABHdJCw2HxFchbSd8N8LtNCIiIiIFJrhLGkCtFtDmblj6Hmye73YaERERkQIR/CUNoPMTULEOTBnqXEwgIiIiEuSKRkkrUca52nPvevjxRbfTiIiIiJy3olHSAC7uDPF/g/njYMcKt9OIiIiInJeiU9IAuo+CUpVg8r2Qk+12GhEREZF8K1olrXRl6PUCbPsNFo53O42IiIhIvhWtkgYQOwAa9oQ5o2D/ZrfTiIiIiORL0StpxkCfl8GEwpT7wVq3E4mIiIics6JX0gAq1IKuI2Dj97D8E7fTiIiIiJyzolnSABJuhYtaw4zHIW2322lEREREzknRLWkhIZD4Ghw9BNMfczuNiIiIyDkpuiUNoFo0dHgYVnwBa2e4nUZERETEZ0W7pAG0ux+qNYZvhsGRg26nEREREfFJ0S9pYSWcw54HtsLsp91OIyIiIuKTol/SAC5qBa3/AYvegb8Wup1GRERE5KyKR0kDuPxfUCESJg+BrCNupxERERE5o+JT0kqWhb5jYc8amPey22lEREREzqj4lDSAqG7Q9BqY9xLsWuV2GhEREZHTKl4lDaDnc1CynHPYMyfb7TQiIiIieSp+Ja1MVej1AiQvhsXvup1GREREJE/Fr6QBNB0IDbrC7KcgZYvbaUREREROUTxLmjHORQTWwtRhzq8iIiIiAaR4ljSAirWhy79g3UxY8T+304iIiIicoPiWNIBL7oBaCfDtI3Bor9tpRERERLyKd0kLCXWmjMpIhRlPuJ1GRERExKt4lzSAC2Kg/TD4/RNYP8vtNCIiIiKASpqjw0NQtSFMeQCOpLmdRkREREQlDYCwknDFq5D6F3z/rNtpRERERFTSvOq0hVa3wcK3IHmp22lERESkmFNJO16XEVD2QmfKqKyjbqcRERGRYkwl7XgR5aHPS7BrJfz8ittpREREpBhTSTtZo94Q2x9+GA2717qdRkRERIoplbS89BoN4aVhyn2Qk+N2GhERESmGVNLyUrY69HgW/voZlr7ndhoREREphlTSTif+eqjXEb4bAQe2uZ1GREREihmVtNMxBq54BXKyYOqDYK3biURERKQYUUk7k8r14PJ/wpppkPS122lERESkGFFJO5vWd0GNeJj2MKTvczuNiIiIFBMqaWcTGgaJr0H6XvjuX26nERERkWJCJc0XNZpBu6Hw24ewca7baURERKQYUEnzVcdHofLFMOV+OJrudhoREREp4lTSfBVeChJfhf2bYO5zbqcRERGRIk4l7VzUbQ8tboZfXodty9xOIyIiIkWYStq56vY0lKkOk++F7Ey304iIiEgRpZJ2rkpVhD5jYMcf8MsbbqcRERGRIkolLT8aX+E85j4Heze4nUZERESKIJW0/Or1IoSWhCn3acooERERKXAqaflVvgZ0fxo2z4Pf/s/tNCIiIlLEqKSdjxY3Q93LYOaTcHCH22lERESkCFFJOx/GwBWvQGaGM7eniIiISAFRSTtfVS6GTo/BqsmwaorbaURERKSIUEkrCJcOgQuawtSH4HCK22lERESkCFBJKwih4c6UUYd2wayRbqcRERGRIkAlraDUagFt74Gl78Hm+W6nERERkSCnklaQOj0BlerClKHOxQQiIiIi+aSSVpBKlIa+42DvevhxtNtpREREJIippBW0iztD/N9g/ivO/J4iIiIi+aCS5g/dR0GpSjB5CORku51GREREgpBKmj+Urgy9RsO232DBW26nERERkSCkkuYvsf2hYS+YMwr2bXI7jYiIiAQZlTR/MQb6vAQhYfDNA2Ct24lEREQkiKik+VOFWtBtJGz8HpZ/4nYaERERCSIqaf7W8ha4qA3MeBzSdrudRkRERIKESpq/hYQ4U0YdPQTTH3U7jYiIiAQJlbTCUC0aOjwMK/4Ha6a7nUZERESCgEpaYWl3P1SPganD4MhBt9OIiIhIgFNJKyxhJSDxNTiwDWY95XYaERERCXAqaYUpMgFa3wmLJ8BfC9xOIyIiIgFMJa2wXf4kVLgIJg+FrCNupxEREZEApZJW2EqWhb5jYc8amPey22lEREQkQKmkuSGqKzS7Fua9BLtWuZ1GREREApBKmlt6PAcR5eHreyEn2+00IiIiEmBU0txSpgr0fB62LnEuJBARERE5jkqam5oOhAbdnFtypGxxO42IiIgEEL+WNGNMT2PMGmPMemPMY3m8XsEYM8UYs9wYs9IY83d/5gk4xkBfz8UDU4eBte7mERERkYDht5JmjAkF3gB6ATHAdcaYmJNWuwdIstbGAZ2Al4wxJfyVKSBVrA1dhsO6mfDHF26nERERkQDhz5G0S4D11tqN1tqjwCdAv5PWsUA5Y4wBygL7gCw/ZgpMl9wOtRKcCdgP7XU7jYiIiAQAf5a0WsDxJ1ole5Yd73WgMbAN+AO4z1qb48dMgSkk1JkyKuMAzHjC7TQiIiISAPxZ0kwey04+6aoHsAyoCcQDrxtjyp+yIWPuMMYsMcYs2b17d0HnDAwXxMBlw+D3T2D9LLfTiIiIiMv8WdKSgYuOex6JM2J2vL8DX1rHemAT0OjkDVlr37bWJlhrE6pVq+a3wK677EGo2hCmPABH0txOIyIiIi7yZ0lbDEQZY+p5LgYYBEw+aZ2/gC4AxpgLgGhgox8zBbawks5hz9S/4Pt/u51GREREXOS3kmatzQLuBWYAq4DPrLUrjTF3GmPu9Kz2DHCpMeYPYDbwqLV2j78yBYXabaDVbbDgLUhe4nYaERERcYmxQXZvroSEBLtkSREvLxkH4M02EFER7pgLYcXrriQiIiJFhTFmqbU2IT/v1YwDgSiiPPR5GXathPmvuJ1GREREXKCSFqiie0LsAPhxNOxe63YaERERKWQqaYGs1wsQXhqmDIWc4nf7OBERkeJMJS2Qla0OPZ+Dv36Bpe+5nUZEREQKkUpaoIu7Dup3gu9GQOpWt9OIiIhIIVFJC3TGQN9xkJMFUx+EILsaV0RERPJHJS0YVK4Hl/8T1n4LSZPcTiMiIiKFQCUtWLS+C2o2h2kPQ/o+t9OIiIiIn6mkBYvQMGfKqPR9MPNfbqcRERERP1NJCyYXNoV298GyD2HD926nERERET9SSQs2HR+ByhfDN/fD0XS304iIiIifqKQFm/BSkPgq7N8Mc59zO42IiIj4iUpaMKrbHloOhl9eh23L3E4jIiIifqCSFqy6PgVlqsPkeyE70+00IiIiUsBU0oJVqYrQZwzs+MMZURMREZEiRSUtmDW+wnnMfR72bnA7jYiIiBQglbRg13sMhJaEKfdpyigREZEiRCUt2JW7ELo/A5vnwa8fuJ1GRERECohKWlHQ4iaoe5kzE8HBHW6nERERkQKgklYUGANXvALZR5y5PUVERCToqaQVFVUuhk6PwarJsGqK22lERETkPKmkFSVt73Xm95z6EBxOcTuNiIiInAeVtKIkNBwSX4NDu2DWCLfTiIiIyHlQSStqajaHtvfA0omw+Se304iIiEg+qaQVRZ2egEp1YfJQyMxwO42IiIjkg0paUVSitHO1574N8MMLbqcRERGRfFBJK6rqd4L4G2D+K878niIiIhJUVNKKsu7PQOkqMHkIZGe5nUZERETOgUpaUVa6MvQeDdt+g4Xj3U4jIiIi50AlraiLuRKie8OcUbBvk9tpRERExEcqaUWdMdB7DISEwTf3g7VuJxIREREfqKQVBxVqQbeRsHEuLP/Y7TQiIiLiA5W04qLlLVC7LUx/HNJ2uZ1GREREzkIlrbgICYErXoXMdJj+mNtpRERE5CxU0oqTag2hwyOw4n+wZrrbaUREROQMVNKKm3b3QfUYmDoMMg64nUZEREROQyWtuAkrAYmvwYFtMPtpt9OIiIjIaaikFUeRCdDmLlg8Af5a4HYaERERyYNKWnHV+Z9Q4SKYPBSyjridRkRERE6iklZclSwLfcfCnjUw7yW304iIiMhJVNKKs6iu0OxamPcy7ExyO42IiIgcRyWtuOvxHESUh8lDICfb7TQiIiLioZJW3JWpAj1fgK1LYNE7bqcRERERD5U0gaZXQ4Nuzi05Uv5yO42IiIigkiYAxkDfl53ffzMMrHU3j4iIiKikiUfF2tB1BKz/Dv74wu00IiIixZ5KmuRqdRtEtoLpj8KhvW6nERERKdZU0iRXSKgzZVTGAZjxuNtpREREijWVNDlR9cZw2TD4/VNYN8vtNCIiIsWWSpqc6rIHoWo0fPMAHElzO42IiEixpJImpwor6Rz2TN0Cc0a5nUZERKRYUkmTvNVu7VxIsHA8JC9xO42IiEixo5Imp9dlOJSv6UwZlXXU7TQiIiLFikqanF5EeejzMuxKgvmvuJ1GRESkWFFJkzOL7glNroIfR8PutW6nERERKTZU0uTser4AJcrAlKGQk+N2GhERkWJBJU3Ormw16PEs/PULLP2v22lERESKBZU08U3cdVC/M3w3ElK3up1GRESkyFNJE98YA1eMA5sNUx8Ea91OJCIiUqSppInvKtWFzv+Etd/Cyq/cTiMiIlKkqaTJuWl9J9RsDt8+Aun73E4jIiJSZKmkybkJDXOmjDq8H2b+y+00IiIiRZZKmpy7C5tCu/tg2Yew4Xu304iIiBRJKmmSPx0egSoN4Jv74Wi622lERESKHJU0yZ/wCLjiFdi/GeY+63YaERGRIkclTfKvbntoORh+eQO2/eZ2GhERkSJFJU3OT7enoUx1mDwEsjPdTiMiIlJkqKTJ+YmoAH1egh1/wM+vuZ1GRESkyFBJk/PXuC80ToS5z8PeDW6nERERKRJU0qRg9H7RuZhg8lDIyXE7jYiISNBTSZOCUe5C6D4K/vwJfvs/t9OIiIgEPZU0KTjNb4S6lzkzERzc4XYaERGRoKaSJgXHGOfeadlHYNpDbqcREREJaippUrCqXAydHoNVUyBpsttpREREgpZKmhS8tkPgwmYw7WE4nOJ2GhERkaCkkiYFLzQMEl+DQ7th1gi304iIiAQllTTxj5rx0PYeWDoRNv/kdhoREZGgo5Im/tPpcahU17l3WuZht9OIiIgEFb+WNGNMT2PMGmPMemPMY6dZp5MxZpkxZqUx5gd/5pFCVqK0c7Xnvg3ww2i304iIiAQVv5U0Y0wo8AbQC4gBrjPGxJy0TkXgTSDRWhsLDPRXHnFJ/U7Q/AaY/4ozv6eIiIj4xJ8jaZcA6621G621R4FPgH4nrXM98KW19i8Aa+0uP+YRt3R7BkpXga/vhewst9OIiIgEBX+WtFrAluOeJ3uWHa8hUMkYM9cYs9QYc5Mf84hbSleG3qNh+zJY+JbbaURERIKCP0uayWOZPel5GNAS6AP0AP5ljGl4yoaMucMYs8QYs2T37t0Fn1T8L+ZKiO4Nc/4N+za5nUZERCTg+bOkJQMXHfc8EtiWxzrTrbWHrLV7gB+BuJM3ZK1921qbYK1NqFatmt8Cix8ZA31egtBw+OZ+sCf3dRERETmeP0vaYiDKGFPPGFMCGAScPE/Q18BlxpgwY0xpoDWwyo+ZxE3la0LXkbBxLiz7f26nERERCWh+K2nW2izgXmAGTvH6zFq70hhzpzHmTs86q4DpwO/AImCCtXaFvzJJAGj5d6jdFmY8AWm6TkREROR0jA2yw04JCQl2yZIlbseQ87F7LYxvB436wsD33E4jIiLiN8aYpdbahPy8VzMOSOGr1hA6PgIrv4Q137qdRkREJCCppIk7Lr0PqsfC1Ach44DbaURERAKOSpq4I6wEJL4GB7bB7KfcTiMiIhJwVNLEPZEtoc1dsHgC/LXA7TQiIiIBRSVN3HX5k1CxNkweAllH3E4jIiISMFTSxF0lykDfsbBnLcx7ye00IiIiAUMlTdzXoCs0GwTzXoadSW6nERERCQgqaRIYejwLEeWdw5452W6nERERcZ1KmgSGMlWg12jYugQWveN2GhEREdeppEngaHIVRHWH2U9Dyl9upxEREXGVSpoEDmOgz8vO7795AIJsyjIREZGCpJImgaXiRdB1BKyfBX987nYaERER16ikSeBpdRtEtoJvH4VDe9xOIyIi4gqVNAk8IaHOlFFHDsKMJ9xOIyIi4gqVNAlM1RvDZQ/C75/CullupxERESl0KmkSuC4bBlWj4Zv74Uia22lEREQKlUqaBK6wks5hz9RkmDPK7TQiIiKFSiVNAlvt1nDJ7bBwPCQvcTuNiIhIoVFJk8DXZTiUr+lMGZV11O00IiIihcKnkmaMaWeM+c4Ys9YYs9EYs8kYs9Hf4UQAKFnOucntriSYP87tNCIiIoUizMf13gUeAJYCmv1aCl90T2faqB9fhJh+UC3a7UQiIiJ+5evhzlRr7bfW2l3W2r3HHn5NJnKyni9AiTIweSjk5LidRkRExK98LWnfG2NeNMa0Nca0OPbwazKRk5WtBj2egy0LYMm7bqcRERHxK18Pd7b2/Jpw3DILXF6wcUTOIm6Qc4PbWU9BdC+oEOl2IhEREb/wqaRZazv7O4iIT4yBK8bBm21h6oNw3SfOMhERkSLG16s7KxhjXjbGLPE8XjLGVPB3OJE8VaoLlz8Ja6fDyq/cTiMiIuIXvp6T9l/gIHCN53EAeM9foUTOqvWdULMFfPsIpO9zO42IiEiB87WkXWytHWGt3eh5PAXU92cwkTMKCYXEV+Hwfpj5pNtpRERECpyvJe2wMab9sSfGmHbAYf9EEvHRhU2h3X2w7CPY8L3baURERAqUryXtLuANY8xmY8yfwOvAnf6LJeKjDo9AlQYw5T44mu52GhERkQLjU0mz1i6z1sYBzYCm1trm1trl/o0m4oPwCLjiVUj5E+Y+63YaERGRAnPGW3AYY26w1n5ojBl20nIArLUv+zGbiG/qtoOWf4df3oDYAVBL91kWEZHgd7aRtDKeX8ud5iESGLo9BWWqO1NGZWe6nUZEROS8nXEkzVr7H8+vTxVOHJF8iqgAfV6CT/8GP78Glw07+3tEREQCmK83sx1tjClvjAk3xsw2xuwxxtzg73Ai56RxX4jpB3Ofh70b3E4jIiJyXny9urO7tfYA0BdIBhoCD/stlUh+9XrRuZhg8lDIyXE7jYiISL75WtLCPb/2Bj621uoW7xKYyl0A3UfBnz/Bbx+4nUZERCTffC1pU4wxq4EEYLYxphqQ4b9YIueh+Y1Q9zKYORwObHc7jYiISL74ep+0x4C2QIK1NhM4BPTzZzCRfDMGrngFso/AtzoqLyIiwels90m73Fo7xxgz4Lhlx6/ypb+CiZyXKhdDp8dh1ghImgwxiW4nEhEROSdnLGlAR2AOcEUer1lU0iSQtb0XVvwPpj0E9TpAqYpuJxIREfHZ2e6TNsLz698LJ45IAQoNg8TX4J3L4bvhkPiq24lERER85ut90p41xlQ87nklY8wov6USKSg14+HSe+HX92HTPLfTiIiI+MzXqzt7WWtTjj2x1u7HuR2HSODr+BhUqgdThkLmYbfTiIiI+MTXkhZqjCl57IkxphRQ8gzriwSOEqWdqz33bYQfXnA7jYiIiE98LWkf4twf7VZjzC3Ad8D7/oslUsDqd4TmN8D8V2H7726nEREROStf75M2GhgFNAZigWc8y0SCR/dRULoKTB4C2VlupxERETkjX0fSAFYB0621DwLzjDHl/JRJxD9KVYLeL8L2ZbDwLbfTiIiInJGvV3feDnwB/MezqBYwyU+ZRPwnph9E94E5/3bOURMREQlQvo6k3QO0Aw4AWGvXAdX9FUrEb4yBPmMgNBym3A/Wup1IREQkT76WtCPW2qPHnhhjwnBmHBAJPuVrQrenYNMPsOz/uZ1GREQkT76WtB+MMU8ApYwx3YDPgSn+iyXiZy0GQ+1LYcYTkLbL7TQiIiKn8LWkPQrsBv4A/gFMA570VygRvwsJcaaJykyHbx9xO42IiMgpzjbBOsaYEOB3a20T4B3/RxIpJFWjoOMjMGcUNL0GGmkSDRERCRxnHUmz1uYAy40xtQshj0jhuvQ+qB4LUx+EjANupxEREfHy9XBnDWClMWa2MWbysYc/g4kUirASkPgapO2A2U+5nUZERMTrrIc7PfTTS4quyJbQ+i5Y8AY0uRrqtHU7kYiIyJlH0owxEcaY+4GBQCNgvrX2h2OPwggoUigu/ydUrA1ThkJmhttpREREznq4830gAeeqzl7AS35PJOKGEmWg7zjYsxbm6a+5iIi472yHO2OstU0BjDHvAov8H0nEJQ26QNx18NPLEHslXBDrdiIRESnGzjaSlnnsN9baLD9nEXFfj2choiJMHgo52W6nERGRYuxsJS3OGHPA8zgINDv2e2OM7lcgRU/pytDrBdi6BBa97XYaEREpxs5Y0qy1odba8p5HOWtt2HG/L19YIUUKVZOrIKo7zH4G9v/pdhoRESmmfL1PmkjxYQz0edn59ZsHwFq3E4mISDGkkiaSl4oXQZcRsGE2/P6Z22lERKQYUkkTOZ1Wt0LkJTD9MTi0x+00IiJSzKikiZxOSCgkvgpHDsL0x91OIyIixYxKmsiZVG8MHR6CPz6Ddd+5nUZERIoRlTSRs2n/AFRr5FxEcCTN7TQiIlJMqKSJnE1YSUh8DVKTYc4zbqcREZFiQiVNxBcXXQKX3A4L/wNbFrudRkREigGVNBFfdRkO5WvB5CGQddTtNCIiUsSppIn4qmQ56Psy7F4F88e5nUZERIo4lTSRc9GwBzS5Gn58EXavcTuNiIgUYSppIueq5/NQooxz2DMnx+00IiJSRKmkiZyrstWgx3OwZSEsedftNCIiUkSppInkR9wguPhymPWUc2sOERGRAqaSJpIfxkDfsWCzYeqDYK3biUREpIjxa0kzxvQ0xqwxxqw3xjx2hvVaGWOyjTFX+zOPSIGqVBcufxLWToeVX7qdRkREihi/lTRjTCjwBtALiAGuM8bEnGa9F4AZ/soi4jet74SaLWDaI5C+z+00IiJShPhzJO0SYL21dqO19ijwCdAvj/WGAP8Ddvkxi4h/hIQ6U0ZlpMDMJ91OIyIiRYg/S1otYMtxz5M9y7yMMbWA/sB4P+YQ8a8Lm0C7+2HZR7BhjttpRESkiPBnSTN5LDv57OpxwKPW2uwzbsiYO4wxS4wxS3bv3l1Q+UQKToeHoUoDmHI/HD3kdhoRESkC/FnSkoGLjnseCWw7aZ0E4BNjzGbgauBNY8yVJ2/IWvu2tTbBWptQrVo1P8UVOQ/hEXDFq5DyJ3z/rNtpRESkCPBnSVsMRBlj6hljSgCDgMnHr2CtrWetrWutrQt8AdxtrZ3kx0wi/lO3HSTcAgvehK2/up1GRESCnN9KmrU2C7gX56rNVcBn1tqVxpg7jTF3+uvririq60goe4EzZVR2pttpREQkiBkbZDfhTEhIsEuWLHE7hsjprZ4Kn1wPXYbDZQ+6nUZERFxkjFlqrU3Iz3s144BIQWvUB2L6wdwXYM96t9OIiEiQUkkT8YdeLzoXE0y5D3Jy3E4jIiJBSCVNxB/KXQDd/w1//gS/feB2GhERCUIqaSL+0vwGqNcBZg6HA9vdTiMiIkFGJU3EX4yBvuMg+whMe8jtNCIiEmRU0kT8qcrF0PkJWP0NJE0++/oiIiIeKmki/tbmHriwmTOadjjF7TQiIhIkVNJE/C00DBJfg0N74Lt/uZ1GRESChEqaSGGoGQ+X3gu/fgCbfnQ7jYiIBAGVNJHC0ulxqFTPuXda5mG304iISIBTSRMpLOGlIPFV2LcRfnjB7TQiIhLgVNJEClO9DtD8Rpj/Kmxf7nYaEREJYCppIoWt+zNQugpMHgLZWW6nERGRAKWSJlLYSlWC3i86I2kL3nQ7jYiIBCiVNBE3xPSDRn3h+2edc9REREROopIm4gZjnNG00HDnak9r3U4kIiIBRiVNxC3la0K3p5z7pi37yO00IiISYFTSRNzUYjDUaQcz/gkHd7qdRkREAohKmoibQkLgilecm9tOf9TtNCIiEkBU0kTcVjUKOj4CK7+C1dPcTiMiIgFCJU0kELS7D6rHwtRhkJHqdhoREQkAKmkigSA0HPq9Bmk7YdZTbqcREZEAoJImEihqtYQ2d8OSd+HPX9xOIyIiLlNJEwkknZ+AirXh85th9jOwY4XuoSYiUkyppIkEkhJl4JoPoHpj+OllGN8OXm8Fc/4NO5NU2EREihFjg+ybfkJCgl2yZInbMUT8L203rJ7iXPW5+SewOVA1GmL7O4/qjdxOKCIiZ2GMWWqtTcjXe1XSRIJA2i5YNRlWTnIKGxaqNc4tbNUaup1QRETyoJImUpwc3Jlb2P6cD1jn9h3HClvVBm4nFBERD5U0keLq4A5ImuwcEv3rF8DCBU0h9kqnsFW52O2EIiLFmkqaiMCBbbmFbcsCZ9mFzTwjbFdC5fquxhMRKY5U0kTkRKlbIelrp7AlL3KW1YhzClvMlVC5nqvxRESKC5U0ETm9lC25hW2r599Ozea5ha1SHVfjiYgUZSppIuKb/X/mFrZtvzrLarXMLWwVL3I1nohIUaOSJiLnbv9m5wrRlV/B9mXOsshWnsLWDypEuhhORKRoUEkTkfOzbxMkTfIUtuXOsota5xa28jVdjSciEqxU0kSk4OzdkFvYdvzhLKvd1jkcGtMPytdwM52ISFBRSRMR/9izHpK+cg6L7lwBGKewxfaHmEQod6HbCUVEAppKmoj43+61uSNsu5IAA3XaOfdgi+kHZau7HFBEJPCopIlI4dq12ilsK76EPWvAhHgKW39onAhlq7mdUEQkIKikiYh7dq1yRtdWfgV71jqFre5lnsJ2BZSp6nZCERHXqKSJiPusdQ6DrpwEK7+EvevBhEK9DrmFrXRlt1OKiBQqlTQRCSzWws6VnhG2L2HfRqew1e/knMPWqK8Km4gUCyppIhK4rHVu5XHskOj+TRAS5ils/aFRHyhVye2UIiJ+oZImIsHBWudmuccKW8qfEBIOF3d2Clt0byhV0e2UIiIFRiVNRIKPtbDtN09hmwSpfzmFrUEXT2HrBREV3E4pInJezqekhRV0GBERnxgDtVo4j25Pw9ZfnfPXVk6CtdMhtAQ06OoUtoY9IaK824lFRAqVSpqIuM8YiGzpPLqPguQluTfOXTMNQktCVDdPYesBJcu5nVhExO90uFNEAldODmxdkntI9OA2CIs4cYStZFm3U4qInJbOSRORoi8nB5IX5Ra2tB0QVurEEbYSZdxOKSJyApU0ESlecnJgywKnsCV9DWk7ncLWsIdT2KK6Q4nSbqcUEVFJE5FiLCcb/volt7Ad2g3hpZ1DobH9nZG28FJupxSRYkolTUQEnML253xPYZsM6XsgvIxzO4/Y/s65bOERbqcUkWJEJU1E5GTZWfDnT05hWzUF0vdCiXK5he3iy1XYRMTvVNJERM4kOws2z/MUtslweL9T2Br1zi1sYSXdTikiRZBKmoiIr7IzYdOPuSNsGSlQsrwzh2hsf6jfGcJKuJ1SRIoIlTQRkfzIzoSNPziFbfUUyEh1pqJq1NcpbPU6qrCJyHlRSRMROV9ZR2HjXE9hmwpHUiGiIjQ+rrCFhrudUkSCjObuFBE5X2EloGF355F1BDZ8n3uV6G8fQqlK0PgKp7DV7QCh+vYpIv6l7zIiIicLKwnRPZ1H1hHYMMcpbCu+gl8/gFKVISbRKWx12quwiYhf6DuLiMiZhJV0btsR3QsyM2DDbKew/fEFLJ0IpaseN8LWHkJC3U4sIkWESpqIiK/CI5yrQBv1gczDsH6WU9h+/wyWvgdlqkHjYyNsl6qwich5UUkTEcmP8FLOCFrjK+BoOqz/zilsyz+GJe9CmeoQ088pbLXbqLCJyDnT1Z0iIgXp6CFYN9MpbGtnQtZhKHthbmG7qDWEhLidUkQKiW7BISISiI6kwboZTmFb9x1kZUC5GhBzpVPYIlupsIkUcSppIiKB7shBWHtcYcs+AuVreQrblVArQYVNpAhSSRMRCSYZB3IL2/rvIPsolI90ylpsf6jVEoxxO6WIFACVNBGRYJWRCmumewrbLMjJhAq1IdZzDlvNFipsIkFMJU1EpCg4nAJrvnUK24Y5TmGrWNspa7H9oUa8CptIkFFJExEpag7vh9XTnMK28XvIyYJKdXML24XNVNhEgoBKmohIUZa+z5n0feVXziTwNhsq188tbBc0UWETCVAqaSIixUX6Plg1BZImwcYfnMJWpYFT1mKuhAtiVdhEAohKmohIcXRoL6ye4oywbfoRbA5UiTpuhC3G7YQixZ5KmohIcZe2O7ewbf7JKWxVo3MLW/VGbicUKZZU0kREJFfaLlg1GVZOcgobFqo1zi1s1Rq6nVCk2FBJExGRvB3c6SlsX8GfPwMWqsfmFraqDdxOKFKkqaSJiMjZHdieW9j++sVZdkHT3JkOqlzsajyRokglTUREzs2BbZD0tVPYtix0ll3YzDPCdqVziw8ROW8qaSIikn+pyZDkGWFLXuQsqxGXe1uPyvVcjScSzAK2pBljegKvAKHABGvt8ye9/jfgUc/TNOAua+3yM21TJU1ExI9StuSOsG31fK+t2Ty3sFWq42o8kWATkCXNGBMKrAW6AcnAYuA6a23ScetcCqyy1u43xvQCRlprW59puyppIiKFZP+fuYVt26/OslotcwtbxYtcjScSDAK1pLXFKV09PM8fB7DWPnea9SsBK6y1tc60XZU0EREX7N/s3NJj5VewfZmzLLKVp7D1gwqRLoYTCVznU9JCCjrMcWoBW457nuxZdjq3At/6MY+IiORXpbrQ/n74xw8w9DfoMgKyjsCMJ2BsLLzbHRa85VyQICIFIsyP285r8rg8h+2MMZ1xSlr707x+B3AHQO3atQsqn4iI5Efl+nDZMOexd4MzurZyEkx/zHnUbuuMsDVOhPI13E4rErRcP9xpjGkGfAX0stauPdt2dbhTRCRA7VkPSZ7CtnMFYKDOpc75azGJUO5ClwOKFL5APSctDOfCgS7AVpwLB6631q48bp3awBzgJmvtz75sVyVNRCQI7F4LSZOcUbZdSTiFrZ1zD7aYflC2ussBRQpHQJY0AGNMb2Aczi04/mut/bcx5k4Aa+14Y8wE4CrgT89bss72QVTSRESCzK7VTmFb8SXsWQMmxFPYPIdEy1ZzO6GI3wRsSfMHlTQRkSC2a5UzurbiS9i7zilsdS/zFLYroExVtxOKFCiVNBERCS7WOodBV37lPPauBxMK9TrkFrbSld1OKXLeVNJERCR4WetcaHCssO3b6BS2+p2cc9ga9VVhk6ClkiYiIkWDtbDjd8+Nc790bqIbEuYpbP2hUR8oVcnlkCK+U0kTEZGix1rYvjx3hC3lTwgJh4s7O4UtujeUquh2SpEzUkkTEZGizVrY9lvujXNT/3IKW4MunsLWCyIquJ1S5BTnU9L8OeOAiIhIwTAGarVwHt2ehq2/OodDV06CtdMhtAQ06OoUtoY9IaK824lFzptKmoiIBBdjILKl8+j2DGxd6oywJU2CNdMgtCREdfMUth5QspzbiUXyRYc7RUSkaMjJgeTFuYXt4HYIi8gtbFE9oGRZt1NKMaNz0kRERI6XkwNbFnoK29eQtgPCSjmFrckAiOoOJcq4nVKKAZU0ERGR08nJgS0LjitsOyG8tFPUYvt7Cltpt1NKEaWSJiIi4oucbPjrl9zCdmi3U9ga9vQUtm4QXsrtlFKEqKSJiIicq5xs+HO+p7BNhvQ9EF7GuZ1HbH/natHwCLdTSpBTSRMRETkf2Vnw50+5he3wPihRLrewXXy5Cpvki0qaiIhIQcnOgs0/OoVt1RQ4vB9KlndmOIjt78x4EFbS7ZQSJFTSRERE/CE7Ezb94Cls30BGCpSsAI08ha1+Zwgr4XZKCWAqaSIiIv6WdRQ2eUbYVk+BjFRnKqpGfZ3CVq+jCpucQiVNRESkMGUdhY1zPYVtKhxJhYiK0Pi4whYa7nZKCQCau1NERKQwhZWAht2dR9YR2PB97kUHv30IpSpB4yucwla3A4Tqx62cO/2tEREROR9hJSG6p/PIzIANc5zCtuJL+PUDKF0lt7DVaa/CJj7T3xQREZGCEh7hXFTQqDdkHob1s53C9vvnsHQilK4KMYmewtYOQkLdTiwBTCVNRETEH8JLOeeoNe7rKWyznMK2/FNY8l8oUw0aHytsl6qwySlU0kRERPwtvJRzyLPxFXA0HdZ/5ylsH8OSd6FMdYjp5xS22m1U2ATQ1Z0iIiLuOXoI1s10CtvamZB1GMpemFvYLmoNISFup5TzoFtwiIiIBLsjabBuhlPY1n0HWRlQrgbEXOkUtshWKmxBSCVNRESkKDlyENYeV9iyj0D5WscVtgQwxu2U4gOVNBERkaIq4wCsne4UtvWzIPsoVLgo95BorZYqbAFMJU1ERKQ4yEiFNd96CttsyMmECrUh1lPYarZQYQswKmkiIiLFzeEUWDMNVk5ybqCbkwkVaztlLbY/1IhXYQsAKmkiIiLF2eH9sHqaM8K28XvIyYJKdXML24XNVNhcopImIiIijvR9zqTvK79yJoG32VC5fm5hu6CJClshUkkTERGRUx3aC6u/cQrbph+dwlalQW5hqx6jwuZnKmkiIiJyZof2wKopTmHbPA9sDlRteFxha+x2wiJJJU1ERER8l7YbVk2GpEmw+SdPYYs+rrA1cjthkaGSJiIiIvmTtsspbCsnOYUNC9Ua5xa2ag3dThjUVNJERETk/B3ckXtI9M+fAQvVY3MLW9UGbicMOippIiIiUrAObPeMsH0Ff/3iLLugKcRe6RS2Khe7Gi9YqKSJiIiI/6RuzS1sWxY6yy5s5hlhu9K5xYfkSSVNRERECkdqMiR97RS25MXOshrxuYWtUl0XwwUelTQREREpfCl/5Ra2rUudZTWbO4Ut5kqoVMfVeIFAJU1ERETctf/P3MK27VdnWa2WuYWt4kWuxnOLSpqIiIgEjn2bcgvb9mXOsshWnsLWDypEuhqvMKmkiYiISGDat9G5B9vKr2DH786yi1rnFrbyNV2N528qaSIiIhL49m5wytrKSbDzD2dZ7bZOYWucCOVruBrPH1TSREREJLjsWZc7wrZrJWCgzqXO+WsxiVDuQpcDFozzKWlhBR1GRKS4yszMJDk5mYyMDLejiASH6n2dR3YmZKY7j+xMWLEcwtZAeCkILw0hoW4nPauIiAgiIyMJDw8vsG2qpImIFJDk5GTKlStH3bp1Mca4HUckOGUehsMpkJECWRlAJpQoCaUqQkRFCC24ElRQrLXs3buX5ORk6tWrV2DbVUkTESkgGRkZKmgi5yu8lPMod6FT0g6nwOH9zk10U5OhRFkoVQkiKgRMYTPGUKVKFXbv3l2g21VJExEpQCpoIgXEmDwK236ntKVucR4lyh03wuZupfHHv/2QAt+iiIi4pmzZst7fT5s2jaioKP766y9GjhxJ6dKl2bVrV57rnk7v3r1JSUk54zqdOnUirwu6Jk6cyL333ut7+HMwZswYGjVqRJMmTYiLi+ODDz44Y5b8WLJkCUOHDgXgyJEjdO3alfj4eD799FNuu+02kpKS8r3tkSNHUqtWLeLj42nSpAmTJ08+ZXlMTAwff/zxabcxbtw47+cORK+//joNGjTAGMOePXtOu977779PVFQUUVFRvP/++97lmzZtonXr1kRFRXHtoEEctaFQvia2WiOGPvsODdoPoFmHPvz600znStG965k+6TOio6Np0KABzz//vHdb+/bto1u3bkRFRdGtWzf279/vfe25556jQYMGREdHM2PGDO/yrl27nrCeK6y1QfVo2bKlFREJRElJSW5HsGXKlLHWWjtr1ixbv359u379emuttSNGjLAXXXSRfeSRR05Z93x17NjRLl68+JTl7733nr3nnnvytc2cnBybnZ2d52tvvfWW7d69u01NTbXWWpuSkmInTpx4xizn65dffrEdOnTI9/uzsrJOeD5ixAj74osvWmudvzdVqlSx2dnZJyxfu3atLVeunD169Ogp28vMzLRNmza1mZmZPmc4l3ULwq+//mo3bdpk69SpY3fv3p3nOnv37rX16tWze/futfv27bP16tWz+/bts9ZaO3DgQPvxxx9ba639xz/+Yd98801rrbVTp061PXv2tDk5OfaXn3+2l7RKsDZ1q83autzWrxNpN/w8xR7ZlmSbNYm1K/9Ybq219uGHH7bPPfectdba5557zvvvYOXKlbZZs2Y2IyPDbty40davX9+7ryZOnGhHjRp1Tp85r+8BwBKbz86jkTQRkSJm3rx53H777UydOpWLL77Yu/yWW27h008/Zd++fae858MPP+SSSy4hPj6ef/zjH2RnZwNQt25d7yjIM888Q6NGjejWrRvXXXcdY8aM8b7/888/55JLLqFhw4bMmzfPu3zLli307NmT6OhonnrqKe/yl19+mSZNmtCkSRPGjRsHwObNm2ncuDF33303LVq0YMuWLQwePJgmTZrQtGlTxo4dC8Czzz7Lm2++Sfny5QGoUKECN9988ymf6a677iIhIYHY2FhGjBjhXf7YY48RExNDs2bNeOihh7z5j43KdejQAYC5c+fSt29fdu3axQ033MCyZcuIj49nw4YNJ4zYzZw5k7Zt29KiRQsGDhxIWlqa98/u6aefpn379nz++een3V+NGzcmLCzslNGmqKgoSpcunedozpw5c2jRogVhYc4hvnfeeYdWrVoRFxfHVVddRXp6OgCDBw9m2LBhdO7cmUcffZQNGzbQs2dPWrZsyWWXXcbq1asBmDJlCq1bt6Z58+Z07dqVnTt3njavr5o3b07dunXPuM6MGTPo1q0blStXplKlSnTr1o3p06djrWXOnDlcffXVANx8881MmjQJgK+//pqbbroJYwxt2rYlJfUA2w8ZFm1Oo0FUNPVjm1MiJIdBfTvz9UfvwN4NfD3pS26+8W95bmvQoEGULFmSevXq0aBBAxYtWgRAYmLiGUcyC4POSRMR8YOnpqwkaduBAt1mTM3yjLgi9ozrHDlyhH79+jF37lwaNWp0wmtly5bllltu4ZVXXjmhMK1atYpPP/2U+fPnEx4ezt13381HH33ETTfd5F1nyZIl/O9//+O3334jKyuLFi1a0LJlS+/rWVlZLFq0iGnTpvHUU08xa9YsABYtWsSKFSsoXbo0rVq1ok+fPhhjeO+991i4cCHWWlq3bk3Hjh2pVKkSa9as4b333uPNN99k6dKlbN26lRUrVgCQkpLCwYMHOXjw4Anl83T+/e9/U7lyZbKzs+nSpQu///47kZGRfPXVV6xevRpjjPdQ7tNPP82MGTOoVavWKYd3q1evzoQJExgzZgzffPPNCa/t2bOHUaNGMWvWLMqUKcMLL7zAyy+/zPDhwwHntgw//fTTGXMuXLiQkJAQqlWrdsLyX3/9laioKKpXr37Ke+bPn3/Cn/+AAQO4/fbbAXjyySd59913GTJkCABr165l1qxZhIaG0qVLF8aPH09UVBQLFy7k7rvvZs6cObRv354FCxZgjGHChAmMHj2al1566YSvuWbNGq699to8P8PcuXOpWLHiGT9nXrZu3cpFF+XO6RkZGcnWrVvZu3cvFStW9JbQY8vP9J6t27ZxUZ26UL4WlKtJZMM4Fv7yE2RlsHPnTmqYvbD3KDUqVPIe9t+6dStt2rQ5ZVsAlSpV4siRI+zdu5cqVaqc82crCCppIiJFSHh4OJdeeinvvvsur7zyyimvDx06lPj4eB588EHvstmzZ7N06VJatWoFwOHDh08pBj/99BP9+vWjVKlSAFxxxRUnvD5gwAAAWrZsyebNm73Lu3Xr5v0BN2DAAH766SeMMfTv358yZcp4l8+bN4/ExETq1Knj/aFZv359Nm7cyJAhQ+jTpw/du3cnLS3N5xO0P/vsM95++22ysrLYvn07SUlJxMTEEBERwW233UafPn3o27cvAO3atWPw4MFcc8013s/iiwULFpCUlES7du0AOHr0KG3btvW+frpSAzB27Fg+/PBDypUrx6effur9XGPHjuWdd95h48aNTJ8+Pc/3bt++ncaNG3ufr1ixgieffJKUlBTS0tLo0aOH97WBAwcSGhpKWloaP//8MwMHDvS+duTIEcC5fcy1117L9u3bOXr0aJ63kYiOjmbZsmU+/Kn4zuZxQ31jzGmX+/weYyCsJKZkOageAyYUylRzLjw4cgBsNuzdiM08DDk5eX4dcAr6tm3bVNJERIqSs414+UtISAifffYZXbt25dlnn+WJJ5444fWKFSty/fXX8+abb3qXWWu5+eabee6550673bx+MB6vZMmSAISGhpKVleVdfnKhOt0P4GOOFTdwRjKWL1/OjBkzeOONN/jss8/473//S5kyZdi4cSP169c/7XY2bdrEmDFjWLx4MZUqVWLw4MFkZGQQFhbGokWLmD17Np988gmvv/46c+bMYfz48SxcuJCpU6cSHx/vcxmx1tKtW7fTHhY7/vOc7IEHHvAebs1r+ZdffslNN93Ehg0biIiIOGGdUqVKnXDT5MGDBzNp0iTi4uKYOHEic+fOPSVDTk4OFStWzPOzDRkyhGHDhpGYmMjcuXMZOXLkKev4YyQtMjLyhKzJycl06tSJqlWrkpKSQlZWFmFhYSQnJ1OzZk3ve7Zs2XLCe2rWrMnRo0fzXI4xXHDBBWxPD6HGhbFs/2sj1atVg8x0IiuXZsuqxbCvPURUJHnLFu/XAee2Osf+Y+IGnZMmIlLElC5dmm+++YaPPvqId99995TXhw0bxn/+8x9vmerSpQtffPGF9xDQvn37+PPPP094T/v27ZkyZQoZGRmkpaUxdepUn7J899137Nu3j8OHDzNp0iTatWtHhw4dmDRpEunp6Rw6dIivvvqKyy677JT37tmzh5ycHK666iqeeeYZfv31VwAef/xx7rnnHg4ccA4nHzhwgLfffvuE9x44cIAyZcpQoUIFdu7cybfffgtAWloaqamp9O7dm3HjxnkLy4YNG2jdujVPP/00VatWPeGH/Zm0adOG+fPns379egDS09NZu3atT+89mwEDBpCQkHDCFY/HNG7c2Ps1AQ4ePEiNGjXIzMzko48+ynN75cuXp169et7z46y1LF++HIDU1FRq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\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "plt.figure(figsize=(10,8))\n",
+ "y_test_invers = []\n",
+ "for i, y in enumerate(y_test.reset_index(drop=True)):\n",
+ " y_test_invers.append(1-y)\n",
+ "# K соседей\n",
+ "precision, recall, thresholds = precision_recall_curve(y_test_invers, probas_knn1[:,0])\n",
+ "aps_knn1 = average_precision_score(y_test_invers,probas_knn1[:,0])\n",
+ "plt.plot(recall, precision, label='%s PR (area = %f)' % ('KNeighborsClassifier', aps_knn1)) \n",
+ "# решающее дерево\n",
+ "precision, recall, thresholds = precision_recall_curve(y_test_invers, probas_dtc1[:,0])\n",
+ "aps_dtc1 = average_precision_score(y_test_invers,probas_dtc1[:,0])\n",
+ "plt.plot(recall, precision, label='%s PR (area = %f)' % ('DecisionTreeClassifier', aps_dtc1)) \n",
+ "# вывод графика\n",
+ "plt.xlabel('Recall')\n",
+ "plt.ylabel('Precision')\n",
+ "plt.xlim([0.0, 1.0])\n",
+ "plt.ylim([0.0, 1.0])\n",
+ "plt.legend(loc=4, fontsize='medium')\n",
+ "plt.title('not Ca')\n",
+ "plt.show()\n",
+ "\n",
+ "\n",
+ "plt.figure(figsize=(10,8))\n",
+ "# K соседей\n",
+ "precision, recall, thresholds = precision_recall_curve(y_test, probas_knn0[:,1])\n",
+ "aps_knn0 = average_precision_score(y_test,probas_knn0[:,1])\n",
+ "plt.plot(recall, precision, label='%s PR (area = %f)' % ('KNeighborsClassifier', aps_knn0)) \n",
+ "# решающее дерево\n",
+ "precision, recall, thresholds = precision_recall_curve(y_test, probas_dtc1[:,1])\n",
+ "aps_dtc1 = average_precision_score(y_test,probas_dtc1[:,1])\n",
+ "plt.plot(recall, precision, label='%s PR (area = %f)' % ('DecisionTreeClassifier', aps_dtc1)) \n",
+ "# вывод графика\n",
+ "plt.xlabel('Recall')\n",
+ "plt.ylabel('Precision')\n",
+ "plt.xlim([0.0, 1.0])\n",
+ "plt.ylim([0.0, 1.0])\n",
+ "plt.legend(loc=4, fontsize='medium')\n",
+ "plt.title('Ca')\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "after-competition",
+ "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.9.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git "a/ml/lb4/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#4.ipynb" "b/ml/lb4/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#4.ipynb"
new file mode 100644
index 00000000..f5665967
--- /dev/null
+++ "b/ml/lb4/\320\220\320\275\321\202\321\200\320\276\320\277\320\276\320\262 \320\220\321\200\321\202\321\221\320\274. 19-\320\230\320\222\320\242-2/Laba#4.ipynb"
@@ -0,0 +1,1297 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "prospective-sandwich",
+ "metadata": {},
+ "source": [
+ "### Лабораторная работа № 3. \n",
+ "\n",
+ "### Антропов Артем Эдуардович 19-ИВТ-2\n",
+ "### Вариант 2\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "expensive-carroll",
+ "metadata": {},
+ "source": [
+ "#### 1. Изучить набор данных. Создать описание набора данных на русском языке. Описать признаки, используемые в наборе данных"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "blind-standard",
+ "metadata": {},
+ "source": [
+ "dateCrawled: дата создания объявления.\n",
+ "\n",
+ "name: Название автомобиля.\n",
+ "\n",
+ "seller: Тип продавца: либо частный продавец, либо дилер.\n",
+ "\n",
+ "offerType: Тип предложения.\n",
+ "\n",
+ "price: Цена продажи автомобиля по объявлению.\n",
+ "\n",
+ "abtest: Тест пройден.\n",
+ "\n",
+ "vehicleType: Тип транспортного средства.\n",
+ "\n",
+ "yearOfRegistration: Год, когда автомобиль был впервые зарегистрирован.\n",
+ "\n",
+ "powerPS: Мощность автомобиля в PS.\n",
+ "\n",
+ "model: Модель автомобиля.\n",
+ "\n",
+ "kilometer: расстояние, пройденное автомобилем в километрах.\n",
+ "\n",
+ "monthOfRegistration: Месяц, когда автомобиль был впервые зарегистрирован.\n",
+ "\n",
+ "fuelType: тип топлива, который требуется автомобилю.\n",
+ "\n",
+ "brand: Марка автомобиля.\n",
+ "\n",
+ "notRepairedDamage: индикатор того, поврежден автомобиль или нет.\n",
+ "\n",
+ "dateCreated: дата создания объявления.\n",
+ "\n",
+ "nrOfPictures: Количество картинок в объявлении.\n",
+ "\n",
+ "postalCode: почтовый индекс, по которому находится автомобиль.\n",
+ "\n",
+ "lastSeenOnline: дата последнего просмотра объявления.\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 130,
+ "id": "serial-healing",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "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 import linear_model\n",
+ "from sklearn.preprocessing import MinMaxScaler\n",
+ "from sklearn.model_selection import GridSearchCV\n",
+ "from sklearn.preprocessing import PolynomialFeatures\n",
+ "from sklearn.model_selection import (cross_val_score, StratifiedKFold,\n",
+ " train_test_split)\n",
+ "from sklearn.linear_model import LogisticRegression, LogisticRegressionCV\n",
+ "\n",
+ "from scipy.stats import pearsonr, spearmanr\n",
+ "%matplotlib inline"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 131,
+ "id": "numerical-texas",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "df = pd.read_csv('autos.csv', encoding = 'latin1') # Создание объекта набора данных"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 132,
+ "id": "minute-sleep",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " dateCrawled | \n",
+ " name | \n",
+ " seller | \n",
+ " offerType | \n",
+ " price | \n",
+ " abtest | \n",
+ " vehicleType | \n",
+ " yearOfRegistration | \n",
+ " gearbox | \n",
+ " powerPS | \n",
+ " model | \n",
+ " kilometer | \n",
+ " monthOfRegistration | \n",
+ " fuelType | \n",
+ " brand | \n",
+ " notRepairedDamage | \n",
+ " dateCreated | \n",
+ " nrOfPictures | \n",
+ " postalCode | \n",
+ " lastSeen | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 2016-03-24 11:52:17 | \n",
+ " Golf_3_1.6 | \n",
+ " privat | \n",
+ " Angebot | \n",
+ " 480 | \n",
+ " test | \n",
+ " NaN | \n",
+ " 1993 | \n",
+ " manuell | \n",
+ " 0 | \n",
+ " golf | \n",
+ " 150000 | \n",
+ " 0 | \n",
+ " benzin | \n",
+ " volkswagen | \n",
+ " NaN | \n",
+ " 2016-03-24 00:00:00 | \n",
+ " 0 | \n",
+ " 70435 | \n",
+ " 2016-04-07 03:16:57 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2016-03-24 10:58:45 | \n",
+ " A5_Sportback_2.7_Tdi | \n",
+ " privat | \n",
+ " Angebot | \n",
+ " 18300 | \n",
+ " test | \n",
+ " coupe | \n",
+ " 2011 | \n",
+ " manuell | \n",
+ " 190 | \n",
+ " NaN | \n",
+ " 125000 | \n",
+ " 5 | \n",
+ " diesel | \n",
+ " audi | \n",
+ " ja | \n",
+ " 2016-03-24 00:00:00 | \n",
+ " 0 | \n",
+ " 66954 | \n",
+ " 2016-04-07 01:46:50 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 2016-03-14 12:52:21 | \n",
+ " Jeep_Grand_Cherokee_\"Overland\" | \n",
+ " privat | \n",
+ " Angebot | \n",
+ " 9800 | \n",
+ " test | \n",
+ " suv | \n",
+ " 2004 | \n",
+ " automatik | \n",
+ " 163 | \n",
+ " grand | \n",
+ " 125000 | \n",
+ " 8 | \n",
+ " diesel | \n",
+ " jeep | \n",
+ " NaN | \n",
+ " 2016-03-14 00:00:00 | \n",
+ " 0 | \n",
+ " 90480 | \n",
+ " 2016-04-05 12:47:46 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 2016-03-17 16:54:04 | \n",
+ " GOLF_4_1_4__3TÜRER | \n",
+ " privat | \n",
+ " Angebot | \n",
+ " 1500 | \n",
+ " test | \n",
+ " kleinwagen | \n",
+ " 2001 | \n",
+ " manuell | \n",
+ " 75 | \n",
+ " golf | \n",
+ " 150000 | \n",
+ " 6 | \n",
+ " benzin | \n",
+ " volkswagen | \n",
+ " nein | \n",
+ " 2016-03-17 00:00:00 | \n",
+ " 0 | \n",
+ " 91074 | \n",
+ " 2016-03-17 17:40:17 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 2016-03-31 17:25:20 | \n",
+ " Skoda_Fabia_1.4_TDI_PD_Classic | \n",
+ " privat | \n",
+ " Angebot | \n",
+ " 3600 | \n",
+ " test | \n",
+ " kleinwagen | \n",
+ " 2008 | \n",
+ " manuell | \n",
+ " 69 | \n",
+ " fabia | \n",
+ " 90000 | \n",
+ " 7 | \n",
+ " diesel | \n",
+ " skoda | \n",
+ " nein | \n",
+ " 2016-03-31 00:00:00 | \n",
+ " 0 | \n",
+ " 60437 | \n",
+ " 2016-04-06 10:17:21 | \n",
+ "
\n",
+ " \n",
+ "
\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": 132,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.head(5)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "gorgeous-jungle",
+ "metadata": {},
+ "source": [
+ "#### 2) Удалите дубликаты строк в наборе данных; приведите размер набора данных до и после данной операции;¶"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 133,
+ "id": "million-producer",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(371528, 20)"
+ ]
+ },
+ "execution_count": 133,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.shape"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 134,
+ "id": "rational-hunger",
+ "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": 134,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.columns"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 135,
+ "id": "roman-friday",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(260952, 13)"
+ ]
+ },
+ "execution_count": 135,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df = df.drop_duplicates()\n",
+ "df = df.dropna()\n",
+ "df = df.drop(['dateCrawled','offerType','dateCreated','postalCode','lastSeen','name','model'], axis = 1)\n",
+ "df.shape"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 136,
+ "id": "bacterial-manor",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Index(['seller', 'price', 'abtest', 'vehicleType', 'yearOfRegistration',\n",
+ " 'gearbox', 'powerPS', 'kilometer', 'monthOfRegistration', 'fuelType',\n",
+ " 'brand', 'notRepairedDamage', 'nrOfPictures'],\n",
+ " dtype='object')"
+ ]
+ },
+ "execution_count": 136,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.columns"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 137,
+ "id": "fallen-thumb",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Int64Index: 260952 entries, 3 to 371527\n",
+ "Data columns (total 13 columns):\n",
+ " # Column Non-Null Count Dtype \n",
+ "--- ------ -------------- ----- \n",
+ " 0 seller 260952 non-null object\n",
+ " 1 price 260952 non-null int64 \n",
+ " 2 abtest 260952 non-null object\n",
+ " 3 vehicleType 260952 non-null object\n",
+ " 4 yearOfRegistration 260952 non-null int64 \n",
+ " 5 gearbox 260952 non-null object\n",
+ " 6 powerPS 260952 non-null int64 \n",
+ " 7 kilometer 260952 non-null int64 \n",
+ " 8 monthOfRegistration 260952 non-null int64 \n",
+ " 9 fuelType 260952 non-null object\n",
+ " 10 brand 260952 non-null object\n",
+ " 11 notRepairedDamage 260952 non-null object\n",
+ " 12 nrOfPictures 260952 non-null int64 \n",
+ "dtypes: int64(6), object(7)\n",
+ "memory usage: 27.9+ MB\n"
+ ]
+ }
+ ],
+ "source": [
+ "df.info()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "micro-hopkins",
+ "metadata": {},
+ "source": [
+ "#### 3) Выполните масштабирование количественных признаков; Постройте диаграммы BoxPlot для признаков до и после масштабирования. Выберите способ масштабирования (например, нормализацию или стандартизацию);"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 138,
+ "id": "fuzzy-hepatitis",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Numerical: ['price', 'yearOfRegistration', 'powerPS', 'kilometer', 'monthOfRegistration', 'nrOfPictures']\n",
+ "Categorial: ['seller', 'abtest', 'vehicleType', 'gearbox', 'fuelType', 'brand', 'notRepairedDamage']\n"
+ ]
+ }
+ ],
+ "source": [
+ "numerical_columns = [i for i in df.columns if df[i].dtype.name != 'object']\n",
+ "categorial_columns = [i for i in df.columns if df[i].dtype.name == 'object']\n",
+ "print(f\"Numerical: {numerical_columns}\\nCategorial: {categorial_columns}\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 143,
+ "id": "controlled-learning",
+ "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,7))\n",
+ "sns.boxplot(data=df[numerical_columns])\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 144,
+ "id": "divine-separation",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " price | \n",
+ " yearOfRegistration | \n",
+ " powerPS | \n",
+ " kilometer | \n",
+ " monthOfRegistration | \n",
+ " nrOfPictures | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | count | \n",
+ " 260952.000000 | \n",
+ " 260952.000000 | \n",
+ " 260952.000000 | \n",
+ " 260952.000000 | \n",
+ " 260952.000000 | \n",
+ " 260952.0 | \n",
+ "
\n",
+ " \n",
+ " | mean | \n",
+ " 0.000082 | \n",
+ " 0.863977 | \n",
+ " 0.006317 | \n",
+ " 0.821096 | \n",
+ " 0.515214 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | std | \n",
+ " 0.003433 | \n",
+ " 0.060298 | \n",
+ " 0.007264 | \n",
+ " 0.274813 | \n",
+ " 0.289281 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | min | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 25% | \n",
+ " 0.000015 | \n",
+ " 0.824074 | \n",
+ " 0.003900 | \n",
+ " 0.655172 | \n",
+ " 0.250000 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 50% | \n",
+ " 0.000039 | \n",
+ " 0.870370 | \n",
+ " 0.005800 | \n",
+ " 1.000000 | \n",
+ " 0.500000 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 75% | \n",
+ " 0.000086 | \n",
+ " 0.907407 | \n",
+ " 0.007500 | \n",
+ " 1.000000 | \n",
+ " 0.750000 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | max | \n",
+ " 1.000000 | \n",
+ " 1.000000 | \n",
+ " 1.000000 | \n",
+ " 1.000000 | \n",
+ " 1.000000 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " price yearOfRegistration powerPS kilometer \\\n",
+ "count 260952.000000 260952.000000 260952.000000 260952.000000 \n",
+ "mean 0.000082 0.863977 0.006317 0.821096 \n",
+ "std 0.003433 0.060298 0.007264 0.274813 \n",
+ "min 0.000000 0.000000 0.000000 0.000000 \n",
+ "25% 0.000015 0.824074 0.003900 0.655172 \n",
+ "50% 0.000039 0.870370 0.005800 1.000000 \n",
+ "75% 0.000086 0.907407 0.007500 1.000000 \n",
+ "max 1.000000 1.000000 1.000000 1.000000 \n",
+ "\n",
+ " monthOfRegistration nrOfPictures \n",
+ "count 260952.000000 260952.0 \n",
+ "mean 0.515214 0.0 \n",
+ "std 0.289281 0.0 \n",
+ "min 0.000000 0.0 \n",
+ "25% 0.250000 0.0 \n",
+ "50% 0.500000 0.0 \n",
+ "75% 0.750000 0.0 \n",
+ "max 1.000000 0.0 "
+ ]
+ },
+ "execution_count": 144,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# Функция sklearn для нормализации данных\n",
+ "scaler = MinMaxScaler()\n",
+ "# Нормализируем\n",
+ "df[numerical_columns] = scaler.fit_transform(df[numerical_columns])\n",
+ "df.describe()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 145,
+ "id": "sexual-finance",
+ "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,7))\n",
+ "sns.boxplot(data=df[numerical_columns])\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "headed-headline",
+ "metadata": {},
+ "source": [
+ "#### 4) Выполните замену категориальных признаков; выберите и обоснуйте способ замены;¶"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 146,
+ "id": "alive-dinner",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "seller : ['privat' 'gewerblich']\n",
+ "abtest : ['test' 'control']\n",
+ "vehicleType : ['kleinwagen' 'limousine' 'cabrio' 'kombi' 'suv' 'bus' 'coupe' 'andere']\n",
+ "gearbox : ['manuell' 'automatik']\n",
+ "fuelType : ['benzin' 'diesel' 'lpg' 'andere' 'hybrid' 'cng' 'elektro']\n",
+ "brand : ['volkswagen' 'skoda' 'bmw' 'peugeot' 'mazda' 'nissan' 'renault' 'ford'\n",
+ " 'mercedes_benz' 'seat' 'honda' 'fiat' 'mini' 'opel' 'smart' 'audi'\n",
+ " 'alfa_romeo' 'subaru' 'mitsubishi' 'hyundai' 'volvo' 'lancia' 'porsche'\n",
+ " 'citroen' 'toyota' 'kia' 'chevrolet' 'dacia' 'suzuki' 'daihatsu'\n",
+ " 'chrysler' 'jaguar' 'rover' 'jeep' 'saab' 'daewoo' 'land_rover' 'trabant'\n",
+ " 'lada']\n",
+ "notRepairedDamage : ['nein' 'ja']\n"
+ ]
+ }
+ ],
+ "source": [
+ "for i in categorial_columns:\n",
+ " print(i,': ', df[i].unique())"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 147,
+ "id": "demanding-assessment",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "(260952, 64)\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " vehicleType_andere | \n",
+ " vehicleType_bus | \n",
+ " vehicleType_cabrio | \n",
+ " vehicleType_coupe | \n",
+ " vehicleType_kleinwagen | \n",
+ " vehicleType_kombi | \n",
+ " vehicleType_limousine | \n",
+ " vehicleType_suv | \n",
+ " fuelType_andere | \n",
+ " fuelType_benzin | \n",
+ " ... | \n",
+ " seller | \n",
+ " price | \n",
+ " abtest | \n",
+ " yearOfRegistration | \n",
+ " gearbox | \n",
+ " powerPS | \n",
+ " kilometer | \n",
+ " monthOfRegistration | \n",
+ " notRepairedDamage | \n",
+ " nrOfPictures | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 3 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " ... | \n",
+ " 0 | \n",
+ " 0.000015 | \n",
+ " 0 | \n",
+ " 0.842593 | \n",
+ " 0 | \n",
+ " 0.00375 | \n",
+ " 1.000000 | \n",
+ " 0.500000 | \n",
+ " 0 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " ... | \n",
+ " 0 | \n",
+ " 0.000036 | \n",
+ " 0 | \n",
+ " 0.907407 | \n",
+ " 0 | \n",
+ " 0.00345 | \n",
+ " 0.586207 | \n",
+ " 0.583333 | \n",
+ " 0 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 5 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " ... | \n",
+ " 0 | \n",
+ " 0.000007 | \n",
+ " 0 | \n",
+ " 0.787037 | \n",
+ " 0 | \n",
+ " 0.00510 | \n",
+ " 1.000000 | \n",
+ " 0.833333 | \n",
+ " 1 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 6 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " ... | \n",
+ " 0 | \n",
+ " 0.000022 | \n",
+ " 0 | \n",
+ " 0.870370 | \n",
+ " 0 | \n",
+ " 0.00545 | \n",
+ " 1.000000 | \n",
+ " 0.666667 | \n",
+ " 0 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ " | 7 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " ... | \n",
+ " 0 | \n",
+ " 0.000000 | \n",
+ " 0 | \n",
+ " 0.648148 | \n",
+ " 0 | \n",
+ " 0.00250 | \n",
+ " 0.241379 | \n",
+ " 0.583333 | \n",
+ " 0 | \n",
+ " 0.0 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
5 rows × 64 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " vehicleType_andere vehicleType_bus vehicleType_cabrio vehicleType_coupe \\\n",
+ "3 0 0 0 0 \n",
+ "4 0 0 0 0 \n",
+ "5 0 0 0 0 \n",
+ "6 0 0 1 0 \n",
+ "7 0 0 0 0 \n",
+ "\n",
+ " vehicleType_kleinwagen vehicleType_kombi vehicleType_limousine \\\n",
+ "3 1 0 0 \n",
+ "4 1 0 0 \n",
+ "5 0 0 1 \n",
+ "6 0 0 0 \n",
+ "7 0 0 1 \n",
+ "\n",
+ " vehicleType_suv fuelType_andere fuelType_benzin ... seller price \\\n",
+ "3 0 0 1 ... 0 0.000015 \n",
+ "4 0 0 0 ... 0 0.000036 \n",
+ "5 0 0 1 ... 0 0.000007 \n",
+ "6 0 0 1 ... 0 0.000022 \n",
+ "7 0 0 1 ... 0 0.000000 \n",
+ "\n",
+ " abtest yearOfRegistration gearbox powerPS kilometer \\\n",
+ "3 0 0.842593 0 0.00375 1.000000 \n",
+ "4 0 0.907407 0 0.00345 0.586207 \n",
+ "5 0 0.787037 0 0.00510 1.000000 \n",
+ "6 0 0.870370 0 0.00545 1.000000 \n",
+ "7 0 0.648148 0 0.00250 0.241379 \n",
+ "\n",
+ " monthOfRegistration notRepairedDamage nrOfPictures \n",
+ "3 0.500000 0 0.0 \n",
+ "4 0.583333 0 0.0 \n",
+ "5 0.833333 1 0.0 \n",
+ "6 0.666667 0 0.0 \n",
+ "7 0.583333 0 0.0 \n",
+ "\n",
+ "[5 rows x 64 columns]"
+ ]
+ },
+ "execution_count": 147,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# Бинарные признаки\n",
+ "binary_columns = [i for i in categorial_columns if len(df[i].unique()) == 2] \n",
+ "# Не бинарные признаки\n",
+ "nonbinary_columns = [i for i in categorial_columns if len(df[i].unique()) > 2] \n",
+ "\n",
+ "# Бинарные признаки заменяются на 0 и 1\n",
+ "for col in binary_columns:\n",
+ " for i, unic_item in enumerate(df[col].unique()):\n",
+ " df[col] = df[col].replace(to_replace=[unic_item], value=[i])\n",
+ " \n",
+ "# Для не бинарных признаков применяется dummy-кодирование\n",
+ "df_nonbinary = pd.get_dummies(df[nonbinary_columns])\n",
+ "df.drop(nonbinary_columns, axis=1, inplace=True)\n",
+ "df = pd.concat([df_nonbinary, df] , axis=1) # Соединение таблиц\n",
+ "\n",
+ "print(df.shape)\n",
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "geological-franklin",
+ "metadata": {},
+ "source": [
+ "#### 5. Оцените корреляцию между признаками и удалите те признаки, которые коррелируют с наибольшим числом других"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 149,
+ "id": "modular-mount",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 149,
+ "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_matrix = df.drop(['nrOfPictures'], axis=1).corr()\n",
+ "sns.heatmap(corr_matrix)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "descending-directory",
+ "metadata": {},
+ "source": [
+ "#### 6. Заполните пропущенные значения в данных"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 56,
+ "id": "advisory-mining",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "Int64Index: 260952 entries, 3 to 371527\n",
+ "Data columns (total 64 columns):\n",
+ " # Column Non-Null Count Dtype \n",
+ "--- ------ -------------- ----- \n",
+ " 0 vehicleType_andere 260952 non-null uint8 \n",
+ " 1 vehicleType_bus 260952 non-null uint8 \n",
+ " 2 vehicleType_cabrio 260952 non-null uint8 \n",
+ " 3 vehicleType_coupe 260952 non-null uint8 \n",
+ " 4 vehicleType_kleinwagen 260952 non-null uint8 \n",
+ " 5 vehicleType_kombi 260952 non-null uint8 \n",
+ " 6 vehicleType_limousine 260952 non-null uint8 \n",
+ " 7 vehicleType_suv 260952 non-null uint8 \n",
+ " 8 fuelType_andere 260952 non-null uint8 \n",
+ " 9 fuelType_benzin 260952 non-null uint8 \n",
+ " 10 fuelType_cng 260952 non-null uint8 \n",
+ " 11 fuelType_diesel 260952 non-null uint8 \n",
+ " 12 fuelType_elektro 260952 non-null uint8 \n",
+ " 13 fuelType_hybrid 260952 non-null uint8 \n",
+ " 14 fuelType_lpg 260952 non-null uint8 \n",
+ " 15 brand_alfa_romeo 260952 non-null uint8 \n",
+ " 16 brand_audi 260952 non-null uint8 \n",
+ " 17 brand_bmw 260952 non-null uint8 \n",
+ " 18 brand_chevrolet 260952 non-null uint8 \n",
+ " 19 brand_chrysler 260952 non-null uint8 \n",
+ " 20 brand_citroen 260952 non-null uint8 \n",
+ " 21 brand_dacia 260952 non-null uint8 \n",
+ " 22 brand_daewoo 260952 non-null uint8 \n",
+ " 23 brand_daihatsu 260952 non-null uint8 \n",
+ " 24 brand_fiat 260952 non-null uint8 \n",
+ " 25 brand_ford 260952 non-null uint8 \n",
+ " 26 brand_honda 260952 non-null uint8 \n",
+ " 27 brand_hyundai 260952 non-null uint8 \n",
+ " 28 brand_jaguar 260952 non-null uint8 \n",
+ " 29 brand_jeep 260952 non-null uint8 \n",
+ " 30 brand_kia 260952 non-null uint8 \n",
+ " 31 brand_lada 260952 non-null uint8 \n",
+ " 32 brand_lancia 260952 non-null uint8 \n",
+ " 33 brand_land_rover 260952 non-null uint8 \n",
+ " 34 brand_mazda 260952 non-null uint8 \n",
+ " 35 brand_mercedes_benz 260952 non-null uint8 \n",
+ " 36 brand_mini 260952 non-null uint8 \n",
+ " 37 brand_mitsubishi 260952 non-null uint8 \n",
+ " 38 brand_nissan 260952 non-null uint8 \n",
+ " 39 brand_opel 260952 non-null uint8 \n",
+ " 40 brand_peugeot 260952 non-null uint8 \n",
+ " 41 brand_porsche 260952 non-null uint8 \n",
+ " 42 brand_renault 260952 non-null uint8 \n",
+ " 43 brand_rover 260952 non-null uint8 \n",
+ " 44 brand_saab 260952 non-null uint8 \n",
+ " 45 brand_seat 260952 non-null uint8 \n",
+ " 46 brand_skoda 260952 non-null uint8 \n",
+ " 47 brand_smart 260952 non-null uint8 \n",
+ " 48 brand_subaru 260952 non-null uint8 \n",
+ " 49 brand_suzuki 260952 non-null uint8 \n",
+ " 50 brand_toyota 260952 non-null uint8 \n",
+ " 51 brand_trabant 260952 non-null uint8 \n",
+ " 52 brand_volkswagen 260952 non-null uint8 \n",
+ " 53 brand_volvo 260952 non-null uint8 \n",
+ " 54 seller 260952 non-null int64 \n",
+ " 55 price 260952 non-null float64\n",
+ " 56 abtest 260952 non-null int64 \n",
+ " 57 yearOfRegistration 260952 non-null float64\n",
+ " 58 gearbox 260952 non-null int64 \n",
+ " 59 powerPS 260952 non-null float64\n",
+ " 60 kilometer 260952 non-null float64\n",
+ " 61 monthOfRegistration 260952 non-null float64\n",
+ " 62 notRepairedDamage 260952 non-null int64 \n",
+ " 63 nrOfPictures 260952 non-null float64\n",
+ "dtypes: float64(6), int64(4), uint8(54)\n",
+ "memory usage: 35.3 MB\n"
+ ]
+ }
+ ],
+ "source": [
+ "df.info()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "fitting-citizenship",
+ "metadata": {},
+ "source": [
+ "#### 7. Решите поставленную задачу регрессии в соответствии с заданием. При подборе параметров метода принятия решения (метода регрессии) используйте перекрёстную проверку (изучите возможные для изменения параметры метода регрессии). Вычислите точность решения задачи, вычислив разницу между реальным значением и предсказанным. Вычислите коэффициент корреляции (Пирсона, Спирмена) между реальным значением и предсказанным с учётом p-value."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 66,
+ "id": "considerable-fraud",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from sklearn import linear_model"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 72,
+ "id": "unique-missile",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "173420 -0.000007\n",
+ "182741 -0.000100\n",
+ "271616 -0.000042\n",
+ "218173 0.000011\n",
+ "361460 -0.000031\n",
+ "45771 -0.000034\n",
+ "297004 0.000044\n",
+ "58119 -0.000009\n",
+ "304305 0.000055\n",
+ "183986 -0.000010\n",
+ "274833 0.000051\n",
+ "346765 -0.000058\n",
+ "237316 -0.000016\n",
+ "107975 -0.000007\n",
+ "241922 -0.000035\n",
+ "Name: price, dtype: float64\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Линейная регрессия - без регуляризаторов\n",
+ "X, y = df.drop(['price'], axis=1), df['price']\n",
+ "# Разделяем данные на тренировочную и тестовую выборки\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.3, random_state = 123)\n",
+ "reg = linear_model.LinearRegression()\n",
+ "# Выполняем обучение модели\n",
+ "reg.fit(X_train,y_train)\n",
+ "pred_reg = reg.predict(X_test)\n",
+ "# Выводим разницу между реальным значением и предсказанным\n",
+ "print(pred_reg[:15] - y_test[:15])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 73,
+ "id": "superb-harassment",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Pearson correlation: 0.014861803399002234 p_value: 3.204260517573875e-05\n",
+ "Spearmen correlation: 0.6746882249078172 p_value: 0.0\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Коэфф-ты корреляции\n",
+ "P, p_value_P = pearsonr(pred_reg, y_test)\n",
+ "S, p_value_S = spearmanr(pred_reg, y_test)\n",
+ "print(f\"Pearson correlation: {P} p_value: {p_value_P}\\nSpearmen correlation: {S} p_value: {p_value_S}\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 74,
+ "id": "appreciated-invention",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "best alpha: 0.95\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Линейная регрессия - RIDGE\n",
+ "import warnings\n",
+ "warnings.filterwarnings(\"ignore\")\n",
+ "reg = linear_model.Ridge()\n",
+ "params = {'alpha': np.arange(0, 1, 0.05)}\n",
+ "reg_grid = GridSearchCV(reg, params)\n",
+ "# Выполняем обучение модели\n",
+ "reg_grid.fit(X_train, y_train)\n",
+ "best_alpha = reg_grid.best_estimator_.alpha\n",
+ "print('best alpha: ', end = '')\n",
+ "print('%.2f' % best_alpha)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 75,
+ "id": "proved-sheet",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "173420 -0.000008\n",
+ "182741 -0.000100\n",
+ "271616 -0.000042\n",
+ "218173 0.000011\n",
+ "361460 -0.000031\n",
+ "45771 -0.000034\n",
+ "297004 0.000044\n",
+ "58119 -0.000009\n",
+ "304305 0.000055\n",
+ "183986 -0.000009\n",
+ "274833 0.000051\n",
+ "346765 -0.000058\n",
+ "237316 -0.000016\n",
+ "107975 -0.000007\n",
+ "241922 -0.000034\n",
+ "Name: price, dtype: float64\n"
+ ]
+ }
+ ],
+ "source": [
+ "reg = linear_model.Ridge(alpha=best_alpha)\n",
+ "reg.fit(X_train,y_train)\n",
+ "pred_reg = reg.predict(X_test)\n",
+ "# Выводим разницу между реальным значением и предсказанным.\n",
+ "print(pred_reg[:15] - y_test[:15])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 76,
+ "id": "banned-correction",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Pearson correlation: 0.014869367493920514 p_value: 3.174704534043214e-05\n",
+ "Spearmen correlation: 0.6737630989773014 p_value: 0.0\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Коэфф-ты корреляции\n",
+ "P, p_value_P = pearsonr(pred_reg, y_test)\n",
+ "S, p_value_S = spearmanr(pred_reg, y_test)\n",
+ "print(f\"Pearson correlation: {P} p_value: {p_value_P}\\nSpearmen correlation: {S} p_value: {p_value_S}\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "proud-language",
+ "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.9.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}