diff --git a/Assignment 1/Ninaad_Assignment-1/Ninaad_Assignment-1_Numpy .ipynb b/Assignment 1/Ninaad_Assignment-1/Ninaad_Assignment-1_Numpy .ipynb new file mode 100644 index 00000000..285a2b36 --- /dev/null +++ b/Assignment 1/Ninaad_Assignment-1/Ninaad_Assignment-1_Numpy .ipynb @@ -0,0 +1 @@ +{"cells":[{"cell_type":"markdown","metadata":{"id":"HfJB9JnS9xlK"},"source":["# NumPy Exercises\n","\n","Now that we've learned about NumPy let's test your knowledge. We'll start off with a few simple tasks, and then you'll be asked some more complicated questions."]},{"cell_type":"markdown","metadata":{"id":"u9POEVg29xlM"},"source":["#### Import NumPy as np"]},{"cell_type":"code","execution_count":1,"metadata":{"id":"yyS-PuO_9xlM","executionInfo":{"status":"ok","timestamp":1764799565815,"user_tz":-330,"elapsed":8,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[],"source":["import numpy as np"]},{"cell_type":"markdown","metadata":{"id":"ehlpKUPc9xlM"},"source":["#### Create an array of 10 zeros"]},{"cell_type":"code","execution_count":4,"metadata":{"id":"aEQkK-Dw9xlN","outputId":"9c6e9d69-e379-480d-b73f-10bdac11760a","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764799637507,"user_tz":-330,"elapsed":11,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[0 0 0 0 0 0 0 0 0]\n"]}],"source":["arr = np.array([0, 0, 0, 0, 0, 0, 0, 0, 0])\n","print(arr)"]},{"cell_type":"markdown","metadata":{"id":"6QHp05Ei9xlN"},"source":["#### Create an array of 10 ones"]},{"cell_type":"code","execution_count":7,"metadata":{"scrolled":true,"id":"ebe9xrC29xlN","outputId":"996a95ae-efc7-4f63-c3ff-b125ec3ed30d","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764799776857,"user_tz":-330,"elapsed":68,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[1 1 1 1 1 1 1 1 1 1]\n"]}],"source":["arr = np.array([1, 1, 1, 1, 1, 1, 1, 1, 1, 1])\n","print(arr)"]},{"cell_type":"markdown","metadata":{"id":"ziS-l3xp9xlO"},"source":["#### Create an array of 10 fives"]},{"cell_type":"code","execution_count":11,"metadata":{"id":"fFC7bqLM9xlO","executionInfo":{"status":"ok","timestamp":1764799891020,"user_tz":-330,"elapsed":41,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[],"source":["arr = np.array([5, 5, 5, 5, 5, 5, 5, 5, 5, 5])"]},{"cell_type":"markdown","metadata":{"id":"kBugMXlC9xlO"},"source":["#### Create an array of the integers from 10 to 50"]},{"cell_type":"code","execution_count":10,"metadata":{"id":"JsO6qS9R9xlO","outputId":"1906487a-da73-45b1-900d-c6e4e7ddca7c","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764799845198,"user_tz":-330,"elapsed":42,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33\n"," 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50]\n"]}],"source":["arr = np.arange(10, 51)\n","print(arr)"]},{"cell_type":"markdown","metadata":{"id":"dMw4V2L79xlO"},"source":["#### Create an array of all the even integers from 10 to 50"]},{"cell_type":"code","execution_count":12,"metadata":{"id":"4lK-5SQV9xlO","outputId":"1fe75fe9-4b89-439c-fe59-b01650fc2bdd","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764799914432,"user_tz":-330,"elapsed":261,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50]\n"]}],"source":["arr = np.arange(10, 51, 2)\n","print(arr)"]},{"cell_type":"markdown","metadata":{"id":"g__F0rB39xlP"},"source":["#### Create a 3x3 matrix with values ranging from 0 to 8"]},{"cell_type":"code","execution_count":14,"metadata":{"id":"MmVXCn0K9xlP","outputId":"86164891-a5bd-4017-b8eb-22af678e34e5","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764799942989,"user_tz":-330,"elapsed":39,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[[0 1 2]\n"," [3 4 5]\n"," [6 7 8]]\n"]}],"source":["arr = np.array([[0, 1, 2],\n"," [3, 4, 5],\n"," [6, 7, 8]])\n","print(arr)"]},{"cell_type":"markdown","metadata":{"id":"4YfT0aLo9xlP"},"source":["#### Create a 3x3 identity matrix"]},{"cell_type":"code","execution_count":15,"metadata":{"id":"UHa42UpQ9xlP","outputId":"3085ea7a-d88e-4ab7-e208-3b93bb1a555d","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764799970723,"user_tz":-330,"elapsed":498,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[[1. 0. 0.]\n"," [0. 1. 0.]\n"," [0. 0. 1.]]\n"]}],"source":["arr = np.array([[1., 0., 0.],\n"," [0., 1., 0.],\n"," [0., 0., 1.]])\n","print(arr)"]},{"cell_type":"markdown","metadata":{"id":"bfwDbjhI9xlP"},"source":["#### Use NumPy to generate a random number between 0 and 1"]},{"cell_type":"code","execution_count":21,"metadata":{"id":"Z0OroZxW9xlP","outputId":"e90f5250-f86d-4257-fa16-9dfd704fe171","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764799997621,"user_tz":-330,"elapsed":42,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[0.37712372]\n"]}],"source":["arr = np.random.rand(1)\n","print(arr)"]},{"cell_type":"markdown","metadata":{"id":"rLW0Jjzp9xlP"},"source":["#### Use NumPy to generate an array of 25 random numbers sampled from a standard normal distribution"]},{"cell_type":"code","execution_count":24,"metadata":{"id":"szluy14n9xlP","outputId":"084e8205-5fd5-4ff1-bcb4-13dfed28d1f5","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764800053501,"user_tz":-330,"elapsed":41,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[ 0.64883883 -1.02814208 0.18764563 -0.46771573 0.98787995 1.75651762\n"," 0.0472966 -0.99449688 1.05693553 -0.70278851 -0.49776517 -0.51602523\n"," 1.37387785 -0.22122738 1.95625493 1.84170804 0.98419617 0.59130158\n"," 1.2722143 0.0817007 -0.46242008 0.69587553 -1.05592108 1.60859874\n"," -0.18719803]\n"]}],"source":["arr = np.random.randn(25)\n","print(arr)"]},{"cell_type":"markdown","metadata":{"id":"_GhI8LYn9xlP"},"source":["#### Create the following matrix:"]},{"cell_type":"code","execution_count":26,"metadata":{"id":"wS1ZBddV9xlP","outputId":"b0d381f6-66c4-4f56-b5b8-d3a78e6f623b","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764800431022,"user_tz":-330,"elapsed":6,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[[0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 ]\n"," [0.11 0.12 0.13 0.14 0.15 0.16 0.17 0.18 0.19 0.2 ]\n"," [0.21 0.22 0.23 0.24 0.25 0.26 0.27 0.28 0.29 0.3 ]\n"," [0.31 0.32 0.33 0.34 0.35 0.36 0.37 0.38 0.39 0.4 ]\n"," [0.41 0.42 0.43 0.44 0.45 0.46 0.47 0.48 0.49 0.5 ]\n"," [0.51 0.52 0.53 0.54 0.55 0.56 0.57 0.58 0.59 0.6 ]\n"," [0.61 0.62 0.63 0.64 0.65 0.66 0.67 0.68 0.69 0.7 ]\n"," [0.71 0.72 0.73 0.74 0.75 0.76 0.77 0.78 0.79 0.8 ]\n"," [0.81 0.82 0.83 0.84 0.85 0.86 0.87 0.88 0.89 0.9 ]\n"," [0.91 0.92 0.93 0.94 0.95 0.96 0.97 0.98 0.99 1. ]]\n"]}],"source":["arr = np.arange(0.01, 1.01, 0.01)\n","matrix = arr.reshape(10, 10)\n","print(matrix)"]},{"cell_type":"markdown","metadata":{"id":"3OqA-QtL9xlQ"},"source":["#### Create an array of 20 linearly spaced points between 0 and 1:"]},{"cell_type":"code","execution_count":29,"metadata":{"id":"FNXTugQ29xlQ","outputId":"75c15d30-5e13-4c24-9aeb-39fa90dcee04","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764800461375,"user_tz":-330,"elapsed":288,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[0. 0.05263158 0.10526316 0.15789474 0.21052632 0.26315789\n"," 0.31578947 0.36842105 0.42105263 0.47368421 0.52631579 0.57894737\n"," 0.63157895 0.68421053 0.73684211 0.78947368 0.84210526 0.89473684\n"," 0.94736842 1. ]\n"]}],"source":["arr = np.linspace(0, 1, 20)\n","print(arr)"]},{"cell_type":"markdown","metadata":{"id":"elx0EaxE9xlQ"},"source":["## Numpy Indexing and Selection\n","\n","Now you will be given a few matrices, and be asked to replicate the resulting matrix outputs:"]},{"cell_type":"markdown","metadata":{"id":"2Tbm9kVf9xlQ"},"source":[]},{"cell_type":"code","execution_count":30,"metadata":{"id":"Ft8P8e249xlQ","outputId":"b57be864-a60e-48af-9e77-0351bbb141ef","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764800524711,"user_tz":-330,"elapsed":26,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[[ 1 2 3 4 5]\n"," [ 6 7 8 9 10]\n"," [11 12 13 14 15]\n"," [16 17 18 19 20]\n"," [21 22 23 24 25]]\n"]}],"source":["arr = np.arange(1, 26)\n","matrix = arr.reshape(5, 5)\n","print(matrix)"]},{"cell_type":"code","execution_count":33,"metadata":{"id":"WrcFkpGL9xlQ","outputId":"deb4a012-0ac2-4d98-9845-5975edd18357","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764800704352,"user_tz":-330,"elapsed":29,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[[12 13 14 15]\n"," [17 18 19 20]\n"," [22 23 24 25]]\n"]}],"source":["arr = np.array([[12, 13, 14, 15],\n"," [17, 18, 19, 20],\n"," [22, 23, 24, 25]])\n","print(arr)"]},{"cell_type":"code","execution_count":34,"metadata":{"id":"rnUSntEa9xlQ","outputId":"51e9ec86-8e06-4ed5-c024-a23edb42f5eb","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764800733540,"user_tz":-330,"elapsed":27,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[20]\n"]}],"source":["arr = np.array([20])\n","print(arr)"]},{"cell_type":"code","execution_count":35,"metadata":{"id":"3DMBC_wp9xlQ","outputId":"fb511dd5-acc1-4618-d7c8-f08fbd725ccc","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764800755526,"user_tz":-330,"elapsed":18,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[{"output_type":"stream","name":"stdout","text":["[[ 2]\n"," [ 7]\n"," [12]]\n"]}],"source":["arr = np.array([[ 2],\n"," [ 7],\n"," [12]])\n","print(arr)"]},{"cell_type":"code","execution_count":null,"metadata":{"id":"pGjD4HUK9xlQ","outputId":"effd7b9d-3e8e-4a0f-b892-24826c622ad6"},"outputs":[{"data":{"text/plain":["array([21, 22, 23, 24, 25])"]},"execution_count":54,"metadata":{},"output_type":"execute_result"}],"source":[]},{"cell_type":"code","execution_count":null,"metadata":{"id":"dqsdpxUo9xlR","outputId":"cf3f588d-ec6d-4bde-cd0b-d2a7cc5e3596"},"outputs":[{"data":{"text/plain":["array([[16, 17, 18, 19, 20],\n"," [21, 22, 23, 24, 25]])"]},"execution_count":49,"metadata":{},"output_type":"execute_result"}],"source":[]},{"cell_type":"markdown","metadata":{"collapsed":true,"id":"6vtHuVJU9xlf"},"source":["# Great Job!"]}],"metadata":{"kernelspec":{"display_name":"Python 3 (ipykernel)","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.12"},"colab":{"provenance":[{"file_id":"1uvwMRRqMFNlaYoWGT6JhFghskgPy9dzJ","timestamp":1764799504520},{"file_id":"1PacBskAxI7FPP4LIyB_3MysbL8ArUHsV","timestamp":1764745354238},{"file_id":"19ZajGBzqADvFnQ0kzbkad_udXeAh26pj","timestamp":1731497620277}]}},"nbformat":4,"nbformat_minor":0} \ No newline at end of file diff --git a/Assignment 1/Ninaad_Assignment-1/Ninaad_Assignment1_Matplotlib.ipynb b/Assignment 1/Ninaad_Assignment-1/Ninaad_Assignment1_Matplotlib.ipynb new file mode 100644 index 00000000..0930f48f --- /dev/null +++ b/Assignment 1/Ninaad_Assignment-1/Ninaad_Assignment1_Matplotlib.ipynb @@ -0,0 +1,454 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "id": "_sfWZU_eST2O" + }, + "source": [ + "**NOTE: ALL THE COMMANDS FOR PLOTTING A FIGURE SHOULD ALL GO IN THE SAME CELL. SEPARATING THEM OUT INTO MULTIPLE CELLS MAY CAUSE NOTHING TO SHOW UP.**\n", + "\n", + "# Exercises\n", + "\n", + "Follow the instructions to recreate the plots using this data:\n", + "\n", + "## Data" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "id": "l0eZ10dLST2X" + }, + "outputs": [], + "source": [ + "import numpy as np\n", + "x = np.arange(0,100)\n", + "y = x*2\n", + "z = x**2" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "veY4-lsGST2c" + }, + "source": [ + "**Import matplotlib.pyplot as plt**" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "id": "tAOmEcNKST2e" + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "5j_39gsVST2f" + }, + "source": [ + "## Exercise 1\n", + "\n", + "**Follow along with these steps**\n", + "* Create a figure object called fig using plt.figure()\n", + "* Use add_axes to add an axis to the figure canvas at [0,0,1,1]. Call this new axis ax.\n", + "* Plot (x,y) on that axes and set the labels and titles to match the plot below:" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": { + "id": "03Ts4r5SST2g", + "outputId": "383a78eb-1fba-4bd4-8c17-df7d16ca38a0", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 582 + } + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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gsMy59Se1q5dawwcONBwuVxG//79jd/+9rcB+30+n/Hoo48a6enphsvlMkaPHm1UV1ebNFq0xOPxGA888IDRu3dv49xzzzX69u1r/PznPze8Xq//GM6p9W3atKnZz9EZM2YYhtG6c3j06FFj2rRpxnnnnWckJSUZd955p3H8+PGwjDfGML617A0AAAAAPzrLAAAAQAiEZQAAACAEwjIAAAAQAmEZAAAACIGwDAAAAIRAWAYAAABCICwDAAAAIRCWAQAAgBAIywAAAEAIhGUAAAAgBMIyAAAAEAJhGQCizOeff66MjAz96le/8m/bunWr4uPjtWHDBhNHBgDWE2MYhmH2IAAAkfWf//mfys/P19atW3XJJZdoyJAhuummmzR//nyzhwYAlkJYBoAoVVBQoDfeeEPDhw/Xrl27VFlZKZfLZfawAMBSCMsAEKW++uorDRw4UAcOHNCOHTuUk5Nj9pAAwHLoLANAlNq7d68OHjwon8+nffv2mT0cALAkriwDQBRqbGzUFVdcoSFDhuiSSy7RCy+8oF27diktLc3soQGApRCWASAKPfjgg/rzn/+sd999V+edd56uvvpqud1urVu3zuyhAYClUMMAgChTVlamF154QX/84x+VlJSk2NhY/fGPf9Sbb76pxYsXmz08ALAUriwDAAAAIXBlGQAAAAiBsAwAAACEQFgGAAAAQiAsAwAAACEQlgEAAIAQCMsAAABACIRlAAAAIATCMgAAABACYRkAAAAIgbAMAAAAhEBYBgAAAEL4PyE0/9p/e6n4AAAAAElFTkSuQmCC\n" + }, + "metadata": {} + } + ], + "source": [ + "\n", + "fig = plt.figure()\n", + "ax = fig.add_axes([0, 0, 1, 1])\n", + "\n", + "\n", + "ax.plot(x, y)\n", + "ax.set_xlabel('x')\n", + "ax.set_ylabel('y')\n", + "ax.set_title('title')\n", + "\n", + "plt.show()\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "I8mFrIGwST2i" + }, + "source": [ + "## Exercise 2\n", + "**Create a figure object and put two axes on it, ax1 and ax2. Located at [0,0,1,1] and [0.2,0.5,.2,.2] respectively.**" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": { + "id": "D4nUfU26ST2k", + "outputId": "e86c492e-1b80-430a-d7f0-4aa3716f856b", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 546 + } + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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CcIXAIAkCF8AAJIgfAEASILwBQAgCcIXAIAkCF8AAJIgfAEASMKQwnf58uUxceLEKCkpierq6ti6dev7rn/kkUfivPPOi5KSkrjoootiw4YNQxoWAACGKu/wXbt2bTQ0NERjY2Ns3749qqqqoq6uLvbs2TPo+i1btsSVV14Z11xzTezYsSNmz54ds2fPjmefffaIhwcAgMNVkGVZls8J1dXVcckll8R9990XERF9fX1RWVkZ119/fSxatOig9fX19dHd3R2PP/54/7FLL700Jk2aFCtWrDis1+zq6oqysrLo7OyM0tLSfMYFAOA4NBz9d0I+i3t6emLbtm2xePHi/mOFhYVRW1sbLS0tg57T0tISDQ0NA47V1dXFunXrDvk6Bw4ciAMHDvR/3dnZGRHv/AsAAODD793uy/Me7fvKK3z37dsXvb29UV5ePuB4eXl5PP/884Oe097ePuj69vb2Q75OU1NT3HHHHQcdr6yszGdcAACOc3/605+irKzsqDxXXuE7UhYvXjzgLvH+/fvjjDPOiLa2tqN24Rw/urq6orKyMnbv3u2tLgmy/2mz/2mz/2nr7OyM008/PU499dSj9px5he/YsWOjqKgoOjo6Bhzv6OiIioqKQc+pqKjIa31ERC6Xi1wud9DxsrIy/+EnrLS01P4nzP6nzf6nzf6nrbDw6H36bl7PVFxcHFOmTInm5ub+Y319fdHc3Bw1NTWDnlNTUzNgfUTEpk2bDrkeAACGQ95vdWhoaIi5c+fG1KlTY9q0abFs2bLo7u6OefPmRUTEnDlzYsKECdHU1BQRETfccEPMmDEjli5dGjNnzow1a9bE008/HQ888MDRvRIAAHgfeYdvfX197N27N5YsWRLt7e0xadKk2LhxY/83sLW1tQ24JT19+vR46KGH4rbbbotbbrklPvnJT8a6deviwgsvPOzXzOVy0djYOOjbH/jws/9ps/9ps/9ps/9pG479z/tzfAEA4Hh09N4tDAAAxzDhCwBAEoQvAABJEL4AACThmAnf5cuXx8SJE6OkpCSqq6tj69at77v+kUceifPOOy9KSkrioosuig0bNozQpAyHfPZ/5cqVcfnll8eYMWNizJgxUVtb+4H/vXBsy/fX/7vWrFkTBQUFMXv27OEdkGGV7/7v378/FixYEOPGjYtcLhef+tSn/D/gOJbv/i9btizOPffcOOmkk6KysjIWLlwYf/nLX0ZoWo6WJ598MmbNmhXjx4+PgoKCWLdu3Qees3nz5rj44osjl8vFOeecE6tXr87/hbNjwJo1a7Li4uJs1apV2W9+85vs2muvzT760Y9mHR0dg67/9a9/nRUVFWXf/va3s9/+9rfZbbfdlp144onZM888M8KTczTku/9XXXVVtnz58mzHjh3Zc889l/3DP/xDVlZWlv3hD38Y4ck5GvLd/3ft2rUrmzBhQnb55ZdnX/rSl0ZmWI66fPf/wIED2dSpU7MvfOEL2VNPPZXt2rUr27x5c9ba2jrCk3M05Lv/P/7xj7NcLpf9+Mc/znbt2pU98cQT2bhx47KFCxeO8OQcqQ0bNmS33npr9uijj2YRkT322GPvu37nzp3ZySefnDU0NGS//e1vs+9+97tZUVFRtnHjxrxe95gI32nTpmULFizo/7q3tzcbP3581tTUNOj6L3/5y9nMmTMHHKuurs7+6Z/+aVjnZHjku//v9fbbb2ennHJK9sMf/nC4RmQYDWX/33777Wz69OnZgw8+mM2dO1f4Hsfy3f/vfe972VlnnZX19PSM1IgMo3z3f8GCBdnf/M3fDDjW0NCQXXbZZcM6J8PrcML3pptuyj796U8POFZfX5/V1dXl9Vqj/laHnp6e2LZtW9TW1vYfKywsjNra2mhpaRn0nJaWlgHrIyLq6uoOuZ5j11D2/73eeOONeOutt+LUU08drjEZJkPd/zvvvDNOO+20uOaaa0ZiTIbJUPb/Zz/7WdTU1MSCBQuivLw8Lrzwwrj77rujt7d3pMbmKBnK/k+fPj22bdvW/3aInTt3xoYNG+ILX/jCiMzM6Dla7Zf3T2472vbt2xe9vb39P/ntXeXl5fH8888Pek57e/ug69vb24dtTobHUPb/vW6++eYYP378Qb8gOPYNZf+feuqp+MEPfhCtra0jMCHDaSj7v3PnzvjlL38ZX/3qV2PDhg3x4osvxje+8Y146623orGxcSTG5igZyv5fddVVsW/fvvjsZz8bWZbF22+/Hdddd13ccsstIzEyo+hQ7dfV1RVvvvlmnHTSSYf1PKN+xxeOxD333BNr1qyJxx57LEpKSkZ7HIbZa6+9FldffXWsXLkyxo4dO9rjMAr6+vritNNOiwceeCCmTJkS9fX1ceutt8aKFStGezRGwObNm+Puu++O+++/P7Zv3x6PPvporF+/Pu66667RHo3jxKjf8R07dmwUFRVFR0fHgOMdHR1RUVEx6DkVFRV5refYNZT9f9d3vvOduOeee+IXv/hFfOYznxnOMRkm+e7/73//+3jppZdi1qxZ/cf6+voiIuKEE06IF154Ic4+++zhHZqjZii//seNGxcnnnhiFBUV9R87//zzo729PXp6eqK4uHhYZ+boGcr+33777XH11VfH/PnzIyLioosuiu7u7vja174Wt956axQWup/3YXWo9istLT3su70Rx8Ad3+Li4pgyZUo0Nzf3H+vr64vm5uaoqakZ9JyampoB6yMiNm3adMj1HLuGsv8REd/+9rfjrrvuio0bN8bUqVNHYlSGQb77f95558UzzzwTra2t/Y8vfvGLccUVV0Rra2tUVlaO5PgcoaH8+r/sssvixRdf7P8DT0TE7373uxg3bpzoPc4MZf/feOONg+L23T8EvfM9UnxYHbX2y+/77obHmjVrslwul61evTr77W9/m33ta1/LPvrRj2bt7e1ZlmXZ1VdfnS1atKh//a9//evshBNOyL7zne9kzz33XNbY2OjjzI5j+e7/PffckxUXF2c/+clPsldeeaX/8dprr43WJXAE8t3/9/KpDse3fPe/ra0tO+WUU7J//ud/zl544YXs8ccfz0477bTsW9/61mhdAkcg3/1vbGzMTjnllOx///d/s507d2Y///nPs7PPPjv78pe/PFqXwBC99tpr2Y4dO7IdO3ZkEZHde++92Y4dO7KXX345y7IsW7RoUXb11Vf3r3/348z+9V//NXvuueey5cuXH78fZ5ZlWfbd7343O/3007Pi4uJs2rRp2f/93//1/7MZM2Zkc+fOHbD+4Ycfzj71qU9lxcXF2ac//els/fr1IzwxR1M++3/GGWdkEXHQo7GxceQH56jI99f//0/4Hv/y3f8tW7Zk1dXVWS6Xy84666zs3/7t37K33357hKfmaMln/996663sm9/8Znb22WdnJSUlWWVlZfaNb3wj+/Of/zzyg3NEfvWrXw36//J393vu3LnZjBkzDjpn0qRJWXFxcXbWWWdl//3f/5336xZkmb8bAADgw2/U3+MLAAAjQfgCAJAE4QsAQBKELwAASRC+AAAkQfgCAJAE4QsAQBKELwAASRC+AAAkQfgCAJAE4QsAQBKELwAASfh/7bTpWMlLc9UAAAAASUVORK5CYII=\n" + }, + "metadata": {} + } + ], + "source": [ + "fig = plt.figure()\n", + "ax1 = fig.add_axes([0,0,1,1])\n", + "ax2 = fig.add_axes([0.2,0.5,0.2,0.2])\n", + "x = np.array([0.0, 0.2, 0.4, 0.6, 0.8, 1.0])\n", + "y = np.array([0.0, 0.2, 0.4, 0.6, 0.8, 1.0])\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "SK8p_A2NST2l" + }, + "source": [ + "**Now plot (x,y) on both axes. And call your figure object to show it.**" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": { + "id": "m_2gVMryST2m", + "outputId": "777289e7-79b3-43bd-982e-43ec1d4ea237", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 540 + } + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": {} + } + ], + "source": [ + "fig = plt.figure()\n", + "ax1 = fig.add_axes([0,0,1,1])\n", + "ax2 = fig.add_axes([0.2,0.5,0.2,0.2])\n", + "x = np.array([0.0, 0.2, 0.4, 0.6, 0.8, 1.0])\n", + "y = np.array([0.0, 0.2, 0.4, 0.6, 0.8, 1.0])\n", + "ax1.plot(x,y, color = 'red')\n", + "ax2.plot(x,y, color = 'red')\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "hYaQZfbFST2n" + }, + "source": [ + "## Exercise 3\n", + "\n", + "**Create the plot below by adding two axes to a figure object at [0,0,1,1] and [0.2,0.5,.4,.4]**" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": { + "id": "BuiYx0xbST2o", + "outputId": "5d11d915-8280-424c-ce37-78221006c6f7", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 546 + } + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": {} + } + ], + "source": [ + "fig = plt.figure()\n", + "ax1 = fig.add_axes([0,0,1,1])\n", + "ax2 = fig.add_axes([0.2,0.5,0.4,0.4])" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "SeRSiZDGST2o" + }, + "source": [ + "**Now use x,y, and z arrays to recreate the plot below. Notice the xlimits and y limits on the inserted plot:**" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "metadata": { + "id": "jhy7t5AKST2p", + "outputId": "ec90d7ff-bd97-4301-945e-25d4cd5b8f5d", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 560 + } + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAt0AAAIfCAYAAACsF2BNAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAZnxJREFUeJzt3XlcFfX+x/E3uyvgkiCJRrdyX0rLSLNSEtO8LtRNpTSzvCmaS3WVyqWyXFq1XMpMrTTNm1ZqaeaCvwo3zNxyqSw1BUqF4xKIML8/vtej5BIohznn8Ho+HufBnJlhzmec0HfDZ75fH8uyLAEAAABwGV+7CwAAAAC8HaEbAAAAcDFCNwAAAOBihG4AAADAxQjdAAAAgIsRugEAAAAXI3QDAAAALkboBgAAAFzM3+4CvEVeXp4OHDig8uXLy8fHx+5yAAAA4GKWZeno0aOKiIiQr+/F72UTuovIgQMHFBkZaXcZAAAAKGb79u1TtWrVLroPobuIlC9fXpL5Qw8ODra5GgAAALiaw+FQZGSkMwdeDKG7iJxuKQkODiZ0AwAAlCAFaS3mQUoAAADAxQjdAAAAgIsRugEAAAAXI3QDAAAALkboBgAAAFyM0A0AAAC4GKEbAAAAcDFCNwAAAOBihG4AAADAxQjdAAAAgIsRugEAAAAXI3QDAAAALkboBgAAAFyM0A0AAAC4mK2he/Xq1Wrfvr0iIiLk4+OjTz75JN92y7I0fPhwVa1aVaVLl1ZMTIx2796db5/Dhw8rPj5ewcHBCg0NVa9evXTs2LF8+2zevFm33nqrSpUqpcjISI0bN+6cWubNm6datWqpVKlSql+/vj7//PMiP18AAACUTLaG7uPHj6thw4aaOHHiebePGzdOEyZM0JQpU7R27VqVLVtWsbGxysrKcu4THx+vbdu2admyZVq0aJFWr16t3r17O7c7HA61bt1aNWrUUEpKil566SWNHDlSb7/9tnOfb7/9Vl27dlWvXr303XffqWPHjurYsaO2bt3qupMHAABAieFjWZZldxGS5OPjowULFqhjx46SzF3uiIgIPf7443riiSckSZmZmQoLC9OMGTPUpUsX/fDDD6pTp47Wr1+vJk2aSJKWLFmitm3bav/+/YqIiNDkyZP19NNPKzU1VYGBgZKkoUOH6pNPPtGOHTskSffdd5+OHz+uRYsWOeu5+eab1ahRI02ZMqVA9TscDoWEhCgzM1PBwcFF9ccCAAAAN1WY/Oe2Pd179uxRamqqYmJinOtCQkLUtGlTJScnS5KSk5MVGhrqDNySFBMTI19fX61du9a5T4sWLZyBW5JiY2O1c+dOHTlyxLnP2Z9zep/TnwMAAAD3Nnas9MYbUl6e3ZWcn7/dBVxIamqqJCksLCzf+rCwMOe21NRUValSJd92f39/VaxYMd8+UVFR5xzj9LYKFSooNTX1op9zPtnZ2crOzna+dzgchTk9AAAAFJHvvpOeeUY6dUqqWVNq3druis7ltne63d3o0aMVEhLifEVGRtpdEgAAQIlz8qT04IMmcMfFSXfeaXdF5+e2oTs8PFySlJaWlm99Wlqac1t4eLjS09PzbT916pQOHz6cb5/zHePsz7jQPqe3n09iYqIyMzOdr3379hX2FAEAAHCZRo2SNm+WKleWJk2SfHzsruj83DZ0R0VFKTw8XMuXL3euczgcWrt2raKjoyVJ0dHRysjIUEpKinOfFStWKC8vT02bNnXus3r1auXk5Dj3WbZsmWrWrKkKFSo49zn7c07vc/pzzicoKEjBwcH5XgAAACg+KSnSiy+a5UmTpL90HbsVW0P3sWPHtGnTJm3atEmSeXhy06ZN2rt3r3x8fDRw4ECNGjVKn332mbZs2aLu3bsrIiLCOcJJ7dq11aZNGz3yyCNat26dvvnmG/Xr109dunRRRESEJKlbt24KDAxUr169tG3bNs2dO1fjx4/X4MGDnXUMGDBAS5Ys0SuvvKIdO3Zo5MiR2rBhg/r161fcfyQAAAAogOxs01aSmyvde695uTXLRitXrrQknfPq0aOHZVmWlZeXZw0bNswKCwuzgoKCrFatWlk7d+7Md4xDhw5ZXbt2tcqVK2cFBwdbPXv2tI4ePZpvn++//95q3ry5FRQUZF155ZXWmDFjzqnlo48+sq677jorMDDQqlu3rrV48eJCnUtmZqYlycrMzCzcHwIAAAAK7amnLEuyrCuusKz0dHtqKEz+c5txuj0d43QDAAAUj/Xrpehoc5f7v/81D1DawSvG6QYAAAD+KivrTFtJly72Be7CInQDAADAY4wcKW3fbh6afOMNu6spOEI3gBLll19+kY+PzwVfp82bN0+NGzdW6dKlVblyZd1///367bffzjneihUrdOutt6ps2bIKDQ1Vhw4d9MMPP+TbZ+TIkfLx8dGuXbt0//33KyQkRFdccYWGDRsmy7K0b98+dejQQcHBwQoPD9crr7zi8j8HAPBEa9ZIL71klqdMMcMEegq3nZESAFzhiiuu0Pvvv59vXU5OjgYNGqTAwEBJ0owZM9SzZ0/deOONGj16tNLS0jR+/Hh98803+u677xQaGipJ+uqrr3TXXXfp6quv1siRI/Xnn3/qjTfeULNmzbRx40ZdddVV+T7nvvvuU+3atTVmzBgtXrxYo0aNUsWKFfXWW2+pZcuWGjt2rGbNmqUnnnhCN954o1q0aFEcfyQA4BFOnJB69DDTvN9/v9Spk90VFZKrn+osKRi9BPBcffv2tfz8/KwVK1ZYJ0+etKpUqWLVq1fP+vPPP537LFq0yJJkDR8+3LmuUaNGVpUqVaxDhw45133//feWr6+v1b17d+e6ESNGWJKs3r17O9edOnXKqlatmuXj45NvRKUjR45YpUuXdo7iBAAwBg40o5VERFjW4cN2V2MUJv/RXgKgRHvvvfc0adIkjRs3TnfccYc2bNig9PR09e3bV6VKlXLu165dO9WqVUuLFy+WJB08eFCbNm3Sgw8+qIoVKzr3a9Cgge688059/vnn53zWww8/7Fz28/NTkyZNZFmWevXq5VwfGhqqmjVr6ueff3bF6QKAR0pKkl5/3Sy/8470v/kNPQqhG0CJtWnTJj366KPq2rWrc8KsX3/9VZJUs2bNc/avVauWc/vF9qtdu7b++OMPHT9+PN/66tWr53sfEhKiUqVKqfJfmhJDQkJ05MiRSzwrAPAux45JPXua5Ycflu66y956LhWhG0CJdOTIEcXFxem6667TO++8Uyyf6efnV6B1kmQxhQIASJKefFLas0eqXl3y5OfMCd0ASpy8vDzFx8crIyNDCxYsUJkyZZzbatSoIUnauXPnOd+3c+dO5/aL7bdjxw5VrlxZZcuWdUX5AFBifPmlGaVEkqZPlzx5/kFCN4AS59lnn9XSpUv14YcfKioqKt+2Jk2aqEqVKpoyZYqys7Od67/44gv98MMPateunSSpatWqatSokWbOnKmMjAznflu3btWXX36ptm3bFsu5AIC3ysiQTj/y0q+f1LKlreVcNoYMBFCibNmyRc8//7xatGih9PR0ffDBB/m233///Ro7dqx69uyp2267TV27dnUOGXjVVVdp0KBBzn1feukl3XXXXYqOjlavXr2cQwaGhIRo5MiRxXxmAOBdBg2S9u+XrrlGGjPG7mouH6EbQIly6NAhWZalpKQkJSUlnbP9/vvv14MPPqgyZcpozJgxGjJkiMqWLatOnTpp7NixzjG6JSkmJkZLlizRiBEjNHz4cAUEBOi2227T2LFjz7mDDgAouM8+k2bMkHx8zFdv6NbzsXhap0g4HA6FhIQoMzNTwZ7ccAQAAGCj33+X6tWT0tPNQ5Tjxtld0YUVJv/R0w0AAAC3YFlSnz4mcNerJz33nN0VFR1CNwAAANzC7NnSxx9L/v7Se+9JZ81R5vEI3fB6I0eOlI+PT75XrVq1nNuzsrKUkJCgSpUqqVy5coqLi1NaWpqNFQMAUPL89psZpUSSRoyQrr/e3nqKGqEbJULdunV18OBB5+vrr792bhs0aJAWLlyoefPmKSkpSQcOHFDnzp1trBYAgJLFsszwgBkZ0k03SUOH2l1R0WP0EpQI/v7+Cg8PP2d9Zmampk2bptmzZ6vl/wYAnT59umrXrq01a9bo5ptvLu5SAQAocd56S1q61LSTzJxp2ku8DXe6USLs3r1bERERuvrqqxUfH6+9e/dKklJSUpSTk6OYmBjnvrVq1VL16tWVnJxsV7kAAJQYP/0kPfGEWR4zRjqrA9SreOH/RwD5NW3aVDNmzFDNmjV18OBBPfvss7r11lu1detWpaamKjAwMN/Yy5IUFham1NTUCx4zOzs732yFeXl5Onz4sCpVqiQfHx9XnQoAN2RZlo4ePaqIiAj5+nIvCyiM3Fype3fp+HHp9tul/v3trsh1CN3wenfddZdzuUGDBmratKlq1Kihjz76SKVLl76kY44ePVrPPvtsUZUIwAvs27dP1apVs7sMwKOMGyd9+60UHGwmwfHm/28ldKPECQ0N1XXXXacff/xRd955p06ePKmMjIx8d7vT0tLO2wN+WmJiogYPHux8n5mZqerVq2vfvn1MjgSUMA6HQ5GRkSpfvrzdpQAeZdMmM0qJJE2YINWoYWs5LkfoRolz7Ngx/fTTT3rggQfUuHFjBQQEaPny5YqLi5Mk7dy5U3v37lV0dPQFjxEUFKSgoKBz1gcHBxO6gRKK1jKg4LKypAcekHJypE6dTIuJtyN0w+s98cQTat++vWrUqKEDBw5oxIgR8vPzU9euXRUSEqJevXpp8ODBqlixooKDg9W/f39FR0czcgkAAC4ybJi0datUpYoZuaQk/D8roRteb//+/eratasOHTqkK664Qs2bN9eaNWt0xRVXSJJee+01+fr6Ki4uTtnZ2YqNjdWkSZNsrhoAAO+UlCS98opZfucd6X//HHs9H8uyLLuL8AYOh0MhISHKzMykvaAE4voDJRc//0DBORxSgwbSr7+ayXDeecfuii5PYX7+vfgZUQAAALiTgQNN4I6Kkl57ze5qihehGwAAAC736afS9Ommf3vmTKmkDfhD6AYAAIBLpaZKDz9slp98Urr1VnvrsQOhGwAAAC5jWaZ/+48/pIYNpeees7siexC6AQAA4DJvvy19/rkUFCR98IH5WhIRugEAAOASu3ZJpydwHj1aqlfP3nrsROgGAABAkcvJMbNOnjghtWwpDRhgd0X2InQDAACgyL3wgrRunRQaKs2YIfmW8NRZwk8fAAAARW3tWmnUKLM8aZIUGWlvPe6A0A0AAIAic/y4aSvJzZW6djUvELoBAABQhAYPlnbvlqpVkyZOtLsa90HoBgAAQJH49FMzRKCPj/Tee1KFCnZX5D4I3QAAALhsZ886+fjj0h132FuPuyF0AwAA4LJYltSz55lZJ08/RIkzCN0AAAC4LBMnSkuWSKVKSbNmldxZJy+G0A0AAIBLtn279OSTZnncOKluXXvrcVeEbgAAAFyS7GwpPl7KypJiY6V+/eyuyH0RugEAAHBJhg+XNm2SKlWSpk83o5bg/AjdAAAAKLQVK6SXXjLLU6dKVavaW4+7I3QDAACgUA4dkrp3N6OWPPKI1KmT3RW5P0I3AAAACsyypH//W/rtN+m666TXXrO7Is9A6AYAAECBvfuu9PHHUkCANHu2VLas3RV5BkI3AAAACmTXLumxx8zyqFFS48b21uNJCN0AAAD4WydPSt26SSdOmCnen3jC7oo8C6EbAAAAf2vECCklRapQQXrvPcmXFFko/HEBAADgolatksaONctTp0rVqtlajkcidAMAAOCCDh+WHnjAjFrSq5cUF2d3RZ6J0A0AAIDzsizp4Yel/fvN8ICvv253RZ6L0A0AAIDzmjpVWrDADA/44YdSuXJ2V+S5CN0AAAA4x/bt0sCBZnn0aOmGG2wtx+MRugEAAJBPVpYZHvDPP6XWraVBg+yuyPMRugEAAJDP0KHS999LV1whzZzJ8IBFgT9CAAAAOH3+uTR+vFmePl0KD7e3Hm9B6AYAAIAkKTVVevBBs/zYY1K7draW41UI3QAAAFBentS9u/T771KDBmcmw0HRIHQDAABAr7wiLVsmlS5thgcsVcruirwLoRsAAKCEW79eeuopszx+vFSnjr31eCNCN0qcMWPGyMfHRwNPDz4q6fbbb5ePj0++16OPPmpfkQAAFBOHQ+rSRTp1Srr3XjMDJYqev90FAMVp/fr1euutt9SgQYNztj3yyCN67rnnnO/LlClTnKUBAFDsLEvq00f6+WepRg3p7bclHx+7q/JO3OlGiXHs2DHFx8dr6tSpqlChwjnby5Qpo/DwcOcrODjYhioBACg+778vzZ4t+fmZr6GhdlfkvQjdKDESEhLUrl07xcTEnHf7rFmzVLlyZdWrV0+JiYk6ceJEMVcIwNMcP256YQFPtGuX1LevWX72WemWW+ytx9vRXoISYc6cOdq4caPWX+Bfx27duqlGjRqKiIjQ5s2bNWTIEO3cuVPz588/7/7Z2dnKzs52vnc4HC6pG4D7SE2VNm3K/9q1y/x6HvA02dlS167mfxxvv93MQAnXInTD6+3bt08DBgzQsmXLVOoC4x/17t3buVy/fn1VrVpVrVq10k8//aR//OMf5+w/evRoPfvssy6rGYB9cnOl3bvPDdhpaeff/4orzLjGgCcZOlTauFGqVEn64APTXgLX8rEs/h+9KDgcDoWEhCgzM5NeYDfzySefqFOnTvI762+U3Nxc+fj4yNfXV9nZ2fm2SdLx48dVrlw5LVmyRLGxsecc83x3uiMjI7n+gIc5flzasiV/uN6yRTpfd5mPj1SzptSo0ZlXw4ZSmTL8/Q/PsnCh9M9/muXPPpPat7e3Hk9WmPzHnW54vVatWmnLli351vXs2VO1atXSkCFDzgnckrRp0yZJUtWqVc97zKCgIAUFBRV5rQBcpzDtIWXKmBn5zg7Y9epJZcueuy/dZfAk+/efmeZ94EACd3EidMPrlS9fXvXq1cu3rmzZsqpUqZLq1aunn376SbNnz1bbtm1VqVIlbd68WYMGDVKLFi3OO7QgAPdW2PaQ8PD84bpRI+maa/h1O7zPqVNSt27S4cNS48bSmDF2V1SyELpR4gUGBuqrr77S66+/ruPHjysyMlJxcXF65pln7C4NwN8oivaQ8PDirBiwz3PPSf/3f1L58tKcORK/sC1ehG6USKtWrXIuR0ZGKikpyb5iABSIq9pDgJJgxQpp1Ciz/NZb5rc5KF6EbgCAW6E9BCha6elSfLz5H9RevcxQgSh+hG4AgG1oDwFcKy/PPDiZmirVri2NH293RSUXoRsAUCxoDwGK38svS198IZUqJc2dy8+Qndx6Gvjc3FwNGzZMUVFRKl26tP7xj3/o+eef19lDi1uWpeHDh6tq1aoqXbq0YmJitHv37nzHOXz4sOLj4xUcHKzQ0FD16tVLx44dy7fP5s2bdeutt6pUqVKKjIzUuHHjiuUcAcDb5OZKO3aYB7WGDpXatDF3o6tWle66S0pMNP/479xpAnd4uNln6FDzPTt2mGH4kpOlyZOlf/9batqUsAAU1rffSk89ZZbHj5fq17e3npLOre90jx07VpMnT9bMmTNVt25dbdiwQT179lRISIgee+wxSdK4ceM0YcIEzZw5U1FRURo2bJhiY2O1fft25+yD8fHxOnjwoJYtW6acnBz17NlTvXv31uzZsyWZgc1bt26tmJgYTZkyRVu2bNFDDz2k0NDQfDMVAgDyO3Hi3PaQzZtpDwHsdviw1KWL+Z/gLl2kRx6xuyK49YyUd999t8LCwjRt2jTnuri4OJUuXVoffPCBLMtSRESEHn/8cT3xxBOSpMzMTIWFhWnGjBnq0qWLfvjhB9WpU0fr169XkyZNJElLlixR27ZttX//fkVERGjy5Ml6+umnlZqaqsDAQEnS0KFD9cknn2jHjh0FqpUZKUs2rj9KgrPbQ77//kx7SF7eufuWpPYQfv7hbixL6tjRzDZ5zTVSSorEf5qu4TUzUt5yyy16++23tWvXLl133XX6/vvv9fXXX+vVV1+VJO3Zs0epqamKiYlxfk9ISIiaNm2q5ORkdenSRcnJyQoNDXUGbkmKiYmRr6+v1q5dq06dOik5OVktWrRwBm5Jio2N1dixY3XkyBFVqFDhnNrONw04AHgDRg8BPNvrr5vAHRgoffQRgdtduHXoHjp0qBwOh2rVqiU/Pz/l5ubqhRdeUHx8vCQpNTVVkhQWFpbv+8LCwpzbUlNTVaVKlXzb/f39VbFixXz7REVFnXOM09vOF7pHjx6tZ599tgjOEgDsQ3sI4F3WrZOGDDHLr74qXX+9vfXgDLcO3R999JFmzZql2bNnq27dutq0aZMGDhyoiIgI9ejRw9baEhMTNXjwYOd7h8OhyMhIGysCgIujPQTwbhkZ0n33STk50j33SH372l0RzubWofvJJ5/U0KFD1aVLF0lS/fr19euvv2r06NHq0aOHwv93eyUtLU1Vq1Z1fl9aWpoaNWokSQoPD1d6enq+4546dUqHDx92fn94eLjS/vJ709Pvwy9wCycoKEhBzJ8KwA3RHgKUPKcnvvnlFykqSpo61fx2Cu7DrUP3iRMn5Oubf1RDPz8/5f3vtkxUVJTCw8O1fPlyZ8h2OBxau3at+vTpI0mKjo5WRkaGUlJS1LhxY0nSihUrlJeXp6ZNmzr3efrpp5WTk6OAgABJ0rJly1SzZs3ztpYAgLugPQSAJL35pjR/vhQQYIbkDA21uyL8lVuH7vbt2+uFF15Q9erVVbduXX333Xd69dVX9dBDD0mSfHx8NHDgQI0aNUrXXnutc8jAiIgIdezYUZJUu3ZttWnTRo888oimTJminJwc9evXT126dFFERIQkqVu3bnr22WfVq1cvDRkyRFu3btX48eP12muv2XXqAHAO2kMAnM/69dLjj5vll16SbrzR3npwfm4dut944w0NGzZMffv2VXp6uiIiIvTvf/9bw4cPd+7zn//8R8ePH1fv3r2VkZGh5s2ba8mSJc4xuiVp1qxZ6tevn1q1aiVfX1/FxcVpwoQJzu0hISH68ssvlZCQoMaNG6ty5coaPnw4Y3QDsAXtIQAK6sgR6V//Mn3cnTtL/5vGBG7Ircfp9iSM01qycf1xqWgP8Xz8/MMuliV16iR9+qnp4964kbaS4uY143QDgDehPQRAURo/3gTuwEBp3jwCt7sjdANAEaM9BICrrV0rPfmkWX71Vel/Y0XAjRG6AeAy0B4CoLgdPmz6uE+dku69l/G4PQWhGwAKiPYQAHbLy5MefFDau1f6xz8Yj9uTELoB4C8upT2kYUMz3TLtIQBc6eWXpYULpaAg08cdEmJ3RSgoQjeAEo32EACeYvVq6amnzPKECeZ/9OE5CN0ASgzaQwB4qrQ0qUsX85u4+++XHnnE7opQWIRuAF6H0UMAeJPcXKlbN+ngQalOHWnKFPq4PRGhG4BHoz0EgLcbOVJascL8pu2//+U3bp6K0A3AY9AeAqCkWbJEGjXKLL/9tlS7tr314NIRugG4HdpDAEDat8/0b0vSo4+aFhN4LkI3AFvRHgIA5zp50kx8c+iQdMMN0muv2V0RLhehG0CxoT0EAArmiSfMVO+hoWY87lKl7K4Il4vQDaDI0R4CAJduzhzpjTfM8vvvS1dfbW89KBqEbgCX5fjxc9tDtmyhPQQALsX27dLDD5vlxETp7rvtrQdFh9ANoMDObg85/dq1S7Ksc/elPQQACufYMemee8zNjJYtpeees7siFCVCN4Bz0B4CAMXLsswskz/8IEVESB9+KPmT0rwKlxMo4WgPAQD7TZxoern9/aWPPpKqVLG7IhQ1QjdQgtAeAgDuZ80aafBgs/zSS1KzZvbWA9cgdANeiPYQAPAM6emmjzsnx4zLPWCA3RXBVQjdgIejPQQAPNOpU1KXLtJvv0m1aknTppm/p+GdCN2AB6E9BAC8xzPPSCtXSuXKSfPnS+XL210RXInQDbgh2kMAwLvNny+NHWuW331Xql3b3nrgeoRuuJUDBw4oIiLCpZ8xZswYJSYmasCAAXr99dclSVlZWXr88cc1Z84cZWdnKzY2VpMmTVJYWJhLa5FoDwGAkmbnTunBB83y4MGmlxvej9ANt1K3bl1NnDhR3bp1c8nx169fr7feeksNGjTIt37QoEFavHix5s2bp5CQEPXr10+dO3fWN998U6SfT3sIAJRsx45JcXHS0aNSixbSmDF2V4TiQuiGW3nhhRf073//WwsWLNBbb72lihUrFtmxjx07pvj4eE2dOlWjRo1yrs/MzNS0adM0e/ZstWzZUpI0ffp01a5dW2vWrNHNN99c6M+iPQQA8FenJ8DZtk2qWlWaO1cKCLC7KhQXQjfcSt++fXXXXXepV69eqlOnjqZOnar27dsXybETEhLUrl07xcTE5AvdKSkpysnJUUxMjHNdrVq1VL16dSUnJxcqdA8aJG3fLm3eTHsIACC/8ePzT4DD3/0lC6EbbicqKkorVqzQm2++qc6dO6t27dry/8tcuBs3bizUMefMmaONGzdq/fr152xLTU1VYGCgQkND860PCwtTamrqeY+XnZ2t7Oxs53uHwyHJPAxzGu0hAIDTkpKkJ54wy6+8IjVvbm89KH6EbrilX3/9VfPnz1eFChXUoUOHc0J3Yezbt08DBgzQsmXLVKpUqSKpb/To0Xr22WfPWT9okNS0Ke0hAIAz9u+X/vUv03oYHy/17293RbADoRtuZ+rUqXr88ccVExOjbdu26Yorrris46WkpCg9PV033HCDc11ubq5Wr16tN998U0uXLtXJkyeVkZGR7253Wlqawi/wu7/ExEQNPj1nr8yd7sjISI0cKQUHX1a5AAAvkp1tRidJTzfthG+/zQQ4JRWhG26lTZs2Wrdund5880117969SI7ZqlUrbdmyJd+6nj17qlatWhoyZIgiIyMVEBCg5cuXKy4uTpK0c+dO7d27V9HR0ec9ZlBQkIKCgoqkPgCA9xo4UFqzRgoNNWNzlyljd0WwC6EbbiU3N1ebN29WtWrViuyY5cuXV7169fKtK1u2rCpVquRc36tXLw0ePFgVK1ZUcHCw+vfvr+jo6EsauQQAAMk85zNlirmz/eGH0tVX210R7ETohltZtmyZLZ/72muvydfXV3FxcfkmxwEA4FJs2CD17WuWn39eatPG3npgPx/LOt+0HCgsh8OhkJAQZWZmKpim3hKH6w+UXPz8469+/11q0kTau1fq0MG0lfj62l0VXKEwP//8JwAAAFBETp0yI5Xs3Stdd500cyaBGwb/GQAAABSRJ5+UVq2SypWTPvlECgmxuyK4C0I3AABAEfjgA+n1183ye+9JtWvbWg7cDKEbAADgMn33nfTII2b5mWekTp3srQfuh9ANAABwGf74w4TsrCypbVtp5Ei7K4I7InQDAABcolOnpPvuk379VbrmGmnWLMnPz+6q4I4I3QAAAJdoyBBpxQqpbFnz4GRoqN0VwV0RugEAAC7B++9Lr75qlmfOlOrWtbceuDdCNwAAQCFt2HDmwcmnn5bi4uytB+6P0A0AAFAIaWnmwcnsbOnuu6XnnrO7IngCQjcAAEABnTwp3XOPtH+/VLOmGZubGSdREPxnAgAAUEADBkhffy0FB0uffsqMkyg4QjcAAEABvP22NGWK5OMjzZ5t7nQDBUXoBgAA+BvffCP162eWR42S2rWztx54HkI3AADARezbJ3XuLOXkSPfeKyUm2l0RPBGhGwAA4AJOnJA6dpTS06UGDaTp0017CVBYhG4AAIDzsCzpoYekjRulypWlzz4zM08Cl4LQDQAAcB5jxkhz50r+/tLHH0s1athdETwZoRsAAOAvFi40M01K0ptvSi1a2FsPPB+hGwAA4Czbtkndupn2kj59pH//2+6K4A0I3QAAAP9z+LDUoYN07Jh0++3S+PF2VwRvQegGAACQGRLwX/+SfvpJuuoqad48KSDA7qrgLQjdAAAAkgYNkpYvNyOUfPqpGbEEKCqEbgAAUOJNnixNnGjG4J41y4zJDRQlQjcAACjRVqyQ+vc3yy+8YHq6gaJG6AYAACXWjz9K99wj5eaaEUuGDrW7IngrQjcAACiRMjOlf/5TOnJEuukm6Z13mOIdrkPoBgAAJU5urtS1q/TDD9KVV0qffCKVLm13VfBmhG4AAFDiPPmk9MUXJmh/+qlUtardFcHbEboBAECJMnWq9NprZnnGDKlxY1vLQQlB6AYAACXGypVS375m+dlnzWQ4QHEgdAMAgBJh924pLk46dcr0cw8bZndFKEkI3QAAwOsdOSLdfbf52rSpNG0aI5WgeBG6AQCAV8vJke69V9q1S4qMZKQS2IPQDQAAvJZlSQMGSMuXS2XLSgsXSuHhdleFkojQDQAAvNaECdLkyaaVZPZsqWFDuytCSUXoBgAAXmnxYmnwYLM8dqyZfRKwC6EbXm/y5Mlq0KCBgoODFRwcrOjoaH3xxRfO7bfffrt8fHzyvR599FEbKwYAXK7vv5e6dJHy8qSHH5aeeMLuilDS+dtdAOBq1apV05gxY3TttdfKsizNnDlTHTp00Hfffae6detKkh555BE999xzzu8pU6aMXeUCAC7TwYNmpJJjx6SWLaVJkxipBPYjdMPrtW/fPt/7F154QZMnT9aaNWucobtMmTIK58kaAPB4J06YNpL9+6WaNaX//lcKCLC7KoD2EpQwubm5mjNnjo4fP67o6Gjn+lmzZqly5cqqV6+eEhMTdeLECRurBABcirw86YEHpA0bpEqVpEWLpAoV7K4KMLjTjRJhy5Ytio6OVlZWlsqVK6cFCxaoTp06kqRu3bqpRo0aioiI0ObNmzVkyBDt3LlT8+fPv+DxsrOzlZ2d7XzvcDhcfg4AgIt7+mlp/nxzZ3vBAumaa+yuCDjD7e90//bbb7r//vtVqVIllS5dWvXr19eGDRuc2y3L0vDhw1W1alWVLl1aMTEx2r17d75jHD58WPHx8QoODlZoaKh69eqlY8eO5dtn8+bNuvXWW1WqVClFRkZq3LhxxXJ+KB41a9bUpk2btHbtWvXp00c9evTQ9u3bJUm9e/dWbGys6tevr/j4eL333ntasGCBfvrppwseb/To0QoJCXG+IiMji+tUAADnMW2aNGaMWX7nHenWW+2tB/grtw7dR44cUbNmzRQQEKAvvvhC27dv1yuvvKIKZ/2uaNy4cZowYYKmTJmitWvXqmzZsoqNjVVWVpZzn/j4eG3btk3Lli3TokWLtHr1avXu3du53eFwqHXr1qpRo4ZSUlL00ksvaeTIkXr77beL9XzhOoGBgbrmmmvUuHFjjR49Wg0bNtT48ePPu2/Tpk0lST/++OMFj5eYmKjMzEzna9++fS6pGwDw9776Sjo96NQzz0jdu9tbD3A+bt1eMnbsWEVGRmr69OnOdVFRUc5ly7L0+uuv65lnnlGHDh0kSe+9957CwsL0ySefqEuXLvrhhx+0ZMkSrV+/Xk2aNJEkvfHGG2rbtq1efvllRUREaNasWTp58qTeffddBQYGqm7dutq0aZNeffXVfOEc3iMvLy9fe8jZNm3aJEmqWrXqBb8/KChIQUFBrigNAFAI27ZJcXHSqVNSt27SWQNRAW7Fre90f/bZZ2rSpInuvfdeValSRddff72mTp3q3L5nzx6lpqYqJibGuS4kJERNmzZVcnKyJCk5OVmhoaHOwC1JMTEx8vX11dq1a537tGjRQoGBgc59YmNjtXPnTh05cuS8tWVnZ8vhcOR7wT0lJiZq9erV+uWXX7RlyxYlJiZq1apVio+P108//aTnn39eKSkp+uWXX/TZZ5+pe/fuatGihRo0aGB36QCAi0hLk9q1kxwOqXlz6d13GRoQ7sutQ/fPP/+syZMn69prr9XSpUvVp08fPfbYY5o5c6YkKTU1VZIUFhaW7/vCwsKc21JTU1WlSpV82/39/VWxYsV8+5zvGGd/xl/R0+s50tPT1b17d9WsWVOtWrXS+vXrtXTpUt15550KDAzUV199pdatW6tWrVp6/PHHFRcXp4ULF9pdNgDgIk6ckNq3l379Vbr2WumTTyR+AQl35tbtJXl5eWrSpIlefPFFSdL111+vrVu3asqUKerRo4ettSUmJmrw6bllZfrCCd7uadq0aRfcFhkZqaSkpGKsBgBwufLypPvvl9avlypWNNO9V6pkd1XAxbn1ne6qVas6h3U7rXbt2tq7d68kOSczSUtLy7dPWlqac1t4eLjS09PzbT916pQOHz6cb5/zHePsz/iroKAg57Tip18AAMD1hgwxQwIGBkqffmrudAPuzq1Dd7NmzbRz585863bt2qUaNWpIMg9VhoeHa/ny5c7tDodDa9eudU58Eh0drYyMDKWkpDj3WbFihfLy8pyjVERHR2v16tXKyclx7rNs2TLVrFkz30gpAADAXhMnSi+/bJanTze93IAncOvQPWjQIK1Zs0YvvviifvzxR82ePVtvv/22EhISJEk+Pj4aOHCgRo0apc8++0xbtmxR9+7dFRERoY4dO0oyd8bbtGmjRx55ROvWrdM333yjfv36qUuXLoqIiJBkJkcJDAxUr169tG3bNs2dO1fjx4/P1z4CAADstXCh9NhjZnnUKDNaCeAp3Lqn+8Ybb9SCBQuUmJio5557TlFRUXr99dcVHx/v3Oc///mPjh8/rt69eysjI0PNmzfXkiVLVKpUKec+s2bNUr9+/dSqVSv5+voqLi5OEyZMcG4PCQnRl19+qYSEBDVu3FiVK1fW8OHDGS4QAAA3sWGD1KWL6ed++GHpqafsrggoHB/Lsiy7i/AGDodDISEhyszMpL+7BOL6AyUXP/+ut2ePdPPNUnq6FBtr7ngHBNhdFVC4n3+3bi8BAAAl25EjUtu2JnA3bCjNm0fghmcidAMAALeUnS116iTt2CFVq2aGBixf3u6qgEtD6AYAAG4nL0/q2VNKSjJBe/Fi6cor7a4KuHSEbgAA4HYSE6UPP5T8/aWPP5YaNLC7IuDyELoBAIBbmThRGjfOLE+bJt15p731AEWB0A0AANzGJ59I/fub5VGjpO7dbS0HKDKEbgAA4BaSk6WuXSXLknr3ZixueBdCNwAAsN2uXVL79lJWltSunWkx8fGxuyqg6BC6AQCArdLTpbvukg4dkpo0kebONQ9QAt6E0A0AAGxz7Ji5s/3zz9LVV0uLFklly9pdFVD0CN0AAMAWOTnSPfdIGzZIlStLX3whhYXZXRXgGoRuAABQ7CxLevhhaelSqUwZc4f7uuvsrgpwHUI3AAAodk8/Lb33nuTnJ330kdS0qd0VAa5F6AYAAMXqzTel0aPN8tSppqcb8HaEbgAAUGw+/lh67DGz/PzzUs+e9tYDFBdCNwAAKBZJSVJ8vOnnfvRR02IClBSEbgAA4HLffy/9859SdrbUsaNpMWHyG5QkhG4AAOBSe/ZIbdpIDod0663S7NnmAUqgJCF0AwAAl/n9dyk2VkpNlerXlz77TCpd2u6qgOJH6AYAAC5x7JjUtq20e7dUo4a0ZIkUGmp3VYA9CN0AAKDInTwpxcWdmW3yyy+liAi7qwLsQ+gGAABFKi/PDAX45ZdS2bLS558z2yRA6AYAAEXGsqSBA83Dkv7+0vz50o032l0VYD9CNwAAKDKjRklvvGGGA3zvPal1a7srAtwDoRsAABSJyZOl4cPN8oQJUteu9tYDuBNCNwAAuGxz50oJCWZ5+HCpXz976wHcDaEbAABclqVLpQceMP3cfftKI0faXRHgfgjdAADgkq1ZI3XuLOXkSPfdd6afG0B+hG4AAHBJtm41k9+cOGEemHzvPcmXZAGcFz8aAACg0H7+2QTtI0ekpk2ljz+WAgPtrgpwX4RuAABQKAcOSDEx0sGDUr16ZvKbcuXsrgpwb4RuAABQYIcPS7Gx0p490tVXm1knK1a0uyrA/RG64fUmT56sBg0aKDg4WMHBwYqOjtYXX3zh3J6VlaWEhARVqlRJ5cqVU1xcnNLS0mysGADc07Fjpod761apalXpq6/MVwB/j9ANr1etWjWNGTNGKSkp2rBhg1q2bKkOHTpo27ZtkqRBgwZp4cKFmjdvnpKSknTgwAF17tzZ5qoBwL1kZ0sdO0pr15o728uWSVFRdlcFeI5Che5WrVpp/vz5F9z+xx9/6Oqrr77sooCi1L59e7Vt21bXXnutrrvuOr3wwgsqV66c1qxZo8zMTE2bNk2vvvqqWrZsqcaNG2v69On69ttvtWbNGrtLBwC3cOqUmV1y+XLTu/3FF1LdunZXBXiWQoXulStX6l//+pdGjBhx3u25ubn69ddfi6QwwBVyc3M1Z84cHT9+XNHR0UpJSVFOTo5iYmKc+9SqVUvVq1dXcnKyjZUCgHvIy5N69pQWLJCCgqRPP5VuusnuqgDP41/Yb5g8ebKeeOIJbd68WR988IHKli3rirqAIrVlyxZFR0crKytL5cqV04IFC1SnTh1t2rRJgYGBCg0Nzbd/WFiYUlNTL3i87OxsZWdnO99nZmZKkhwOh0vqB+C+Tv/cW5ZlcyVFz7LMdO4ffCD5+Unz5kktW9pdFeCZCh26O3TooObNm6tDhw66+eab9emnn9JSArdXs2ZNbdq0SZmZmfrvf/+rHj16KCkp6ZKPN3r0aD377LPnrI+MjLycMgF4sEOHDikkJMTuMoqMZUlDh0qTJ5sZJt9/X2rf3u6qAM9V6NAtSbVr19b69evVtWtX3XjjjZo7d26+X88D7iYwMFDXXHONJKlx48Zav369xo8fr/vuu08nT55URkZGvrvdaWlpCg8Pv+DxEhMTNXjwYOf7jIwM1ahRQ3v37vWqf3QLyuFwKDIyUvv27VNwcLDd5RQ7zr9kn39mZqaqV6+uil42bt7o0dK4cWb5rbdMTzeAS3dJoVuSQkJCtHjxYiUmJqpt27YaO3asunXrVpS1AS6Tl5en7OxsNW7cWAEBAVq+fLni4uIkSTt37tTevXsVHR19we8PCgpSUFDQOetDQkJKZOg47fSwjCUV51+yz9/Xi+Y/f+MN6emnzfIrr0iPPGJvPYA3KFTo9vHxOef9mDFj1KhRIz388MNasWJFkRYHFIXExETdddddql69uo4eParZs2dr1apVWrp0qUJCQtSrVy8NHjxYFStWVHBwsPr376/o6GjdfPPNdpcOAMVuxgzpscfM8ogR0lm/1ANwGQoVui/0kEiXLl1Uq1YtdezYsShqAopUenq6unfvroMHDyokJEQNGjTQ0qVLdeedd0qSXnvtNfn6+iouLk7Z2dmKjY3VpEmTbK4aAIrfnDlSr15meeBAE7oBFI1Che6VK1desGetUaNGSklJ0eLFi4ukMKCoTJs27aLbS5UqpYkTJ2rixImX/BlBQUEaMWLEeVtOSgLOn/Pn/D3//D/9VLr/fjNEYO/e0quvmgcoARQNH8sbxziygcPhUEhIiDIzM0t0TyMAwPMsXSr985/SyZMmeM+cKXlRizrgMoXJf/xIAQBQgiUlmendT56U4uKk6dMJ3IAr8GMFAEAJtWaNdPfdUlaW1K6dNHu25H/J45oBuBhCNwAAJdDGjVKbNtKxY1KrVtJ//ysFBtpdFeC9CN0AAJQwmzdLd94pZWZKzZqZhyhLlbK7KsC7EbqBvxg9erRuvPFGlS9fXlWqVFHHjh21c+fOfPtkZWUpISFBlSpVUrly5RQXF6e0tLSLHteyLA0fPlxVq1ZV6dKlFRMTo927d7vyVC6Jq87/wQcflI+PT75XmzZtXHkql6Qg5//222/r9ttvV3BwsHx8fJSRkVGgY0+cOFFXXXWVSpUqpaZNm2rdunUuOIPL46rzHzly5DnXv1atWi46i0v3d+d/+PBh9e/fXzVr1lTp0qVVvXp1PfbYY8rMzLzocd3p53/7dikmRjp8WLrpJunzz6WyZW0pBShRCN3AXyQlJSkhIUFr1qzRsmXLlJOTo9atW+v48ePOfQYNGqSFCxdq3rx5SkpK0oEDB9S5c+eLHnfcuHGaMGGCpkyZorVr16ps2bKKjY1VVlaWq0+pUFx1/pLUpk0bHTx40Pn68MMPXXkql6Qg53/ixAm1adNGTz31VIGPO3fuXA0ePFgjRozQxo0b1bBhQ8XGxio9Pd0Vp3HJXHX+klS3bt181//rr78u6vIv29+d/4EDB3TgwAG9/PLL2rp1q2bMmKElS5ao1+nBrS/AXX7+d+0yrSS//y5df720ZInEgFtAMbFQJDIzMy1JVmZmpt2loIilp6dbkqykpCTLsiwrIyPDCggIsObNm+fc54cffrAkWcnJyec9Rl5enhUeHm699NJLznUZGRlWUFCQ9eGHH7r2BC5TUZy/ZVlWjx49rA4dOri63CL31/M/28qVKy1J1pEjR/72ODfddJOVkJDgfJ+bm2tFRERYo0ePLspyi1xRnf+IESOshg0bFn2BLnax8z/to48+sgIDA62cnJzzbneXn/+ffrKsK6+0LMmy6te3rD/+KLaPBrxWYfIfd7qBv3H618anJ4ZKSUlRTk6OYmJinPvUqlVL1atXV3Jy8nmPsWfPHqWmpub7npCQEDVt2vSC3+MuiuL8T1u1apWqVKmimjVrqk+fPjp06JDrCi8ifz3/S3Hy5EmlpKTk+zPz9fVVTEyMx13/y7F7925FRETo6quvVnx8vPbu3XvZx3S1gpz/6fF5/S8w7Ic7/Pz/+qvUsqX0229S7drSV19JlSoVy0cD+B9CN3AReXl5GjhwoJo1a6Z69epJklJTUxUYGKjQ0NB8+4aFhSk1NfW8xzm9PiwsrMDf4w6K6vwl01ry3nvvafny5Ro7dqySkpJ01113KTc315WncFnOd/6X4o8//lBubq5XXP9L1bRpU2crxuTJk7Vnzx7deuutOnr0aBFVW/QKcv5//PGHnn/+efXu3fuCx7H753//ftNS8uuv0rXXSsuXS1WquPxjAfwFo3ECF5GQkKCtW7e6Ze9pcSjK8+/SpYtzuX79+mrQoIH+8Y9/aNWqVWrVqtVlH98VuP5Fd/533XWXc7lBgwZq2rSpatSooY8++uhv+6Ht8nfn73A41K5dO9WpU0cjR44s3uIK6MAB6Y47pJ9+kqKipBUrpKpV7a4KKJm40w1cQL9+/bRo0SKtXLlS1apVc64PDw/XyZMnzxmxIS0tTeHh4ec91un1fx3h42LfY7eiPP/zufrqq1W5cmX9+OOPRVVykbrQ+V+KypUry8/Pzyuuf1EJDQ3Vdddd57HX/+jRo2rTpo3Kly+vBQsWKCAg4ILHsuvn/+BBE7h//FG66ipp5UrJBZcSQAERuoG/sCxL/fr104IFC7RixQpFRUXl2964cWMFBARo+fLlznU7d+7U3r17FR0dfd5jRkVFKTw8PN/3OBwOrV279oLfYxdXnP/57N+/X4cOHVJVN7vt9nfnfykCAwPVuHHjfH9meXl5Wr58ucdd/6Jy7Ngx/fTTTx55/R0Oh1q3bq3AwEB99tlnKvU3A1zb8fOfmmp6uHftkqpXN4G7Rg2XfBSAgnLtM50lB6OXeI8+ffpYISEh1qpVq6yDBw86XydOnHDu8+ijj1rVq1e3VqxYYW3YsMGKjo62oqOj8x2nZs2a1vz5853vx4wZY4WGhlqffvqptXnzZqtDhw5WVFSU9eeffxbbuRWEK87/6NGj1hNPPGElJydbe/bssb766ivrhhtusK699lorKyurWM/v7xTk/A8ePGh999131tSpUy1J1urVq63vvvvOOnTokHOfli1bWm+88Ybz/Zw5c6ygoCBrxowZ1vbt263evXtboaGhVmpqarGe399x1fk//vjj1qpVq6w9e/ZY33zzjRUTE2NVrlzZSk9PL9bz+zt/d/6ZmZlW06ZNrfr161s//vhjvn1OnTrlPI6dP/9paZZVp44ZpSQy0oxaAsA1CpP/CN1FhNDtPSSd9zV9+nTnPn/++afVt29fq0KFClaZMmWsTp06WQcPHjznOGd/T15enjVs2DArLCzMCgoKslq1amXt3LmzmM6q4Fxx/idOnLBat25tXXHFFVZAQIBVo0YN65FHHnG7wGlZBTv/ESNG/O0+NWrUsEaMGJHv2G+88YZVvXp1KzAw0LrpppusNWvWFM9JFYKrzv++++6zqlatagUGBlpXXnmldd9991k//vhj8Z1YAf3d+Z8eJvF8rz179uQ7jh0//+npllWvngncV15pWW74Rwx4lcLkPx/LsqwivHFeYjkcDoWEhDiHjgIAoDj98YcZpWTzZikiQlq1yoxWAsB1CpP/6OkGAMDD/f676eHevFkKDzejlBC4AfdC6AYAwIP9/ru5w71liwncq1ZJNWvaXRWAvyJ0AwDgoc4O3FWrErgBd0boBgDAA6Wnm5aS04F75UoCN+DOmJESAAAPk55u7nBv3XrmDvd119ldFYCL4U43AAAeJC3N3OHeuvXMKCUEbsD9cacbAAAPcfCgCdw7dpjAvXIlgRvwFNzpBgDAA/z2m3T77SZwR0ZKSUkEbsCTELoB4BLk5ubqlltuUefOnfOtz8zMVGRkpJ5++mmbKoM32rdPuu02adcuqUYNE7ivucbuqgAUBqEbAC6Bn5+fZsyYoSVLlmjWrFnO9f3791fFihU1YsQIG6uDN/nlFxO4f/pJiooygTsqyu6qABQWPd0AcImuu+46jRkzRv3791fLli21bt06zZkzR+vXr1dgYKDd5cEL/PyzdMcd0t695s72ihWmtQSA5/GxLMuyuwhv4HA4FBISoszMTAUHB9tdDoBiYlmWWrZsKT8/P23ZskX9+/fXM888Y3dZ8AK7dpmHJn/7zfRur1ghXXml3VUBOFth8h+hu4gQuoGSa8eOHapdu7bq16+vjRs3yt+fXyLi8mzbZsbhTkuT6tSRvvrKjMcNwL0UJv/R0w0Al+ndd99VmTJltGfPHu3fv9/ucuDhNm0yo5SkpUkNG5pxuAncgOcjdAPAZfj222/12muvadGiRbrpppvUq1cv8QtEXKr1601LyR9/SE2amJaSK66wuyoARYHQDQCX6MSJE3rwwQfVp08f3XHHHZo2bZrWrVunKVOm2F0aPNA330gxMdKRI1J0tGkpqVjR7qoAFBVCNwBcosTERFmWpTFjxkiSrrrqKr388sv6z3/+o19++cXe4uBRVq6UYmMlh8MMD7h0qRQSYndVAIqSR4XuMWPGyMfHRwMHDnSuy8rKUkJCgipVqqRy5copLi5OaWlp+b5v7969ateuncqUKaMqVaroySef1KlTp/Lts2rVKt1www0KCgrSNddcoxkzZhTDGQHwVElJSZo4caKmT5+uMmXKONf/+9//1i233EKbCQrs88+ltm2l48elO+8078uXt7sqAEXNYx6xX79+vd566y01aNAg3/pBgwZp8eLFmjdvnkJCQtSvXz917txZ33zzjSQza1y7du0UHh6ub7/9VgcPHlT37t0VEBCgF198UZK0Z88etWvXTo8++qhmzZql5cuX6+GHH1bVqlUVGxtb7OcKwP3ddttt5/zP+2lLly4t5mrgqf77X6lbNyknR/rnP6W5c6VSpeyuCoAreMSQgceOHdMNN9ygSZMmadSoUWrUqJFef/11ZWZm6oorrtDs2bN1zz33SDozdFdycrJuvvlmffHFF7r77rt14MABhYWFSZKmTJmiIUOG6Pfff1dgYKCGDBmixYsXa+vWrc7P7NKlizIyMrRkyZIC1ciQgQCAwnjvPalnTykvT+rSxbwPCLC7KgCF4XVDBiYkJKhdu3aKiYnJtz4lJUU5OTn51teqVUvVq1dXcnKyJCk5OVn169d3Bm5Jio2NlcPh0LZt25z7/PXYsbGxzmOcT3Z2thwOR74XAAAFMXmy1KOHCdy9ekkffEDgBryd24fuOXPmaOPGjRo9evQ521JTUxUYGKjQ0NB868PCwpSamurc5+zAfXr76W0X28fhcOjPP/88b12jR49WSEiI8xXJvLwAgAJ46SWpb1+z/Nhj0ttvS35+9tYEwPXcOnTv27dPAwYM0KxZs1TKzZrcEhMTlZmZ6Xzt27fP7pIAAG7MsqRhw6T//Me8f+op6fXXJV+3/pcYQFFx6x/1lJQUpaen64YbbpC/v7/8/f2VlJSkCRMmyN/fX2FhYTp58qQyMjLyfV9aWprCw8MlSeHh4eeMZnL6/d/tExwcrNKlS5+3tqCgIAUHB+d7AQBwPnl55q72qFHm/YsvSi+8IPn42FsXgOLj1qG7VatW2rJlizZt2uR8NWnSRPHx8c7lgIAALV++3Pk9O3fu1N69exUdHS1Jio6O1pYtW5Senu7cZ9myZQoODladOnWc+5x9jNP7nD4GAACX6tQp6cEHpTffNCF70iQpMdHuqgAUN7ceMrB8+fKqV69evnVly5ZVpUqVnOt79eqlwYMHq2LFigoODlb//v0VHR2tm2++WZLUunVr1alTRw888IDGjRun1NRUPfPMM0pISFBQUJAk6dFHH9Wbb76p//znP3rooYe0YsUKffTRR1q8eHHxnjAAwKtkZUldu0qffGL6tmfOlOLj7a4KgB3cOnQXxGuvvSZfX1/FxcUpOztbsbGxmjRpknO7n5+fFi1apD59+ig6Olply5ZVjx499Nxzzzn3iYqK0uLFizVo0CCNHz9e1apV0zvvvMMY3QCAS3bsmNShg7RihRQUJM2bJ7Vvb3dVAOziEeN0ewLG6QYAnHb4sJllcu1aqVw56bPPpDvusLsqAEWtMPnP4+90AwDgTn77TYqNlbZtkypUkJYskW66ye6qANiN0A0AQBHZvVu6807p11+liAjpyy+lunXtrgqAO3Dr0UsAAPAU330nNW9uAve110rffEPgBnAGoRsAgMu0erV0++1Serp0/fXS//2fdNVVdlcFwJ0QugEAuAwLF5oebodDatFCWrlSCguzuyoA7obQDQDAJXr3XalTJzMe9z//aR6aDAmxuyoA7ojQDQBAIVmWNHq01KuXlJtrZpz8+GOpdGm7KwPgrgjdAAAUQl6eNGiQ9NRT5v3QoeaOtz/jgQG4CP6KAACggE6eNHe1P/zQvH/tNWngQDsrAuApCN0AABTA0aNSXJy0bJm5qz1zptStm91VAfAUhG4AAP5GWprUrp2UkiKVLSvNny+1bm13VQA8CaEbAICL2L1batNG+vlnqXJlafFipnUHUHg8SAkAwAWsWyfdcosJ3FdfLX37LYEbwKUhdAMAcB6LF0t33CH98YfUuLEJ3Ndea3dVADwVoRsAgL+YNk3q0EE6ccLMNrlqFbNMArg8hG4AAP7HsqTnnpMefthMetO9u5nmvVw5uysD4Ol4kBIAAEk5OdKjj5qJbiQpMVF64QXJx8feugB4B0I3AKDEczike++VvvxS8vWVJk40ARwAigqhGwBQoh04ILVtK33/vVSmjDR3rnT33XZXBcDbELoBACXWtm3SXXdJ+/ZJVapIixZJN95od1UAvBEPUgIASqQVK6RmzUzgrllTWrOGwA3AdQjdAIASZ8YMMxRgZqYJ3t98I0VF2V0VAG9G6AYAlBiWJQ0bJvXsKZ06JXXpIn31lVSpkt2VAfB2hG4AQImQnS3df780apR5/9RT0qxZUqlS9tYFoGTgQUoAgNc7dEjq2FH6+mvJ31+aMkXq1cvuqgCUJIRuAIBX271batfOfA0Olj7+WIqJsbsqACUNoRsA4LVWrZI6d5aOHJGqV5cWL5bq1bO7KgAlET3dAACvNH261Lq1Cdw33SStXUvgBmAfQjcAwKvk5UlDh0oPPSTl5Ej/+pe54x0ebndlAEoyQjcAwGucOCHde680dqx5/8wz0ocfSqVL21sXANDTDQDwCr/9JnXoIKWkSIGB0jvvSA88YHdVAGAQugEAHm/9ehO4Dx40E9188onUvLndVQHAGbSXAAA82ty5UosWJnDXqSOtW0fgBuB+CN0AAI+UlyeNHGmmcs/Kktq2lZKTpauvtrsyADgX7SUAAI9z4oT04IPSvHnm/eOPm4cn/fxsLQsALojQDQDwKPv2mSndN26UAgLMlO4PPWR3VQBwcYRuAIDH+PZbM8NkWppUubI0f7506612VwUAf4+ebgCAR3j3Xen2203gbtDAjFhC4AbgKQjdAAC3duqUNGCA1KuXmWEyLs7c8b7qKrsrA4CCo70EAOC2Dh8207gvX27eP/ec9PTTki+3jAB4GEI3AMAtbd5sHpjcs0cqW1Z6/32pUye7qwKAS8O9AgCA25k3T4qONoE7KsqMv03gBuDJCN0AALeRmyslJpqWkhMnpDvvlDZskOrXt7syALg8hG4AgFs4ckS6+25pzBjz/sknpc8/lypWtLcuACgK9HQDAGy3davp3/7pJ6l0aTM8YJcudlcFAEWHO90AAFvNnSs1bWoC91VXmeEACdwAvA2hGwBgi5wcafBgE7BPnJBiYsyEN40a2V0ZABQ9QjcAoNilpZmHJF97zbxPTJSWLDFTuwOAN6KnGwBQrNaske65R/rtN6lcOWnmTKlzZ7urAgDX4k43AKBYWJY0aZLUooUJ3LVqmXYSAjeAkoDQDQBwuePHpQcekBISTC93587SunUmeANASUDoBgC41M6dZnSSWbMkPz/p5Zel//5XKl/e7soAoPjQ0w0AcJmPP5Z69pSOHpXCw83wgC1a2F0VABQ/7nQDAIpcTo70+OPmgcmjR03Q3riRwA2g5CJ0AwCK1L590m23Sa++at4/+aS0fLlUtaq9dQGAnWgvAQAUmSVLpPvvlw4dkkJCpOnTpU6d7K4KAOzHnW4AwGU7dUp65hnprrtM4L7hBiklhcANAKdxpxsAcFkOHpS6dZNWrTLv+/QxrSWlStlaFgC4FUI3AOCSLVtm2knS083sklOnSl262F0VALgf2ksAAIV26pT09NNSbKwJ3PXrSxs2ELgB4EK40w0AKJR9+0w7yddfm/f//rf02mtS6dL21gUA7ozQDQAosMWLpe7dpcOHzYySU6dK991nd1UA4P5oLwEA/K3sbDPZzd13m8DduLGZ7IbADQAFw51uAMBF7dolde1qQrYkPfaYNG6cFBRkb10A4EkI3QCA87Is6b33pIQE6fhxqWJFM9nNP/9pd2UA4HkI3QCAczgcZrzt2bPN+9tvlz74QLrySlvLAgCPRU83ACCfdeuk6683gdvPTxo1SvrqKwI3AFwO7nQDACRJubnSmDHSiBFmuUYNE7xvucXuygDA8xG6AQD69VfpgQek//s/8/6++6QpU6TQUFvLAgCvQXsJAJRwc+ZIDRuawF2unDRzpvThhwRuAChK3OkGgBLK4ZD69zcjlEjSzTebhyX/8Q976wIAb8SdbgAogf7v/6QGDUzg9vWVhg836wjcAOAa3OkGgBIkO9s8KDlunBmHOypKev99qVkzuysDAO9G6AaAEmLrVun++6XvvzfvH3pIeu01KTjY3roAoCSgvQQAvFxengnXTZqYwF25sjR/vjRtGoEbAIoLd7oBwIv98ov04INSUpJ537atCdvh4XZWBQAlj1vf6R49erRuvPFGlS9fXlWqVFHHjh21c+fOfPtkZWUpISFBlSpVUrly5RQXF6e0tLR8++zdu1ft2rVTmTJlVKVKFT355JM6depUvn1WrVqlG264QUFBQbrmmms0Y8YMV58eALiMZUnvvCPVr28Cd9my0uTJ0qJFBG4AsINbh+6kpCQlJCRozZo1WrZsmXJyctS6dWsdP37cuc+gQYO0cOFCzZs3T0lJSTpw4IA6d+7s3J6bm6t27drp5MmT+vbbbzVz5kzNmDFDw4cPd+6zZ88etWvXTnfccYc2bdqkgQMH6uGHH9bSpUuL9XwBoCgcPCi1by898oh07JjUvLlpK3n0UcnHx+7qAKBk8rEsy7K7iIL6/fffVaVKFSUlJalFixbKzMzUFVdcodmzZ+uee+6RJO3YsUO1a9dWcnKybr75Zn3xxRe6++67deDAAYWFhUmSpkyZoiFDhuj3339XYGCghgwZosWLF2vr1q3Oz+rSpYsyMjK0ZMmSAtXmcDgUEhKizMxMBdMkCcAGliXNnSslJEiHD0uBgdILL0iDBkl+fnZXBwDepzD5z63vdP9VZmamJKlixYqSpJSUFOXk5CgmJsa5T61atVS9enUlJydLkpKTk1W/fn1n4Jak2NhYORwObdu2zbnP2cc4vc/pYwCAu0tPl+65R+ra1QTuG26QNm6UnniCwA0A7sBjHqTMy8vTwIED1axZM9WrV0+SlJqaqsDAQIX+Za7isLAwpaamOvc5O3Cf3n5628X2cTgc+vPPP1W6dOlz6snOzlZ2drbzvcPhuLwTBIBLYFnSRx+Zu9uHDkn+/tIzz0hPPSUFBNhdHQDgNI8J3QkJCdq6dau+/vpru0uRZB7yfPbZZ+0uA0AJlp4u9e0rffyxed+woTRjhtSokZ1VAQDOxyPaS/r166dFixZp5cqVqlatmnN9eHi4Tp48qYyMjHz7p6WlKfx/j+eHh4efM5rJ6fd/t09wcPB573JLUmJiojIzM52vffv2XdY5AkBBne7drlvXBG5/fzPL5Lp1BG4AcFduHboty1K/fv20YMECrVixQlFRUfm2N27cWAEBAVq+fLlz3c6dO7V3715FR0dLkqKjo7Vlyxalp6c791m2bJmCg4NVp04d5z5nH+P0PqePcT5BQUEKDg7O9wIAVztwQOrUSerSRfrjD6lBA2n9emnkSPPgJADAPbn16CV9+/bV7Nmz9emnn6pmzZrO9SEhIc470H369NHnn3+uGTNmKDg4WP3795ckffvtt5LMkIGNGjVSRESExo0bp9TUVD3wwAN6+OGH9eKLL0oyQwbWq1dPCQkJeuihh7RixQo99thjWrx4sWJjYwtUK6OXAHAly5KmT5cGD5YyM02/9lNPmRdhGwDsUZj859ah2+cCA8pOnz5dDz74oCQzOc7jjz+uDz/8UNnZ2YqNjdWkSZOcrSOS9Ouvv6pPnz5atWqVypYtqx49emjMmDHy9z/T0r5q1SoNGjRI27dvV7Vq1TRs2DDnZxQEoRuAq/zyi9S7t7RsmXnfpIn07rtm4hsAgH28JnR7EkI3gKKWmytNnGjuZh8/LpUqJT33nBl3299jHoMHAO9VmPzHX9sA4Ia2bJEeftg8HClJt95qpnW/7jp76wIAXBq3fpASAEqarCzp6afN5Dbr1knBwdKkSdKqVQRuAPBk3OkGADexapXp3d6927zv2FF6803pyivtrAoAUBS40w0ANjt0SOrVS7rjDhO4w8PN+NsLFhC4AcBbELoBwCaWJb33nlSrlhmNRDJ3un/4Qerc2d7aAABFi/YSALDBzp1Snz7SypXmfd260ltvSc2a2VsXAMA1uNMNAMUoK8vMHtmggQncpUtLo0dLGzcSuAHAm3GnGwCKyRdfSP37Sz/9ZN63aWNGJomKsrcuAIDrcacbAFxs3z4pLk5q29YE7ogIae5c6fPPCdwAUFIQugHARU6elMaNk2rXlubPl/z8pMGDpR07pH/9S/LxsbtCAEBxob0EAFxg+XLTSvLDD+Z9s2amlaRBA3vrAgDYgzvdAFCE9u6V7r1XiokxgbtyZWn6dGn1agI3AJRkhG4AKAJZWdILL5gxt//7X8nXV+rXT9q1S3rwQfMeAFBy0V4CAJfBsqTFi6WBA8+MStK8uZm+vWFDW0sDALgR7r0AwCX64Qfprruk9u1N4K5aVZo1y7SSELgBAGcjdANAIR05Yu5s168vLV0qBQRITz5pZpns1o1RSQAA56K9BAAKKDdXmjpVeuYZ6dAhs65DB+nll6VrrrG3NgCAeyN0A0ABfPml9Pjj0tat5n2dOtLrr0t33mlrWQAAD0F7CQBcxPbtZibJ2FgTuCtUkN54Q/r+ewI3AKDguNMNAOeRni6NHCm9/bZpKwkIMEMAPvOMVLGi3dUBADwNoRsAzvLnn9L48dLo0ZLDYdZ16iSNHStde629tQEAPBehGwBk7ma//740bJi0f79Zd/310quvSrffbmtpAAAvQOgGUKJZlhn27z//kbZsMesiI83skvHxzCQJACgahG4AJVZKijR0qPTVV+Z9SIj09NNS//5SqVL21gYA8C6EbgAlzq5d5oHIefPM+8BA85DkU09JlSrZWxsAwDsRugGUGL/9Jj33nDRtmunh9vExLSTPPSdFRdldHQDAmxG6AXi9w4elcePMqCRZWWbd3Xebvu0GDeytDQBQMhC6AXgth0N67TUzAsnp4f+aNZPGjJGaN7e3NgBAyULoBuB1jh+XJk40Y2sfPmzWNWwojRoltWtn2koAAChOhG4AXiMry8wg+eKLUlqaWVerlunZjotj+D8AgH0I3QA8XlaW9M47ZhbJAwfMuqgoM417t26SP3/TAQBsxj9FADxWVpYZiWT0aDMyiWQmtnn6aalnTzMUIAAA7oDQDcDjnC9sV6t2JmwHBdlbHwAAf0XoBuAxTpyQ3npLeukl6eBBs+7KK82kNr16EbYBAO6L0A3A7R09Kk2aJL3yivT772ZdZKQ0ZIgJ20zZDgBwd4RuAG7r0CHpzTelCRPODP139dVSYqLUvTs92wAAz0HoBuB29u83E9q8/bYZc1uSrrvO9GwzGgkAwBPxTxcAt7Frl5mu/b33pJwcs65RI3NnOy5O8vOztTwAAC4ZoRuA7dasMQ9HLlggWZZZ16KFCduxscwgCQDwfIRuALbIy5MWLzZ3tr/++sz6u+82YfuWW+yrDQCAokboBlCssrKkWbOkl1+Wduww6wICpPh46YknpLp17a0PAABXIHQDKBZpadLkyWbov9PD/gUHS48+Kj32mBlvGwAAb0XoBuBSW7ZIr78uffCBdPKkWRcZaYJ2794meAMA4O0I3QCKXG6u9PnnZnztr746s75pU2nQIKlzZ9NSAgBASUHoBlBkMjKkd981E9rs2WPW+fqakD14sBQdbWt5AADYhtAN4LJt22aC9nvvSSdOmHUVKkgPPyz17StddZWt5QEAYDtCN4BLcvKkGVd70iRp9eoz6+vXN/3a3bpJZcrYVx8AAO6E0A2gUPbuNdOzv/OOGZFEMjNFduhgwnaLFkxmAwDAXxG6AfytU6ekL74wYfvzz83ENpIUESE98oh5MeQfAAAXRugGcEG//ipNm2ZeBw6cWd+ypenV/uc/GYUEAICCIHQDyOfkSWnhQtM+snSpZFlmfeXK0oMPmocja9a0tUQAADwOoRuAJDOJzbvvmkls/vjjzPpWrUz7SMeOUlCQbeUBAODRCN1ACXb4sDR3rgnbGzacWR8RIXXvLvXqJV1zjX31AQDgLQjdQAlz8qS0ZIkZU3vhwjNTswcEmB7thx6SWreW/PnbAQCAIsM/q0AJYFnmTvb770sffpi/faRRI3NX+/77pSuusK1EAAC8GqEb8GK7dkmzZ5vX7t1n1oeHS/HxJmw3aGBffQAAlBSEbsDLHDhg+rRnz87fp126tJnApkcPKSaG9hEAAIoT/+wCXiA1Vfr4Y+mjj6T/+78zw/z5+Zn+7G7dTOAuX97eOgEAKKkI3YCHSk+X5s83QTsp6cwskZJ0yy0maP/rX/RpAwDgDgjdgAfZv98E7Y8/lr7+On/QbtrUhOx775UiI+2rEQAAnIvQDbi5XbukTz4xQXvduvzbmjQ5E7SvusqO6gAAQEEQugE3k5cnrV0rffqpee3YcWabj4/UrJkUFyd16iTVqGFfnQAAoOAI3YAbOHpUWr5cWrTITFiTnn5mW0CAdPvtUufOZir28HC7qgQAAJeK0A3YZPduafFi80pKknJyzmwLCZHatTMzRLZpY94DAADPRegGismxY9KqVWYK9qVLpR9/zL/9mmtM0G7fXmrRwtzhBgAA3oHQDbhIXp70/ffSl1+akP311/nvZgcEmHDdrp15XXedfbUCAADXInQDRcSypJ9+Mr3Zy5dLK1ZIhw7l3ycqSoqNNa+WLaXgYHtqBQAAxYvQDVyGX34xLSNJSSZk792bf3u5ctJtt5m+7NhY00Li42NHpQAAwE6EbqCALMs8/Ph//2dCdlLSuSE7IECKjpZatTKvm26iNxsAABC6gQs6eVL67jvTi/3NN+br77/n38ffX7rxRjOk3223Sc2bS2XL2lIuAABwY4Ru4H/27zeT0qxZY14pKdKff+bfJzAwf8i+5RZCNgAA+HuEbpRIhw+bUL1hg3mtXSv99tu5+1WqZGaAbNbM3MVu3FgKCir+egEAgGcjdMPrpadLmzaZ1+mg/fPP5+7n5yc1aCA1bSrdfLP5WrMmDz4CAIDLR+iG18jJkXbulLZulTZvPhO0Dx48//7XXGPuXDdubAJ248a0igAAANcgdMPj5OSY8bB/+EHavt2E7K1bTeA+e/KZ03x8zMQzjRpJ118vNWki3XCDVKFCsZcOAABKKEI33JJlSampZqr03bvNa8cOE7R/+kk6der831e+vFSvnlS/vgnYjRqZZe5gAwAAOxG6YZs//zSTy+zZc+brnj0maP/4o3T8+IW/t1w5qVYt8zodsuvVkyIj6cEGAADuh9D9FxMnTtRLL72k1NRUNWzYUG+88YZuuukmu8vyOMePm17qgwfNqCD79p157d9vvqalXfwYvr5SjRrStdea/utataTatc3XK68kXAMAAM9B6D7L3LlzNXjwYE2ZMkVNmzbV66+/rtjYWO3cuVNVqlSxuzzbWJZ04oR05IgZau/wYTNJzF9faWlngvbRowU7dnCwFBUlXXXVma/XXGNeUVFmXGwAAABP52NZlmV3Ee6iadOmuvHGG/Xmm29KkvLy8hQZGan+/ftr6NChF/1eh8OhkJAQZWZmKjg4uDjK1f79UlaWlJd37is318yo+NdXVpYJ0H/+ab6eXj561LwcjvzLR46Y18mTha+vbFmpalUpIsK0fZx+VatmvtaoYR5m5I41AADwRIXJf9zp/p+TJ08qJSVFiYmJznW+vr6KiYlRcnLyOftnZ2crOzvb+d7hcBRLnWfr0EHauLH4Ps/f34TkihWlK64491WlignZp4N2+fLFVxsAAIA7I3T/zx9//KHc3FyFhYXlWx8WFqYdO3acs//o0aP17LPPFld551WunGnP8PU98/LxMV/9/MzMiYGBUkDAma+lS0tlyuT/Wrq0CcjBwebr2csVKpwJ2mXLclcaAADgUhC6L1FiYqIGDx7sfO9wOBQZGVmsNSQlFevHAQAA4BIRuv+ncuXK8vPzU9pfhtRIS0tTeHj4OfsHBQUpKCiouMoDAACAB/O1uwB3ERgYqMaNG2v58uXOdXl5eVq+fLmio6NtrAwAAACejjvdZxk8eLB69OihJk2a6KabbtLrr7+u48ePq2fPnnaXBgAAAA9G6D7Lfffdp99//13Dhw9XamqqGjVqpCVLlpzzcCUAAABQGIzTXUTsGKcbAAAA9ilM/qOnGwAAAHAxQjcAAADgYoRuAAAAwMUI3QAAAICLEboBAAAAFyN0AwAAAC5G6AYAAABcjNANAAAAuBihGwAAAHAxQjcAAADgYoRuAAAAwMUI3QAAAICLEboBAAAAFyN0AwAAAC7mb3cB3sKyLEmSw+GwuRIAAAAUh9O573QOvBhCdxE5evSoJCkyMtLmSgAAAFCcjh49qpCQkIvu42MVJJrjb+Xl5enAgQMqX768fHx8iuUzHQ6HIiMjtW/fPgUHBxfLZ8K1uKbehevpXbie3odr6l3suJ6WZeno0aOKiIiQr+/Fu7a5011EfH19Va1aNVs+Ozg4mL8svAzX1LtwPb0L19P7cE29S3Ffz7+7w30aD1ICAAAALkboBgAAAFyM0O3BgoKCNGLECAUFBdldCooI19S7cD29C9fT+3BNvYu7X08epAQAAABcjDvdAAAAgIsRugEAAAAXI3QDAAAALkboBgAAAFyM0O3BJk6cqKuuukqlSpVS06ZNtW7dOrtLQgGMHj1aN954o8qXL68qVaqoY8eO2rlzZ759srKylJCQoEqVKqlcuXKKi4tTWlqaTRWjMMaMGSMfHx8NHDjQuY7r6Xl+++033X///apUqZJKly6t+vXra8OGDc7tlmVp+PDhqlq1qkqXLq2YmBjt3r3bxopxIbm5uRo2bJiioqJUunRp/eMf/9Dzzz+vs8eR4Hq6r9WrV6t9+/aKiIiQj4+PPvnkk3zbC3LtDh8+rPj4eAUHBys0NFS9evXSsWPHivEsDEK3h5o7d64GDx6sESNGaOPGjWrYsKFiY2OVnp5ud2n4G0lJSUpISNCaNWu0bNky5eTkqHXr1jp+/Lhzn0GDBmnhwoWaN2+ekpKSdODAAXXu3NnGqlEQ69ev11tvvaUGDRrkW8/19CxHjhxRs2bNFBAQoC+++ELbt2/XK6+8ogoVKjj3GTdunCZMmKApU6Zo7dq1Klu2rGJjY5WVlWVj5TifsWPHavLkyXrzzTf1ww8/aOzYsRo3bpzeeOMN5z5cT/d1/PhxNWzYUBMnTjzv9oJcu/j4eG3btk3Lli3TokWLtHr1avXu3bu4TuEMCx7ppptushISEpzvc3NzrYiICGv06NE2VoVLkZ6ebkmykpKSLMuyrIyMDCsgIMCaN2+ec58ffvjBkmQlJyfbVSb+xtGjR61rr73WWrZsmXXbbbdZAwYMsCyL6+mJhgwZYjVv3vyC2/Py8qzw8HDrpZdecq7LyMiwgoKCrA8//LA4SkQhtGvXznrooYfyrevcubMVHx9vWRbX05NIshYsWOB8X5Brt337dkuStX79euc+X3zxheXj42P99ttvxVa7ZVkWd7o90MmTJ5WSkqKYmBjnOl9fX8XExCg5OdnGynApMjMzJUkVK1aUJKWkpCgnJyff9a1Vq5aqV6/O9XVjCQkJateuXb7rJnE9PdFnn32mJk2a6N5771WVKlV0/fXXa+rUqc7te/bsUWpqar5rGhISoqZNm3JN3dAtt9yi5cuXa9euXZKk77//Xl9//bXuuusuSVxPT1aQa5ecnKzQ0FA1adLEuU9MTIx8fX21du3aYq3Xv1g/DUXijz/+UG5ursLCwvKtDwsL044dO2yqCpciLy9PAwcOVLNmzVSvXj1JUmpqqgIDAxUaGppv37CwMKWmptpQJf7OnDlztHHjRq1fv/6cbVxPz/Pzzz9r8uTJGjx4sJ566imtX79ejz32mAIDA9WjRw/ndTvf38FcU/czdOhQORwO1apVS35+fsrNzdULL7yg+Ph4SeJ6erCCXLvU1FRVqVIl33Z/f39VrFix2K8voRuwUUJCgrZu3aqvv/7a7lJwifbt26cBAwZo2bJlKlWqlN3loAjk5eWpSZMmevHFFyVJ119/vbZu3aopU6aoR48eNleHwvroo480a9YszZ49W3Xr1tWmTZs0cOBARUREcD1RrGgv8UCVK1eWn5/fOaMfpKWlKTw83KaqUFj9+vXTokWLtHLlSlWrVs25Pjw8XCdPnlRGRka+/bm+7iklJUXp6em64YYb5O/vL39/fyUlJWnChAny9/dXWFgY19PDVK1aVXXq1Mm3rnbt2tq7d68kOa8bfwd7hieffFJDhw5Vly5dVL9+fT3wwAMaNGiQRo8eLYnr6ckKcu3Cw8PPGWTi1KlTOnz4cLFfX0K3BwoMDFTjxo21fPly57q8vDwtX75c0dHRNlaGgrAsS/369dOCBQu0YsUKRUVF5dveuHFjBQQE5Lu+O3fu1N69e7m+bqhVq1basmWLNm3a5Hw1adJE8fHxzmWup2dp1qzZOcN47tq1SzVq1JAkRUVFKTw8PN81dTgcWrt2LdfUDZ04cUK+vvnjjp+fn/Ly8iRxPT1ZQa5ddHS0MjIylJKS4txnxYoVysvLU9OmTYu34GJ9bBNFZs6cOVZQUJA1Y8YMa/v27Vbv3r2t0NBQKzU11e7S8Df69OljhYSEWKtWrbIOHjzofJ04ccK5z6OPPmpVr17dWrFihbVhwwYrOjraio6OtrFqFMbZo5dYFtfT06xbt87y9/e3XnjhBWv37t3WrFmzrDJlylgffPCBc58xY8ZYoaGh1qeffmpt3rzZ6tChgxUVFWX9+eefNlaO8+nRo4d15ZVXWosWLbL27NljzZ8/36pcubL1n//8x7kP19N9HT161Pruu++s7777zpJkvfrqq9Z3331n/frrr5ZlFezatWnTxrr++uuttWvXWl9//bV17bXXWl27di32cyF0e7A33njDql69uhUYGGjddNNN1po1a+wuCQUg6byv6dOnO/f5888/rb59+1oVKlSwypQpY3Xq1Mk6ePCgfUWjUP4aurmenmfhwoVWvXr1rKCgIKtWrVrW22+/nW97Xl6eNWzYMCssLMwKCgqyWrVqZe3cudOmanExDofDGjBggFW9enWrVKlS1tVXX209/fTTVnZ2tnMfrqf7Wrly5Xn/zezRo4dlWQW7docOHbK6du1qlStXzgoODrZ69uxpHT16tNjPxceyzpqSCQAAAECRo6cbAAAAcDFCNwAAAOBihG4AAADAxQjdAAAAgIsRugEAAAAXI3QDAAAALkboBgAAAFyM0A0AAAC4GKEbAFBoubm5uuWWW9S5c+d86zMzMxUZGamnn37apsoAwD0xIyUA4JLs2rVLjRo10tSpUxUfHy9J6t69u77//nutX79egYGBNlcIAO6D0A0AuGQTJkzQyJEjtW3bNq1bt0733nuv1q9fr4YNG9pdGgC4FUI3AOCSWZalli1bys/PT1u2bFH//v31zDPP2F0WALgdQjcA4LLs2LFDtWvXVv369bVx40b5+/vbXRIAuB0epAQAXJZ3331XZcqU0Z49e7R//367ywEAt8SdbgDAJfv2229122236csvv9SoUaMkSV999ZV8fHxsrgwA3At3ugEAl+TEiRN68MEH1adPH91xxx2aNm2a1q1bpylTpthdGgC4He50AwAuyYABA/T555/r+++/V5kyZSRJb731lp544glt2bJFV111lb0FAoAbIXQDAAotKSlJrVq10qpVq9S8efN822JjY3Xq1CnaTADgLIRuAAAAwMXo6QYAAABcjNANAAAAuBihGwAAAHAxQjcAAADgYoRuAAAAwMUI3QAAAICLEboBAAAAFyN0AwAAAC5G6AYAAABcjNANAAAAuBihGwAAAHAxQjcAAADgYv8PrUq0iR+6/XAAAAAASUVORK5CYII=\n" + }, + "metadata": {} + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "x = np.arange(0, 101)\n", + "x1 = np.arange(20, 23)\n", + "z = x**2\n", + "y = 2.5*x1 -10\n", + "\n", + "fig = plt.figure()\n", + "ax1 = fig.add_axes([0, 0, 1, 1])\n", + "ax1.plot(x,z, color = 'blue')\n", + "ax1.set_xlabel('X')\n", + "ax1.set_ylabel('Z')\n", + "\n", + "ax2 = fig.add_axes([0.2,0.5,0.4,0.4])\n", + "ax2.plot(x1,y, color = 'blue')\n", + "ax2.set_xlim(20,22)\n", + "ax2.set_ylim(30,50)\n", + "ax2.set_xlabel('X')\n", + "ax2.set_ylabel('Y')\n", + "\n", + "ax2.set_title('zoom')\n", + "\n", + "plt.show()\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "TM6XOILJST2q" + }, + "source": [ + "## Exercise 4\n", + "\n", + "**Use plt.subplots(nrows=1, ncols=2) to create the plot below.**" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": { + "id": "osk0Jco2ST2r", + "outputId": "5d72df89-68fd-46ed-d51b-13e9e50af9ad", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 435 + } + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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ampqSs8880y67777UkVFRdq+ffvoDJzsjfE685vsjZGfe6x3x1jtjXERLvPmzUvLly/v/7i3tzdNmzYttbS0DHr+pz71qfSJT3xiwLH6+vr0X//1XyM65/+v2JmPd+zYsXTuueemH/7whyM14gmGM/OxY8fS5Zdfnr7//e+npUuXjvoCKnbm7373u2nmzJmpp6dntEY8QbEzL1++PH30ox8dcKypqSldccUVIzrnUE5mAX35y19OH/jABwYcW7RoUZo/f/4ITjaQvTE67I3Rk/PuGM29MeYvFfX09MTu3bujsbGx/1h5eXk0NjbGzp07B71m586dA86PiJg/f/6Q55facGY+3muvvRZvvPFGSd8x860Md+avfe1rMXny5LjhhhtGY8wBhjPzz3/+82hoaIjly5dHbW1tXHzxxbF27dro7e0dtzNffvnlsXv37v6nhPfv3x/btm2La665ZlRmHo4cH4M5znw8e+Pt5bg3Is6M3VGqx+CYvzv0aLzdfakNZ+bj3XbbbTFt2rQT/iOOlOHM/OSTT8aDDz4YbW1tozDhiYYz8/79++M3v/lNfPrTn45t27bFCy+8EJ/73OfijTfeiObm5nE58/XXXx+HDh2Kj3zkI5FSimPHjsUtt9wSX/nKV0Z83uEa6jHY1dUV//jHP+Lss88e0fu3N+yNoeS4NyLOjN1Rqr0x5s+4nInWrVsXmzdvjsceeyyqqqrGepxBHTlyJBYvXhybNm2KSZMmjfU4J62vry8mT54c3/ve92LOnDmxaNGiWL16dWzcuHGsRxvSjh07Yu3atfHAAw/Enj174tFHH42tW7fGXXfdNdajMY7YGyMnx70RcebujjF/xiXHt7sfzsxvuueee2LdunXx61//Oi699NKRHHOAYmd+8cUX4+WXX44FCxb0H+vr64uIiAkTJsRzzz0XF1xwwbiaOSJi6tSpcdZZZ0VFRUX/sfe9733R3t4ePT09UVlZOe5mvuOOO2Lx4sVx4403RkTEJZdcEkePHo2bb745Vq9eHeXl4+/7i6Eeg9XV1SP+bEuEvTFa7I3R2RsRZ8buKNXeGPOvKse3ux/OzBERd999d9x1112xffv2mDt37miM2q/YmS+66KJ4+umno62trf927bXXxtVXXx1tbW1RV1c37maOiLjiiivihRde6F+WERHPP/98TJ06dVSWz3Bmfu21105YMG8u0DRO30osx8dgjjNH2BsjPXPE2O+NiDNjd5TsMVjUj/KOkNF+u/uxmHndunWpsrIyPfLII+kvf/lL/+3IkSPjdubjjcVvBxQ784EDB9K5556b/vu//zs999xz6Re/+EWaPHly+vrXvz5uZ25ubk7nnntu+p//+Z+0f//+9Mtf/jJdcMEF6VOf+tSozXzkyJG0d+/etHfv3hQR6d5770179+5Nf/zjH1NKKa1cuTItXry4//w3f63xS1/6Utq3b1/asGHDmPw6tL0x/mY+nr0xcnOP9e4Yq70xLsIlpTzf7r6Ymd/97neniDjh1tzcPG5nPt5YLKCUip/5qaeeSvX19alQKKSZM2emb3zjG+nYsWPjduY33ngjffWrX00XXHBBqqqqSnV1delzn/tc+tvf/jZq8z7xxBOD/v/55pxLly5NV1111QnXzJ49O1VWVqaZM2emH/zgB6M275vsjfE38/HsjeLktDvGam+UpTQOn08CABjEmP+MCwDAyRIuAEA2hAsAkA3hAgBkQ7gAANkQLgBANoQLAJAN4QIAZEO4AADZEC4AQDaECwCQjf8DOu0CiLveMb4AAAAASUVORK5CYII=\n" + }, + "metadata": {} + } + ], + "source": [ + "fig, axes = plt.subplots(nrows=1, ncols=2)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "QWwItNZVST2r" + }, + "source": [ + "**Now plot (x,y) and (x,z) on the axes. Play around with the linewidth and style**" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "metadata": { + "id": "ZoEMYyLOST2r", + "outputId": "aae4b344-1a7d-4afa-8307-9225517085c3", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 430 + } + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": {} + } + ], + "source": [ + "\n", + "x = np.arange(0, 101)\n", + "y = 2 * x\n", + "z = x**2\n", + "\n", + "fig, axes = plt.subplots(nrows=1, ncols=2)\n", + "\n", + "axes[0].plot(x, y, ls = '--', color = 'blue', linewidth=1.5)\n", + "\n", + "axes[1].plot(x, z, color = 'red', linewidth=1.5)\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "hV08IzIvST2s" + }, + "source": [ + "**See if you can resize the plot by adding the figsize() argument in plt.subplots() are copying and pasting your previous code.**" + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "metadata": { + "id": "0pq5vAFZST2s", + "outputId": "345f41ea-9ba2-42cd-a375-794de2b77896", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 214 + } + }, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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fADe+SEiO3D2LPD228C77wK//64da9GirFV148b6xEdERFRnjBoFJCYC770H/P3vwIsvAi4uekdlM9W+87Nr1y70798fwcHBcHJywvr16zXjo0aNgpOTk+bo16+fZs758+cRGxsLo9EIHx8fjB07FhcuXLihCyEix7NvH/Doo0BoKPDyy9rC529/Uy2sT54EZs5k4VNf3XTTTRVyipOTE+Li4gAAd999d4WxiRMnal4jPT0dMTEx8PT0hL+/P2bOnIniq5Z87NixA927d4fBYEDr1q2xcuVKW10iEZHtLVkCfPONSp4OVPgA13Hn5+LFi+jSpQvGjBmDwYMHW53Tr18/rFixwvKz4apuEbGxscjMzER8fDyKioowevRoTJgwAatXr65uOETkYIqLgXXr1PM833+vHXN1BR56SDUxcJC793Zv7969KCkpsfx86NAh3HvvvXjwwQct58aPH48XX3zR8rNnue4VJSUliImJQWBgIL7//ntkZmbiscceg5ubG1555RUAQFpaGmJiYjBx4kR88skn2LZtG8aNG4egoCBERUXZ4CqJiGrYyZNqjffkydbHGzQA+vSxbUx1RLWLn+joaERHR19zjsFgQGBgoNWxo0ePYsuWLdi7dy969uwJAHjzzTdx33334bXXXkNwcHCF3yksLERhYaHl57y8vOqGTUT13B9/qOd53noLSE/XjjVpUtaq2spHCNVjTZs21fy8cOFCtGrVCnfddZflnKenZ6U55+uvv8aRI0fwzTffICAgAF27dsVLL72E2bNnY/78+XB3d8fy5csRFhaG//tzk79bbrkFu3fvxhtvvHHN4oe5iYjqpHXrgNGjgdxctfZ7wAC9I6pTaqXhwY4dO+Dv74+2bdviiSeewLlz5yxjiYmJ8PHxsRQ+ABAZGQlnZ2ckJSVZfb0FCxbA29vbcrRo0aI2wiaiOig1FYiLU/uszZqlLXw6dAD+9S8gIwP4xz9Y+Ni7K1eu4OOPP8aYMWPgVK5bxSeffAI/Pz907NgRc+bMwaVLlyxjiYmJ6NSpEwICAiznoqKikJeXh8OHD1vmREZGat4rKioKiYmJ14yHuYmI6pQrV1Qr08GDVeEDqOd70tJ0DauuqfHip1+/fvjwww+xbds2/POf/8TOnTsRHR1tWbZgMpng7++v+R1XV1f4+vrCZDJZfc05c+YgNzfXcmRk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+fp79epVoX3sL7/8gtDQUABAWFgYAgMDNdefl5eHpKQku7j+S5cuwdlZ+/Hm4uICs9kMwP6v/2pVud6IiAjk5OQgOTnZMmf79u0wm80IDw+3ecyOwpHyEsDcxNzE3MTcpOial667VUI99dlnn4nBYJCVK1fKkSNHZMKECeLj4yMmk0nv0GrUE088Id7e3rJjxw7JzMy0HJcuXbLMmThxooSEhMj27dtl3759EhERIRERETpGXbvKd9QRse/r/+GHH8TV1VVefvllOXbsmHzyySfi6ekpH3/8sWXOwoULxcfHR7788ks5cOCADBgwoN6207zayJEjpVmzZpZ2omvXrhU/Pz+ZNWuWZY69XX9+fr6kpKRISkqKAJDXX39dUlJS5NdffxWRql1vv379pFu3bpKUlCS7d++WNm3asNW1DThKXhJhbrKGuYm5yV5zU13NSw5X/IiIvPnmmxISEiLu7u5y2223yZ49e/QOqcYBsHqsWLHCMqegoEAmTZokjRs3Fk9PTxk0aJBkZmbqF3QtuzrB2Pv1b9iwQTp27CgGg0HatWsn7733nmbcbDbL888/LwEBAWIwGKRPnz6SmpqqU7Q1Ky8vT6ZMmSIhISHSoEEDadmypTz77LNSWFhomWNv15+QkGD1v/mRI0eKSNWu99y5czJ8+HDx8vISo9Eoo0ePlvz8fB2uxvE4Ql4SYW6yhrmJuclec1NdzUtOIuW2lSUiIiIiIrJTDvXMDxEREREROS4WP0RERERE5BBY/BARERERkUNg8UNERERERA6BxQ8RERERETkEFj9EREREROQQWPwQEREREZFDYPFDREREREQOgcUPERERERE5BBY/RERERETkEFj8EBERERGRQ/j/1pX3q2QX1wkAAAAASUVORK5CYII=\n" + }, + "metadata": {} + } + ], + "source": [ + "x = np.arange(0, 101)\n", + "y = 2 * x\n", + "z = x**2\n", + "\n", + "fig, axes = plt.subplots(nrows=1, ncols=2, figsize=(10, 2))\n", + "\n", + "axes[0].plot(x, y, color = 'blue', linewidth=2)\n", + "\n", + "\n", + "axes[1].plot(x, z, ls = '--', color = 'red' ,linewidth=3)\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "-ONbbrWEST2t" + }, + "source": [ + "# Great Job!" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "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.12" + }, + "colab": { + "provenance": [] + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/Assignment 1/Ninaad_Assignment-1/Ninaad_Assignment1_Pandas.ipynb b/Assignment 1/Ninaad_Assignment-1/Ninaad_Assignment1_Pandas.ipynb new file mode 100644 index 00000000..280316f9 --- /dev/null +++ b/Assignment 1/Ninaad_Assignment-1/Ninaad_Assignment1_Pandas.ipynb @@ -0,0 +1 @@ +{"cells":[{"cell_type":"markdown","source":["## General Instructions for all Assignments"],"metadata":{"id":"AWDeauE3Bdzs"}},{"cell_type":"markdown","source":["1. Fork the repository and make a copy of this notebook and rename it as your name_Assignment1_Pandas\n","2. Generate a pull request. The pull request message should also be yourname_Assignment1"],"metadata":{"id":"Xaf9uMvXBJEC"}},{"cell_type":"markdown","source":["\n","1. This code notebook is composed of cells. Each cell is either text or Python code.\n","2. To run a cell of code, click the \"play button\" icon to the left of the cell or click on the cell and press \"Shift+Enter\" on your keyboard. This will execute the Python code contained in the cell. Executing a cell that defines a variable is important before executing or authoring a cell that depends on that previously created variable assignment.\n"],"metadata":{"id":"4_6uxHVGB_XT"}},{"cell_type":"markdown","source":[],"metadata":{"id":"b68xNjkKCBIF"}},{"cell_type":"code","execution_count":91,"metadata":{"id":"BiD4gl6_cAYs","executionInfo":{"status":"ok","timestamp":1764791313688,"user_tz":-330,"elapsed":25,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[],"source":["#import pandas library\n","import pandas as pd"]},{"cell_type":"code","execution_count":92,"metadata":{"id":"JUtm9KricAYu","executionInfo":{"status":"ok","timestamp":1764791315326,"user_tz":-330,"elapsed":25,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[],"source":["df = pd.read_csv('/content/Iris.csv') #enter path for the Iris csv in the brackets\n","#reads the csv file and stores it in a data frame(define in the pandas library)"]},{"cell_type":"code","execution_count":93,"metadata":{"id":"qzUnSkfRcAYu","executionInfo":{"status":"ok","timestamp":1764791317596,"user_tz":-330,"elapsed":24,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[],"source":["#dictionary = {'col':[4,2,3], 'col2':[4,7,6], 'col3':[7,10,9]}"]},{"cell_type":"code","execution_count":94,"metadata":{"id":"ACswu4BXcAYu","executionInfo":{"status":"ok","timestamp":1764791318900,"user_tz":-330,"elapsed":59,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[],"source":["#df = pd.DataFrame.from_dict(dictionary)\n","#it creats a new datafram which stores the dictionary made above"]},{"cell_type":"code","source":["print(df.head(5))\n","#shows top 5 rows (row indexing starts from 0)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"MvYNz8E2dp3K","executionInfo":{"status":"ok","timestamp":1764791319771,"user_tz":-330,"elapsed":49,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"836eaef5-dfd0-4aa3-fd3a-85a3178bb65d"},"execution_count":95,"outputs":[{"output_type":"stream","name":"stdout","text":[" Id SepalLengthCm SepalWidthCm PetalLengthCm PetalWidthCm Species\n","0 1 5.1 3.5 1.4 0.2 Iris-setosa\n","1 2 4.9 3.0 1.4 0.2 Iris-setosa\n","2 3 4.7 3.2 1.3 0.2 Iris-setosa\n","3 4 4.6 3.1 1.5 0.2 Iris-setosa\n","4 5 5.0 3.6 1.4 0.2 Iris-setosa\n"]}]},{"cell_type":"code","execution_count":96,"metadata":{"id":"iAx3B-TacAYu","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764791321570,"user_tz":-330,"elapsed":46,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"12d44526-13a5-4380-c858-e959e5aeec4e"},"outputs":[{"output_type":"stream","name":"stdout","text":[" Id SepalLengthCm SepalWidthCm PetalLengthCm PetalWidthCm Species\n","0 1 5.1 3.5 1.4 0.2 Iris-setosa\n","1 2 4.9 3.0 1.4 0.2 Iris-setosa\n","2 3 4.7 3.2 1.3 0.2 Iris-setosa\n","3 4 4.6 3.1 1.5 0.2 Iris-setosa\n","4 5 5.0 3.6 1.4 0.2 Iris-setosa\n","5 6 5.4 3.9 1.7 0.4 Iris-setosa\n","6 7 4.6 3.4 1.4 0.3 Iris-setosa\n","7 8 5.0 3.4 1.5 0.2 Iris-setosa\n","8 9 4.4 2.9 1.4 0.2 Iris-setosa\n","9 10 4.9 3.1 1.5 0.1 Iris-setosa\n"]}],"source":["#Similiar to above, show 10 rows from the top\n","print(df.head(10))"]},{"cell_type":"code","execution_count":97,"metadata":{"id":"P9RtjFLQcAYv","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764791325592,"user_tz":-330,"elapsed":54,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"18c335be-7f6e-4c11-e288-2c0e59786101"},"outputs":[{"output_type":"stream","name":"stdout","text":[" Id SepalLengthCm SepalWidthCm PetalLengthCm PetalWidthCm \\\n","135 136 7.7 3.0 6.1 2.3 \n","136 137 6.3 3.4 5.6 2.4 \n","137 138 6.4 3.1 5.5 1.8 \n","138 139 6.0 3.0 4.8 1.8 \n","139 140 6.9 3.1 5.4 2.1 \n","140 141 6.7 3.1 5.6 2.4 \n","141 142 6.9 3.1 5.1 2.3 \n","142 143 5.8 2.7 5.1 1.9 \n","143 144 6.8 3.2 5.9 2.3 \n","144 145 6.7 3.3 5.7 2.5 \n","145 146 6.7 3.0 5.2 2.3 \n","146 147 6.3 2.5 5.0 1.9 \n","147 148 6.5 3.0 5.2 2.0 \n","148 149 6.2 3.4 5.4 2.3 \n","149 150 5.9 3.0 5.1 1.8 \n","\n"," Species \n","135 Iris-virginica \n","136 Iris-virginica \n","137 Iris-virginica \n","138 Iris-virginica \n","139 Iris-virginica \n","140 Iris-virginica \n","141 Iris-virginica \n","142 Iris-virginica \n","143 Iris-virginica \n","144 Iris-virginica \n","145 Iris-virginica \n","146 Iris-virginica \n","147 Iris-virginica \n","148 Iris-virginica \n","149 Iris-virginica \n"]}],"source":["#Show the last 15 rows using tail function\n","print(df.tail(15))"]},{"cell_type":"code","execution_count":98,"metadata":{"id":"QrzERa4qcAYv","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764791327465,"user_tz":-330,"elapsed":19,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"956c33f2-0156-45f3-a03d-0f711d20c36c"},"outputs":[{"output_type":"stream","name":"stdout","text":["Index(['Id', 'SepalLengthCm', 'SepalWidthCm', 'PetalLengthCm', 'PetalWidthCm',\n"," 'Species'],\n"," dtype='object')\n"]}],"source":["#list all the columns of the dataset\n","print(df.columns)"]},{"cell_type":"code","execution_count":99,"metadata":{"id":"5yPReLqxcAYv","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764791329139,"user_tz":-330,"elapsed":8,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"c9f056b8-de3d-49d4-81af-41097fbd4583"},"outputs":[{"output_type":"stream","name":"stdout","text":["\n","RangeIndex: 150 entries, 0 to 149\n","Data columns (total 6 columns):\n"," # Column Non-Null Count Dtype \n","--- ------ -------------- ----- \n"," 0 Id 150 non-null int64 \n"," 1 SepalLengthCm 150 non-null float64\n"," 2 SepalWidthCm 150 non-null float64\n"," 3 PetalLengthCm 150 non-null float64\n"," 4 PetalWidthCm 150 non-null float64\n"," 5 Species 150 non-null object \n","dtypes: float64(4), int64(1), object(1)\n","memory usage: 7.2+ KB\n","None\n"]}],"source":["#show the data types of each feature or column name\n","print(df.info())"]},{"cell_type":"code","execution_count":100,"metadata":{"id":"lT3OEUNDcAYv","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764791331129,"user_tz":-330,"elapsed":32,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"160d5cc6-a86f-432f-96e0-e7c79d089a77"},"outputs":[{"output_type":"stream","name":"stdout","text":[" Id SepalLengthCm SepalWidthCm PetalLengthCm PetalWidthCm\n","count 150.000000 150.000000 150.000000 150.000000 150.000000\n","mean 75.500000 5.843333 3.054000 3.758667 1.198667\n","std 43.445368 0.828066 0.433594 1.764420 0.763161\n","min 1.000000 4.300000 2.000000 1.000000 0.100000\n","25% 38.250000 5.100000 2.800000 1.600000 0.300000\n","50% 75.500000 5.800000 3.000000 4.350000 1.300000\n","75% 112.750000 6.400000 3.300000 5.100000 1.800000\n","max 150.000000 7.900000 4.400000 6.900000 2.500000\n"]}],"source":["#describe the data through statistics\n","print(df.describe())"]},{"cell_type":"code","execution_count":101,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":423},"id":"Z_52ct0BcAYw","executionInfo":{"status":"ok","timestamp":1764791332317,"user_tz":-330,"elapsed":78,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"570a8a68-2718-429a-e96a-80deaeeb992c"},"outputs":[{"output_type":"execute_result","data":{"text/plain":[" SepalLengthCm SepalWidthCm\n","0 5.1 3.5\n","1 4.9 3.0\n","2 4.7 3.2\n","3 4.6 3.1\n","4 5.0 3.6\n",".. ... ...\n","145 6.7 3.0\n","146 6.3 2.5\n","147 6.5 3.0\n","148 6.2 3.4\n","149 5.9 3.0\n","\n","[150 rows x 2 columns]"],"text/html":["\n","
\n","
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
SepalLengthCmSepalWidthCm
05.13.5
14.93.0
24.73.2
34.63.1
45.03.6
.........
1456.73.0
1466.32.5
1476.53.0
1486.23.4
1495.93.0
\n","

150 rows × 2 columns

\n","
\n","
\n","\n","
\n"," \n","\n"," \n","\n"," \n","
\n","\n","\n","
\n"," \n","\n","\n","\n"," \n","
\n","\n","
\n","
\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","summary":"{\n \"name\": \"#From taking multiple columns from the dataset\",\n \"rows\": 150,\n \"fields\": [\n {\n \"column\": \"SepalLengthCm\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.8280661279778629,\n \"min\": 4.3,\n \"max\": 7.9,\n \"num_unique_values\": 35,\n \"samples\": [\n 6.2,\n 4.5,\n 5.6\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"SepalWidthCm\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4335943113621737,\n \"min\": 2.0,\n \"max\": 4.4,\n \"num_unique_values\": 23,\n \"samples\": [\n 2.3,\n 4.0,\n 3.5\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":101}],"source":["df[['SepalLengthCm', 'SepalWidthCm']]\n","#From taking multiple columns from the dataset"]},{"cell_type":"code","execution_count":102,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"JWYXoLl0cAYw","executionInfo":{"status":"ok","timestamp":1764791333881,"user_tz":-330,"elapsed":97,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"bdaeab90-c61a-4ebe-964d-56193763511e"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["array([5.1, 4.9, 4.7, 4.6, 5. , 5.4, 4.4, 4.8, 4.3, 5.8, 5.7, 5.2, 5.5,\n"," 4.5, 5.3, 7. , 6.4, 6.9, 6.5, 6.3, 6.6, 5.9, 6. , 6.1, 5.6, 6.7,\n"," 6.2, 6.8, 7.1, 7.6, 7.3, 7.2, 7.7, 7.4, 7.9])"]},"metadata":{},"execution_count":102}],"source":["df.SepalLengthCm.unique()\n","#gives the unique values of Sepal Length present in that particular column"]},{"cell_type":"code","execution_count":103,"metadata":{"id":"MiOVp1WacAYw","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764791335083,"user_tz":-330,"elapsed":34,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"ea9fe3ca-05a3-41cd-df0c-2aa884e9ac79"},"outputs":[{"output_type":"stream","name":"stdout","text":["Id 11\n","SepalLengthCm 5.4\n","SepalWidthCm 3.7\n","PetalLengthCm 1.5\n","PetalWidthCm 0.2\n","Species Iris-setosa\n","Name: 10, dtype: object\n"]}],"source":["#Get the 11th row from the dataset\n","#Hint: for taking 11th row do we use 11 or 10 index?\n","print(df.iloc[10])"]},{"cell_type":"code","source":["df.iloc[10,-1]"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":35},"id":"TF03jh_MovET","executionInfo":{"status":"ok","timestamp":1764791336908,"user_tz":-330,"elapsed":50,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"f1a78b1d-f867-47c1-8059-c7a16232f823"},"execution_count":104,"outputs":[{"output_type":"execute_result","data":{"text/plain":["'Iris-setosa'"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"string"}},"metadata":{},"execution_count":104}]},{"cell_type":"code","source":["#Display the second last entry of the 10th row\n","print(df.iloc[9, -2])"],"metadata":{"id":"gV-h3rK-g5lZ","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1764791337927,"user_tz":-330,"elapsed":50,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"212f43d4-1361-4e7e-e92a-aa823bd77655"},"execution_count":105,"outputs":[{"output_type":"stream","name":"stdout","text":["0.1\n"]}]},{"cell_type":"code","execution_count":106,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":394},"id":"KXWCH34ecAYx","executionInfo":{"status":"ok","timestamp":1764791338958,"user_tz":-330,"elapsed":79,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"a5167af7-3d9f-47e2-9c56-b2edd4add6c4"},"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Id SepalLengthCm SepalWidthCm PetalLengthCm PetalWidthCm Species\n","22 23 4.6 3.6 1.0 0.2 Iris-setosa\n","23 24 5.1 3.3 1.7 0.5 Iris-setosa\n","24 25 4.8 3.4 1.9 0.2 Iris-setosa\n","25 26 5.0 3.0 1.6 0.2 Iris-setosa\n","26 27 5.0 3.4 1.6 0.4 Iris-setosa\n","27 28 5.2 3.5 1.5 0.2 Iris-setosa\n","28 29 5.2 3.4 1.4 0.2 Iris-setosa\n","29 30 4.7 3.2 1.6 0.2 Iris-setosa\n","30 31 4.8 3.1 1.6 0.2 Iris-setosa\n","31 32 5.4 3.4 1.5 0.4 Iris-setosa\n","32 33 5.2 4.1 1.5 0.1 Iris-setosa"],"text/html":["\n","
\n","
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
IdSepalLengthCmSepalWidthCmPetalLengthCmPetalWidthCmSpecies
22234.63.61.00.2Iris-setosa
23245.13.31.70.5Iris-setosa
24254.83.41.90.2Iris-setosa
25265.03.01.60.2Iris-setosa
26275.03.41.60.4Iris-setosa
27285.23.51.50.2Iris-setosa
28295.23.41.40.2Iris-setosa
29304.73.21.60.2Iris-setosa
30314.83.11.60.2Iris-setosa
31325.43.41.50.4Iris-setosa
32335.24.11.50.1Iris-setosa
\n","
\n","
\n","\n","
\n"," \n","\n"," \n","\n"," \n","
\n","\n","\n","
\n"," \n","\n","\n","\n"," \n","
\n","\n","
\n","
\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","summary":"{\n \"name\": \"#takes everything from row 23(included) and 34(not included)\",\n \"rows\": 11,\n \"fields\": [\n {\n \"column\": \"Id\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 3,\n \"min\": 23,\n \"max\": 33,\n \"num_unique_values\": 11,\n \"samples\": [\n 28,\n 23,\n 32\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"SepalLengthCm\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.2489979919597748,\n \"min\": 4.6,\n \"max\": 5.4,\n \"num_unique_values\": 7,\n \"samples\": [\n 4.6,\n 5.1,\n 4.7\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"SepalWidthCm\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.28982753492378865,\n \"min\": 3.0,\n \"max\": 4.1,\n \"num_unique_values\": 8,\n \"samples\": [\n 3.3,\n 3.2,\n 3.6\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"PetalLengthCm\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.22033033051637385,\n \"min\": 1.0,\n \"max\": 1.9,\n \"num_unique_values\": 6,\n \"samples\": [\n 1.0,\n 1.7,\n 1.4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"PetalWidthCm\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.12135597524338358,\n \"min\": 0.1,\n \"max\": 0.5,\n \"num_unique_values\": 4,\n \"samples\": [\n 0.5,\n 0.1,\n 0.2\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Species\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 1,\n \"samples\": [\n \"Iris-setosa\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":106}],"source":["df.iloc[22:33]\n","#takes everything from row 23(included) and 34(not included)"]},{"cell_type":"code","source":["df1=df.copy()\n","df1.dropna(axis=0, inplace=False) #drops any values that are null or na"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":423},"id":"quhmLFx-q6vS","executionInfo":{"status":"ok","timestamp":1764791340772,"user_tz":-330,"elapsed":178,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"48e70b8d-2ec3-4a67-fb2c-afbedc572a47"},"execution_count":107,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Id SepalLengthCm SepalWidthCm PetalLengthCm PetalWidthCm \\\n","0 1 5.1 3.5 1.4 0.2 \n","1 2 4.9 3.0 1.4 0.2 \n","2 3 4.7 3.2 1.3 0.2 \n","3 4 4.6 3.1 1.5 0.2 \n","4 5 5.0 3.6 1.4 0.2 \n",".. ... ... ... ... ... \n","145 146 6.7 3.0 5.2 2.3 \n","146 147 6.3 2.5 5.0 1.9 \n","147 148 6.5 3.0 5.2 2.0 \n","148 149 6.2 3.4 5.4 2.3 \n","149 150 5.9 3.0 5.1 1.8 \n","\n"," Species \n","0 Iris-setosa \n","1 Iris-setosa \n","2 Iris-setosa \n","3 Iris-setosa \n","4 Iris-setosa \n",".. ... \n","145 Iris-virginica \n","146 Iris-virginica \n","147 Iris-virginica \n","148 Iris-virginica \n","149 Iris-virginica \n","\n","[150 rows x 6 columns]"],"text/html":["\n","
\n","
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
IdSepalLengthCmSepalWidthCmPetalLengthCmPetalWidthCmSpecies
015.13.51.40.2Iris-setosa
124.93.01.40.2Iris-setosa
234.73.21.30.2Iris-setosa
344.63.11.50.2Iris-setosa
455.03.61.40.2Iris-setosa
.....................
1451466.73.05.22.3Iris-virginica
1461476.32.55.01.9Iris-virginica
1471486.53.05.22.0Iris-virginica
1481496.23.45.42.3Iris-virginica
1491505.93.05.11.8Iris-virginica
\n","

150 rows × 6 columns

\n","
\n","
\n","\n","
\n"," \n","\n"," \n","\n"," \n","
\n","\n","\n","
\n"," \n","\n","\n","\n"," \n","
\n","\n","
\n","
\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","summary":"{\n \"name\": \"df1\",\n \"rows\": 150,\n \"fields\": [\n {\n \"column\": \"Id\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 43,\n \"min\": 1,\n \"max\": 150,\n \"num_unique_values\": 150,\n \"samples\": [\n 74,\n 19,\n 119\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"SepalLengthCm\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.8280661279778629,\n \"min\": 4.3,\n \"max\": 7.9,\n \"num_unique_values\": 35,\n \"samples\": [\n 6.2,\n 4.5,\n 5.6\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"SepalWidthCm\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.4335943113621737,\n \"min\": 2.0,\n \"max\": 4.4,\n \"num_unique_values\": 23,\n \"samples\": [\n 2.3,\n 4.0,\n 3.5\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"PetalLengthCm\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1.7644204199522617,\n \"min\": 1.0,\n \"max\": 6.9,\n \"num_unique_values\": 43,\n \"samples\": [\n 6.7,\n 3.8,\n 3.7\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"PetalWidthCm\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0.7631607417008414,\n \"min\": 0.1,\n \"max\": 2.5,\n \"num_unique_values\": 22,\n \"samples\": [\n 0.2,\n 1.2,\n 1.3\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"Species\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"Iris-setosa\",\n \"Iris-versicolor\",\n \"Iris-virginica\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":107}]},{"cell_type":"code","execution_count":108,"metadata":{"id":"kZg8z57fcAY2","executionInfo":{"status":"ok","timestamp":1764791342472,"user_tz":-330,"elapsed":40,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[],"source":["df.dropna(axis=0, inplace=True)\n","#drops all the rows with missing values"]},{"cell_type":"code","execution_count":109,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":272},"id":"FRWcDJA2cAY2","executionInfo":{"status":"ok","timestamp":1764791343894,"user_tz":-330,"elapsed":44,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"837bea1c-0097-4667-e77b-ded83e20fc45"},"outputs":[{"output_type":"execute_result","data":{"text/plain":["Id 0\n","SepalLengthCm 0\n","SepalWidthCm 0\n","PetalLengthCm 0\n","PetalWidthCm 0\n","Species 0\n","dtype: int64"],"text/html":["
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
0
Id0
SepalLengthCm0
SepalWidthCm0
PetalLengthCm0
PetalWidthCm0
Species0
\n","

"]},"metadata":{},"execution_count":109}],"source":["df.isnull().sum()"]},{"cell_type":"code","execution_count":110,"metadata":{"id":"JioW0K_pcAY3","executionInfo":{"status":"ok","timestamp":1764791345796,"user_tz":-330,"elapsed":47,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[],"source":["df.to_csv('cleandata_iris.csv')"]},{"cell_type":"code","execution_count":111,"metadata":{"id":"asToKeGJcAY4","executionInfo":{"status":"ok","timestamp":1764791346741,"user_tz":-330,"elapsed":12,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}}},"outputs":[],"source":["del df"]}],"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.7.4"},"colab":{"provenance":[{"file_id":"1tVNRnxnutLstrGKY3P0fbmpEVSwXiDnJ","timestamp":1764788390379},{"file_id":"1PJDPRd4uOSxvoSK0o_O22PiQ2-AkDis4","timestamp":1764744257366},{"file_id":"1AjoKNd7ieBCZ4NDPgzWDLDMsHKuYsb5A","timestamp":1731497483327}]}},"nbformat":4,"nbformat_minor":0} \ No newline at end of file diff --git a/Assignment 2/Ninaad_Assignment2/Ninaad_Assignment-2.ipynb b/Assignment 2/Ninaad_Assignment2/Ninaad_Assignment-2.ipynb new file mode 100644 index 00000000..895f5ed4 --- /dev/null +++ b/Assignment 2/Ninaad_Assignment2/Ninaad_Assignment-2.ipynb @@ -0,0 +1 @@ +{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"authorship_tag":"ABX9TyMdxxQTJmOI1GJnNto7713d"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"6E6hm2bjkaCw","executionInfo":{"status":"ok","timestamp":1765577067102,"user_tz":-330,"elapsed":8889,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"615ac2ef-bc63-453f-ddd6-5efc66bedeee"},"outputs":[{"output_type":"stream","name":"stdout","text":["Requirement already satisfied: yfinance in /usr/local/lib/python3.12/dist-packages (0.2.66)\n","Requirement already satisfied: plotly in /usr/local/lib/python3.12/dist-packages (5.24.1)\n","Requirement already satisfied: pandas>=1.3.0 in /usr/local/lib/python3.12/dist-packages (from yfinance) (2.2.2)\n","Requirement already satisfied: numpy>=1.16.5 in /usr/local/lib/python3.12/dist-packages (from yfinance) (2.0.2)\n","Requirement already satisfied: requests>=2.31 in /usr/local/lib/python3.12/dist-packages (from yfinance) (2.32.4)\n","Requirement already satisfied: multitasking>=0.0.7 in /usr/local/lib/python3.12/dist-packages (from yfinance) (0.0.12)\n","Requirement already satisfied: platformdirs>=2.0.0 in /usr/local/lib/python3.12/dist-packages (from yfinance) (4.5.1)\n","Requirement already satisfied: pytz>=2022.5 in /usr/local/lib/python3.12/dist-packages (from yfinance) (2025.2)\n","Requirement already satisfied: frozendict>=2.3.4 in /usr/local/lib/python3.12/dist-packages (from yfinance) (2.4.7)\n","Requirement already satisfied: peewee>=3.16.2 in /usr/local/lib/python3.12/dist-packages (from yfinance) (3.18.3)\n","Requirement already satisfied: beautifulsoup4>=4.11.1 in /usr/local/lib/python3.12/dist-packages (from yfinance) (4.13.5)\n","Requirement already satisfied: curl_cffi>=0.7 in /usr/local/lib/python3.12/dist-packages (from yfinance) (0.13.0)\n","Requirement already satisfied: protobuf>=3.19.0 in /usr/local/lib/python3.12/dist-packages (from yfinance) (5.29.5)\n","Requirement already satisfied: websockets>=13.0 in /usr/local/lib/python3.12/dist-packages (from yfinance) (15.0.1)\n","Requirement already satisfied: tenacity>=6.2.0 in /usr/local/lib/python3.12/dist-packages (from plotly) (9.1.2)\n","Requirement already satisfied: packaging in /usr/local/lib/python3.12/dist-packages (from plotly) (25.0)\n","Requirement already satisfied: soupsieve>1.2 in /usr/local/lib/python3.12/dist-packages (from beautifulsoup4>=4.11.1->yfinance) (2.8)\n","Requirement already satisfied: typing-extensions>=4.0.0 in /usr/local/lib/python3.12/dist-packages (from beautifulsoup4>=4.11.1->yfinance) (4.15.0)\n","Requirement already satisfied: cffi>=1.12.0 in /usr/local/lib/python3.12/dist-packages (from curl_cffi>=0.7->yfinance) (2.0.0)\n","Requirement already satisfied: certifi>=2024.2.2 in /usr/local/lib/python3.12/dist-packages (from curl_cffi>=0.7->yfinance) (2025.11.12)\n","Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.12/dist-packages (from pandas>=1.3.0->yfinance) (2.9.0.post0)\n","Requirement already satisfied: tzdata>=2022.7 in /usr/local/lib/python3.12/dist-packages (from pandas>=1.3.0->yfinance) (2025.2)\n","Requirement already satisfied: charset_normalizer<4,>=2 in /usr/local/lib/python3.12/dist-packages (from requests>=2.31->yfinance) (3.4.4)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.12/dist-packages (from requests>=2.31->yfinance) (3.11)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.12/dist-packages (from requests>=2.31->yfinance) (2.5.0)\n","Requirement already satisfied: pycparser in /usr/local/lib/python3.12/dist-packages (from cffi>=1.12.0->curl_cffi>=0.7->yfinance) (2.23)\n","Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.12/dist-packages (from python-dateutil>=2.8.2->pandas>=1.3.0->yfinance) (1.17.0)\n"]}],"source":["!pip install yfinance plotly"]},{"cell_type":"code","source":["import yfinance as yf\n","import pandas as pd"],"metadata":{"id":"GjfhIDQkk-0s"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["ticker = \"MSFT\"\n","data = yf.download(ticker, period = \"6mo\", interval = \"1d\")\n","data.reset_index(inplace=True)\n","\n","data.to_csv('MSFT_Data.csv')\n","data = pd.read_csv('MSFT_Data.csv')\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"s8GESVPyl5Ie","executionInfo":{"status":"ok","timestamp":1765478805140,"user_tz":-330,"elapsed":194,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"c2bd1785-4b9d-439d-ab5e-6e107b8440d4"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stderr","text":["/tmp/ipython-input-2510692822.py:2: FutureWarning:\n","\n","YF.download() has changed argument auto_adjust default to True\n","\n","\r[*********************100%***********************] 1 of 1 completed\n"]}]},{"cell_type":"code","source":["import plotly.graph_objects as go"],"metadata":{"id":"7apT7KKcn63w"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["candlestick = go.Candlestick(\n"," x=data['Date'],\n"," open=data['Open'],\n"," high=data['High'],\n"," low=data['Low'],\n"," close=data['Close']\n",")\n","\n","fig = go.Figure(data=[candlestick])"],"metadata":{"id":"3u4Yf9gFoAgz"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["fig.update_layout(\n"," title=f\"{ticker} - Last 6 Months\",\n"," xaxis_title=\"Date\",\n"," yaxis_title=\"Price\"\n",")\n","\n","fig.show()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":542},"id":"dW9ltiqhoZT3","executionInfo":{"status":"ok","timestamp":1765478894708,"user_tz":-330,"elapsed":82,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"d047e09b-1e3d-45cb-ac01-248408659456"},"execution_count":null,"outputs":[{"output_type":"display_data","data":{"text/html":["\n","\n","\n","
\n","
\n","\n",""]},"metadata":{}}]},{"cell_type":"code","source":["Date : Jun 14th\n","Pattern Formed : Doji\n","The price went down after that pattern"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":106},"id":"BXmOZFEMv33I","executionInfo":{"status":"error","timestamp":1765479652663,"user_tz":-330,"elapsed":38,"user":{"displayName":"Ninaad Jawali","userId":"07846529941813019143"}},"outputId":"9cddadd3-b748-45de-a558-b1626ee65e2e"},"execution_count":null,"outputs":[{"output_type":"error","ename":"SyntaxError","evalue":"unterminated string literal (detected at line 1) (ipython-input-1395449566.py, line 1)","traceback":["\u001b[0;36m File \u001b[0;32m\"/tmp/ipython-input-1395449566.py\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m print(\" Date : Jun 14th\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m unterminated string literal (detected at line 1)\n"]}]},{"cell_type":"code","source":[],"metadata":{"id":"Bsb3AzGSTRxg"},"execution_count":null,"outputs":[]}]} \ No newline at end of file diff --git a/Assignment 2/Ninaad_Assignment2/Screenshot 2025-12-17 235623.png b/Assignment 2/Ninaad_Assignment2/Screenshot 2025-12-17 235623.png new file mode 100644 index 00000000..337e939d Binary files /dev/null and b/Assignment 2/Ninaad_Assignment2/Screenshot 2025-12-17 235623.png differ diff --git a/MidEval Code/Ninaad_MidEval/Mid_Eval_PS_Ninaad.ipynb b/MidEval Code/Ninaad_MidEval/Mid_Eval_PS_Ninaad.ipynb new file mode 100644 index 00000000..2d7bef07 --- /dev/null +++ b/MidEval Code/Ninaad_MidEval/Mid_Eval_PS_Ninaad.ipynb @@ -0,0 +1,277 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "e1ykjpCNpW05" + }, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.preprocessing import StandardScaler, LabelEncoder\n", + "from sklearn.linear_model import LogisticRegression\n", + "from sklearn.neural_network import MLPClassifier\n", + "from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, confusion_matrix" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "id": "JbsNVooZpcMz" + }, + "outputs": [], + "source": [ + "# 1. Data Preprocessing :\n", + "df = pd.read_csv('quantvision_financial_dataset_200.csv')\n", + "\n", + "# Encoding categorical variables :\n", + "label_encoders = {}\n", + "categorical_columns = ['asset_type', 'market_regime']\n", + "\n", + "for col in categorical_columns:\n", + " le = LabelEncoder()\n", + " df[col] = le.fit_transform(df[col].astype(str))\n", + " label_encoders[col] = le\n", + "\n", + "# Preparing features and target :\n", + "X = df.drop('future_trend', axis=1)\n", + "y = df['future_trend']\n", + "\n", + "# Scaling numerical features :\n", + "scaler = StandardScaler()\n", + "X_scaled = scaler.fit_transform(X)\n", + "\n", + "# Splitting data :\n", + "X_train, X_test, y_train, y_test = train_test_split(\n", + " X_scaled, y, test_size=0.2, random_state=42, stratify=y\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": { + "id": "y8k7Qfl-pZOH" + }, + "outputs": [], + "source": [ + "# 2. Model Training :\n", + "\n", + "lr_model = LogisticRegression(random_state = 42, max_iter = 1000)\n", + "lr_model.fit(X_train, y_train)\n", + "lr_prediction = lr_model.predict(X_test)\n", + "\n", + "\n", + "nn_model = MLPClassifier(\n", + " hidden_layer_sizes = (64, 32),\n", + " activation = 'relu',\n", + " solver = 'adam',\n", + " max_iter = 1000,\n", + " random_state = 42\n", + ")\n", + "\n", + "nn_model.fit(X_train, y_train)\n", + "nn_prediction = nn_model.predict(X_test)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "7IWiCUqnplv7", + "outputId": "d454cb17-7dc5-4301-bfd4-8990329b6a65" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Training Logistic Regression...\n", + "\n", + "Logistic Regression Results:\n", + "Accuracy: 0.9250\n", + "Precision: 0.9474\n", + "Recall: 0.9730\n", + "F1-Score: 0.9600\n", + "\n", + "Classification Report:\n", + " precision recall f1-score support\n", + "\n", + " 0 0.50 0.33 0.40 3\n", + " 1 0.95 0.97 0.96 37\n", + "\n", + " accuracy 0.93 40\n", + " macro avg 0.72 0.65 0.68 40\n", + "weighted avg 0.91 0.93 0.92 40\n", + "\n", + "\n", + "Training Neural Network...\n", + "\n", + "Neural Network Results:\n", + "Accuracy: 0.9250\n", + "Precision: 0.9250\n", + "Recall: 1.0000\n", + "F1-Score: 0.9610\n", + "\n", + "Classification Report:\n", + " precision recall f1-score support\n", + "\n", + " 0 0.00 0.00 0.00 3\n", + " 1 0.93 1.00 0.96 37\n", + "\n", + " accuracy 0.93 40\n", + " macro avg 0.46 0.50 0.48 40\n", + "weighted avg 0.86 0.93 0.89 40\n", + "\n", + "\n", + "Confusion Matrices:\n", + "Logistic Regression Confusion Matrix:\n", + "[[ 1 2]\n", + " [ 1 36]]\n", + "\n", + "Neural Network Confusion Matrix:\n", + "[[ 0 3]\n", + " [ 0 37]]\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/usr/local/lib/python3.12/dist-packages/sklearn/metrics/_classification.py:1565: UndefinedMetricWarning: Precision is ill-defined and being set to 0.0 in labels with no predicted samples. Use `zero_division` parameter to control this behavior.\n", + " _warn_prf(average, modifier, f\"{metric.capitalize()} is\", len(result))\n", + "/usr/local/lib/python3.12/dist-packages/sklearn/metrics/_classification.py:1565: UndefinedMetricWarning: Precision is ill-defined and being set to 0.0 in labels with no predicted samples. Use `zero_division` parameter to control this behavior.\n", + " _warn_prf(average, modifier, f\"{metric.capitalize()} is\", len(result))\n", + "/usr/local/lib/python3.12/dist-packages/sklearn/metrics/_classification.py:1565: UndefinedMetricWarning: Precision is ill-defined and being set to 0.0 in labels with no predicted samples. Use `zero_division` parameter to control this behavior.\n", + " _warn_prf(average, modifier, f\"{metric.capitalize()} is\", len(result))\n" + ] + } + ], + "source": [ + "# 3. Model Evaluation :\n", + "def print_metrics(y_true, y_pred, model_name):\n", + " accuracy = accuracy_score(y_true, y_pred)\n", + " precision = precision_score(y_true, y_pred)\n", + " recall = recall_score(y_true, y_pred)\n", + " f1 = f1_score(y_true, y_pred)\n", + " \n", + "\n", + " print(f\"\\n{model_name} Results:\")\n", + " print(f\"Accuracy: {accuracy:.4f}\")\n", + " print(f\"Precision: {precision:.4f}\")\n", + " print(f\"Recall: {recall:.4f}\")\n", + " print(f\"F1-Score: {f1:.4f}\")\n", + " \n", + "\n", + " return accuracy, precision, recall, f1\n", + "\n", + "print(\"\\nTraining Logistic Regression...\")\n", + "# Logistic Regression metrics\n", + "lr_accuracy, lr_precision, lr_recall, lr_f1 = print_metrics(y_test, lr_prediction, \"Logistic Regression\")\n", + "\n", + "print(\"\\nTraining Neural Network...\")\n", + "# Neural Network metrics\n", + "nn_accuracy, nn_precision, nn_recall, nn_f1 = print_metrics(y_test, nn_prediction, \"Neural Network\")\n", + "\n", + "# Confusion Matrices :\n", + "print(\"\\nConfusion Matrices:\")\n", + "lr_cm = confusion_matrix(y_test, lr_prediction)\n", + "nn_cm = confusion_matrix(y_test, nn_prediction)\n", + "\n", + "print(\"Logistic Regression Confusion Matrix:\")\n", + "print(lr_cm)\n", + "print(\"\\nNeural Network Confusion Matrix:\")\n", + "print(nn_cm)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 191 + }, + "id": "wu0175B3quLu", + "outputId": "62ffa6c2-ce5d-44ce-e9eb-61d09933c2b7" + }, + "outputs": [ + { + "data": { + "application/vnd.google.colaboratory.intrinsic+json": { + "type": "string" + }, + "text/plain": [ + "'\\n-Why Logistic Regression performs reasonably good or bad??\\n\\nLogistic Regression is a linear model, so it performs reasonably good when the relationship between\\nthe features (like technical_score, slope_strength, etc.) and future_trend is close to linear or\\nmonotonic.\\n\\n-Why Neural Networks performs better of worse??\\n\\nNeural Network can model non‑linear interactions, so it will typically perform better when the\\ndataset contains complex interactions between volatility, technical_score, trend_continuation and\\nother features.\\n\\n-The effect of volatility on predictions??\\n\\nHigh_volatility = 1 corresponds to more noise and sudden price reversals, so both models\\ntend to make more errors on these rows.\\nWhen high_volatility = 0, technical_score and slope_strength are more reliable,\\nso the models produce more stable and accurate predictions\\n\\n-Role of trend continuation??\\n\\nWhen trend_continuation = 1 and aligns with a bullish regime, the probability of future_trend = 1\\nis higher, so both models gain predictive power from this feature\\nWhen trend_continuation = 0, the models rely more on other indicators (technical_score,\\ncandlestick_variance, pattern_symmetry), and their confidence usually decreases.\\n\\n-Situation where the model fails and why??\\n\\nSideways or regime‑change zones (market_regime = sideways, or sudden switches between bullish\\nand bearish) are where both models typically fail, because price direction is inherently uncertain\\nand random.\\nThe models also tend to fail on assets or samples where technical_score is extreme but volatility\\nis high (e.g., strong technical signal but choppy price action)\\n\\n'" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# 4. Analysis & Financial Interpretation :\n", + "\"\"\"\n", + "-Why Logistic Regression performs reasonably good or bad??\n", + "\n", + "Logistic Regression is a linear model, so it performs reasonably good when the relationship between\n", + "the features (like technical_score, slope_strength, etc.) and future_trend is close to linear or\n", + "monotonic.\n", + "\n", + "-Why Neural Networks performs better of worse??\n", + "\n", + "Neural Network can model non‑linear interactions, so it will typically perform better when the\n", + "dataset contains complex interactions between volatility, technical_score, trend_continuation and\n", + "other features.\n", + "\n", + "-The effect of volatility on predictions??\n", + "\n", + "High_volatility = 1 corresponds to more noise and sudden price reversals, so both models\n", + "tend to make more errors on these rows.\n", + "When high_volatility = 0, technical_score and slope_strength are more reliable,\n", + "so the models produce more stable and accurate predictions\n", + "\n", + "-Role of trend continuation??\n", + "\n", + "When trend_continuation = 1 and aligns with a bullish regime, the probability of future_trend = 1\n", + "is higher, so both models gain predictive power from this feature\n", + "When trend_continuation = 0, the models rely more on other indicators (technical_score,\n", + "candlestick_variance, pattern_symmetry), and their confidence usually decreases.\n", + "\n", + "-Situation where the model fails and why??\n", + "\n", + "Sideways or regime‑change zones (market_regime = sideways, or sudden switches between bullish\n", + "and bearish) are where both models typically fail, because price direction is inherently uncertain\n", + "and random.\n", + "The models also tend to fail on assets or samples where technical_score is extreme but volatility\n", + "is high (e.g., strong technical signal but choppy price action)\n", + "\n", + "\"\"\"" + ] + } + ], + "metadata": { + "colab": { + "provenance": [] + }, + "kernelspec": { + "display_name": "Python 3", + "name": "python3" + }, + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +}