diff --git a/05_AdvancedPandas/Train.ipynb b/05_AdvancedPandas/Train.ipynb new file mode 100644 index 0000000..56a518c --- /dev/null +++ b/05_AdvancedPandas/Train.ipynb @@ -0,0 +1,193 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print('hey')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"\"\"\"Shuffle, Shuffle, Shuffle\", say it together!\n", + "Change colors and directions,\n", + "Don't back down and stop the player!\n", + " Do you want to play Taki?\n", + " Press y\\\\n \"\"\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "numbers = \"123456789\"\n", + "numbers[-1:-10]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "encrypted_message = \"!XgXnXiXcXiXlXsX XnXoXhXtXyXpX XgXnXiXnXrXaXeXlX XmXaX XI\"\n", + "encrypted_message[::-2]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "numbers = \"123456789\"\n", + "numbers[0:10:1]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "import pandas as pd\n", + "url = 'https://s3.eu-west-1.amazonaws.com/data.cyber.org.il/virtual_courses/introdata/colab/youth_survey_preprocessed.csv'\n", + "music = pd.read_csv(url)\n", + "music.head" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "import pandas as pd\n", + "url = 'https://s3.eu-west-1.amazonaws.com/data.cyber.org.il/virtual_courses/introdata/colab/youth_survey_preprocessed.csv'\n", + "music = pd.read_csv(url)\n", + "music.head" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Base Installations\n", + "import sys\n", + "import pandas as pd\n", + "import numpy as np \n", + "import matplotlib as plt\n", + "\n", + "# Load Data\n", + "df = pd.read_csv(r'C:\\Users\\bruch\\Desktop\\spotify_tracks1.csv')\n", + "df.head # Checking that the data loaded + Understanding about what the data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df_rename = df.rename(columns= {\n", + " 'popularity':'pop'})\n", + "df_rename.head" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df.shape \n", + "print (f'Total rows : 521260 \\nTotal columns : 18')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df_pop = df.sort_values('popularity', ascending=False) # Sortinggggg\n", + "df_pop.popularity" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df.describe()\n", + "df.info()\n", + "df.memory_usage()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df_pop[['popularity']]" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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fAAASYkPACAp8QEAJCU+AICkxAcAkJT4AACSEh8AQFLiAwBISnwAAEmJDwAgKfEBACQlPgCApMQHAJCU+AAAkhIfAEBS4gMASEp8AABJtVh83HjjjTFgwIDo3LlzHH744fHkk0+21KUAgDakReLj7rvvjunTp8esWbNi1apVMWTIkBg1alRs2LChJS4HALQhLRIf1157bZxzzjkxceLE2H///eOmm26Krl27xq9//euWuBwA0IYUFfqEH3zwQaxcuTIqKyvzxzp06BAjR46MpUuXbrW+oaEhGhoa8vt1dXUREVFfX1/o0SIiorFhc4ucl7ajpZ5b28tzEM9BWltLPAc/OWeWZZ+7tuDx8e9//zu2bNkSvXv3bnK8d+/e8fe//32r9dXV1VFVVbXV8fLy8kKPBhERUTqntSdgZ+c5SGtryefgu+++G6WlpZ+5puDx0VyVlZUxffr0/H5jY2O89dZb0atXr8jlcq04WftTX18f5eXlUVtbGyUlJa09Djshz0Fam+dgy8myLN59990oKyv73LUFj4/dd989OnbsGG+88UaT42+88Ub06dNnq/XFxcVRXFzc5FiPHj0KPRb/paSkxL90tCrPQVqb52DL+Lw7Hp8o+BtOd9lllzjkkENi8eLF+WONjY2xePHiOPLIIwt9OQCgjWmRl12mT58eEyZMiEMPPTQOO+ywmDNnTmzatCkmTpzYEpcDANqQFomPU045Jd5888245JJLYv369TF06NB46KGHtnoTKmkVFxfHrFmztnqZC1LxHKS1eQ7uGHLZ9nwmBgCgQHy3CwCQlPgAAJISHwBAUuIDSCqXy8XChQtbewwSqqioiGnTprX2GOxAxAcALeree++N2bNnF+Rc7SVeH3vsscjlcvHOO++09iitotX/enVg5/HBBx+09gi0gp49eya93gcffBC77LJL0mvSPO58tHEVFRUxefLkmDx5cpSWlsbuu+8eM2fOzH+r4Ntvvx3jx4+P3XbbLbp27RqjR4+ONWvW5H9+3rx50aNHj1i4cGEMGjQoOnfuHKNGjYra2trW+pVoRz55fk6bNi123333GDVq1FZrZs2aFX379o1nn322FSYkhf9+2WXAgAFxxRVXxNlnnx3du3ePfv36xS9+8Yv82g8++CAmT54cffv2jc6dO0f//v2juro6/7MRESeeeGLkcrn8/qWXXhpDhw6NW265JQYOHBidO3fOr58zZ06TWYYOHRqXXnppfj+Xy8XNN98cY8eOja5du8bgwYNj6dKlsXbt2qioqIhu3brFUUcdFf/4xz+anOf++++PYcOGRefOneMrX/lKVFVVxUcffdTkvLfcckuceOKJ0bVr1xg0aFAsWrQoIiJeeumlGDFiRERE7LbbbpHL5eKss876Mv+I2xzx0Q7Mnz8/ioqK4sknn4zrrrsurr322rjlllsiIuKss86KFStWxKJFi2Lp0qWRZVl897vfjQ8//DD/85s3b47LL788brvttnjiiSfinXfeiVNPPbW1fh3amfnz58cuu+wSTzzxRNx0003541mWxZQpU+K2226Lxx9/PL72ta+14pSkdM0118Shhx4aTz/9dPzwhz+M888/P2pqaiIi4vrrr49FixbFPffcEzU1NXHHHXfkI+Opp56KiIhbb701Xn/99fx+RMTatWvjd7/7Xdx7772xevXqZs0ze/bsGD9+fKxevTr222+/OO200+K8886LysrKWLFiRWRZFpMnT86vf/zxx2P8+PExderUeP755+Pmm2+OefPmxeWXX97kvFVVVXHyySfHs88+G9/97nfj9NNPj7feeivKy8vjd7/7XURE1NTUxOuvvx7XXXddc/8xtm0ZbdoxxxyTDR48OGtsbMwfmzFjRjZ48ODsxRdfzCIie+KJJ/KP/fvf/866dOmS3XPPPVmWZdmtt96aRUS2bNmy/JoXXnghi4hs+fLl6X4R2qVjjjkmO/jgg5sci4jsN7/5TXbaaadlgwcPzv71r3+10nSkcswxx2RTp07NsizL+vfvn51xxhn5xxobG7M999wzmzt3bpZlWTZlypTs2GOPbfLftP8WEdl9993X5NisWbOyTp06ZRs2bGhyvH///tnPfvazJseGDBmSzZo1q8n5Lr744vz+0qVLs4jIfvWrX+WPLViwIOvcuXN+/5vf/GZ2xRVXNDnv7bffnvXt2/dTz7tx48YsIrI//OEPWZZl2aOPPppFRPb2229v8/ds79z5aAeOOOKIyOVy+f0jjzwy1qxZE88//3wUFRXF4Ycfnn+sV69ese+++8YLL7yQP1ZUVBTDhw/P7++3337Ro0ePJmvgizrkkEO2OnbhhRfG8uXLY8mSJbHXXnu1wlS0pv++y5XL5aJPnz6xYcOGiPj4bu3q1atj3333jQsuuCD++Mc/btc5+/fvH3vssceXnueTrwE56KCDmhx7//33o76+PiIinnnmmbjsssti1113zW/nnHNOvP7667F58+Ztnrdbt25RUlKS/z13duIDaFHdunXb6ti3vvWtePXVV+Phhx9uhYlobZ06dWqyn8vlorGxMSIihg0bFuvWrYvZs2fHe++9FyeffHKcdNJJn3vObT3POnTokH//2yf++yXnbc3zyf/IbevYJzNu3LgxqqqqYvXq1fntueeeizVr1uTfb/J5v+fOzqdd2oHly5c32V+2bFkMGjQo9t9///joo49i+fLlcdRRR0VExH/+85+oqamJ/fffP7/+o48+ihUrVsRhhx0WER+/BvnOO+/E4MGD0/0S7FSOO+64GDduXJx22mnRsWNH7zGiiZKSkjjllFPilFNOiZNOOim+853vxFtvvRU9e/aMTp06xZYtW7brPHvssUe8/vrr+f36+vpYt27dl55v2LBhUVNTE1/96le/8Dk++TTO9v4u7Y07H+3AK6+8EtOnT4+amppYsGBB3HDDDTF16tQYNGhQHH/88XHOOefEn//853jmmWfijDPOiL322iuOP/74/M936tQppkyZEsuXL4+VK1fGWWedFUcccUQ+RqAlnHjiiXH77bfHxIkT47e//W1rj8MO4tprr40FCxbE3//+93jxxRfjN7/5TfTp0yd69OgRER9/gmXx4sWxfv36ePvttz/zXMcee2zcfvvt8fjjj8dzzz0XEyZMiI4dO37pGS+55JK47bbboqqqKv72t7/FCy+8EHfddVdcfPHF232O/v37Ry6XiwceeCDefPPN2Lhx45eeqy0RH+3A+PHj47333ovDDjssJk2aFFOnTo1zzz03Ij5+V/ghhxwSY8eOjSOPPDKyLIsHH3ywye3Arl27xowZM+K0006Lo48+Onbddde4++67W+vXYSdy0kknxfz58+PMM8+Me++9t7XHYQfQvXv3uPrqq+PQQw+N4cOHx0svvRQPPvhgdOjw8R9X11xzTTzyyCNRXl4eBx988Geeq7KyMo455pgYO3ZsjBkzJk444YTYZ599vvSMo0aNigceeCD++Mc/xvDhw+OII46In/3sZ9G/f//tPsdee+0VVVVVcdFFF0Xv3r2bfJpmZ5DL/vcFMdqUioqKGDp06FafZd9e8+bNi2nTpu20f8seAOm58wEAJCU+AICkvOwCACTlzgcAkJT4AACSEh8AQFLiAwBISnwAAEmJDwAgKfEBACQlPgCApMQHAJDU/wPcsFBhB1dW9wAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.figure()\n", + "plt.bar(['pop','rk','instrument'], [14,12,4])\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "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.11.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/Midterm.ipynb b/Midterm.ipynb new file mode 100644 index 0000000..abeddf2 --- /dev/null +++ b/Midterm.ipynb @@ -0,0 +1,417 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "# Base Installations\n", + "import sys\n", + "import pandas as pd\n", + "import numpy as np \n", + "import matplotlib.pyplot as plt\n", + "import time" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Load Data\n", + "has = pd.read_csv(r'C:\\Users\\bruch\\Desktop\\data\\HAS.csv')\n", + "lnc = pd.read_csv(r'C:\\Users\\bruch\\Desktop\\data\\LNC.csv')\n", + "mar = pd.read_csv(r'C:\\Users\\bruch\\Desktop\\data\\MAR.csv')\n", + "tsla = pd.read_csv(r'C:\\Users\\bruch\\Desktop\\data\\TSLA.csv')\n", + "ups = pd.read_csv(r'C:\\Users\\bruch\\Desktop\\data\\UPS.csv')\n", + "has.head # Checking that the data loaded + Basic understanding about what the data" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "equal_has = has['Close']==has['Adj Close']\n", + "equal_has.all()" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "equal_lnc = lnc['Close']==lnc['Adj Close']\n", + "equal_has.all()" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "equal_mar = mar['Close']==mar['Adj Close']\n", + "equal_mar.all()" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "equal_tsla = tsla['Close']==tsla['Adj Close']\n", + "equal_tsla.all()" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "equal_ups = ups['Close']==ups['Adj Close']\n", + "equal_ups.all()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#1. Only in TSLA there is no difference between the Close and the Adj Close columns." + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Highest price on Adj Close for has is : 117.93807983398438\n", + "Lowest price on Adj Close for has is : 42.64298629760742\n", + "Highest price on Adj Close for lnc is : 75.65805053710938\n", + "Lowest price on Adj Close for lnc is : 15.741825103759766\n", + "Highest price on Adj Close for mar is : 190.3000030517578\n", + "Lowest price on Adj Close for mar is : 59.08000183105469\n", + "Highest price on Adj Close for tsla is : 409.9700012207031\n", + "Lowest price on Adj Close for tsla is : 11.9313325881958\n", + "Highest price on Adj Close for ups is : 230.4356231689453\n", + "Lowest price on Adj Close for ups is : 81.68296813964844\n" + ] + } + ], + "source": [ + "#2\n", + "high_has = has['Adj Close'].max()\n", + "print(f'Highest price on Adj Close for has is : {high_has}')\n", + "low_has = has['Adj Close'].min()\n", + "print(f'Lowest price on Adj Close for has is : {low_has}')\n", + "\n", + "high_lnc = lnc['Adj Close'].max()\n", + "print(f'Highest price on Adj Close for lnc is : {high_lnc}')\n", + "low_lnc = lnc['Adj Close'].min()\n", + "print(f'Lowest price on Adj Close for lnc is : {low_lnc}')\n", + "\n", + "high_mar = mar['Adj Close'].max()\n", + "print(f'Highest price on Adj Close for mar is : {high_mar}')\n", + "low_mar = mar['Adj Close'].min()\n", + "print(f'Lowest price on Adj Close for mar is : {low_mar}')\n", + "\n", + "high_tsla = tsla['Adj Close'].max()\n", + "print(f'Highest price on Adj Close for tsla is : {high_tsla}')\n", + "low_tsla = tsla['Adj Close'].min()\n", + "print(f'Lowest price on Adj Close for tsla is : {low_tsla}')\n", + "\n", + "high_ups = ups['Adj Close'].max()\n", + "print(f'Highest price on Adj Close for ups is : {high_ups}')\n", + "low_ups = ups['Adj Close'].min()\n", + "print(f'Lowest price on Adj Close for ups is : {low_ups}')\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#3" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#4\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['Symbol', 'Security', 'GICS_Sector', 'hq', 'included', 'Founded'], dtype='object')" + ] + }, + "execution_count": 59, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "#Part 2\n", + "sp500 = pd.read_csv(r'C:\\Users\\bruch\\Desktop\\companies_no_subindustry.csv')\n", + "sp500.head # Checking that the data loaded + Basic understanding about what the data\n", + "sp500.columns" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "45" + ] + }, + "execution_count": 57, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + " #1 \n", + "sp500['included'].isnull().sum()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#2\n", + "date = pd.to_datetime('now')\n", + "sp500['age'] = (date - sp500['Founded']).dt.days" + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#3\n", + "sector = sp500['GICS_Sector'].value_counts()\n", + "plt.figure(figsize=(12,6))\n", + "plt.pie(sector, labels=sector)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + ">" + ] + }, + "execution_count": 72, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "#4\n", + "new = sp500['hq'].str.split\n", + "new" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "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.11.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/Train.ipynb b/Train.ipynb new file mode 100644 index 0000000..56a518c --- /dev/null +++ b/Train.ipynb @@ -0,0 +1,193 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print('hey')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"\"\"\"Shuffle, Shuffle, Shuffle\", say it together!\n", + "Change colors and directions,\n", + "Don't back down and stop the player!\n", + " Do you want to play Taki?\n", + " Press y\\\\n \"\"\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "numbers = \"123456789\"\n", + "numbers[-1:-10]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "encrypted_message = \"!XgXnXiXcXiXlXsX XnXoXhXtXyXpX XgXnXiXnXrXaXeXlX XmXaX XI\"\n", + "encrypted_message[::-2]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "numbers = \"123456789\"\n", + "numbers[0:10:1]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "import pandas as pd\n", + "url = 'https://s3.eu-west-1.amazonaws.com/data.cyber.org.il/virtual_courses/introdata/colab/youth_survey_preprocessed.csv'\n", + "music = pd.read_csv(url)\n", + "music.head" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "import pandas as pd\n", + "url = 'https://s3.eu-west-1.amazonaws.com/data.cyber.org.il/virtual_courses/introdata/colab/youth_survey_preprocessed.csv'\n", + "music = pd.read_csv(url)\n", + "music.head" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Base Installations\n", + "import sys\n", + "import pandas as pd\n", + "import numpy as np \n", + "import matplotlib as plt\n", + "\n", + "# Load Data\n", + "df = pd.read_csv(r'C:\\Users\\bruch\\Desktop\\spotify_tracks1.csv')\n", + "df.head # Checking that the data loaded + Understanding about what the data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df_rename = df.rename(columns= {\n", + " 'popularity':'pop'})\n", + "df_rename.head" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df.shape \n", + "print (f'Total rows : 521260 \\nTotal columns : 18')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df_pop = df.sort_values('popularity', ascending=False) # Sortinggggg\n", + "df_pop.popularity" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df.describe()\n", + "df.info()\n", + "df.memory_usage()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df_pop[['popularity']]" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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fAAASYkPACAp8QEAJCU+AICkxAcAkJT4AACSEh8AQFLiAwBISnwAAEmJDwAgKfEBACQlPgCApMQHAJCU+AAAkhIfAEBS4gMASEp8AABJtVh83HjjjTFgwIDo3LlzHH744fHkk0+21KUAgDakReLj7rvvjunTp8esWbNi1apVMWTIkBg1alRs2LChJS4HALQhLRIf1157bZxzzjkxceLE2H///eOmm26Krl27xq9//euWuBwA0IYUFfqEH3zwQaxcuTIqKyvzxzp06BAjR46MpUuXbrW+oaEhGhoa8vt1dXUREVFfX1/o0SIiorFhc4ucl7ajpZ5b28tzEM9BWltLPAc/OWeWZZ+7tuDx8e9//zu2bNkSvXv3bnK8d+/e8fe//32r9dXV1VFVVbXV8fLy8kKPBhERUTqntSdgZ+c5SGtryefgu+++G6WlpZ+5puDx0VyVlZUxffr0/H5jY2O89dZb0atXr8jlcq04WftTX18f5eXlUVtbGyUlJa09Djshz0Fam+dgy8myLN59990oKyv73LUFj4/dd989OnbsGG+88UaT42+88Ub06dNnq/XFxcVRXFzc5FiPHj0KPRb/paSkxL90tCrPQVqb52DL+Lw7Hp8o+BtOd9lllzjkkENi8eLF+WONjY2xePHiOPLIIwt9OQCgjWmRl12mT58eEyZMiEMPPTQOO+ywmDNnTmzatCkmTpzYEpcDANqQFomPU045Jd5888245JJLYv369TF06NB46KGHtnoTKmkVFxfHrFmztnqZC1LxHKS1eQ7uGHLZ9nwmBgCgQHy3CwCQlPgAAJISHwBAUuIDSCqXy8XChQtbewwSqqioiGnTprX2GOxAxAcALeree++N2bNnF+Rc7SVeH3vsscjlcvHOO++09iitotX/enVg5/HBBx+09gi0gp49eya93gcffBC77LJL0mvSPO58tHEVFRUxefLkmDx5cpSWlsbuu+8eM2fOzH+r4Ntvvx3jx4+P3XbbLbp27RqjR4+ONWvW5H9+3rx50aNHj1i4cGEMGjQoOnfuHKNGjYra2trW+pVoRz55fk6bNi123333GDVq1FZrZs2aFX379o1nn322FSYkhf9+2WXAgAFxxRVXxNlnnx3du3ePfv36xS9+8Yv82g8++CAmT54cffv2jc6dO0f//v2juro6/7MRESeeeGLkcrn8/qWXXhpDhw6NW265JQYOHBidO3fOr58zZ06TWYYOHRqXXnppfj+Xy8XNN98cY8eOja5du8bgwYNj6dKlsXbt2qioqIhu3brFUUcdFf/4xz+anOf++++PYcOGRefOneMrX/lKVFVVxUcffdTkvLfcckuceOKJ0bVr1xg0aFAsWrQoIiJeeumlGDFiRERE7LbbbpHL5eKss876Mv+I2xzx0Q7Mnz8/ioqK4sknn4zrrrsurr322rjlllsiIuKss86KFStWxKJFi2Lp0qWRZVl897vfjQ8//DD/85s3b47LL788brvttnjiiSfinXfeiVNPPbW1fh3amfnz58cuu+wSTzzxRNx0003541mWxZQpU+K2226Lxx9/PL72ta+14pSkdM0118Shhx4aTz/9dPzwhz+M888/P2pqaiIi4vrrr49FixbFPffcEzU1NXHHHXfkI+Opp56KiIhbb701Xn/99fx+RMTatWvjd7/7Xdx7772xevXqZs0ze/bsGD9+fKxevTr222+/OO200+K8886LysrKWLFiRWRZFpMnT86vf/zxx2P8+PExderUeP755+Pmm2+OefPmxeWXX97kvFVVVXHyySfHs88+G9/97nfj9NNPj7feeivKy8vjd7/7XURE1NTUxOuvvx7XXXddc/8xtm0ZbdoxxxyTDR48OGtsbMwfmzFjRjZ48ODsxRdfzCIie+KJJ/KP/fvf/866dOmS3XPPPVmWZdmtt96aRUS2bNmy/JoXXnghi4hs+fLl6X4R2qVjjjkmO/jgg5sci4jsN7/5TXbaaadlgwcPzv71r3+10nSkcswxx2RTp07NsizL+vfvn51xxhn5xxobG7M999wzmzt3bpZlWTZlypTs2GOPbfLftP8WEdl9993X5NisWbOyTp06ZRs2bGhyvH///tnPfvazJseGDBmSzZo1q8n5Lr744vz+0qVLs4jIfvWrX+WPLViwIOvcuXN+/5vf/GZ2xRVXNDnv7bffnvXt2/dTz7tx48YsIrI//OEPWZZl2aOPPppFRPb2229v8/ds79z5aAeOOOKIyOVy+f0jjzwy1qxZE88//3wUFRXF4Ycfnn+sV69ese+++8YLL7yQP1ZUVBTDhw/P7++3337Ro0ePJmvgizrkkEO2OnbhhRfG8uXLY8mSJbHXXnu1wlS0pv++y5XL5aJPnz6xYcOGiPj4bu3q1atj3333jQsuuCD++Mc/btc5+/fvH3vssceXnueTrwE56KCDmhx7//33o76+PiIinnnmmbjsssti1113zW/nnHNOvP7667F58+Ztnrdbt25RUlKS/z13duIDaFHdunXb6ti3vvWtePXVV+Phhx9uhYlobZ06dWqyn8vlorGxMSIihg0bFuvWrYvZs2fHe++9FyeffHKcdNJJn3vObT3POnTokH//2yf++yXnbc3zyf/IbevYJzNu3LgxqqqqYvXq1fntueeeizVr1uTfb/J5v+fOzqdd2oHly5c32V+2bFkMGjQo9t9///joo49i+fLlcdRRR0VExH/+85+oqamJ/fffP7/+o48+ihUrVsRhhx0WER+/BvnOO+/E4MGD0/0S7FSOO+64GDduXJx22mnRsWNH7zGiiZKSkjjllFPilFNOiZNOOim+853vxFtvvRU9e/aMTp06xZYtW7brPHvssUe8/vrr+f36+vpYt27dl55v2LBhUVNTE1/96le/8Dk++TTO9v4u7Y07H+3AK6+8EtOnT4+amppYsGBB3HDDDTF16tQYNGhQHH/88XHOOefEn//853jmmWfijDPOiL322iuOP/74/M936tQppkyZEsuXL4+VK1fGWWedFUcccUQ+RqAlnHjiiXH77bfHxIkT47e//W1rj8MO4tprr40FCxbE3//+93jxxRfjN7/5TfTp0yd69OgRER9/gmXx4sWxfv36ePvttz/zXMcee2zcfvvt8fjjj8dzzz0XEyZMiI4dO37pGS+55JK47bbboqqqKv72t7/FCy+8EHfddVdcfPHF232O/v37Ry6XiwceeCDefPPN2Lhx45eeqy0RH+3A+PHj47333ovDDjssJk2aFFOnTo1zzz03Ij5+V/ghhxwSY8eOjSOPPDKyLIsHH3ywye3Arl27xowZM+K0006Lo48+Onbddde4++67W+vXYSdy0kknxfz58+PMM8+Me++9t7XHYQfQvXv3uPrqq+PQQw+N4cOHx0svvRQPPvhgdOjw8R9X11xzTTzyyCNRXl4eBx988Geeq7KyMo455pgYO3ZsjBkzJk444YTYZ599vvSMo0aNigceeCD++Mc/xvDhw+OII46In/3sZ9G/f//tPsdee+0VVVVVcdFFF0Xv3r2bfJpmZ5DL/vcFMdqUioqKGDp06FafZd9e8+bNi2nTpu20f8seAOm58wEAJCU+AICkvOwCACTlzgcAkJT4AACSEh8AQFLiAwBISnwAAEmJDwAgKfEBACQlPgCApMQHAJDU/wPcsFBhB1dW9wAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.figure()\n", + "plt.bar(['pop','rk','instrument'], [14,12,4])\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "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.11.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}