{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Работа с NumPy" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "matrix = \n", " [[4 5 0]\n", " [9 9 9]] \n", "\n", "tmatrix = \n", " [[4 9]\n", " [5 9]\n", " [0 9]] \n", "\n", "vector = \n", " [4 5 0 9 9 9] \n", "\n", "tvector = \n", " [[4]\n", " [5]\n", " [0]\n", " [9]\n", " [9]\n", " [9]] \n", "\n", "list_matrix = \n", " [array([4, 5, 0]), array([9, 9, 9])] \n", "\n", "matrix as str = \n", " [[4 5 0]\n", " [9 9 9]] \n", "\n", "matrix type is \n", "\n", "vector type is \n", "\n", "list_matrix type is \n", "\n", "str_matrix type is \n", "\n", "formatted_vector = \n", " 4; 5; 0; 9; 9; 9 \n", "\n" ] } ], "source": [ "import numpy as np\n", "\n", "matrix = np.array([[4, 5, 0], [9, 9, 9]])\n", "print(\"matrix = \\n\", matrix, \"\\n\")\n", "\n", "tmatrix = matrix.T\n", "print(\"tmatrix = \\n\", tmatrix, \"\\n\")\n", "\n", "vector = np.ravel(matrix)\n", "print(\"vector = \\n\", vector, \"\\n\")\n", "\n", "tvector = np.reshape(vector, (6, 1))\n", "print(\"tvector = \\n\", tvector, \"\\n\")\n", "\n", "list_matrix = list(matrix)\n", "print(\"list_matrix = \\n\", list_matrix, \"\\n\")\n", "\n", "str_matrix = str(matrix)\n", "print(\"matrix as str = \\n\", str_matrix, \"\\n\")\n", "\n", "print(\"matrix type is\", type(matrix), \"\\n\")\n", "\n", "print(\"vector type is\", type(vector), \"\\n\")\n", "\n", "print(\"list_matrix type is\", type(list_matrix), \"\\n\")\n", "\n", "print(\"str_matrix type is\", type(str_matrix), \"\\n\")\n", "\n", "formatted_vector = \"; \".join(map(str, vector))\n", "print(\"formatted_vector = \\n\", formatted_vector, \"\\n\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Работа с Pandas DataFrame\n", "\n", "https://pandas.pydata.org/docs/user_guide/10min.html" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Работа с данными - чтение и запись CSV" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "\n", "df = pd.read_csv(\"data/world-population-by-country-2020.csv\", index_col=\"no\")\n", "\n", "df.to_csv(\"test.csv\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Работа с данными - основные команды" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " Country (or dependency) Population 2020 Yearly Change Net Change\n", "no \n", "1 China 1439323776 0.39 5540090\n", "2 India 1380004385 0.99 13586631\n", "3 United States 331002651 0.59 1937734\n", "4 Indonesia 273523615 1.07 2898047\n", "5 Pakistan 220892340 2.00 4327022\n", " Country (or dependency) Population 2020 Yearly Change Net Change\n", "no \n", "231 Montserrat 4992 0.06 3\n", "232 Falkland Islands 3480 3.05 103\n", "233 Niue 1626 0.68 11\n", "234 Tokelau 1357 1.27 17\n", "235 Holy See 801 0.25 2\n" ] } ], "source": [ "# df.info()\n", "\n", "# print(df.describe().transpose())\n", "\n", "from click import clear\n", "\n", "\n", "cleared_df = df.drop(\n", " df.columns.difference([\n", " \"Country (or dependency)\", \"Population 2020\", \"Yearly Change\", \"Net Change\"\n", " ]\n", " ),\n", " axis=1,\n", ")\n", "# print(cleared_df.head())\n", "# print(cleared_df.tail())\n", "cleared_df['Population 2020'] = cleared_df['Population 2020'].apply(\n", " lambda x: int(\"\".join(x.split(\",\")))\n", ")\n", "cleared_df[\"Net Change\"] = cleared_df[\"Net Change\"].apply(\n", " lambda x: int(\"\".join(x.split(\",\")))\n", ")\n", "cleared_df[\"Yearly Change\"] = cleared_df[\"Yearly Change\"].apply(\n", " lambda x: float(\"\".join(x.rstrip('%')))\n", ")\n", "\n", "sorted_df = cleared_df.sort_values(\n", " [\"Population 2020\", \"Net Change\", \"Country (or dependency)\"], ascending=[False, False, True]\n", ")\n", "print(sorted_df.head())\n", "print(sorted_df.tail())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Работа с данными - работа с элементами" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "no\n", "1 China\n", "2 India\n", "3 United States\n", "4 Indonesia\n", "5 Pakistan\n", " ... \n", "231 Montserrat\n", "232 Falkland Islands\n", "233 Niue\n", "234 Tokelau\n", "235 Holy See\n", "Name: Country (or dependency), Length: 235, dtype: object\n", "Country (or dependency) Israel\n", "Population 2020 8,655,535\n", "Yearly Change 1.60%\n", "Net Change 136,158\n", "Density (P/Km²) 400\n", "Land Area (Km²) 21,640\n", "Migrants (net) 10,000\n", "Fert. Rate 3\n", "Med. Age 30\n", "Urban Pop % 93%\n", "World Share 0.11%\n", "Name: 100, dtype: object\n", "Israel\n", " Country (or dependency) Population 2020\n", "no \n", "100 Israel 8,655,535\n", "101 Switzerland 8,654,622\n", "102 Togo 8,278,724\n", "103 Sierra Leone 7,976,983\n", "104 Hong Kong 7,496,981\n", ".. ... ...\n", "196 St. Vincent & Grenadines 110,940\n", "197 Aruba 106,766\n", "198 Tonga 105,695\n", "199 U.S. Virgin Islands 104,425\n", "200 Seychelles 98,347\n", "\n", "[101 rows x 2 columns]\n", " Country (or dependency) Population 2020 Yearly Change Net Change \\\n", "no \n", "1 China 1,439,323,776 0.39% 5,540,090 \n", "2 India 1,380,004,385 0.99% 13,586,631 \n", "3 United States 331,002,651 0.59% 1,937,734 \n", "\n", " Density (P/Km²) Land Area (Km²) Migrants (net) Fert. Rate Med. Age \\\n", "no \n", "1 153 9,388,211 -348,399 1.7 38 \n", "2 464 2,973,190 -532,687 2.2 28 \n", "3 36 9,147,420 954,806 1.8 38 \n", "\n", " Urban Pop % World Share \n", "no \n", "1 61% 18.47% \n", "2 35% 17.70% \n", "3 83% 4.25% \n", "Country (or dependency) China\n", "Population 2020 1,439,323,776\n", "Yearly Change 0.39%\n", "Net Change 5,540,090\n", "Density (P/Km²) 153\n", "Land Area (Km²) 9,388,211\n", "Migrants (net) -348,399\n", "Fert. Rate 1.7\n", "Med. Age 38\n", "Urban Pop % 61%\n", "World Share 18.47%\n", "Name: 1, dtype: object\n", " Country (or dependency) Population 2020\n", "no \n", "3 United States 331,002,651\n", "4 Indonesia 273,523,615\n", "5 Pakistan 220,892,340\n", " Country (or dependency) Yearly Change\n", "no \n", "4 Indonesia 1.07%\n", "5 Pakistan 2.00%\n" ] } ], "source": [ "print(df[\"Country (or dependency)\"])\n", "\n", "print(df.loc[100])\n", "\n", "print(df.loc[100, \"Country (or dependency)\"])\n", "\n", "print(df.loc[100:200, [\"Country (or dependency)\", \"Population 2020\"]])\n", "\n", "print(df[0:3])\n", "\n", "print(df.iloc[0])\n", "\n", "print(df.iloc[2:5, 0:2])\n", "\n", "print(df.iloc[[3, 4], [0, 2]])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Работа с данными - отбор и группировка" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " Population 2020 Yearly Change Net Change \\\n", "Country (or dependency) \n", "China 1439323776 0.39 5540090 \n", "India 1380004385 0.99 13586631 \n", "United States 331002651 0.59 1937734 \n", "Indonesia 273523615 1.07 2898047 \n", "Pakistan 220892340 2.00 4327022 \n", "... ... ... ... \n", "Montserrat 4992 0.06 3 \n", "Falkland Islands 3480 3.05 103 \n", "Niue 1626 0.68 11 \n", "Tokelau 1357 1.27 17 \n", "Holy See 801 0.25 2 \n", "\n", " Capital Continent \n", "Country (or dependency) \n", "China Beijing Asia \n", "India New Delhi Asia \n", "United States Washington, D.C. North America \n", "Indonesia Jakarta Asia \n", "Pakistan Islamabad Asia \n", "... ... ... \n", "Montserrat Brades North America \n", "Falkland Islands Stanley South America \n", "Niue Alofi Oceania \n", "Tokelau Nukunonu Oceania \n", "Holy See NaN NaN \n", "\n", "[235 rows x 5 columns]\n" ] } ], "source": [ "# s_values = df[\"Sex\"].unique()\n", "# print(s_values)\n", "df2 = pd.read_csv(\n", " \"data/countries-continents-capitals.csv\", index_col=\"Country/Territory\",\n", " encoding = \"ISO-8859-1\"\n", ")\n", "\n", "\n", "# for s_value in s_values:\n", "\n", "\n", "# count = df[df[\"Sex\"] == s_value].shape[0]\n", "\n", "\n", "# s_total += count\n", "\n", "\n", "# print(s_value, \"count =\", count)\n", "\n", "\n", "# print(\"Total count = \", s_total)\n", "\n", "extended_df = cleared_df.set_index(\"Country (or dependency)\").join(\n", " df2\n", ")\n", "print(extended_df)\n", "\n", "\n", "# print(extended_df.groupby([\"Continent\"]).agg({\"population\" : [\"sum\"]}))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Визуализация - Исходные данные" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " Population 2020 Yearly Change Continent\n", "Country (or dependency) \n", "China 1439323776 0.39 Asia\n", "India 1380004385 0.99 Asia\n", "United States 331002651 0.59 North America\n", "Indonesia 273523615 1.07 Asia\n", "Pakistan 220892340 2.00 Asia\n", "... ... ... ...\n", "Montserrat 4992 0.06 North America\n", "Falkland Islands 3480 3.05 South America\n", "Niue 1626 0.68 Oceania\n", "Tokelau 1357 1.27 Oceania\n", "Holy See 801 0.25 NaN\n", "\n", "[235 rows x 3 columns]\n" ] } ], "source": [ "data = extended_df[[\"Population 2020\", \"Yearly Change\", \"Continent\"]].copy()\n", "data.dropna(subset=[\"Population 2020\"], inplace=True)\n", "print(data)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Визуализация - Сводка пяти чисел\n", "\n", "" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " Population 2020 \\\n", " min q1 q2 median \n", "Continent \n", "Africa 98347 2509845.75 13042506.5 13042506.5 \n", "Asia 437479 5985985.50 18138682.5 18138682.5 \n", "Europe 33691 1326535.00 5459642.0 5459642.0 \n", "North America 4992 67288.00 395436.0 395436.0 \n", "Oceania 1357 27368.25 144112.0 144112.0 \n", "South America 3480 1458346.50 14658037.5 14658037.5 \n", "\n", " \n", " q3 max \n", "Continent \n", "Africa 31118563.75 206139589 \n", "Asia 52054338.75 1439323776 \n", "Europe 10423054.00 145934462 \n", "North America 6589966.75 331002651 \n", "Oceania 488471.75 25499884 \n", "South America 31837875.50 212559417 \n", " Population 2020 \n", " low_iqr iqr high_iqr\n", "Continent \n", "Africa 0 28608718.00 7.403164e+07\n", "Asia 0 46068353.25 1.211569e+08\n", "Europe 0 9096519.00 2.406783e+07\n", "North America 0 6522678.75 1.637398e+07\n", "Oceania 0 461103.50 1.180127e+06\n", "South America 0 30379529.00 7.740717e+07\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def q1(x):\n", " return x.quantile(0.25)\n", "\n", "\n", "# median = quantile(0.5)\n", "def q2(x):\n", " return x.quantile(0.5)\n", "\n", "\n", "def q3(x):\n", " return x.quantile(0.75)\n", "\n", "\n", "def iqr(x):\n", " return q3(x) - q1(x)\n", "\n", "\n", "def low_iqr(x):\n", " return max(0, q1(x) - 1.5 * iqr(x))\n", "\n", "\n", "def high_iqr(x):\n", " return q3(x) + 1.5 * iqr(x)\n", "\n", "\n", "quantiles = (\n", " data[[\"Continent\", \"Population 2020\"]]\n", " .groupby([\"Continent\"])\n", " .aggregate([\"min\", q1, q2, \"median\", q3, \"max\"])\n", ")\n", "print(quantiles)\n", "\n", "iqrs = (\n", " data[[\"Continent\", \"Population 2020\"]]\n", " .groupby([\"Continent\"])\n", " .aggregate([low_iqr, iqr, high_iqr])\n", ")\n", "print(iqrs)\n", "\n", "data.boxplot(column=\"Population 2020\", by=\"Continent\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Визуализация - Гистограмма" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjsAAAGvCAYAAAC9yRSTAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA4D0lEQVR4nO3de1yUZf7/8fcgB/EAiApIgZJ5TFPzFKklSuEhV9PdNM3TWq6bmIpWumVkWqipmaayta7o5qEs9WtaluFpS7TEQ+kaah6wdNAyQHBFhPv3hw/nt5OHYBiY4fb1fDzux6O57muu+VzCMu+95rrnthiGYQgAAMCkPFxdAAAAQGki7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFPzdHUB7qCwsFCnT59W1apVZbFYXF0OAAAoAsMwdOHCBYWGhsrD4+brN4QdSadPn1ZYWJirywAAAA44deqU7rzzzpueJ+xIqlq1qqSr/1h+fn4urgYAABRFdna2wsLCbO/jN0PYkWwfXfn5+RF2AAAoZ35vCwoblAEAgKkRdgAAgKnxMRYA4JYKCgqUn5/v6jJwG/Ly8lKFChVKPA5hBwBwQ4ZhyGq1KjMz09Wl4DYWEBCgkJCQEn01DGEHAHBD14JOUFCQKlWqxPeQoUwZhqGLFy/q7NmzkqRatWo5PBZhBwBwnYKCAlvQqV69uqvLwW3K19dXknT27FkFBQU5/JEWG5QBANe5tkenUqVKLq4Et7trv4Ml2TdG2AEA3BQfXcHVnPE7SNgBAACmRtgBAKAUdOzYUWPGjHGbcW5nbFAGABRLnQkbyvT1TkzrXqz+Q4YM0ZIlSyRd/Z6W8PBwDRo0SH/729/k6em+b3tbt25VVFSUfv31VwUEBNjaV69eLS8vr1J97f3792vatGn68ssv9fPPP6tOnToaMWKERo8efV2NcXFxOnjwoMLCwvTSSy9pyJAhtvMJCQlavXq1vv/+e/n6+uqBBx7Q9OnT1aBBA1ufS5cuady4cVq5cqXy8vIUExOjBQsWKDg4uNTmx8oOAMB0unTpojNnzujIkSMaN26cXnnlFb3xxhuuLsshgYGBv3ujy5JKTU1VUFCQ3nvvPR08eFAvvviiJk6cqLffftvW5/jx4+revbuioqK0b98+jRkzRk899ZQ+++wzW59t27Zp5MiR2rlzpzZt2qT8/Hw98sgjys3NtfUZO3asPv74Y61atUrbtm3T6dOn1bt371KdH2EHAGA6Pj4+CgkJUe3atfXXv/5V0dHRWrdunSTp119/1aBBg1StWjVVqlRJXbt21ZEjR2zPTUpKUkBAgNauXat69eqpYsWKiomJ0alTp2x9hgwZol69etm95pgxY9SxY8eb1vSvf/1LrVq1UtWqVRUSEqL+/fvbvkPmxIkTioqKkiRVq1ZNFovFtmLy24+xilr/Z599pkaNGqlKlSq28Hczf/7zn/XWW2/poYce0l133aUnn3xSQ4cO1erVq219EhMTFRERoVmzZqlRo0aKjY3VH//4R7355pu2Phs3btSQIUN0zz33qFmzZkpKSlJ6erpSU1MlSVlZWVq0aJFmz56tTp06qWXLllq8eLF27NihnTt33rS+kiLsAABMz9fXV5cvX5Z0Najs3r1b69atU0pKigzDULdu3ewubb548aJee+01LV26VF999ZUyMzPVr1+/EtWQn5+vKVOmaP/+/Vq7dq1OnDhhCzRhYWH66KOPJElpaWk6c+aM3nrrrRuOU9T6Z86cqX/961/avn270tPTNX78+GLVm5WVpcDAQNvjlJQURUdH2/WJiYlRSkrKLceQZBsnNTVV+fn5duM0bNhQ4eHhtxynpNz3w0uTuNln28X9DBoAUHyGYSg5OVmfffaZRo0apSNHjmjdunX66quv9MADD0iSli1bprCwMK1du1Z/+tOfJF0NJm+//bbatm0rSVqyZIkaNWqkr7/+Wm3atHGolj//+c+2/77rrrs0d+5ctW7dWjk5OapSpYotEAQFBdnt2flfxak/MTFRdevWlSTFxsbq1VdfLXKtO3bs0Pvvv68NG/7/e5jVar1uX01wcLCys7P13//+1/YFgNcUFhZqzJgxateunZo0aWIbw9vb+7r5BQcHy2q1Frm+4mJlBwBgOuvXr1eVKlVUsWJFde3aVX379tUrr7yiQ4cOydPT0xZiJKl69epq0KCBDh06ZGvz9PRU69atbY8bNmyogIAAuz7FlZqaqh49eig8PFxVq1bVQw89JElKT08v8hhFrb9SpUq2oCNdvdXCtY/Mfs+BAwfUs2dPxcfH65FHHilybb81cuRIHThwQCtXrnR4DGdhZQcAYDpRUVFauHChvL29FRoa6vSrsDw8PGQYhl3brb7hNzc3VzExMYqJidGyZctUs2ZNpaenKyYmxvbxmjP99uoti8VyXb038p///EedO3fW8OHD9dJLL9mdCwkJUUZGhl1bRkaG/Pz8rlvViY2N1fr167V9+3bdeeeddmNcvnxZmZmZdqs7GRkZCgkJKer0io2VHQCA6VSuXFl33323wsPD7YJOo0aNdOXKFe3atcvW9ssvvygtLU2NGze2tV25ckW7d++2PU5LS1NmZqYaNWokSapZs+Z1G3737dt303q+//57/fLLL5o2bZo6dOighg0bXrfS4u3tLenqfclupqj1O+LgwYOKiorS4MGD9dprr113PjIyUsnJyXZtmzZtUmRkpO2xYRiKjY3VmjVrtHnzZkVERNj1b9mypby8vOzGSUtLU3p6ut04zkbYAQDcNurVq6eePXvq6aef1pdffqn9+/frySef1B133KGePXva+nl5eWnUqFHatWuXUlNTNWTIEN1///22/TqdOnXS7t27tXTpUh05ckTx8fE6cODATV83PDxc3t7emjdvno4dO6Z169ZpypQpdn1q164ti8Wi9evX69y5c8rJyXG4/uI6cOCAoqKi9MgjjyguLk5Wq1VWq1Xnzp2z9RkxYoSOHTum559/Xt9//70WLFigDz74QGPHjrX1GTlypN577z0tX75cVatWtY3z3//+V5Lk7++vYcOGKS4uTlu2bFFqaqqGDh2qyMhI3X///Q7X/3sIOwCA28rixYvVsmVLPfroo4qMjJRhGPrkk0/sPvqpVKmSXnjhBfXv31/t2rVTlSpV9P7779vOx8TEaNKkSXr++efVunVrXbhwQYMGDbrpa9asWVNJSUlatWqVGjdurGnTpmnmzJl2fe644w5NnjxZEyZMUHBwsGJjYx2uv7g+/PBDnTt3Tu+9955q1aplO/5331JERIQ2bNigTZs2qVmzZpo1a5b+8Y9/KCYmxtZn4cKFysrKUseOHe3G+d9/uzfffFOPPvqo+vTpowcffFAhISF2l7iXBotRlA/xTC47O1v+/v7KysqSn5+fU8fmaiwA5dGlS5d0/PhxRUREqGLFiq4up0wlJSVpzJgxyszMdHUp0K1/F4v6/s3KDgAAMDXCDgAAMDXCDgAA/2PIkCF8hGUyhB0AAGBqhB0AAGBqhB0AwE1xwS5czRm/g4QdAMB1rn1ny8WLF11cCW53134HS/I9QtwbCwBwnQoVKiggIMB2S4NKlSrJYrG4uCrcTgzD0MWLF3X27FkFBASoQoUKDo9F2AEA3NC1GzMW9W7ZQGkICAgo8U1CCTsAgBuyWCyqVauWgoKCbnlHb6C0eHl5lWhF5xqXhp3t27frjTfeUGpqqs6cOaM1a9aoV69edn0OHTqkF154Qdu2bdOVK1fUuHFjffTRRwoPD5d09Wukx40bp5UrVyovL08xMTFasGCBgoODXTAjADCfChUqOOUNB3AVl25Qzs3NVbNmzTR//vwbnv/hhx/Uvn17NWzYUFu3btW3336rSZMm2d0bY+zYsfr444+1atUqbdu2TadPn1bv3r3LagoAAMDNuXRlp2vXruratetNz7/44ovq1q2bZsyYYWurW7eu7b+zsrK0aNEiLV++XJ06dZJ09W6wjRo10s6dO0v1dvEAAKB8cNtLzwsLC7VhwwbVr19fMTExCgoKUtu2bbV27Vpbn9TUVOXn5ys6OtrW1rBhQ4WHhyslJeWmY+fl5Sk7O9vuAAAA5uS2Yefs2bPKycnRtGnT1KVLF33++ed67LHH1Lt3b23btk2SZLVa5e3trYCAALvnBgcHy2q13nTshIQE+fv7246wsLDSnAoAAHAhtw07hYWFkqSePXtq7Nixat68uSZMmKBHH31UiYmJJRp74sSJysrKsh2nTp1yRskAAMANue2l5zVq1JCnp6caN25s196oUSN9+eWXkq5+B8Tly5eVmZlpt7qTkZFxy2vyfXx85OPjUyp1AwAA9+K2Kzve3t5q3bq10tLS7NoPHz6s2rVrS5JatmwpLy8vJScn286npaUpPT1dkZGRZVovAABwTy5d2cnJydHRo0dtj48fP659+/YpMDBQ4eHheu6559S3b189+OCDioqK0saNG/Xxxx9r69atkiR/f38NGzZMcXFxCgwMlJ+fn0aNGqXIyEiuxAIAAJJcHHZ2796tqKgo2+O4uDhJ0uDBg5WUlKTHHntMiYmJSkhI0LPPPqsGDRroo48+Uvv27W3PefPNN+Xh4aE+ffrYfakgAACAJFkMZ9w7vZzLzs6Wv7+/srKy5Ofn59Sx60zYcMP2E9O6O/V1AAC43RT1/dtt9+wAAAA4A2EHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYmkvDzvbt29WjRw+FhobKYrFo7dq1N+07YsQIWSwWzZkzx679/PnzGjBggPz8/BQQEKBhw4YpJyendAsHAADlhkvDTm5urpo1a6b58+ffst+aNWu0c+dOhYaGXnduwIABOnjwoDZt2qT169dr+/btGj58eGmVDAAAyhlPV754165d1bVr11v2+emnnzRq1Ch99tln6t69u925Q4cOaePGjfrmm2/UqlUrSdK8efPUrVs3zZw584bhCAAA3F7ces9OYWGhBg4cqOeee0733HPPdedTUlIUEBBgCzqSFB0dLQ8PD+3ateum4+bl5Sk7O9vuAAAA5uTWYWf69Ony9PTUs88+e8PzVqtVQUFBdm2enp4KDAyU1Wq96bgJCQny9/e3HWFhYU6tGwAAuA+3DTupqal66623lJSUJIvF4tSxJ06cqKysLNtx6tQpp44PAADch9uGnX//+986e/aswsPD5enpKU9PT508eVLjxo1TnTp1JEkhISE6e/as3fOuXLmi8+fPKyQk5KZj+/j4yM/Pz+4AAADm5NINyrcycOBARUdH27XFxMRo4MCBGjp0qCQpMjJSmZmZSk1NVcuWLSVJmzdvVmFhodq2bVvmNQMAAPfj0rCTk5Ojo0eP2h4fP35c+/btU2BgoMLDw1W9enW7/l5eXgoJCVGDBg0kSY0aNVKXLl309NNPKzExUfn5+YqNjVW/fv24EgsAAEhy8cdYu3fvVosWLdSiRQtJUlxcnFq0aKGXX365yGMsW7ZMDRs2VOfOndWtWze1b99e77zzTmmVDAAAyhmXrux07NhRhmEUuf+JEyeuawsMDNTy5cudWBUAADATt92gDAAA4AyEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGouDTvbt29Xjx49FBoaKovForVr19rO5efn64UXXlDTpk1VuXJlhYaGatCgQTp9+rTdGOfPn9eAAQPk5+engIAADRs2TDk5OWU8EwAA4K5cGnZyc3PVrFkzzZ8//7pzFy9e1J49ezRp0iTt2bNHq1evVlpamv7whz/Y9RswYIAOHjyoTZs2af369dq+fbuGDx9eVlMAAABuzmIYhuHqIiTJYrFozZo16tWr1037fPPNN2rTpo1Onjyp8PBwHTp0SI0bN9Y333yjVq1aSZI2btyobt266ccff1RoaGiRXjs7O1v+/v7KysqSn5+fM6ZjU2fChhu2n5jW3amvAwDA7aao79/las9OVlaWLBaLAgICJEkpKSkKCAiwBR1Jio6OloeHh3bt2nXTcfLy8pSdnW13AAAAcyo3YefSpUt64YUX9MQTT9jSm9VqVVBQkF0/T09PBQYGymq13nSshIQE+fv7246wsLBSrR0AALhOuQg7+fn5evzxx2UYhhYuXFji8SZOnKisrCzbcerUKSdUCQAA3JGnqwv4PdeCzsmTJ7V582a7z+RCQkJ09uxZu/5XrlzR+fPnFRISctMxfXx85OPjU2o1AwAA9+HWKzvXgs6RI0f0xRdfqHr16nbnIyMjlZmZqdTUVFvb5s2bVVhYqLZt25Z1uQAAwA25dGUnJydHR48etT0+fvy49u3bp8DAQNWqVUt//OMftWfPHq1fv14FBQW2fTiBgYHy9vZWo0aN1KVLFz399NNKTExUfn6+YmNj1a9fvyJfiQUAAMzNpWFn9+7dioqKsj2Oi4uTJA0ePFivvPKK1q1bJ0lq3ry53fO2bNmijh07SpKWLVum2NhYde7cWR4eHurTp4/mzp1bJvUDAAD359Kw07FjR93qa36K8hVAgYGBWr58uTPLAgAAJuLWe3YAAABKirADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMzaGwc+zYMWfXAQAAUCocCjt33323oqKi9N577+nSpUvOrgkA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9PLLL9v6PP/888rNzdXw4cOVmZmp9u3ba+PGjapYsaLT6gAAAOWXxfjfryMuogMHDqhz58667777tHnzZv3hD3/QwYMHdf78eX311VeqW7duadRaarKzs+Xv76+srCyn79+pM2HDDdtPTOvu1NcBAOB2U9T3b4f27DRp0kSHDx9W+/bt1bNnT+Xm5qp3797au3dvuQs6AADA3Ir9MVZ+fr66dOmixMREvfjii6VREwAAgNMUe2XHy8tL3377bWnUAgAA4HQOfYz15JNPatGiRc6uBQAAwOkcuhrrypUr+uc//6kvvvhCLVu2vO5+WLNnz3ZKcQAAACVVrLBz7Ngx1alTRwcOHNB9990nSbabdF7jzHtjAQAAlFSxwk69evV05swZbdmyRdLV20PMnTv3uhtxAgAAuIti7dn57VfyfPrpp8rNzXVqQQAAAM7k0Ablaxz4PkIAAIAyVaywY7FYrtuTwx4dAADgzoq1Z8cwDA0ZMsR2s89Lly5pxIgR112NtXr1audVCAAAUALFCjuDBw+2e/zkk086tRgAAABnK1bYWbx4cWnVAQAAUCpKtEEZAADA3RF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqbl92Pnpp5/05JNPqnr16vL19VXTpk21e/du23nDMPTyyy+rVq1a8vX1VXR0tI4cOeLCigEAgDtx67Dz66+/ql27dvLy8tKnn36q//znP5o1a5aqVatm6zNjxgzNnTtXiYmJ2rVrlypXrqyYmBhdunTJhZUDAAB34enqAm5l+vTpCgsL0+LFi21tERERtv82DENz5szRSy+9pJ49e0qSli5dquDgYK1du1b9+vUr85oBAIB7ceuVnXXr1qlVq1b605/+pKCgILVo0ULvvvuu7fzx48dltVoVHR1ta/P391fbtm2VkpJy03Hz8vKUnZ1tdwAAAHNy67Bz7NgxLVy4UPXq1dNnn32mv/71r3r22We1ZMkSSZLVapUkBQcH2z0vODjYdu5GEhIS5O/vbzvCwsJKbxIAAMCl3DrsFBYW6r777tPrr7+uFi1aaPjw4Xr66aeVmJhYonEnTpyorKws23Hq1CknVQwAANyNW4edWrVqqXHjxnZtjRo1Unp6uiQpJCREkpSRkWHXJyMjw3buRnx8fOTn52d3AAAAc3LrsNOuXTulpaXZtR0+fFi1a9eWdHWzckhIiJKTk23ns7OztWvXLkVGRpZprQAAwD259dVYY8eO1QMPPKDXX39djz/+uL7++mu98847eueddyRJFotFY8aM0dSpU1WvXj1FRERo0qRJCg0NVa9evVxbPAAAcAtuHXZat26tNWvWaOLEiXr11VcVERGhOXPmaMCAAbY+zz//vHJzczV8+HBlZmaqffv22rhxoypWrOjCygEAgLuwGIZhuLoIV8vOzpa/v7+ysrKcvn+nzoQNN2w/Ma27U18HAIDbTVHfv916zw4AAEBJEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICpEXYAAICplauwM23aNFksFo0ZM8bWdunSJY0cOVLVq1dXlSpV1KdPH2VkZLiuSAAA4FbKTdj55ptv9Pe//1333nuvXfvYsWP18ccfa9WqVdq2bZtOnz6t3r17u6hKAADgbspF2MnJydGAAQP07rvvqlq1arb2rKwsLVq0SLNnz1anTp3UsmVLLV68WDt27NDOnTtdWDEAAHAX5SLsjBw5Ut27d1d0dLRde2pqqvLz8+3aGzZsqPDwcKWkpNx0vLy8PGVnZ9sdAADAnDxdXcDvWblypfbs2aNvvvnmunNWq1Xe3t4KCAiwaw8ODpbVar3pmAkJCZo8ebKzSwUAAG7IrVd2Tp06pdGjR2vZsmWqWLGi08adOHGisrKybMepU6ecNjYAAHAvbh12UlNTdfbsWd13333y9PSUp6entm3bprlz58rT01PBwcG6fPmyMjMz7Z6XkZGhkJCQm47r4+MjPz8/uwMAAJiTW3+M1blzZ3333Xd2bUOHDlXDhg31wgsvKCwsTF5eXkpOTlafPn0kSWlpaUpPT1dkZKQrSgYAAG7GrcNO1apV1aRJE7u2ypUrq3r16rb2YcOGKS4uToGBgfLz89OoUaMUGRmp+++/3xUlAwAAN+PWYaco3nzzTXl4eKhPnz7Ky8tTTEyMFixY4OqyAACAm7AYhmG4ughXy87Olr+/v7Kyspy+f6fOhA03bD8xrbtTXwcAgNtNUd+/3XqDMgAAQEkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKkRdgAAgKl5urqA21WdCRtu2H5iWvcyrgQAAHNjZQcAAJgaYQcAAJgaYQcAAJgaYQcAAJgaYQcAAJgaYQcAAJia24edhIQEtW7dWlWrVlVQUJB69eqltLQ0uz6XLl3SyJEjVb16dVWpUkV9+vRRRkaGiyoGAADuxO3DzrZt2zRy5Ejt3LlTmzZtUn5+vh555BHl5uba+owdO1Yff/yxVq1apW3btun06dPq3bu3C6sGAADuwu2/VHDjxo12j5OSkhQUFKTU1FQ9+OCDysrK0qJFi7R8+XJ16tRJkrR48WI1atRIO3fu1P333++KsgEAgJtw+5Wd38rKypIkBQYGSpJSU1OVn5+v6OhoW5+GDRsqPDxcKSkpNxwjLy9P2dnZdgcAADCnchV2CgsLNWbMGLVr105NmjSRJFmtVnl7eysgIMCub3BwsKxW6w3HSUhIkL+/v+0ICwsr7dIBAICLlKuwM3LkSB04cEArV64s0TgTJ05UVlaW7Th16pSTKgQAAO7G7ffsXBMbG6v169dr+/btuvPOO23tISEhunz5sjIzM+1WdzIyMhQSEnLDsXx8fOTj41PaJQMAADfg9is7hmEoNjZWa9as0ebNmxUREWF3vmXLlvLy8lJycrKtLS0tTenp6YqMjCzrcgEAgJtx+5WdkSNHavny5fq///s/Va1a1bYPx9/fX76+vvL399ewYcMUFxenwMBA+fn5adSoUYqMjORKLAAA4P5hZ+HChZKkjh072rUvXrxYQ4YMkSS9+eab8vDwUJ8+fZSXl6eYmBgtWLCgjCsFAADuyO3DjmEYv9unYsWKmj9/vubPn18GFQEAgPLE7ffsAAAAlARhBwAAmBphBwAAmBphBwAAmBphBwAAmJrbX411u6kzYcN1bSemdXdBJQAAmAMrOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQ8XV0Afl+dCRtu2H5iWvcyrgQAgPKHlR0AAGBqhB0AAGBqhB0AAGBqhB0AAGBqhB0AAGBqXI1VjnGVFgAAv4+VHQAAYGqEHQAAYGqEHQAAYGqm2bMzf/58vfHGG7JarWrWrJnmzZunNm3auLosl7jZXp6icsaeH/YTAQDchSlWdt5//33FxcUpPj5ee/bsUbNmzRQTE6OzZ8+6ujQAAOBiFsMwDFcXUVJt27ZV69at9fbbb0uSCgsLFRYWplGjRmnChAm/+/zs7Gz5+/srKytLfn5+Tq2tpKss5cGNVmuKO+/irPg4Y9XoRmOw6gTgdueMv41l+fe1qO/f5f5jrMuXLys1NVUTJ060tXl4eCg6OlopKSk3fE5eXp7y8vJsj7OysiRd/UdztsK8i04f093c6N+tuPMuzr/9zcYu6Ril8fMHgPLEGX8by/Lv67Vxf3fdxijnfvrpJ0OSsWPHDrv25557zmjTps0NnxMfH29I4uDg4ODg4DDBcerUqVtmhXK/suOIiRMnKi4uzva4sLBQ58+fV/Xq1WWxWJz2OtnZ2QoLC9OpU6ec/vGYu2Put9/cb9d5S8z9dpz77Tpvyb3mbhiGLly4oNDQ0Fv2K/dhp0aNGqpQoYIyMjLs2jMyMhQSEnLD5/j4+MjHx8euLSAgoLRKlJ+fn8t/IVyFud9+c79d5y0x99tx7rfrvCX3mbu/v//v9in3V2N5e3urZcuWSk5OtrUVFhYqOTlZkZGRLqwMAAC4g3K/siNJcXFxGjx4sFq1aqU2bdpozpw5ys3N1dChQ11dGgAAcDFThJ2+ffvq3Llzevnll2W1WtW8eXNt3LhRwcHBLq3Lx8dH8fHx131kdjtg7rff3G/XeUvM/Xac++06b6l8zt0U37MDAABwM+V+zw4AAMCtEHYAAICpEXYAAICpEXYAAICpEXZKaP78+apTp44qVqyotm3b6uuvv75l/1WrVqlhw4aqWLGimjZtqk8++aSMKnW+4sz93XffVYcOHVStWjVVq1ZN0dHRv/tv5c6K+3O/ZuXKlbJYLOrVq1fpFlhKijvvzMxMjRw5UrVq1ZKPj4/q169fbn/nizv3OXPmqEGDBvL19VVYWJjGjh2rS5culVG1zrF9+3b16NFDoaGhslgsWrt27e8+Z+vWrbrvvvvk4+Oju+++W0lJSaVeZ2ko7txXr16thx9+WDVr1pSfn58iIyP12WeflU2xTuTIz/yar776Sp6enmrevHmp1ecowk4JvP/++4qLi1N8fLz27NmjZs2aKSYmRmfPnr1h/x07duiJJ57QsGHDtHfvXvXq1Uu9evXSgQMHyrjykivu3Ldu3aonnnhCW7ZsUUpKisLCwvTII4/op59+KuPKS664c7/mxIkTGj9+vDp06FBGlTpXced9+fJlPfzwwzpx4oQ+/PBDpaWl6d1339Udd9xRxpWXXHHnvnz5ck2YMEHx8fE6dOiQFi1apPfff19/+9vfyrjyksnNzVWzZs00f/78IvU/fvy4unfvrqioKO3bt09jxozRU089VS7f9Is79+3bt+vhhx/WJ598otTUVEVFRalHjx7au3dvKVfqXMWd9zWZmZkaNGiQOnfuXEqVlZBzbsd5e2rTpo0xcuRI2+OCggIjNDTUSEhIuGH/xx9/3OjevbtdW9u2bY2//OUvpVpnaSju3H/rypUrRtWqVY0lS5aUVomlxpG5X7lyxXjggQeMf/zjH8bgwYONnj17lkGlzlXceS9cuNC46667jMuXL5dViaWmuHMfOXKk0alTJ7u2uLg4o127dqVaZ2mSZKxZs+aWfZ5//nnjnnvusWvr27evERMTU4qVlb6izP1GGjdubEyePNn5BZWR4sy7b9++xksvvWTEx8cbzZo1K9W6HMHKjoMuX76s1NRURUdH29o8PDwUHR2tlJSUGz4nJSXFrr8kxcTE3LS/u3Jk7r918eJF5efnKzAwsLTKLBWOzv3VV19VUFCQhg0bVhZlOp0j8163bp0iIyM1cuRIBQcHq0mTJnr99ddVUFBQVmU7hSNzf+CBB5Sammr7qOvYsWP65JNP1K1btzKp2VXM8jfOGQoLC3XhwoVy9zfOEYsXL9axY8cUHx/v6lJuyhTfoOwKP//8swoKCq77lubg4GB9//33N3yO1Wq9YX+r1VpqdZYGR+b+Wy+88IJCQ0Ov+8Po7hyZ+5dffqlFixZp3759ZVBh6XBk3seOHdPmzZs1YMAAffLJJzp69KieeeYZ5efnu/Ufxd9yZO79+/fXzz//rPbt28swDF25ckUjRowodx9jFdfN/sZlZ2frv//9r3x9fV1UWdmbOXOmcnJy9Pjjj7u6lFJ15MgRTZgwQf/+97/l6em+kYKVHZS5adOmaeXKlVqzZo0qVqzo6nJK1YULFzRw4EC9++67qlGjhqvLKVOFhYUKCgrSO++8o5YtW6pv37568cUXlZiY6OrSSt3WrVv1+uuva8GCBdqzZ49Wr16tDRs2aMqUKa4uDWVg+fLlmjx5sj744AMFBQW5upxSU1BQoP79+2vy5MmqX7++q8u5JfeNYW6uRo0aqlChgjIyMuzaMzIyFBIScsPnhISEFKu/u3Jk7tfMnDlT06ZN0xdffKF77723NMssFcWd+w8//KATJ06oR48etrbCwkJJkqenp9LS0lS3bt3SLdoJHPmZ16pVS15eXqpQoYKtrVGjRrJarbp8+bK8vb1LtWZncWTukyZN0sCBA/XUU09Jkpo2barc3FwNHz5cL774ojw8zPn/M2/2N87Pz++2WdVZuXKlnnrqKa1atarcrVwX14ULF7R7927t3btXsbGxkq7+fTMMQ56envr888/VqVMnF1d5lTn/F1cGvL291bJlSyUnJ9vaCgsLlZycrMjIyBs+JzIy0q6/JG3atOmm/d2VI3OXpBkzZmjKlCnauHGjWrVqVRalOl1x596wYUN999132rdvn+34wx/+YLtaJSwsrCzLd5gjP/N27drp6NGjtnAnSYcPH1atWrXKTdCRHJv7xYsXrws010KfYeLbEZrlb5yjVqxYoaFDh2rFihXq3r27q8spdX5+ftf9fRsxYoQaNGigffv2qW3btq4u8f9z8Qbpcm3lypWGj4+PkZSUZPznP/8xhg8fbgQEBBhWq9UwDMMYOHCgMWHCBFv/r776yvD09DRmzpxpHDp0yIiPjze8vLyM7777zlVTcFhx5z5t2jTD29vb+PDDD40zZ87YjgsXLrhqCg4r7tx/q7xejVXceaenpxtVq1Y1YmNjjbS0NGP9+vVGUFCQMXXqVFdNwWHFnXt8fLxRtWpVY8WKFcaxY8eMzz//3Khbt67x+OOPu2oKDrlw4YKxd+9eY+/evYYkY/bs2cbevXuNkydPGoZhGBMmTDAGDhxo63/s2DGjUqVKxnPPPWccOnTImD9/vlGhQgVj48aNrpqCw4o792XLlhmenp7G/Pnz7f7GZWZmumoKDinuvH/LXa/GIuyU0Lx584zw8HDD29vbaNOmjbFz507buYceesgYPHiwXf8PPvjAqF+/vuHt7W3cc889xoYNG8q4Yucpztxr165tSLruiI+PL/vCnaC4P/f/VV7DjmEUf947duww2rZta/j4+Bh33XWX8dprrxlXrlwp46qdozhzz8/PN1555RWjbt26RsWKFY2wsDDjmWeeMX799deyL7wEtmzZcsP/3V6b6+DBg42HHnrouuc0b97c8Pb2Nu666y5j8eLFZV63MxR37g899NAt+5cXjvzM/5e7hh2LYZh4TRUAANz22LMDAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABMjbADAABKxfbt29WjRw+FhobKYrFo7dq1xR7jgw8+UPPmzVWpUiXVrl1bb7zxRrHHIOwAAIBSkZubq2bNmmn+/PkOPf/TTz/VgAEDNGLECB04cEALFizQm2++qbfffrtY4/ANygAAoNRZLBatWbNGvXr1srXl5eXpxRdf1IoVK5SZmakmTZpo+vTp6tixoySpf//+ys/P16pVq2zPmTdvnmbMmKH09HRZLJYivTYrOwAAwCViY2OVkpKilStX6ttvv9Wf/vQndenSRUeOHJF0NQxVrFjR7jm+vr768ccfdfLkySK/DmEHAACUufT0dC1evFirVq1Shw4dVLduXY0fP17t27fX4sWLJUkxMTFavXq1kpOTVVhYqMOHD2vWrFmSpDNnzhT5tTxLZQYAAAC38N1336mgoED169e3a8/Ly1P16tUlSU8//bR++OEHPfroo8rPz5efn59Gjx6tV155RR4eRV+vIewAAIAyl5OTowoVKig1NVUVKlSwO1elShVJV/f5TJ8+Xa+//rqsVqtq1qyp5ORkSdJdd91V5Nci7AAAgDLXokULFRQU6OzZs+rQocMt+1aoUEF33HGHJGnFihWKjIxUzZo1i/xahB0AAFAqcnJydPToUdvj48ePa9++fQoMDFT9+vU1YMAADRo0SLNmzVKLFi107tw5JScn695771X37t31888/68MPP1THjh116dIl2x6fbdu2FasOLj0HAAClYuvWrYqKirquffDgwUpKSlJ+fr6mTp2qpUuX6qefflKNGjV0//33a/LkyWratKl+/vln9ejRQ999950Mw1BkZKRee+01tW3btlh1EHYAAICpcek5AAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwtf8HhWAsE6MtAjwAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data.plot.hist(column=[\"Population 2020\"], bins=80)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Визуализация - Точечная диаграмма" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " Country (or dependency) Population 2020 Yearly Change Net Change\n", "no \n", "1 China 1439323776 0.39 5540090\n", "2 India 1380004385 0.99 13586631\n", "3 United States 331002651 0.59 1937734\n", "4 Indonesia 273523615 1.07 2898047\n", "5 Pakistan 220892340 2.00 4327022\n", ".. ... ... ... ...\n", "231 Montserrat 4992 0.06 3\n", "232 Falkland Islands 3480 3.05 103\n", "233 Niue 1626 0.68 11\n", "234 Tokelau 1357 1.27 17\n", "235 Holy See 801 0.25 2\n", "\n", "[235 rows x 4 columns]\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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IiMjtX79+lznad68ubZs2aJNmzZJkg4cOKCvv/5aHTt2vO56srKyHGpNT093ukYAAHDncPqW9dKlS8tms8lmsyksLOya6TabTaNHj3Z6xWlpacrOzlZISIhDe0hIiP35P3/UrVs3paWl6f7775cxRr/99pv69u17w8tbsbGxeaoLAADcmZwOPStXrpQxRu3atdOCBQscvnDUy8tLlStXVsWKFQukyCtWrVqlt956S9OnT1fTpk21b98+DRo0SK+//rqGDx+e6zzDhg1zuM0+PT1doaGhBVonAAAofJwOPa1bt5YkHTx4UKGhofLwyPMYaAfBwcHy9PTU8ePHHdqPHz+u8uXL5zrP8OHD1aNHDz399NOSpPr16yszM1PPPvusXn311Vxr8vb2lre3d75qBQAARV+en8hcuXJlSdL58+eVlJSkS5cuOUxv0KCBU8vx8vJS48aNFRcXp86dO0v6fSBzXFyc+vfvn+s858+fvybYeHp6SpLcfOc9AAAo5PIcelJTU9W7d2998803uU7Pzs52elmDBw9WTEyM7r33XjVp0kSTJk1SZmamevfuLUnq2bOnKlWqpNjYWElSdHS0JkyYoIiICPvlreHDhys6OtoefgAAAHKT59Dzwgsv6MyZM9q4caPatGmjRYsW6fjx43rjjTc0fvz4PC2rS5cuSk1N1YgRI5SSkqKGDRtq2bJl9sHNSUlJDmd2XnvtNdlsNr322ms6evSoypYtq+joaL355pt53QwAAGAxeX5OT4UKFfTll1+qSZMm8vf31+bNmxUWFqavvvpK77zzjtPPy3EXntMDAEDR45YnMmdmZtqfxxMYGKjU1FRJvw8q3rp16y0VAQAAUNDyHHpq1aqlPXv2SJLCw8P1z3/+U0ePHtWMGTNUoUIFlxcIAADgCnke0zNo0CAlJydLkkaOHKkOHTro008/lZeXl2bNmuXq+gAAAFwi39+yfv78ee3evVt33323goODXVVXgWFMDwAARY8rPr/zfKbnj3x9fdWoUaP8LgYAAKBAORV6rv4ah5uZMGHCLRcDAABQUJwKPdu2bXNqYTabLV/FAAAAFBSnQs/KlSsLug4AAIAClb9vDQUAACgi8jyQuW3btje8jLVixYp8FQQAAFAQ8hx6GjZs6PD+8uXLio+P188//6yYmBhX1QUAAOBSeQ49EydOzLV91KhRysjI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dPbsWfvryJEjLqkdAAAULW4NPV5eXmrcuLHi4uLsbTk5OYqLi1OzZs2uO98777yj119/XcuWLdO99957w3V4e3vL39/f4QUAAKzH7d+9NXjwYMXExOjee+9VkyZNNGnSJGVmZqp3796SpJ49e6pSpUqKjY2VJI0dO1YjRozQf/7zH1WpUkUpKSmSJD8/P/n5+bltOwAAQOHm9tDTpUsXpaamasSIEUpJSVHDhg21bNky++DmpKQkeXj874TU+++/r0uXLunxxx93WM7IkSM1atSo21k6AAAoQtz+nJ7bjef0AABQ9Lji87tI370FAADgLEIPAACwBEIPAACwBEIPAACwBLffvXW7XRm3zddRAABQdFz53M7P/VeWCz3nzp2TJL6OAgCAIujcuXMKCAi4pXktd8t6Tk6Ojh07plKlSslms7l02enp6QoNDdWRI0e4Hb6I4hgWbRy/oo9jWPQV1DE0xujcuXOqWLGiw/P78sJyZ3o8PDx01113Feg6+LqLoo9jWLRx/Io+jmHRVxDH8FbP8FzBQGYAAGAJhB4AAGAJhB4X8vb21siRI+Xt7e3uUnCLOIZFG8ev6OMYFn2F+RhabiAzAACwJs70AAAASyD0AAAASyD05IHNZtPixYuvO33VqlWy2Ww6c+bMbasJBePqY33o0CHZbDbFx8e7taairEqVKpo0aVKBLPtmv5dwj8J2XPj7fOtmzZql0qVLX3d6Udq3hJ6rpKSkaMCAAapWrZq8vb0VGhqq6OhoxcXFOTV/8+bNlZycnO/nCCB/evXqpc6dO7tseaGhoUpOTla9evVctsyioE2bNnrhhReuab/ZH8Dc/PTTT3r22Wft72/nB2Jqaqqee+453X333fL29lb58uUVFRWldevW5bueggxz7uTq36HCwOp/n3v16iWbzSabzSYvLy/VqFFDY8aM0W+//ZbvZedl37o7IFnu4YTXc+jQIbVo0UKlS5fWuHHjVL9+fV2+fFnLly9Xv379tHv37psuw8vLS+XLl78N1eJ28vT05LjmU9myZd227scee0yXLl3S7NmzVa1aNR0/flxxcXE6efKk22rC7cffZ6lDhw6aOXOmsrKy9PXXX6tfv34qXry4hg0blq/lFqV9y5me/+/555+XzWbTpk2b9NhjjyksLEx169bV4MGDtWHDBnu/tLQ0Pfroo/L19VXNmjX11Vdf2af9McFe+R/x8uXLVbt2bfn5+alDhw5KTk62z/PTTz/pgQceUHBwsAICAtS6dWtt3br1tm33na5NmzYaOHCgXn75ZQUFBal8+fIaNWqUQ5/ExES1atVKPj4+qlOnjr777juH6X+8vJWdna0+ffqoatWqKlGihGrVqqXJkyffpi0qfK6cFXj33XdVoUIFlSlTRv369dPly5ftfa4+I1KlShVJ0qOPPiqbzWZ/L0lffvmlGjVqJB8fH1WrVk2jR492+J/ozY7VH505c0Zr1qzR2LFj1bZtW1WuXFlNmjTRsGHD9Mgjj9ywnv3796tTp04KCQmRn5+f7rvvPn3//ff2Zbdp00aHDx/Wiy++aP8f9BVr165Vy5YtVaJECYWGhmrgwIHKzMy0T58+fbpq1qwpHx8fhYSE6PHHH3d6f99urvgdkqSdO3eqXbt2KlGihMqUKaNnn31WGRkZ9unO/BxlZWVpyJAhqlSpkkqWLKmmTZtq1apV9umHDx9WdHS0AgMDVbJkSdWtW1dff/21pGv/Pp88eVJdu3ZVpUqV5Ovrq/r162vu3Lmu23GF0JUznZUrV9Zzzz2nyMhIffXVV5owYYLq16+vkiVLKjQ0VM8//7zDsfmj1NRU3XvvvXr00UeVlZV1zb693nE4dOiQ2rZtK0kKDAyUzWZTr169JEnLli3T/fffr9KlS6tMmTJ6+OGHtX//fvs6r/wdXrhwodq2bStfX1+Fh4dr/fr1edoHhB5Jp06d0rJly9SvXz+VLFnymulXn8ofPXq0nnzySe3YsUMdO3ZU9+7dderUqesu+/z583r33Xf1ySefaPXq1UpKStKQIUPs08+dO6eYmBitXbtWGzZsUM2aNdWxY0f7F6Mi/2bPnq2SJUtq48aNeueddzRmzBj7H+WcnBz95S9/kZeXlzZu3KgZM2bolVdeueHycnJydNddd+nzzz/XL7/8ohEjRugf//iHPvvss9uxOYXSypUrtX//fq1cuVKzZ8/WrFmzNGvWrFz7/vTTT5KkmTNnKjk52f5+zZo16tmzpwYNGqRffvlF//znPzVr1iy9+eabkm7tWPn5+cnPz0+LFy9WVlZWnurJyMhQx44dFRcXp23btqlDhw6Kjo5WUlKSJGnhwoW66667NGbMGCUnJ9v/M7N//3516NBBjz32mHbs2KH58+dr7dq16t+/vyRp8+bNGjhwoMaMGaM9e/Zo2bJlatWqlbO72i3y+zuUmZmpqKgoBQYG6qefftLnn3+u77//3r5PrrjZz1H//v21fv16zZs3Tzt27NATTzyhDh06KDExUZLUr18/ZWVlafXq1dq5c6fGjh0rPz+/XLfp4sWLaty4sZYuXaqff/5Zzz77rHr06KFNmza5cM8VbiVKlNClS5fk4eGhKVOmaNeuXZo9e7ZWrFihl19+Odd5jhw5opYtW6pevXr64osvcn0Wz/WOQ2hoqBYsWCBJ2rNnj5KTk+3/YczMzNTgwYO1efNmxcXFycPDQ48++qhycnIclv3qq69qyJAhio+PV1hYmLp27Zq3S3QGZuPGjUaSWbhw4Q37STKvvfaa/X1GRoaRZL755htjjDErV640kszp06eNMcbMnDnTSDL79u2zzzNt2jQTEhJy3XVkZ2ebUqVKmf/+97/52CJri4mJMZ06dTLGGNO6dWtz//33O0y/7777zCuvvGKMMWb58uWmWLFi5ujRo/bp33zzjZFkFi1aZIwx5uDBg0aS2bZt23XX2a9fP/PYY4+5dDvcrXXr1mbQoEHXtM+cOdMEBATY38fExJjKlSub3377zd72xBNPmC5dutjfV65c2UycONH+/ur9e0X79u3NW2+95dD2ySefmAoVKhhjnDtWufniiy9MYGCg8fHxMc2bNzfDhg0z27dvd+hzs2VcUbduXTN16tTrbpcxxvTp08c8++yzDm1r1qwxHh4e5sKFC2bBggXG39/fpKen33R97uLq36EPPvjABAYGmoyMDHufpUuXGg8PD5OSkmJf541+jg4fPmw8PT0d1mPM7z83w4YNM8YYU79+fTNq1Khct+mPf59z8+c//9m89NJL151elF19THNycsx3331nvL29zZAhQ67p+/nnn5syZcrY31/5nd+9e7cJDQ01AwcONDk5Ofbpf9y3+T0OxhiTmppqJJmdO3caY/73d/ijjz6y99m1a5eRZBISEpzZBcYYYzjTo9+/udVZDRo0sP+7ZMmS8vf314kTJ67b39fXV9WrV7e/r1ChgkP/48eP65lnnlHNmjUVEBAgf39/ZWRk2P83ify7+phJjscgISFBoaGhqlixon16s2bNbrrMadOmqXHjxipbtqz8/Pz0wQcfWPqY1a1bV56envb3f/w5d8b27ds1ZswY+9kZPz8/PfPMM0pOTtb58+dv+Vg99thjOnbsmL766it16NBBq1atUqNGja57JuqKjIwMDRkyRLVr11bp0qXl5+enhISEmx7n7du3a9asWQ7bERUVpZycHB08eFAPPPCAKleurGrVqqlHjx769NNPdf78eaf2kbvk93coISFB4eHhDmfSW7RooZycHO3Zs8fedqOfo507dyo7O1thYWEO+/aHH36wXwYZOHCg3njjDbVo0UIjR47Ujh07rrtN2dnZev3111W/fn0FBQXJz89Py5cvv6N/j5csWSI/Pz/5+PjooYceUpcuXTRq1Ch9//33at++vSpVqqRSpUqpR48eOnnypMPP5YULF9SyZUv95S9/0eTJkx0u5/5RXo7DFYmJieratauqVasmf39/+2XmPx6Pq38WK1SoIEl5+ltD6JFUs2ZN2Ww2pwYrFy9e3OG9zWa75vTbzfpfHbJiYmIUHx+vyZMn68cff1R8fLzKlCmjS5cu5XErcD15PWY3M2/ePA0ZMkR9+vTRt99+q/j4ePXu3fuOO2b+/v46e/bsNe1nzpy55i4NV+zjjIwMjR49WvHx8fbXzp07lZiYKB8fn7xvwFV8fHz0wAMPaPjw4frxxx/Vq1cvjRw58obzDBkyRIsWLdJbb72lNWvWKD4+XvXr17/pcc7IyNDf/vY3h+3Yvn27EhMTVb16dZUqVUpbt27V3LlzVaFCBY0YMULh4eGF+nZfV/8O3cp6MjIy5OnpqS1btjjs24SEBPslkqeffloHDhxQjx49tHPnTt17772aOnVqrusaN26cJk+erFdeeUUrV65UfHy8oqKi7rjf46u1bdtW8fHxSkxM1IULFzR79mylpqbq4YcfVoMGDbRgwQJt2bJF06ZNkySHfeHt7a3IyEgtWbJER48eveF68nIcroiOjtapU6f04YcfauPGjdq4ceM1NUiOPyNXgldefhYJPZKCgoIUFRWladOmOQw2vKIg/xitW7dOAwcOVMeOHVW3bl15e3srLS2twNYHR7Vr19aRI0ccBpdfPXA9N+vWrVPz5s31/PPPKyIiQjVq1HAYcHenqFWrVq6D6rdu3aqwsLB8Lbt48eLKzs52aGvUqJH27NmjGjVqXPPy8PC4pWN1PXXq1HH4Xc+tnnXr1qlXr1569NFHVb9+fZUvX16HDh1y6OPl5ZXrdvzyyy+5boeXl5ckqVixYoqMjNQ777yjHTt26NChQ1qxYsUtbYu7OXNcateure3btzvs83Xr1snDw0O1atVyaj0RERHKzs7WiRMnrtmvV985FBoaqr59+2rhwoV66aWX9OGHH+a6vHXr1qlTp07661//qvDwcFWrVk179+7Ny6YXOSVLllSNGjV09913q1ix32/e3rJli3JycjR+/Hj96U9/UlhYmI4dO3bNvB4eHvrkk0/UuHFjtW3bNtc+V7vecbjyO3D1783Jkye1Z88evfbaa2rfvr1q166t06dPu2qzHbejQJZaBE2bNk3Z2dlq0qSJFixYoMTERCUkJGjKlClOnUK/VTVr1tQnn3yihIQEbdy4Ud27d1eJEiUKbH1wFBkZqbCwMMXExGj79u1as2aNXn311RvOU7NmTW3evFnLly/X3r17NXz4cPvg1zvJc889p71792rgwIHasWOH9uzZowkTJmju3Ll66aWX8rXsKlWqKC4uTikpKfY/biNGjNCcOXM0evRo7dq1SwkJCZo3b55ee+01Sbd2rE6ePKl27drp3//+t3bs2KGDBw/q888/1zvvvKNOnTrdsJ6aNWtq4cKF9jM13bp1u+Z/lFWqVNHq1at19OhR+39WXnnlFf3444/q37+//X/VX375pX3Q7pIlSzRlyhTFx8fr8OHDmjNnjnJycpz+8C9snDku3bt3l4+Pj2JiYvTzzz9r5cqVGjBggHr06KGQkBCn1hMWFqbu3burZ8+eWrhwoQ4ePKhNmzYpNjZWS5culSS98MILWr58uQ4ePKitW7dq5cqVql27dq7Lq1mzpr777jv9+OOPSkhI0N/+9jcdP348fzujCKpRo4YuX76sqVOn6sCBA/rkk080Y8aMXPt6enrq008/VXh4uNq1a6eUlJRc+93oOFSuXFk2m01LlixRamqqMjIyFBgYqDJlyuiDDz7Qvn37tGLFCg0ePLhAtpfQ8/9Vq1ZNW7duVdu2bfXSSy+pXr16euCBBxQXF6f333+/wNb78ccf6/Tp02rUqJF69OihgQMHqly5cgW2Pjjy8PDQokWLdOHCBTVp0kRPP/20/W6h6/nb3/6mv/zlL+rSpYuaNm2qkydP6vnnn79NFd8+1apV0+rVq7V7925FRkaqadOm+uyzz/T555+rQ4cO+Vr2+PHj9d133yk0NFQRERGSpKioKC1ZskTffvut7rvvPv3pT3/S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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print(cleared_df)\n", "cleared_df.head(5).plot.scatter(x=\"Country (or dependency)\", y=\"Population 2020\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Визуализация - Столбчатая диаграмма" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "# plot = data.groupby([\"Pclass\", \"Survived\"]).size().unstack().plot.bar(color=[\"pink\", \"green\"])\n", "# plot.legend([\"Not survived\", \"Survived\"])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Визуализация - Временные ряды" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " Year Population Yearly % Yearly Median Fertility Density\n", "0 2020 7,794,798,739 1.10% 83,000,320 31 2.47 52\n", "1 2025 8,184,437,460 0.98% 77,927,744 32 2.54 55\n", "2 2030 8,548,487,400 0.87% 72,809,988 33 2.62 57\n", "3 2035 8,887,524,213 0.78% 67,807,363 34 2.70 60\n", "4 2040 9,198,847,240 0.69% 62,264,605 35 2.77 62\n", "5 2045 9,481,803,274 0.61% 56,591,207 35 2.85 64\n", "6 2050 9,735,033,990 0.53% 50,646,143 36 2.95 65\n", "\n", "RangeIndex: 7 entries, 0 to 6\n", "Data columns (total 7 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 Year 7 non-null int64 \n", " 1 Population 7 non-null object \n", " 2 Yearly % 7 non-null object \n", " 3 Yearly 7 non-null object \n", " 4 Median 7 non-null int64 \n", " 5 Fertility 7 non-null float64\n", " 6 Density 7 non-null int64 \n", "dtypes: float64(1), int64(3), object(3)\n", "memory usage: 524.0+ bytes\n", "['Year' 'Population' 'Yearly %' 'Yearly' 'Median' 'Fertility' 'Density']\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiwAAAHACAYAAACBGTONAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABYcklEQVR4nO3deXQUVd7G8W+ns4csAoEkEMKeQNi3COIIYzAwwKDiAqKyiKMDLsiAwIxsIiLqKAgKjrKjIIgCyghKEBwEZV/CHgQTIBDWrGTrrvcPXnsmJkAaknQneT7n9Dl09a3Kr4oi/VB17y2TYRgGIiIiIk7MxdEFiIiIiNyMAouIiIg4PQUWERERcXoKLCIiIuL0FFhERETE6SmwiIiIiNNTYBERERGnp8AiIiIiTk+BRURERJyeAouIiIg4vXIXWH744Qd69uxJSEgIJpOJlStX2r2NZcuW0aJFC7y9vQkLC+Ott94q/kJFRESkyMpdYMnIyKB58+a8//77t7T+N998Q79+/Xj22WeJi4vjgw8+4N1332XmzJnFXKmIiIgUlak8P/zQZDLx5Zdfcv/999uWZWdn849//IMlS5Zw5coVmjRpwtSpU+nUqRMAjz32GLm5uSxfvty2zowZM3jzzTdJSEjAZDKV8l6IiIhIubvCcjPPPfccW7duZenSpezbt4+HH36Yrl27cuzYMeBaoPH09My3jpeXF6dOneLXX391RMkiIiIVXoUKLAkJCcybN4/ly5dz9913U69ePUaMGEHHjh2ZN28eADExMXzxxRfExsZitVo5evQo//znPwFISkpyZPkiIiIVlqujCyhN+/fvx2Kx0LBhw3zLs7OzqVKlCgBPP/00x48fp0ePHuTm5uLn58eLL77IhAkTcHGpUPlORETEaVSowJKeno7ZbGbnzp2YzeZ8n1WqVAm41u9l6tSpvP7665w9e5bAwEBiY2MBqFu3bqnXLCIiIhUssLRs2RKLxUJycjJ33333DduazWZq1KgBwJIlS2jfvj2BgYGlUaaIiIj8TrkLLOnp6cTHx9venzhxgj179lC5cmUaNmxIv379ePLJJ/nnP/9Jy5YtOX/+PLGxsTRr1ozu3btz4cIFPv/8czp16kRWVpatz8umTZscuFciIiIVW7kb1rxx40Y6d+5cYHn//v2ZP38+ubm5vPbaayxcuJDTp09TtWpV7rzzTiZOnEjTpk25cOECPXv2ZP/+/RiGQfv27Zk8eTJRUVEO2BsRERGBchhYREREpPzRsBcRERFxegosIiIi4vTKRadbq9XKmTNn8PX11dT5IiIiZYRhGKSlpRESEnLTuc7KRWA5c+YMoaGhji5DREREbkFiYiI1a9a8YZtyEVh8fX2Bazvs5+fn4GpERESkKFJTUwkNDbV9j99IuQgsv90G8vPzU2AREREpY4rSnUOdbkVERMTpKbCIiIiI01NgEREREadXLvqwFJXFYiE3N9fRZUgJcXNzK/AUbhERKR8qRGAxDIOzZ89y5coVR5ciJSwgIICgoCDNxyMiUs5UiMDyW1ipVq0a3t7e+jIrhwzDIDMzk+TkZACCg4MdXJGIiBSnch9YLBaLLaxUqVLF0eVICfLy8gIgOTmZatWq6faQiEg5Ynen27S0NIYNG0ZYWBheXl506NCB7du3X7f9gAEDMJlMBV6RkZG2NhMmTCjweURExK3t0e/81mfF29u7WLYnzu23v2f1VRIRKV/sDiyDBw/mu+++Y9GiRezfv5/77ruP6OhoTp8+XWj76dOnk5SUZHslJiZSuXJlHn744XztIiMj87XbvHnzre3Rdeg2UMWgv2cRkfLJrltCV69eZcWKFaxatYo//OEPwLWrI1999RWzZs3itddeK7COv78//v7+tvcrV67k8uXLDBw4MH8hrq4EBQXdyj6IiIhIOWfXFZa8vDwsFguenp75lnt5eRX5isicOXOIjo4mLCws3/Jjx44REhJC3bp16devHwkJCdfdRnZ2NqmpqfleUjI6derEsGHDnGY7IiJSMdkVWHx9fWnfvj2TJk3izJkzWCwWFi9ezNatW0lKSrrp+mfOnOGbb75h8ODB+ZZHRUUxf/581q5dy6xZszhx4gR33303aWlphW5nypQptis3/v7+5fZJzf/b/8fd3Z369evz6quvkpeX5+jSrmvjxo2YTKYCQ8i/+OILJk2a5JiiRESkzLO7D8uiRYswDIMaNWrg4eHBe++9R9++fXFxufmmFixYQEBAAPfff3++5d26dePhhx+mWbNmxMTE8O9//5srV66wbNmyQrczZswYUlJSbK/ExER7d6PM6Nq1K0lJSRw7doy//e1vTJgwgbfeesvRZdmtcuXKRXoap4iIOJ/k1Cz2nbri0BrsDiz16tVj06ZNpKen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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from datetime import datetime\n", "import matplotlib.dates as md\n", "\n", "ts = pd.read_csv(\"data/world-population-forcast-2020-2050.csv\", encoding=\"ISO-8859-1\")\n", "print(ts)\n", "ts.iloc[:, 1] = ts.iloc[:, 1].apply(lambda row: int(\"\".join(str(row).split(\",\"))))\n", "ts.info()\n", "\n", "print(ts.columns.values)\n", "plot = ts.plot.line(x=\"Year\", y=\"Population\")" ] } ], "metadata": { "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.4" } }, "nbformat": 4, "nbformat_minor": 2 }