AIM-PIbd-31-Blokhin-D-A/Lab_1/lab_1.ipynb

255 lines
222 KiB
Plaintext
Raw Normal View History

2024-09-28 00:56:37 +04:00
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Работа с данными - чтение и запись CSV"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"\n",
"df = pd.read_csv(\"data/Economic.csv\")"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"RangeIndex: 369 entries, 0 to 368\n",
"Data columns (total 14 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 stock index 369 non-null object \n",
" 1 country 369 non-null object \n",
" 2 year 369 non-null float64\n",
" 3 index price 317 non-null float64\n",
" 4 log_indexprice 369 non-null float64\n",
" 5 inflationrate 326 non-null float64\n",
" 6 oil prices 369 non-null float64\n",
" 7 exchange_rate 367 non-null float64\n",
" 8 gdppercent 350 non-null float64\n",
" 9 percapitaincome 368 non-null float64\n",
" 10 unemploymentrate 348 non-null float64\n",
" 11 manufacturingoutput 278 non-null float64\n",
" 12 tradebalance 365 non-null float64\n",
" 13 USTreasury 369 non-null float64\n",
"dtypes: float64(12), object(2)\n",
"memory usage: 40.5+ KB\n",
" count mean std min 25% \\\n",
"year 369.0 2000.000000 11.848225 1980.00 1990.00 \n",
"index price 317.0 7898.648297 7811.336862 168.61 2407.10 \n",
"log_indexprice 369.0 3.610542 0.482481 2.23 3.32 \n",
"inflationrate 326.0 0.041748 0.039579 -0.04 0.02 \n",
"oil prices 369.0 39.743171 25.452654 11.35 19.41 \n",
"exchange_rate 367.0 27.897548 49.620521 0.90 1.33 \n",
"gdppercent 350.0 0.037114 0.037850 -0.11 0.02 \n",
"percapitaincome 368.0 20719.964674 17435.037783 27.00 2090.25 \n",
"unemploymentrate 348.0 0.068908 0.043207 0.02 0.04 \n",
"manufacturingoutput 278.0 328.084820 622.395923 0.59 80.38 \n",
"tradebalance 365.0 -15.996384 154.557170 -770.93 -25.37 \n",
"USTreasury 369.0 0.059024 0.033086 0.01 0.03 \n",
"\n",
" 50% 75% max \n",
"year 2000.00 2010.0000 2020.00 \n",
"index price 5160.10 10279.5000 47751.33 \n",
"log_indexprice 3.60 3.9800 4.68 \n",
"inflationrate 0.03 0.0575 0.24 \n",
"oil prices 28.52 57.8800 98.56 \n",
"exchange_rate 5.44 15.0550 249.05 \n",
"gdppercent 0.03 0.0600 0.15 \n",
"percapitaincome 19969.50 36384.0000 65280.00 \n",
"unemploymentrate 0.06 0.0900 0.26 \n",
"manufacturingoutput 188.16 271.9775 3868.46 \n",
"tradebalance -0.14 19.0800 366.14 \n",
"USTreasury 0.05 0.0800 0.14 \n"
]
}
],
"source": [
"df.info()\n",
"print(df.describe().transpose())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Данный график представляет собой гистограмму со средней инфляцией каждой страны за 40 лет."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['United States of America' 'United Kingdom' 'India' 'Japan' 'Hong Kong'\n",
" 'China' 'Germany' 'France' 'Spain']\n"
]
},
{
"data": {
"image/png": "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W2rZsqU2bdrkTMyioqJUv359ZzJeqFAhffXVV+rdu7diYmI0ePDgZJf99ttvO5OrkSNHurVtEydO1DPPPKN27dpp+PDh8vPz07p16zRjxowbqpdSY8aMueb9lynVpUsXffvtt3rqqafk7e3tfL+ef/55tW/fXmPHjtUrr7yi1q1ba8eOHfLySnreeNSoUapYsaIkacaMGTpw4IBzWnx8vNq0aaP9+/dr8ODBuuOOO+RwOPTCCy+4Ffe/Xb582ZmI/luPHj20evVqDRw4UNWqVZO3t7dmzJihrVu3pmjZ1atX15AhQ1zKPvjgA61atcql7JFHHtH777+vhx56SEOGDNHGjRs1YcIE7dy5U4sXL77uOn755Rc1btxYPj4+6tu3r0qWLKl9+/Zp2bJleuGFF/TAAw+obNmyzvpPPvmkKlasqL59+zrLEttAkk6dOqX77rtPHTp0UOfOnfXpp5+qf//+8vX11cMPPyzpSqI4c+ZMde7cWX369NHZs2c1a9YshYaGatOmTapevXqK3p+rpXaZ/v7+mjNnjsLCwpxlixYtSvHn+vDhwzpw4IBq1qyZ6lgTxcbGJpuE58iRQ5K0ZcsWNW/eXNKV5PTll1/WM888ox49esjhcGju3LnavHmzPv30U+e827ZtkyTVrl3bZZm1atWSl5eXtm3bpq5du6Y61sjISElSwYIF02xdqVlmkSJFVKxYMef0RHnz5lWZMmX0ww8/6Mknn0ztZgFAynj60jkAZAZnzpwxSda2bdsUzyPJJNnmzZudZfv37zd/f39r166ds6x3795WuHBhi46Odpm/U6dOljdvXme30ESjRo0ySS71K1eubE2aNHGp16RJE6tcuXKSuF599VWTZH/99ZezLDg42CpWrOjSLXXOnDkmyX766adU10tOjx49rESJEs7XO3bsMC8vL7v33nuTxFOiRIkkXUTNknaN3bp1q0myd955x1k2depUk2T9+/d3ln399dcmyRYvXuyyvFWrVpkk+/bbb68Z5+7du02STZgwwWXef7+/a9asMUm2YMGCJHHnzJnTevTo4VJWokQJl7K33nrL/Pz87O6773ZZ/z///GNeXl726KOPuszfo0cPy5kzZ5J1/VtK38uff/7ZJNkjjzziUu+pp54ySfbNN99cdz133XWX5c6d2/bv3+9S/u+uzlfH9e/3JFGTJk1Mkk2cONFZFhsba9WrV7eAgAC7dOmSmZldvnzZpcuzmdmpU6csMDDQHn74YWfZX3/9ZZLs1VdfTbKuf+87qV1m586dLVu2bBYZGemcds8999j//ve/a67zaqtXrzZJtmzZsuvWu1638IEDB5qXl5f9/fffLuWdOnUySTZgwABn2blz56xDhw7mcDic31E5cuSwJUuWJFmft7d3susrVKiQderU6brxXktISIjlyZPHTp06lWbr6t27t3l7e9uePXucZYnfcwcOHEhSv06dOla/fv0k5S1atLCKFSumcEsAIPXoFg4AunI1S5Jy586dqvmCg4NVq1Yt5+vbb79dbdu21ddff634+HiZmT777DO1bt1aZqbo6GjnX2hoqM6cOZPk6mTiFTF/f///XH98fLzLMqOjo3XhwoUk9c6ePevsxno9Ka2XEiNHjlTNmjXVvn37ZKfHxcUlif3fVwMjIiIkSQ888ICzLPG
"text/plain": [
"<Figure size 1000x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"s_values = df[\"country\"].unique()\n",
"print(s_values)\n",
"\n",
"average_inflation = df.groupby('country')['inflationrate'].mean()\n",
"\n",
"# Создание гистограммы\n",
"plt.figure(figsize=(10, 6))\n",
"average_inflation.plot(kind='bar', color='skyblue')\n",
"plt.title('Средняя инфляция по странам (1980-2020)')\n",
"plt.xlabel('Страны')\n",
"plt.ylabel('Средняя инфляция (%)')\n",
"plt.xticks(rotation=45)\n",
"plt.grid(axis='y')\n",
"\n",
"# Показываем график\n",
"plt.tight_layout()\n",
"plt.show()\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Данный график представляет собой точечную диаграмма, на которой указаны соотношение цен на бензин и дохода на душу населения только Китая за 40 лет."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAxMAAAJOCAYAAADMPVrNAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd1hTdxcH8G/CFgHFgaC4N4ri3loXbq2zddTaOlq1zmrdq+69WrXVV6yiraN17z3rxFW3dSsqDlCQIbnvH6chCQkjEIb4/TwPT8jNHScJCffc3zgqRVEUEBERERERmUmd1gEQEREREdGHickEERERERElCZMJIiIiIiJKEiYTRERERESUJEwmiIiIiIgoSZhMEBERERFRkjCZICIiIiKiJGEyQUREREREScJkgoiIiIiIkoTJBBFRGggNDcWDBw/w6tWrtA6FiIgoyZhMEBGlknXr1qFevXpwcnJC5syZkTdvXkyfPj2twyIiC2rSpAl69OiR1mEk2datW3H+/PmY+xs3bsQ///xjsM6VK1dgbW2Ny5cvp3J0lB4xmaA0c/v2bfTq1QsFCxaEvb09nJ2dUb16dcybNw/v3r1L6/CILGrYsGFo3749nJyc8Ouvv2LPnj3Yu3cvevfundahEZGFHDt2DLt378YPP/wQs+zgwYNQqVRYv3690fo7duyAjY0NqlSpgtDQ0NQMNU6XLl1C//79cfPmTfz999/45ptv8ObNG4N1SpYsiaZNm2LMmDFpFCWlJ9ZpHQB9nLZt24Z27drBzs4OX3zxBUqVKoXIyEgcPXoUQ4YMwT///INffvklrcMksohDhw5h2rRpmDJlCoYNG5bW4RBRCpkxYwbq1auHwoULJ7juiRMn0LZtWxQuXBjbtm2Do6NjKkSYsO7du+N///sfihYtCgBo3bo1qlSpYrTeN998gyZNmuD27dsoVKhQaodJ6QiTCUp1d+7cwWeffYZ8+fJh//79cHd3j3msT58+uHXrFrZt25aGERJZ1syZM1GtWjUmEkQZ2LNnz7Bt2zYsXrw4wXWvXLmCZs2aIWvWrNi1axeyZcuWChEmTo4cOXD58mVcvnwZmTJlQokSJUyuV79+fWTNmhUrVqzAhAkTUjlKSk/YzYlS3fTp0/H27VssW7bMIJHQKly4MPr37x9z//379/jxxx9RqFAh2NnZIX/+/BgxYgQiIiKMtv3555/h5eUFOzs7eHh4oE+fPnj9+nXM43Xq1IFKpYr3R0ulUqFv375Gx2jWrBny589vsCw0NBSDBw+Gp6cn7OzsUKxYMcycOROKohisZ2qfpva3dOlSqFQqo/6oO3bsQM2aNeHo6AgnJyc0bdrUqC/rl19+icyZMxvFvX79eqhUKhw8eNDg9ahTp47BeqdPnzZ6LbRWrVqF8uXLw8HBAa6urvjss8/w4MEDo/ViGzduHFQqFYKCggyWnzlzBiqVCn5+fgbLNRoN5s6dCy8vL9jb28PNzQ29evUyGqycP39+NGvWzOh4ffv2NRl/bHXq1EGpUqWMls+cORMqlQp3796NWbZp0yY0bdoUHh4esLOzQ6FChfDjjz8iOjo6weP8/fffKFWqFD777DO4urrCwcEBFStWxMaNG43WjYiIwNixY1G4cGHY2dnB09MTQ4cONfp7T+zf5/Xr11G3bl3kypUrZn/ffPMNXr58GbOOthuG/t8GADRt2hQqlQrjxo2LWWbuexmbn5+f0Wur0Wjg7e2dqO21vvzyS5Of3y+//NJo3YS+F65evQoHBwd88cUXBtsdPXoUVlZWBl1WErM/fXF9z+i/1pGRkRgzZgzKly8PFxcXODo6ombNmjhw4ECiXgtzPgfLly9H3bp1kTNnTtjZ2aFkyZJYtGiRyf3u2LEDtWvXhpOTE5ydnVGxYkWsXr3aYJ2TJ0+iUaNGcHFxQaZMmVC7dm0cO3YszjgTei20x02r77m3b99i8ODBKFiwIGxsbAzijP03H9u2bdvw/v171K9fP9717t+/D19fXyiKgl27diFv3rxGzy32/4QHDx7AwcHB4LMT1+up/dHfh/aCRrZs2eDg4IDy5cub7Hal/bzb2dmhfPnyKFGiBGbMmAGVSmX0GtrY2KBOnTrYtGlTvM+XMj62TFCq27JlCwoWLIhq1aolav3u3btjxYoVaNu2LQYPHoyTJ09iypQpuHr1Kv7666+Y9caNG4fx48ejfv36+Pbbb3H9+nUsWrQIp0+fxrFjx2BjY4ORI0eie/fuAICgoCAMHDgQPXv2RM2aNZP8fBRFQYsWLXDgwAF8/fXXKFu2LHbt2oUhQ4bg0aNHmDNnTpL3rW/lypXo2rUrfH19MW3aNISFhWHRokWoUaMGAgICjP75JFXsEyetSZMmYfTo0Wjfvj26d++O58+fY8GCBahVqxYCAgKQJUsWixwfAHr16gU/Pz9069YN/fr1w507d7Bw4UIEBATEvJepzc/PD5kzZ8agQYOQOXNm7N+/H2PGjEFISAhmzJgR77YvXrzAL7/8gsyZM6Nfv37IkSMHVq1ahdatW8Pf3x+ff/45ADmpbtGiBY4ePYqePXuiRIkSuHTpEubMmYMbN26YTD4SEhoaijx58qB58+ZwdnbG5cuX8dNPP+HRo0fYsmVLnNsdPnwY27dvN/t4SbFy5UpcunTJ7O3s7OywdOnSmPvaz7a+xHwvlChRAj/++COGDBmCtm3bokWLFggNDcWXX36J4sWLG1x1Tcz+YmvQoEFMonL69GnMnz/f4PGQkBAsXboUn3/+OXr06IE3b95g2bJl8PX1xalTp1C2bFmzX5u4LFq0CF5eXmjRogWsra2xZcsW9O7dGxqNBn369IlZz8/PD1999RW8vLwwfPhwZMmSBQEBAdi5cyc6duwIANi/fz8aN26M8uXLY+zYsVCr1THJypEjR1CpUiWj49esWRM9e/YEIEnc5MmTDR5P6++5IUOGYPHixfj6669RvXp12NjY4M8//zT4XxOX48ePI1u2bMiXL1+c67x48QK+vr548eIF9u7dCy8vr0TFO2bMGISHhxssmzt3Lt6+fQtA91qOGDEipiVBP9maN28eWrRogU6dOiEyMhK///472rVrh61bt6Jp06ZxHvf169eYMmVKnI+XL18emzZtQkhICJydnRP1XCgDUohSUXBwsAJAadmyZaLWP3/+vAJA6d69u8Hy77//XgGg7N+/X1EURXn27Jlia2urNGzYUImOjo5Zb+HChQoA5X//+5/Rvu/cuaMAUJYvX27y2ACUPn36GC1v2rSpki9fvpj7GzduVAAoEydONFivbdu2ikqlUm7duhXvPmPvT1EU5ddff1UAKJcuXVIURVHevHmjZMmSRenRo4fBeoGBgYqLi4vB8q5duyqOjo5Gca9bt04BoBw4cCBmWe3atZXatWvH3N++fbsCQGnUqJGi//Vw9+5dxcrKSpk0aZLBPi9duqRYW1sbLY9t7NixCgDl+fPnBstPnz5t9B4cOXJEAaD4+/sbrLtz506j5fny5VOaNm1qdLw+ffooifl6q127tuLl5WW0fMaMGQoA5c6dOzHLwsLCjNbr1auXkilTJiU8PDze4wBQACgHDx402F+JEiWUXLlyKZGRkYqiKMrKlSsVtVqtHDlyxGD7xYsXKwCUY8eOGewzMX+fpvTu3VvJnDlzzP0DBw4Y/W1UrlxZady4sQJAGTt2bMxyc95LU5YvX27w2oaHhyt58+aNOVZC22t17NjR4DkoiqI4OjoqXbt2jblvzvdCdHS0UqNGDcXNzU0JCgpS+vTpo1hbWyunT59O0v4URVEiIyMVAErfvn1jlpn6HL5//16JiIgw2PbVq1eKm5ub8tVXXyX4WpjzOTD1d+zr66sULFgw5v7r168VJycnpXLlysq7d+8M1tVoNDG3RYoUUXx9fWOWafdfoEABpUGDBkbHyZ07t9KtW7eY+7H/7tL6e05RFMXd3V3x9fU1WBbX33xsNWrUUMqXL2+0XPs8/fz8lEqVKikAFC8vLyUqKsrkfrp27WrwGb58+bKiVqtjPiP630uxj6H/vPXFft8jIyOVUqVKKXXr1jV
"text/plain": [
"<Figure size 800x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"china_data = df[df['country'] == 'China']\n",
"\n",
"\n",
"# Создание диаграммы разброса\n",
"plt.figure(figsize=(8, 6))\n",
"plt.scatter(china_data['percapitaincome'], china_data['oil prices'], color='red', alpha=0.8)\n",
"\n",
"# Добавляем подписи и заголовок\n",
"plt.title('Соотношение цен на бензин и дохода населения (Китай)')\n",
"plt.xlabel('Доход населения (в условных единицах)')\n",
"plt.ylabel('Цена на бензин (в условных единицах)')\n",
"\n",
"# Настраиваем сетку\n",
"plt.grid(True)\n",
"\n",
"# Добавляем аннотацию для Китая\n",
"for i in range(len(china_data)):\n",
" plt.annotate(china_data['year'].iloc[i], (china_data['percapitaincome'].iloc[i], china_data['oil prices'].iloc[i]), fontsize=12, color='blue')\n",
"\n",
"# Показываем график\n",
"plt.tight_layout()\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Данный график представляет собой график с маркерами курса валюты Индии к USD за 40 лет"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 1200x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"india_data = df[df['country'] == 'India']\n",
"\n",
"\n",
"# Создание диаграммы временных рядов\n",
"plt.figure(figsize=(12, 6))\n",
"plt.plot(india_data['year'], india_data['exchange_rate'], marker='o', color='green', linestyle='-')\n",
"\n",
"# Добавляем подписи и заголовок\n",
"plt.title('Курс валюты Индии (INR) к USD (1980-2020)')\n",
"plt.xlabel('Год')\n",
"plt.ylabel('Курс (INR к USD)')\n",
"\n",
"# Настраиваем сетку\n",
"plt.grid(True)\n",
"\n",
"# Показываем график\n",
"plt.xticks(india_data['year'], rotation=45)\n",
"plt.tight_layout()\n",
"plt.show()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "aimvenv",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.6"
}
},
"nbformat": 4,
"nbformat_minor": 2
}