├── Data_Analysis_Tools_NumPy_and_Pandas.ipynb
├── Data_Visualization_Crash_Course.ipynb
├── Day 1 - IIT ISM Fundamentals of ML .ipynb
├── IIT_ISM_Intro_to_ML_for_PE.ipynb
├── Petroleum_Data_Analytics_Projects.ipynb
├── Predicting_Oil_Production_Rates_with_ML.ipynb
├── Pt.csv
├── Python_Crash_Course.ipynb
└── README.md
/Data_Analysis_Tools_NumPy_and_Pandas.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "nbformat": 4,
3 | "nbformat_minor": 0,
4 | "metadata": {
5 | "colab": {
6 | "name": "Data Analysis Tools : NumPy and Pandas.ipynb",
7 | "provenance": [],
8 | "authorship_tag": "ABX9TyPSoXVA/bpIKLB5LLJe+Cv8",
9 | "include_colab_link": true
10 | },
11 | "kernelspec": {
12 | "name": "python3",
13 | "display_name": "Python 3"
14 | },
15 | "language_info": {
16 | "name": "python"
17 | }
18 | },
19 | "cells": [
20 | {
21 | "cell_type": "markdown",
22 | "metadata": {
23 | "id": "view-in-github",
24 | "colab_type": "text"
25 | },
26 | "source": [
27 | "
"
28 | ]
29 | },
30 | {
31 | "cell_type": "markdown",
32 | "metadata": {
33 | "id": "Ced_XJ7Wx8Le"
34 | },
35 | "source": [
36 | "## 1. NumPy\n",
37 | "\n",
38 | "\n",
39 | "NumPy (or Numpy) is a Linear Algebra Library for Python, the reason it is so important for Data Science with Python is that almost all of the libraries in the PyData Ecosystem rely on NumPy as one of their main building blocks.\n",
40 | "\n",
41 | "Numpy is also incredibly fast, as it has bindings to C libraries."
42 | ]
43 | },
44 | {
45 | "cell_type": "code",
46 | "metadata": {
47 | "id": "49dh9gX4Mgtt"
48 | },
49 | "source": [
50 | "#Anaconda prompt\n",
51 | "#pip install numpy"
52 | ],
53 | "execution_count": null,
54 | "outputs": []
55 | },
56 | {
57 | "cell_type": "code",
58 | "metadata": {
59 | "id": "oHVSMaDzwnfK"
60 | },
61 | "source": [
62 | "import numpy as np"
63 | ],
64 | "execution_count": 84,
65 | "outputs": []
66 | },
67 | {
68 | "cell_type": "markdown",
69 | "metadata": {
70 | "id": "Rdk9B10IyITF"
71 | },
72 | "source": [
73 | "Most important aspects of Numpy: vectors,arrays,matrices, and number generation."
74 | ]
75 | },
76 | {
77 | "cell_type": "markdown",
78 | "metadata": {
79 | "id": "VEBo_SD_yMdl"
80 | },
81 | "source": [
82 | "Disadvantage of using a list."
83 | ]
84 | },
85 | {
86 | "cell_type": "code",
87 | "metadata": {
88 | "id": "6ZPPlMgVyDw_"
89 | },
90 | "source": [
91 | "phi = [0.4 , 0.2, 0.35, 0.27, 0.44]\n",
92 | "\n",
93 | "# phi**2\n",
94 | "for i in range(5):\n",
95 | " phi[i] = phi[i]**2"
96 | ],
97 | "execution_count": 89,
98 | "outputs": []
99 | },
100 | {
101 | "cell_type": "code",
102 | "metadata": {
103 | "colab": {
104 | "base_uri": "https://localhost:8080/"
105 | },
106 | "id": "-K62Bm_eNXyJ",
107 | "outputId": "67b35891-0290-4256-f4a0-8385ff1c3a61"
108 | },
109 | "source": [
110 | "phi"
111 | ],
112 | "execution_count": 86,
113 | "outputs": [
114 | {
115 | "output_type": "execute_result",
116 | "data": {
117 | "text/plain": [
118 | "[0.4, 0.2, 0.35, 0.27, 0.44]"
119 | ]
120 | },
121 | "metadata": {
122 | "tags": []
123 | },
124 | "execution_count": 86
125 | }
126 | ]
127 | },
128 | {
129 | "cell_type": "code",
130 | "metadata": {
131 | "colab": {
132 | "base_uri": "https://localhost:8080/"
133 | },
134 | "id": "IYYVRGClyVii",
135 | "outputId": "72d127f0-2990-4bfa-f1d2-48e4c364c9d1"
136 | },
137 | "source": [
138 | "2*phi"
139 | ],
140 | "execution_count": 3,
141 | "outputs": [
142 | {
143 | "output_type": "execute_result",
144 | "data": {
145 | "text/plain": [
146 | "[0.4, 0.2, 0.35, 0.27, 0.44, 0.4, 0.2, 0.35, 0.27, 0.44]"
147 | ]
148 | },
149 | "metadata": {
150 | "tags": []
151 | },
152 | "execution_count": 3
153 | }
154 | ]
155 | },
156 | {
157 | "cell_type": "markdown",
158 | "metadata": {
159 | "id": "AKhO0dKzyZXp"
160 | },
161 | "source": [
162 | "Not Doing what we want it to do. "
163 | ]
164 | },
165 | {
166 | "cell_type": "code",
167 | "metadata": {
168 | "colab": {
169 | "base_uri": "https://localhost:8080/"
170 | },
171 | "id": "f_zO7Q-qyYYy",
172 | "outputId": "dd63feb3-f08f-4cb3-c12d-417b317183c2"
173 | },
174 | "source": [
175 | "#Let's convert the list to a numpy array and do it again. \n",
176 | "phi_array = np.array(phi)\n",
177 | "\n",
178 | "phi_array**0.5"
179 | ],
180 | "execution_count": 90,
181 | "outputs": [
182 | {
183 | "output_type": "execute_result",
184 | "data": {
185 | "text/plain": [
186 | "array([0.4 , 0.2 , 0.35, 0.27, 0.44])"
187 | ]
188 | },
189 | "metadata": {
190 | "tags": []
191 | },
192 | "execution_count": 90
193 | }
194 | ]
195 | },
196 | {
197 | "cell_type": "code",
198 | "metadata": {
199 | "colab": {
200 | "base_uri": "https://localhost:8080/"
201 | },
202 | "id": "Pdo7YEccylEx",
203 | "outputId": "d91b2c71-2327-4d53-e3fc-c9dc6cb75516"
204 | },
205 | "source": [
206 | "#A 2D Matrix\n",
207 | "my_matrix = [[1,2,3],[4,5,6],[7,8,9]]\n",
208 | "my_matrix"
209 | ],
210 | "execution_count": 5,
211 | "outputs": [
212 | {
213 | "output_type": "execute_result",
214 | "data": {
215 | "text/plain": [
216 | "[[1, 2, 3], [4, 5, 6], [7, 8, 9]]"
217 | ]
218 | },
219 | "metadata": {
220 | "tags": []
221 | },
222 | "execution_count": 5
223 | }
224 | ]
225 | },
226 | {
227 | "cell_type": "code",
228 | "metadata": {
229 | "colab": {
230 | "base_uri": "https://localhost:8080/"
231 | },
232 | "id": "xTLGcEbzyqfP",
233 | "outputId": "2ab15168-81d3-47ee-96e6-5456040d4848"
234 | },
235 | "source": [
236 | "\n",
237 | "A2 = np.array(my_matrix)\n",
238 | "\n",
239 | "A2**2"
240 | ],
241 | "execution_count": 91,
242 | "outputs": [
243 | {
244 | "output_type": "execute_result",
245 | "data": {
246 | "text/plain": [
247 | "array([[ 1, 4, 9],\n",
248 | " [16, 25, 36],\n",
249 | " [49, 64, 81]])"
250 | ]
251 | },
252 | "metadata": {
253 | "tags": []
254 | },
255 | "execution_count": 91
256 | }
257 | ]
258 | },
259 | {
260 | "cell_type": "markdown",
261 | "metadata": {
262 | "id": "i0ki6ZcDywsP"
263 | },
264 | "source": [
265 | "# Built-in methods of NumPy"
266 | ]
267 | },
268 | {
269 | "cell_type": "markdown",
270 | "metadata": {
271 | "id": "9F4PLRpmy1Mm"
272 | },
273 | "source": [
274 | "1. np.arange : Generating a Vector of Range of Numbers. \n",
275 | "\n",
276 | "Eg. Saturation."
277 | ]
278 | },
279 | {
280 | "cell_type": "code",
281 | "metadata": {
282 | "colab": {
283 | "base_uri": "https://localhost:8080/"
284 | },
285 | "id": "1JlZ01KcyusC",
286 | "outputId": "a416bec5-3db5-4051-f0c8-0118e6410261"
287 | },
288 | "source": [
289 | "Sw = np.arange(start=0 , stop = 1, step = 0.005)\n",
290 | "\n",
291 | "Sw"
292 | ],
293 | "execution_count": 92,
294 | "outputs": [
295 | {
296 | "output_type": "execute_result",
297 | "data": {
298 | "text/plain": [
299 | "array([0. , 0.005, 0.01 , 0.015, 0.02 , 0.025, 0.03 , 0.035, 0.04 ,\n",
300 | " 0.045, 0.05 , 0.055, 0.06 , 0.065, 0.07 , 0.075, 0.08 , 0.085,\n",
301 | " 0.09 , 0.095, 0.1 , 0.105, 0.11 , 0.115, 0.12 , 0.125, 0.13 ,\n",
302 | " 0.135, 0.14 , 0.145, 0.15 , 0.155, 0.16 , 0.165, 0.17 , 0.175,\n",
303 | " 0.18 , 0.185, 0.19 , 0.195, 0.2 , 0.205, 0.21 , 0.215, 0.22 ,\n",
304 | " 0.225, 0.23 , 0.235, 0.24 , 0.245, 0.25 , 0.255, 0.26 , 0.265,\n",
305 | " 0.27 , 0.275, 0.28 , 0.285, 0.29 , 0.295, 0.3 , 0.305, 0.31 ,\n",
306 | " 0.315, 0.32 , 0.325, 0.33 , 0.335, 0.34 , 0.345, 0.35 , 0.355,\n",
307 | " 0.36 , 0.365, 0.37 , 0.375, 0.38 , 0.385, 0.39 , 0.395, 0.4 ,\n",
308 | " 0.405, 0.41 , 0.415, 0.42 , 0.425, 0.43 , 0.435, 0.44 , 0.445,\n",
309 | " 0.45 , 0.455, 0.46 , 0.465, 0.47 , 0.475, 0.48 , 0.485, 0.49 ,\n",
310 | " 0.495, 0.5 , 0.505, 0.51 , 0.515, 0.52 , 0.525, 0.53 , 0.535,\n",
311 | " 0.54 , 0.545, 0.55 , 0.555, 0.56 , 0.565, 0.57 , 0.575, 0.58 ,\n",
312 | " 0.585, 0.59 , 0.595, 0.6 , 0.605, 0.61 , 0.615, 0.62 , 0.625,\n",
313 | " 0.63 , 0.635, 0.64 , 0.645, 0.65 , 0.655, 0.66 , 0.665, 0.67 ,\n",
314 | " 0.675, 0.68 , 0.685, 0.69 , 0.695, 0.7 , 0.705, 0.71 , 0.715,\n",
315 | " 0.72 , 0.725, 0.73 , 0.735, 0.74 , 0.745, 0.75 , 0.755, 0.76 ,\n",
316 | " 0.765, 0.77 , 0.775, 0.78 , 0.785, 0.79 , 0.795, 0.8 , 0.805,\n",
317 | " 0.81 , 0.815, 0.82 , 0.825, 0.83 , 0.835, 0.84 , 0.845, 0.85 ,\n",
318 | " 0.855, 0.86 , 0.865, 0.87 , 0.875, 0.88 , 0.885, 0.89 , 0.895,\n",
319 | " 0.9 , 0.905, 0.91 , 0.915, 0.92 , 0.925, 0.93 , 0.935, 0.94 ,\n",
320 | " 0.945, 0.95 , 0.955, 0.96 , 0.965, 0.97 , 0.975, 0.98 , 0.985,\n",
321 | " 0.99 , 0.995])"
322 | ]
323 | },
324 | "metadata": {
325 | "tags": []
326 | },
327 | "execution_count": 92
328 | }
329 | ]
330 | },
331 | {
332 | "cell_type": "markdown",
333 | "metadata": {
334 | "id": "4qoEy36RzL7e"
335 | },
336 | "source": [
337 | "2. Generate a Matrix/Array of 0s or 1s."
338 | ]
339 | },
340 | {
341 | "cell_type": "code",
342 | "metadata": {
343 | "colab": {
344 | "base_uri": "https://localhost:8080/"
345 | },
346 | "id": "mBMCdeLPzHhF",
347 | "outputId": "c9bc88f3-477b-496e-9208-25425ec60118"
348 | },
349 | "source": [
350 | "np.zeros((10,10))"
351 | ],
352 | "execution_count": 93,
353 | "outputs": [
354 | {
355 | "output_type": "execute_result",
356 | "data": {
357 | "text/plain": [
358 | "array([[0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],\n",
359 | " [0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],\n",
360 | " [0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],\n",
361 | " [0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],\n",
362 | " [0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],\n",
363 | " [0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],\n",
364 | " [0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],\n",
365 | " [0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],\n",
366 | " [0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],\n",
367 | " [0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]])"
368 | ]
369 | },
370 | "metadata": {
371 | "tags": []
372 | },
373 | "execution_count": 93
374 | }
375 | ]
376 | },
377 | {
378 | "cell_type": "code",
379 | "metadata": {
380 | "id": "mLQeRkRdzSO-"
381 | },
382 | "source": [
383 | "P = np.ones((10,10))\n",
384 | "Pi = 5000 #psi\n",
385 | "P = P*Pi"
386 | ],
387 | "execution_count": 95,
388 | "outputs": []
389 | },
390 | {
391 | "cell_type": "code",
392 | "metadata": {
393 | "colab": {
394 | "base_uri": "https://localhost:8080/"
395 | },
396 | "id": "7hI5zAYePn_R",
397 | "outputId": "372379d4-697c-42f4-ab8d-f840c607d784"
398 | },
399 | "source": [
400 | "P"
401 | ],
402 | "execution_count": 96,
403 | "outputs": [
404 | {
405 | "output_type": "execute_result",
406 | "data": {
407 | "text/plain": [
408 | "array([[5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000.,\n",
409 | " 5000.],\n",
410 | " [5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000.,\n",
411 | " 5000.],\n",
412 | " [5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000.,\n",
413 | " 5000.],\n",
414 | " [5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000.,\n",
415 | " 5000.],\n",
416 | " [5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000.,\n",
417 | " 5000.],\n",
418 | " [5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000.,\n",
419 | " 5000.],\n",
420 | " [5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000.,\n",
421 | " 5000.],\n",
422 | " [5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000.,\n",
423 | " 5000.],\n",
424 | " [5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000.,\n",
425 | " 5000.],\n",
426 | " [5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000., 5000.,\n",
427 | " 5000.]])"
428 | ]
429 | },
430 | "metadata": {
431 | "tags": []
432 | },
433 | "execution_count": 96
434 | }
435 | ]
436 | },
437 | {
438 | "cell_type": "markdown",
439 | "metadata": {
440 | "id": "i_8mXSf0zZli"
441 | },
442 | "source": [
443 | "3. np.linspace : Create a Linearly Spaced vector."
444 | ]
445 | },
446 | {
447 | "cell_type": "code",
448 | "metadata": {
449 | "colab": {
450 | "base_uri": "https://localhost:8080/"
451 | },
452 | "id": "Y-yT0QOuzUyQ",
453 | "outputId": "b16af65a-a086-4459-9b85-1df071f61f17"
454 | },
455 | "source": [
456 | "np.linspace(start = 0 , stop = 1 , num = 100)"
457 | ],
458 | "execution_count": 98,
459 | "outputs": [
460 | {
461 | "output_type": "execute_result",
462 | "data": {
463 | "text/plain": [
464 | "array([0. , 0.01010101, 0.02020202, 0.03030303, 0.04040404,\n",
465 | " 0.05050505, 0.06060606, 0.07070707, 0.08080808, 0.09090909,\n",
466 | " 0.1010101 , 0.11111111, 0.12121212, 0.13131313, 0.14141414,\n",
467 | " 0.15151515, 0.16161616, 0.17171717, 0.18181818, 0.19191919,\n",
468 | " 0.2020202 , 0.21212121, 0.22222222, 0.23232323, 0.24242424,\n",
469 | " 0.25252525, 0.26262626, 0.27272727, 0.28282828, 0.29292929,\n",
470 | " 0.3030303 , 0.31313131, 0.32323232, 0.33333333, 0.34343434,\n",
471 | " 0.35353535, 0.36363636, 0.37373737, 0.38383838, 0.39393939,\n",
472 | " 0.4040404 , 0.41414141, 0.42424242, 0.43434343, 0.44444444,\n",
473 | " 0.45454545, 0.46464646, 0.47474747, 0.48484848, 0.49494949,\n",
474 | " 0.50505051, 0.51515152, 0.52525253, 0.53535354, 0.54545455,\n",
475 | " 0.55555556, 0.56565657, 0.57575758, 0.58585859, 0.5959596 ,\n",
476 | " 0.60606061, 0.61616162, 0.62626263, 0.63636364, 0.64646465,\n",
477 | " 0.65656566, 0.66666667, 0.67676768, 0.68686869, 0.6969697 ,\n",
478 | " 0.70707071, 0.71717172, 0.72727273, 0.73737374, 0.74747475,\n",
479 | " 0.75757576, 0.76767677, 0.77777778, 0.78787879, 0.7979798 ,\n",
480 | " 0.80808081, 0.81818182, 0.82828283, 0.83838384, 0.84848485,\n",
481 | " 0.85858586, 0.86868687, 0.87878788, 0.88888889, 0.8989899 ,\n",
482 | " 0.90909091, 0.91919192, 0.92929293, 0.93939394, 0.94949495,\n",
483 | " 0.95959596, 0.96969697, 0.97979798, 0.98989899, 1. ])"
484 | ]
485 | },
486 | "metadata": {
487 | "tags": []
488 | },
489 | "execution_count": 98
490 | }
491 | ]
492 | },
493 | {
494 | "cell_type": "markdown",
495 | "metadata": {
496 | "id": "agNl_qr1zo-3"
497 | },
498 | "source": [
499 | "4. np.eye : Create an Identity Matrix."
500 | ]
501 | },
502 | {
503 | "cell_type": "code",
504 | "metadata": {
505 | "colab": {
506 | "base_uri": "https://localhost:8080/"
507 | },
508 | "id": "SY2d7-jPzkN3",
509 | "outputId": "9261f919-0db2-45ad-9b8c-85946565f676"
510 | },
511 | "source": [
512 | "np.eye(5) # 4x4 Identity Matrix"
513 | ],
514 | "execution_count": 99,
515 | "outputs": [
516 | {
517 | "output_type": "execute_result",
518 | "data": {
519 | "text/plain": [
520 | "array([[1., 0., 0., 0., 0.],\n",
521 | " [0., 1., 0., 0., 0.],\n",
522 | " [0., 0., 1., 0., 0.],\n",
523 | " [0., 0., 0., 1., 0.],\n",
524 | " [0., 0., 0., 0., 1.]])"
525 | ]
526 | },
527 | "metadata": {
528 | "tags": []
529 | },
530 | "execution_count": 99
531 | }
532 | ]
533 | },
534 | {
535 | "cell_type": "markdown",
536 | "metadata": {
537 | "id": "9X2fIOtIz0w7"
538 | },
539 | "source": [
540 | "## NumPy's Random Number Generation Capabilities."
541 | ]
542 | },
543 | {
544 | "cell_type": "markdown",
545 | "metadata": {
546 | "id": "lZgwj5PZ0kkG"
547 | },
548 | "source": [
549 | "Generate 3 Random Numbers from a Uniform Distribution in [0,1) interval"
550 | ]
551 | },
552 | {
553 | "cell_type": "code",
554 | "metadata": {
555 | "colab": {
556 | "base_uri": "https://localhost:8080/"
557 | },
558 | "id": "QM3Dz3hWzwxi",
559 | "outputId": "c51e4e8d-d63e-4cd6-b688-d506a11bd1b8"
560 | },
561 | "source": [
562 | "np.random.rand(3)"
563 | ],
564 | "execution_count": 101,
565 | "outputs": [
566 | {
567 | "output_type": "execute_result",
568 | "data": {
569 | "text/plain": [
570 | "array([0.29765699, 0.98903906, 0.22353677])"
571 | ]
572 | },
573 | "metadata": {
574 | "tags": []
575 | },
576 | "execution_count": 101
577 | }
578 | ]
579 | },
580 | {
581 | "cell_type": "markdown",
582 | "metadata": {
583 | "id": "lMOeKfpY0xTV"
584 | },
585 | "source": [
586 | "Generate 5 Random Samples from Standard Normal Distribution."
587 | ]
588 | },
589 | {
590 | "cell_type": "code",
591 | "metadata": {
592 | "colab": {
593 | "base_uri": "https://localhost:8080/"
594 | },
595 | "id": "L6DuVu4B0ar4",
596 | "outputId": "c8b15458-3fa9-4592-bd43-57e05eb58921"
597 | },
598 | "source": [
599 | "np.random.randn(5)"
600 | ],
601 | "execution_count": 16,
602 | "outputs": [
603 | {
604 | "output_type": "execute_result",
605 | "data": {
606 | "text/plain": [
607 | "array([ 1.37710354, -2.01278539, 1.66007349, 1.88203505, -0.35254634])"
608 | ]
609 | },
610 | "metadata": {
611 | "tags": []
612 | },
613 | "execution_count": 16
614 | }
615 | ]
616 | },
617 | {
618 | "cell_type": "code",
619 | "metadata": {
620 | "colab": {
621 | "base_uri": "https://localhost:8080/"
622 | },
623 | "id": "9yL0TyEa03mQ",
624 | "outputId": "7e4ccca8-1b20-4d51-cded-b927c6f5fc07"
625 | },
626 | "source": [
627 | "#MAtrix containing all SND values. \n",
628 | "np.random.randn(7000,5)"
629 | ],
630 | "execution_count": 102,
631 | "outputs": [
632 | {
633 | "output_type": "execute_result",
634 | "data": {
635 | "text/plain": [
636 | "array([[ 1.96773329, 1.32788049, 0.12659496, 1.72309875, -0.07746591],\n",
637 | " [ 1.82787214, 0.30832428, 0.64173028, -0.55261589, 0.90131923],\n",
638 | " [-0.70942399, 2.5530326 , 1.9371735 , -0.48668674, 0.17080277],\n",
639 | " ...,\n",
640 | " [-1.43510458, 0.30860086, 0.43482077, 0.42544275, -0.08406665],\n",
641 | " [-0.67506255, -1.19003494, 1.74330016, 0.66187072, -0.73667764],\n",
642 | " [ 1.14218215, 0.42645458, -0.59164283, 0.31159763, 0.93865275]])"
643 | ]
644 | },
645 | "metadata": {
646 | "tags": []
647 | },
648 | "execution_count": 102
649 | }
650 | ]
651 | },
652 | {
653 | "cell_type": "markdown",
654 | "metadata": {
655 | "id": "pn7fjP-r1JvA"
656 | },
657 | "source": [
658 | "'Randint' to generate random integers."
659 | ]
660 | },
661 | {
662 | "cell_type": "code",
663 | "metadata": {
664 | "colab": {
665 | "base_uri": "https://localhost:8080/"
666 | },
667 | "id": "dmAVjrmu1JO6",
668 | "outputId": "20df51b3-a46b-4fc0-8312-def84d2ca4b0"
669 | },
670 | "source": [
671 | "np.random.randint(low=1, high=100, size=10)"
672 | ],
673 | "execution_count": 103,
674 | "outputs": [
675 | {
676 | "output_type": "execute_result",
677 | "data": {
678 | "text/plain": [
679 | "array([25, 71, 64, 96, 74, 8, 60, 24, 6, 83])"
680 | ]
681 | },
682 | "metadata": {
683 | "tags": []
684 | },
685 | "execution_count": 103
686 | }
687 | ]
688 | },
689 | {
690 | "cell_type": "markdown",
691 | "metadata": {
692 | "id": "R3FUv1Gb1Fvr"
693 | },
694 | "source": [
695 | "## Shape and Reshape of an array"
696 | ]
697 | },
698 | {
699 | "cell_type": "code",
700 | "metadata": {
701 | "colab": {
702 | "base_uri": "https://localhost:8080/"
703 | },
704 | "id": "DPn3libE09jU",
705 | "outputId": "faf9885c-dbc1-45ba-8d7d-7b645e03e18e"
706 | },
707 | "source": [
708 | "# 1. Reshaping a 100 value arrray to a 10x10 matrix. \n",
709 | "v100 = np.linspace(0,1,100)\n",
710 | "v100.shape\n",
711 | "v100"
712 | ],
713 | "execution_count": 105,
714 | "outputs": [
715 | {
716 | "output_type": "execute_result",
717 | "data": {
718 | "text/plain": [
719 | "array([0. , 0.01010101, 0.02020202, 0.03030303, 0.04040404,\n",
720 | " 0.05050505, 0.06060606, 0.07070707, 0.08080808, 0.09090909,\n",
721 | " 0.1010101 , 0.11111111, 0.12121212, 0.13131313, 0.14141414,\n",
722 | " 0.15151515, 0.16161616, 0.17171717, 0.18181818, 0.19191919,\n",
723 | " 0.2020202 , 0.21212121, 0.22222222, 0.23232323, 0.24242424,\n",
724 | " 0.25252525, 0.26262626, 0.27272727, 0.28282828, 0.29292929,\n",
725 | " 0.3030303 , 0.31313131, 0.32323232, 0.33333333, 0.34343434,\n",
726 | " 0.35353535, 0.36363636, 0.37373737, 0.38383838, 0.39393939,\n",
727 | " 0.4040404 , 0.41414141, 0.42424242, 0.43434343, 0.44444444,\n",
728 | " 0.45454545, 0.46464646, 0.47474747, 0.48484848, 0.49494949,\n",
729 | " 0.50505051, 0.51515152, 0.52525253, 0.53535354, 0.54545455,\n",
730 | " 0.55555556, 0.56565657, 0.57575758, 0.58585859, 0.5959596 ,\n",
731 | " 0.60606061, 0.61616162, 0.62626263, 0.63636364, 0.64646465,\n",
732 | " 0.65656566, 0.66666667, 0.67676768, 0.68686869, 0.6969697 ,\n",
733 | " 0.70707071, 0.71717172, 0.72727273, 0.73737374, 0.74747475,\n",
734 | " 0.75757576, 0.76767677, 0.77777778, 0.78787879, 0.7979798 ,\n",
735 | " 0.80808081, 0.81818182, 0.82828283, 0.83838384, 0.84848485,\n",
736 | " 0.85858586, 0.86868687, 0.87878788, 0.88888889, 0.8989899 ,\n",
737 | " 0.90909091, 0.91919192, 0.92929293, 0.93939394, 0.94949495,\n",
738 | " 0.95959596, 0.96969697, 0.97979798, 0.98989899, 1. ])"
739 | ]
740 | },
741 | "metadata": {
742 | "tags": []
743 | },
744 | "execution_count": 105
745 | }
746 | ]
747 | },
748 | {
749 | "cell_type": "code",
750 | "metadata": {
751 | "colab": {
752 | "base_uri": "https://localhost:8080/"
753 | },
754 | "id": "gso5rcyp1z5T",
755 | "outputId": "c4950b2a-3be8-4c52-ce08-d84c2d20d1fb"
756 | },
757 | "source": [
758 | "m10_10 = v100.reshape(10,10)\n",
759 | "m10_10.shape"
760 | ],
761 | "execution_count": 107,
762 | "outputs": [
763 | {
764 | "output_type": "execute_result",
765 | "data": {
766 | "text/plain": [
767 | "(10, 10)"
768 | ]
769 | },
770 | "metadata": {
771 | "tags": []
772 | },
773 | "execution_count": 107
774 | }
775 | ]
776 | },
777 | {
778 | "cell_type": "code",
779 | "metadata": {
780 | "colab": {
781 | "base_uri": "https://localhost:8080/"
782 | },
783 | "id": "SIpEPWHu13X_",
784 | "outputId": "90836790-6455-41f0-ebbd-e615d6a7a129"
785 | },
786 | "source": [
787 | "m10_10.shape"
788 | ],
789 | "execution_count": 22,
790 | "outputs": [
791 | {
792 | "output_type": "execute_result",
793 | "data": {
794 | "text/plain": [
795 | "(10, 10)"
796 | ]
797 | },
798 | "metadata": {
799 | "tags": []
800 | },
801 | "execution_count": 22
802 | }
803 | ]
804 | },
805 | {
806 | "cell_type": "markdown",
807 | "metadata": {
808 | "id": "sC7qq7T21_Se"
809 | },
810 | "source": [
811 | "### max-min-argmax-argmin. \n",
812 | "\n",
813 | "1. np.max : returns max value in array. \n",
814 | "2. np.min : returns min value in array. \n",
815 | "3. np.argmax : returns positon (index) of max value. \n",
816 | "4. np.argmin : \" \" of min value."
817 | ]
818 | },
819 | {
820 | "cell_type": "code",
821 | "metadata": {
822 | "id": "iAYqGlEY17Kd"
823 | },
824 | "source": [
825 | "ranarr = np.random.randint(0,50,15)"
826 | ],
827 | "execution_count": 108,
828 | "outputs": []
829 | },
830 | {
831 | "cell_type": "code",
832 | "metadata": {
833 | "colab": {
834 | "base_uri": "https://localhost:8080/"
835 | },
836 | "id": "NT9Jkr402Wmy",
837 | "outputId": "59bb3805-8d83-4668-b835-6ef8f4bb2e5e"
838 | },
839 | "source": [
840 | "ranarr"
841 | ],
842 | "execution_count": 114,
843 | "outputs": [
844 | {
845 | "output_type": "execute_result",
846 | "data": {
847 | "text/plain": [
848 | "array([14, 24, 26, 8, 27, 9, 8, 43, 44, 10, 46, 42, 2, 27, 37])"
849 | ]
850 | },
851 | "metadata": {
852 | "tags": []
853 | },
854 | "execution_count": 114
855 | }
856 | ]
857 | },
858 | {
859 | "cell_type": "code",
860 | "metadata": {
861 | "colab": {
862 | "base_uri": "https://localhost:8080/"
863 | },
864 | "id": "y3W9soMg2Y-r",
865 | "outputId": "40f1e005-c9f6-4197-880a-a9377796882f"
866 | },
867 | "source": [
868 | "ranarr[np.argmin(ranarr)]"
869 | ],
870 | "execution_count": 116,
871 | "outputs": [
872 | {
873 | "output_type": "execute_result",
874 | "data": {
875 | "text/plain": [
876 | "2"
877 | ]
878 | },
879 | "metadata": {
880 | "tags": []
881 | },
882 | "execution_count": 116
883 | }
884 | ]
885 | },
886 | {
887 | "cell_type": "code",
888 | "metadata": {
889 | "colab": {
890 | "base_uri": "https://localhost:8080/"
891 | },
892 | "id": "Vza6x5tY2yKu",
893 | "outputId": "efdb662f-b559-4842-a4c6-1e786de74771"
894 | },
895 | "source": [
896 | "np.max(ranarr)"
897 | ],
898 | "execution_count": 111,
899 | "outputs": [
900 | {
901 | "output_type": "execute_result",
902 | "data": {
903 | "text/plain": [
904 | "46"
905 | ]
906 | },
907 | "metadata": {
908 | "tags": []
909 | },
910 | "execution_count": 111
911 | }
912 | ]
913 | },
914 | {
915 | "cell_type": "code",
916 | "metadata": {
917 | "colab": {
918 | "base_uri": "https://localhost:8080/"
919 | },
920 | "id": "4vBN3oi422e7",
921 | "outputId": "7b136890-cd62-49f6-cf80-0c97e7c78202"
922 | },
923 | "source": [
924 | "np.argmin(ranarr)"
925 | ],
926 | "execution_count": 28,
927 | "outputs": [
928 | {
929 | "output_type": "execute_result",
930 | "data": {
931 | "text/plain": [
932 | "4"
933 | ]
934 | },
935 | "metadata": {
936 | "tags": []
937 | },
938 | "execution_count": 28
939 | }
940 | ]
941 | },
942 | {
943 | "cell_type": "code",
944 | "metadata": {
945 | "colab": {
946 | "base_uri": "https://localhost:8080/"
947 | },
948 | "id": "SXGOQx1M25GJ",
949 | "outputId": "08f26e1d-7213-43f4-cd54-6df1992e4004"
950 | },
951 | "source": [
952 | "ranarr[2]"
953 | ],
954 | "execution_count": 113,
955 | "outputs": [
956 | {
957 | "output_type": "execute_result",
958 | "data": {
959 | "text/plain": [
960 | "26"
961 | ]
962 | },
963 | "metadata": {
964 | "tags": []
965 | },
966 | "execution_count": 113
967 | }
968 | ]
969 | },
970 | {
971 | "cell_type": "code",
972 | "metadata": {
973 | "colab": {
974 | "base_uri": "https://localhost:8080/"
975 | },
976 | "id": "zEqOu7x0267i",
977 | "outputId": "8c159e29-13fd-4b94-ee11-05af98c0d5c7"
978 | },
979 | "source": [
980 | "np.argmax(ranarr)"
981 | ],
982 | "execution_count": 30,
983 | "outputs": [
984 | {
985 | "output_type": "execute_result",
986 | "data": {
987 | "text/plain": [
988 | "8"
989 | ]
990 | },
991 | "metadata": {
992 | "tags": []
993 | },
994 | "execution_count": 30
995 | }
996 | ]
997 | },
998 | {
999 | "cell_type": "code",
1000 | "metadata": {
1001 | "colab": {
1002 | "base_uri": "https://localhost:8080/"
1003 | },
1004 | "id": "jF96v_Sp2-_h",
1005 | "outputId": "de4d5ec0-0c11-46d8-cdfc-b7f254552354"
1006 | },
1007 | "source": [
1008 | "ranarr[8]"
1009 | ],
1010 | "execution_count": 31,
1011 | "outputs": [
1012 | {
1013 | "output_type": "execute_result",
1014 | "data": {
1015 | "text/plain": [
1016 | "48"
1017 | ]
1018 | },
1019 | "metadata": {
1020 | "tags": []
1021 | },
1022 | "execution_count": 31
1023 | }
1024 | ]
1025 | },
1026 | {
1027 | "cell_type": "markdown",
1028 | "metadata": {
1029 | "id": "GYz7lOJq3Wxt"
1030 | },
1031 | "source": [
1032 | "## Indexing, Selection and Broadcasting."
1033 | ]
1034 | },
1035 | {
1036 | "cell_type": "code",
1037 | "metadata": {
1038 | "id": "X9Qzrcu73BQC"
1039 | },
1040 | "source": [
1041 | "arr = np.linspace(0,1,10)"
1042 | ],
1043 | "execution_count": 33,
1044 | "outputs": []
1045 | },
1046 | {
1047 | "cell_type": "code",
1048 | "metadata": {
1049 | "colab": {
1050 | "base_uri": "https://localhost:8080/"
1051 | },
1052 | "id": "mZgFMkOZ3odi",
1053 | "outputId": "8106a737-d8db-4125-8e80-84262c40b930"
1054 | },
1055 | "source": [
1056 | "arr"
1057 | ],
1058 | "execution_count": 34,
1059 | "outputs": [
1060 | {
1061 | "output_type": "execute_result",
1062 | "data": {
1063 | "text/plain": [
1064 | "array([0. , 0.11111111, 0.22222222, 0.33333333, 0.44444444,\n",
1065 | " 0.55555556, 0.66666667, 0.77777778, 0.88888889, 1. ])"
1066 | ]
1067 | },
1068 | "metadata": {
1069 | "tags": []
1070 | },
1071 | "execution_count": 34
1072 | }
1073 | ]
1074 | },
1075 | {
1076 | "cell_type": "code",
1077 | "metadata": {
1078 | "id": "LBSn1Wjq3ugT"
1079 | },
1080 | "source": [
1081 | "#indexing. Just like lists"
1082 | ],
1083 | "execution_count": 35,
1084 | "outputs": []
1085 | },
1086 | {
1087 | "cell_type": "code",
1088 | "metadata": {
1089 | "colab": {
1090 | "base_uri": "https://localhost:8080/"
1091 | },
1092 | "id": "gup8Wkfj30ky",
1093 | "outputId": "629f4ef9-ce43-4566-dc84-2e724c6cdb50"
1094 | },
1095 | "source": [
1096 | "arr[7]"
1097 | ],
1098 | "execution_count": 36,
1099 | "outputs": [
1100 | {
1101 | "output_type": "execute_result",
1102 | "data": {
1103 | "text/plain": [
1104 | "0.7777777777777777"
1105 | ]
1106 | },
1107 | "metadata": {
1108 | "tags": []
1109 | },
1110 | "execution_count": 36
1111 | }
1112 | ]
1113 | },
1114 | {
1115 | "cell_type": "code",
1116 | "metadata": {
1117 | "colab": {
1118 | "base_uri": "https://localhost:8080/"
1119 | },
1120 | "id": "Hvs-4Ins31qp",
1121 | "outputId": "802af69e-a0f7-4aea-8949-fdf0d2f49125"
1122 | },
1123 | "source": [
1124 | "#slicing. \n",
1125 | "arr[0:7]"
1126 | ],
1127 | "execution_count": 37,
1128 | "outputs": [
1129 | {
1130 | "output_type": "execute_result",
1131 | "data": {
1132 | "text/plain": [
1133 | "array([0. , 0.11111111, 0.22222222, 0.33333333, 0.44444444,\n",
1134 | " 0.55555556, 0.66666667])"
1135 | ]
1136 | },
1137 | "metadata": {
1138 | "tags": []
1139 | },
1140 | "execution_count": 37
1141 | }
1142 | ]
1143 | },
1144 | {
1145 | "cell_type": "code",
1146 | "metadata": {
1147 | "colab": {
1148 | "base_uri": "https://localhost:8080/"
1149 | },
1150 | "id": "BIDCOlgy34fW",
1151 | "outputId": "9ddcaaa7-9f3d-4ed0-edc7-3297a3b6e99e"
1152 | },
1153 | "source": [
1154 | "#Note that a slice is the view of the same array than a new array. \n",
1155 | "#Any changes made to the slice are reflected in the array. \n",
1156 | "arr[0:3] = 1000\n",
1157 | "arr"
1158 | ],
1159 | "execution_count": 38,
1160 | "outputs": [
1161 | {
1162 | "output_type": "execute_result",
1163 | "data": {
1164 | "text/plain": [
1165 | "array([1.00000000e+03, 1.00000000e+03, 1.00000000e+03, 3.33333333e-01,\n",
1166 | " 4.44444444e-01, 5.55555556e-01, 6.66666667e-01, 7.77777778e-01,\n",
1167 | " 8.88888889e-01, 1.00000000e+00])"
1168 | ]
1169 | },
1170 | "metadata": {
1171 | "tags": []
1172 | },
1173 | "execution_count": 38
1174 | }
1175 | ]
1176 | },
1177 | {
1178 | "cell_type": "code",
1179 | "metadata": {
1180 | "id": "6Ki6ehJf4GXn"
1181 | },
1182 | "source": [
1183 | "#In order to prevent that from happening. make a copy. \n",
1184 | "\n",
1185 | "# slice_array_version = array.copy()"
1186 | ],
1187 | "execution_count": 40,
1188 | "outputs": []
1189 | },
1190 | {
1191 | "cell_type": "markdown",
1192 | "metadata": {
1193 | "id": "omB4Lynr4YKV"
1194 | },
1195 | "source": [
1196 | "### Indexing a 2D array/"
1197 | ]
1198 | },
1199 | {
1200 | "cell_type": "code",
1201 | "metadata": {
1202 | "colab": {
1203 | "base_uri": "https://localhost:8080/"
1204 | },
1205 | "id": "wqu6_7c54S3H",
1206 | "outputId": "49c50be6-f9b4-4d50-a89c-8dbfa4474f6b"
1207 | },
1208 | "source": [
1209 | "a2d = np.array(([5,10,15],[20,25,30],[35,40,45]))\n",
1210 | "\n",
1211 | "a2d"
1212 | ],
1213 | "execution_count": 41,
1214 | "outputs": [
1215 | {
1216 | "output_type": "execute_result",
1217 | "data": {
1218 | "text/plain": [
1219 | "array([[ 5, 10, 15],\n",
1220 | " [20, 25, 30],\n",
1221 | " [35, 40, 45]])"
1222 | ]
1223 | },
1224 | "metadata": {
1225 | "tags": []
1226 | },
1227 | "execution_count": 41
1228 | }
1229 | ]
1230 | },
1231 | {
1232 | "cell_type": "code",
1233 | "metadata": {
1234 | "colab": {
1235 | "base_uri": "https://localhost:8080/"
1236 | },
1237 | "id": "AZFrG4G44dy_",
1238 | "outputId": "b040fc20-b450-44e9-d404-30f59137a884"
1239 | },
1240 | "source": [
1241 | "a2d[0,1]"
1242 | ],
1243 | "execution_count": 43,
1244 | "outputs": [
1245 | {
1246 | "output_type": "execute_result",
1247 | "data": {
1248 | "text/plain": [
1249 | "10"
1250 | ]
1251 | },
1252 | "metadata": {
1253 | "tags": []
1254 | },
1255 | "execution_count": 43
1256 | }
1257 | ]
1258 | },
1259 | {
1260 | "cell_type": "code",
1261 | "metadata": {
1262 | "id": "tK2qqIMo4hRd"
1263 | },
1264 | "source": [
1265 | "# a2d[ rowmin : rowmax+1 , :]"
1266 | ],
1267 | "execution_count": 44,
1268 | "outputs": []
1269 | },
1270 | {
1271 | "cell_type": "code",
1272 | "metadata": {
1273 | "colab": {
1274 | "base_uri": "https://localhost:8080/"
1275 | },
1276 | "id": "c9mZA9p44n8Q",
1277 | "outputId": "093b5799-26ac-4b15-815f-a74f3ddf8a5f"
1278 | },
1279 | "source": [
1280 | "a2d[:2,1:]"
1281 | ],
1282 | "execution_count": 45,
1283 | "outputs": [
1284 | {
1285 | "output_type": "execute_result",
1286 | "data": {
1287 | "text/plain": [
1288 | "array([[10, 15],\n",
1289 | " [25, 30]])"
1290 | ]
1291 | },
1292 | "metadata": {
1293 | "tags": []
1294 | },
1295 | "execution_count": 45
1296 | }
1297 | ]
1298 | },
1299 | {
1300 | "cell_type": "markdown",
1301 | "metadata": {
1302 | "id": "Bu811q-u4tgE"
1303 | },
1304 | "source": [
1305 | "## Selection based on a condition"
1306 | ]
1307 | },
1308 | {
1309 | "cell_type": "code",
1310 | "metadata": {
1311 | "colab": {
1312 | "base_uri": "https://localhost:8080/"
1313 | },
1314 | "id": "gmBIqJoe4qXR",
1315 | "outputId": "a4a2ec1a-61ee-43be-d401-cb363dbf1ce6"
1316 | },
1317 | "source": [
1318 | "Marks = np.random.randint(1,100,1000)\n",
1319 | "\n",
1320 | "Marks"
1321 | ],
1322 | "execution_count": 117,
1323 | "outputs": [
1324 | {
1325 | "output_type": "execute_result",
1326 | "data": {
1327 | "text/plain": [
1328 | "array([36, 63, 34, 66, 94, 26, 33, 68, 84, 46, 21, 44, 73, 5, 5, 1, 44,\n",
1329 | " 48, 2, 71, 81, 55, 66, 27, 59, 55, 11, 55, 21, 11, 84, 34, 27, 37,\n",
1330 | " 13, 31, 19, 36, 39, 81, 94, 23, 17, 22, 69, 65, 41, 36, 64, 12, 77,\n",
1331 | " 66, 62, 11, 92, 53, 13, 75, 80, 20, 90, 69, 87, 41, 50, 2, 75, 76,\n",
1332 | " 27, 82, 90, 25, 39, 82, 87, 41, 20, 80, 64, 9, 58, 35, 44, 83, 17,\n",
1333 | " 30, 97, 25, 39, 27, 6, 81, 77, 67, 75, 69, 79, 6, 95, 26, 98, 71,\n",
1334 | " 15, 60, 88, 62, 25, 1, 89, 81, 39, 23, 26, 5, 68, 74, 29, 29, 70,\n",
1335 | " 98, 20, 31, 5, 53, 64, 11, 75, 80, 88, 73, 83, 36, 19, 14, 2, 13,\n",
1336 | " 76, 4, 15, 79, 53, 15, 19, 72, 22, 88, 14, 11, 68, 12, 11, 81, 34,\n",
1337 | " 80, 57, 68, 99, 57, 57, 77, 33, 46, 21, 73, 84, 18, 76, 49, 69, 70,\n",
1338 | " 8, 96, 86, 93, 52, 22, 4, 26, 35, 24, 94, 23, 35, 11, 83, 15, 40,\n",
1339 | " 20, 67, 96, 54, 67, 50, 47, 6, 88, 23, 93, 69, 96, 81, 82, 37, 26,\n",
1340 | " 59, 72, 55, 52, 56, 45, 9, 14, 98, 5, 57, 54, 44, 77, 70, 69, 95,\n",
1341 | " 75, 78, 12, 49, 55, 64, 65, 89, 59, 79, 90, 75, 19, 32, 20, 25, 21,\n",
1342 | " 31, 78, 81, 34, 31, 3, 8, 68, 63, 9, 17, 84, 33, 66, 8, 27, 58,\n",
1343 | " 30, 16, 96, 22, 49, 66, 51, 6, 63, 75, 28, 80, 43, 77, 30, 75, 63,\n",
1344 | " 76, 88, 35, 55, 80, 20, 95, 75, 7, 11, 23, 4, 71, 7, 24, 11, 80,\n",
1345 | " 11, 67, 96, 72, 56, 78, 11, 39, 63, 9, 21, 17, 89, 25, 99, 70, 78,\n",
1346 | " 16, 28, 99, 58, 3, 30, 90, 48, 58, 21, 8, 83, 10, 24, 91, 89, 89,\n",
1347 | " 30, 26, 44, 82, 14, 59, 45, 15, 83, 42, 44, 70, 93, 94, 38, 91, 6,\n",
1348 | " 16, 52, 83, 19, 40, 70, 91, 82, 9, 82, 50, 49, 82, 90, 24, 87, 67,\n",
1349 | " 63, 7, 35, 57, 36, 56, 27, 10, 70, 44, 45, 84, 11, 75, 64, 67, 33,\n",
1350 | " 45, 79, 32, 91, 56, 57, 47, 95, 80, 67, 81, 27, 84, 10, 26, 83, 79,\n",
1351 | " 79, 37, 40, 56, 27, 34, 2, 22, 76, 74, 24, 26, 32, 45, 80, 90, 16,\n",
1352 | " 61, 35, 59, 65, 84, 36, 30, 51, 93, 6, 53, 57, 69, 32, 10, 63, 5,\n",
1353 | " 58, 38, 79, 54, 9, 72, 47, 92, 34, 14, 10, 42, 26, 91, 24, 84, 8,\n",
1354 | " 84, 65, 7, 15, 72, 6, 88, 53, 10, 66, 46, 91, 39, 50, 30, 56, 45,\n",
1355 | " 14, 84, 31, 54, 59, 64, 24, 82, 19, 32, 49, 9, 19, 42, 63, 22, 11,\n",
1356 | " 46, 67, 14, 48, 11, 45, 75, 75, 58, 5, 21, 55, 61, 97, 89, 20, 4,\n",
1357 | " 86, 91, 87, 45, 9, 56, 94, 75, 65, 17, 85, 9, 75, 33, 40, 64, 8,\n",
1358 | " 10, 93, 82, 78, 75, 41, 3, 46, 30, 11, 53, 61, 79, 86, 31, 75, 8,\n",
1359 | " 68, 50, 36, 95, 95, 34, 86, 88, 74, 93, 57, 64, 4, 72, 69, 87, 39,\n",
1360 | " 46, 74, 11, 46, 44, 9, 95, 99, 92, 4, 92, 36, 95, 36, 79, 50, 91,\n",
1361 | " 88, 66, 63, 24, 98, 81, 25, 89, 65, 39, 61, 42, 10, 64, 98, 56, 69,\n",
1362 | " 49, 72, 65, 39, 30, 57, 54, 7, 94, 45, 40, 58, 74, 8, 92, 91, 58,\n",
1363 | " 21, 34, 90, 10, 4, 97, 31, 92, 8, 5, 72, 64, 81, 49, 57, 5, 97,\n",
1364 | " 69, 91, 26, 42, 86, 16, 10, 75, 48, 38, 27, 10, 41, 48, 10, 99, 72,\n",
1365 | " 55, 22, 88, 1, 44, 83, 36, 42, 85, 42, 67, 24, 61, 22, 83, 31, 61,\n",
1366 | " 64, 34, 80, 44, 34, 69, 52, 5, 2, 47, 3, 49, 55, 50, 65, 87, 96,\n",
1367 | " 41, 83, 21, 42, 8, 18, 72, 91, 30, 50, 26, 37, 62, 31, 37, 8, 67,\n",
1368 | " 86, 52, 54, 65, 26, 89, 8, 84, 58, 98, 98, 4, 97, 53, 38, 18, 52,\n",
1369 | " 19, 63, 10, 72, 98, 53, 81, 72, 85, 90, 25, 23, 29, 12, 17, 58, 56,\n",
1370 | " 47, 81, 4, 53, 48, 2, 90, 63, 76, 51, 81, 20, 74, 29, 66, 75, 17,\n",
1371 | " 56, 82, 97, 34, 23, 46, 77, 88, 97, 36, 55, 18, 5, 34, 40, 95, 31,\n",
1372 | " 39, 63, 56, 79, 39, 73, 60, 85, 46, 67, 34, 81, 54, 32, 23, 39, 2,\n",
1373 | " 58, 88, 67, 40, 90, 59, 39, 15, 80, 64, 78, 42, 32, 36, 7, 98, 26,\n",
1374 | " 36, 35, 99, 94, 43, 8, 35, 88, 42, 50, 11, 71, 52, 39, 85, 70, 47,\n",
1375 | " 55, 11, 51, 1, 9, 56, 88, 31, 77, 62, 83, 48, 61, 47, 8, 92, 73,\n",
1376 | " 97, 44, 43, 91, 50, 10, 45, 13, 73, 83, 23, 15, 94, 34, 74, 41, 34,\n",
1377 | " 65, 18, 33, 77, 66, 1, 76, 26, 54, 29, 62, 50, 24, 34, 61, 12, 60,\n",
1378 | " 53, 46, 2, 96, 6, 1, 50, 98, 80, 55, 41, 23, 44, 31, 56, 11, 68,\n",
1379 | " 86, 30, 87, 90, 58, 5, 34, 5, 28, 81, 91, 2, 58, 32, 72, 96, 6,\n",
1380 | " 13, 47, 55, 12, 23, 54, 83, 12, 8, 8, 65, 44, 89, 57, 21, 48, 46,\n",
1381 | " 67, 1, 63, 9, 75, 37, 17, 77, 71, 91, 16, 28, 96, 70, 50, 48, 13,\n",
1382 | " 74, 57, 76, 98, 1, 32, 26, 99, 68, 41, 15, 53, 6, 62, 64, 39, 68,\n",
1383 | " 87, 13, 75, 31, 65, 97, 71, 9, 52, 48, 91, 77, 42, 47, 48, 4, 14,\n",
1384 | " 36, 77, 13, 25, 1, 13, 64, 24, 54, 98, 89, 98, 11, 16, 64, 3, 17,\n",
1385 | " 61, 75, 43, 33, 69, 6, 23, 51, 25, 89, 51, 95, 15, 80, 9, 68, 12,\n",
1386 | " 92, 37, 70, 51, 7, 90, 68, 2, 14, 8, 15, 7, 50, 93])"
1387 | ]
1388 | },
1389 | "metadata": {
1390 | "tags": []
1391 | },
1392 | "execution_count": 117
1393 | }
1394 | ]
1395 | },
1396 | {
1397 | "cell_type": "code",
1398 | "metadata": {
1399 | "id": "_VqJx6yn4zDG"
1400 | },
1401 | "source": [
1402 | "selected = Marks[Marks>75]"
1403 | ],
1404 | "execution_count": 50,
1405 | "outputs": []
1406 | },
1407 | {
1408 | "cell_type": "code",
1409 | "metadata": {
1410 | "id": "J0NPyAq5UtDs",
1411 | "outputId": "25b0a3bc-3556-452c-b587-04df5d4bb6ba",
1412 | "colab": {
1413 | "base_uri": "https://localhost:8080/"
1414 | }
1415 | },
1416 | "source": [
1417 | "Marks[Marks>75].shape"
1418 | ],
1419 | "execution_count": 120,
1420 | "outputs": [
1421 | {
1422 | "output_type": "execute_result",
1423 | "data": {
1424 | "text/plain": [
1425 | "(239,)"
1426 | ]
1427 | },
1428 | "metadata": {
1429 | "tags": []
1430 | },
1431 | "execution_count": 120
1432 | }
1433 | ]
1434 | },
1435 | {
1436 | "cell_type": "code",
1437 | "metadata": {
1438 | "colab": {
1439 | "base_uri": "https://localhost:8080/"
1440 | },
1441 | "id": "ZZAlcNkR46en",
1442 | "outputId": "a2a1dfc9-b508-47eb-e56a-390306f88885"
1443 | },
1444 | "source": [
1445 | "selected"
1446 | ],
1447 | "execution_count": 51,
1448 | "outputs": [
1449 | {
1450 | "output_type": "execute_result",
1451 | "data": {
1452 | "text/plain": [
1453 | "array([96, 84, 79, 83, 97, 84, 92, 87, 78, 79, 83, 84, 78, 87, 80, 80, 86,\n",
1454 | " 78, 96, 79, 82, 80, 77, 88, 77, 90, 93, 78, 91, 95, 90, 78, 86, 80,\n",
1455 | " 88, 97, 99, 94, 97, 81, 81, 80, 99, 83, 84, 92, 95, 85, 91, 97, 89,\n",
1456 | " 82, 99, 80, 77, 77, 89, 92, 80, 95, 99, 76, 76, 88, 97, 96, 85, 95,\n",
1457 | " 98, 86, 87, 86, 83, 97, 88, 86, 93, 93, 86, 96, 89, 80, 88, 95, 82,\n",
1458 | " 79, 98, 79, 77, 87, 79, 88, 85, 77, 95, 95, 76, 89, 97, 81, 89, 85,\n",
1459 | " 94, 80, 82, 95, 93, 85, 92, 76, 86, 86, 91, 85, 91, 80, 80, 80, 93,\n",
1460 | " 85, 85, 90, 87, 98, 96, 78, 99, 97, 99, 90, 93, 88, 86, 94, 83, 91,\n",
1461 | " 85, 87, 82, 76, 82, 80, 90, 96, 96, 85, 85, 80, 97, 82, 82, 86, 95,\n",
1462 | " 86, 76, 98, 90, 83, 85, 84, 88, 85, 85, 99, 80, 93, 83, 85, 77, 80,\n",
1463 | " 91, 94, 80, 92, 90, 76, 91, 83, 93, 97, 93, 76, 86, 78, 79, 78, 93,\n",
1464 | " 91, 98, 93, 99, 87, 92, 77, 99, 88, 97, 86, 83, 88, 94, 92, 93, 92,\n",
1465 | " 93, 92, 91, 97, 94, 77, 79, 98, 77, 87, 98, 98, 91, 76, 95, 87, 92,\n",
1466 | " 82, 91, 93, 93, 89, 77, 90, 82, 78, 79, 77, 91, 80, 91, 99, 95, 80,\n",
1467 | " 78, 76, 83, 90, 77, 84])"
1468 | ]
1469 | },
1470 | "metadata": {
1471 | "tags": []
1472 | },
1473 | "execution_count": 51
1474 | }
1475 | ]
1476 | },
1477 | {
1478 | "cell_type": "markdown",
1479 | "metadata": {
1480 | "id": "WC2m-5lR5Kr0"
1481 | },
1482 | "source": [
1483 | "## Operations : Note that NumPy arrays operate on term by term basis. Each operation is applied to every term."
1484 | ]
1485 | },
1486 | {
1487 | "cell_type": "code",
1488 | "metadata": {
1489 | "id": "O9PIDIJS4-xq"
1490 | },
1491 | "source": [
1492 | "A = np.arange(0,10)"
1493 | ],
1494 | "execution_count": 52,
1495 | "outputs": []
1496 | },
1497 | {
1498 | "cell_type": "code",
1499 | "metadata": {
1500 | "colab": {
1501 | "base_uri": "https://localhost:8080/"
1502 | },
1503 | "id": "MPdoVsGL5VV4",
1504 | "outputId": "6ff89b07-562d-4f79-fe20-9f34d6ec3458"
1505 | },
1506 | "source": [
1507 | "A**2"
1508 | ],
1509 | "execution_count": 54,
1510 | "outputs": [
1511 | {
1512 | "output_type": "execute_result",
1513 | "data": {
1514 | "text/plain": [
1515 | "array([ 0, 1, 4, 9, 16, 25, 36, 49, 64, 81])"
1516 | ]
1517 | },
1518 | "metadata": {
1519 | "tags": []
1520 | },
1521 | "execution_count": 54
1522 | }
1523 | ]
1524 | },
1525 | {
1526 | "cell_type": "code",
1527 | "metadata": {
1528 | "colab": {
1529 | "base_uri": "https://localhost:8080/"
1530 | },
1531 | "id": "twuY6ENr5WJM",
1532 | "outputId": "49509091-8322-49fa-8c39-8d29689603cf"
1533 | },
1534 | "source": [
1535 | "A + A"
1536 | ],
1537 | "execution_count": 55,
1538 | "outputs": [
1539 | {
1540 | "output_type": "execute_result",
1541 | "data": {
1542 | "text/plain": [
1543 | "array([ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18])"
1544 | ]
1545 | },
1546 | "metadata": {
1547 | "tags": []
1548 | },
1549 | "execution_count": 55
1550 | }
1551 | ]
1552 | },
1553 | {
1554 | "cell_type": "code",
1555 | "metadata": {
1556 | "colab": {
1557 | "base_uri": "https://localhost:8080/"
1558 | },
1559 | "id": "l4Gf9DQo5YrK",
1560 | "outputId": "7c3cee6c-04c2-450f-d0fc-8686dba85619"
1561 | },
1562 | "source": [
1563 | "np.sin(A)"
1564 | ],
1565 | "execution_count": 56,
1566 | "outputs": [
1567 | {
1568 | "output_type": "execute_result",
1569 | "data": {
1570 | "text/plain": [
1571 | "array([ 0. , 0.84147098, 0.90929743, 0.14112001, -0.7568025 ,\n",
1572 | " -0.95892427, -0.2794155 , 0.6569866 , 0.98935825, 0.41211849])"
1573 | ]
1574 | },
1575 | "metadata": {
1576 | "tags": []
1577 | },
1578 | "execution_count": 56
1579 | }
1580 | ]
1581 | },
1582 | {
1583 | "cell_type": "code",
1584 | "metadata": {
1585 | "colab": {
1586 | "base_uri": "https://localhost:8080/"
1587 | },
1588 | "id": "KXe5isMn5bCE",
1589 | "outputId": "8e7a4cbd-b24b-4c08-c0d8-ee03b14405c5"
1590 | },
1591 | "source": [
1592 | "np.cos(A)"
1593 | ],
1594 | "execution_count": 57,
1595 | "outputs": [
1596 | {
1597 | "output_type": "execute_result",
1598 | "data": {
1599 | "text/plain": [
1600 | "array([ 1. , 0.54030231, -0.41614684, -0.9899925 , -0.65364362,\n",
1601 | " 0.28366219, 0.96017029, 0.75390225, -0.14550003, -0.91113026])"
1602 | ]
1603 | },
1604 | "metadata": {
1605 | "tags": []
1606 | },
1607 | "execution_count": 57
1608 | }
1609 | ]
1610 | },
1611 | {
1612 | "cell_type": "markdown",
1613 | "metadata": {
1614 | "id": "ZtXFc-2v5efq"
1615 | },
1616 | "source": [
1617 | "These are Universal Array Functions. \n",
1618 | "\n",
1619 | "Further reading : http://docs.scipy.org/doc/numpy/reference/ufuncs.html"
1620 | ]
1621 | },
1622 | {
1623 | "cell_type": "code",
1624 | "metadata": {
1625 | "id": "-wsnHETP5cNe"
1626 | },
1627 | "source": [
1628 | "###################################################################"
1629 | ],
1630 | "execution_count": 58,
1631 | "outputs": []
1632 | },
1633 | {
1634 | "cell_type": "markdown",
1635 | "metadata": {
1636 | "id": "tAjzYbek5-xt"
1637 | },
1638 | "source": [
1639 | "## 2. Python Pandas : The Ms. Excel of Python."
1640 | ]
1641 | },
1642 | {
1643 | "cell_type": "markdown",
1644 | "metadata": {
1645 | "id": "L4n61bBH6YML"
1646 | },
1647 | "source": [
1648 | "### 2.1 Python Series : Like a Named Array/"
1649 | ]
1650 | },
1651 | {
1652 | "cell_type": "markdown",
1653 | "metadata": {
1654 | "id": "vOzjhc0tVJlt"
1655 | },
1656 | "source": [
1657 | "NumPy -- Series --- DataFrame "
1658 | ]
1659 | },
1660 | {
1661 | "cell_type": "code",
1662 | "metadata": {
1663 | "id": "sG9noWeN6mjG"
1664 | },
1665 | "source": [
1666 | "import pandas as pd"
1667 | ],
1668 | "execution_count": 121,
1669 | "outputs": []
1670 | },
1671 | {
1672 | "cell_type": "code",
1673 | "metadata": {
1674 | "id": "Nkd7C6_B57O-"
1675 | },
1676 | "source": [
1677 | "values = [1,2,3,4,5]\n",
1678 | "labels = ['a' , 'b' , 'c' , 'd' , 'e']"
1679 | ],
1680 | "execution_count": 59,
1681 | "outputs": []
1682 | },
1683 | {
1684 | "cell_type": "code",
1685 | "metadata": {
1686 | "id": "My4i_w0o6ihC"
1687 | },
1688 | "source": [
1689 | "S = pd.Series(values,labels)"
1690 | ],
1691 | "execution_count": 62,
1692 | "outputs": []
1693 | },
1694 | {
1695 | "cell_type": "code",
1696 | "metadata": {
1697 | "colab": {
1698 | "base_uri": "https://localhost:8080/"
1699 | },
1700 | "id": "RAIVZF2Q6k8R",
1701 | "outputId": "843edabd-84cc-47ec-99ee-508787e43a71"
1702 | },
1703 | "source": [
1704 | "S"
1705 | ],
1706 | "execution_count": 63,
1707 | "outputs": [
1708 | {
1709 | "output_type": "execute_result",
1710 | "data": {
1711 | "text/plain": [
1712 | "a 1\n",
1713 | "b 2\n",
1714 | "c 3\n",
1715 | "d 4\n",
1716 | "e 5\n",
1717 | "dtype: int64"
1718 | ]
1719 | },
1720 | "metadata": {
1721 | "tags": []
1722 | },
1723 | "execution_count": 63
1724 | }
1725 | ]
1726 | },
1727 | {
1728 | "cell_type": "code",
1729 | "metadata": {
1730 | "colab": {
1731 | "base_uri": "https://localhost:8080/"
1732 | },
1733 | "id": "Ma2FfYof6rJt",
1734 | "outputId": "c707da0e-7f06-4239-ba54-98e813fbe979"
1735 | },
1736 | "source": [
1737 | "S['a']"
1738 | ],
1739 | "execution_count": 64,
1740 | "outputs": [
1741 | {
1742 | "output_type": "execute_result",
1743 | "data": {
1744 | "text/plain": [
1745 | "1"
1746 | ]
1747 | },
1748 | "metadata": {
1749 | "tags": []
1750 | },
1751 | "execution_count": 64
1752 | }
1753 | ]
1754 | },
1755 | {
1756 | "cell_type": "code",
1757 | "metadata": {
1758 | "colab": {
1759 | "base_uri": "https://localhost:8080/"
1760 | },
1761 | "id": "-MXIkPCE6udt",
1762 | "outputId": "83f50dc0-9ecd-4389-a187-226a99e4df34"
1763 | },
1764 | "source": [
1765 | "pd.Series(values,index = labels)"
1766 | ],
1767 | "execution_count": 65,
1768 | "outputs": [
1769 | {
1770 | "output_type": "execute_result",
1771 | "data": {
1772 | "text/plain": [
1773 | "a 1\n",
1774 | "b 2\n",
1775 | "c 3\n",
1776 | "d 4\n",
1777 | "e 5\n",
1778 | "dtype: int64"
1779 | ]
1780 | },
1781 | "metadata": {
1782 | "tags": []
1783 | },
1784 | "execution_count": 65
1785 | }
1786 | ]
1787 | },
1788 | {
1789 | "cell_type": "markdown",
1790 | "metadata": {
1791 | "id": "tEfNKHT166p1"
1792 | },
1793 | "source": [
1794 | "## 2.2 : DataFrames"
1795 | ]
1796 | },
1797 | {
1798 | "cell_type": "markdown",
1799 | "metadata": {
1800 | "id": "OAq0xjVHWNYt"
1801 | },
1802 | "source": [
1803 | "1. DF from a Dictionary."
1804 | ]
1805 | },
1806 | {
1807 | "cell_type": "code",
1808 | "metadata": {
1809 | "id": "aruf1_xa60k6"
1810 | },
1811 | "source": [
1812 | "rock = {'phi': [0.05 , 0.20 , 0.25 , 0.08],\n",
1813 | " 'lith': ['C', 'S', 'S','C']}\n",
1814 | "\n",
1815 | "rock_df = pd.DataFrame(rock)"
1816 | ],
1817 | "execution_count": 122,
1818 | "outputs": []
1819 | },
1820 | {
1821 | "cell_type": "code",
1822 | "metadata": {
1823 | "colab": {
1824 | "base_uri": "https://localhost:8080/",
1825 | "height": 172
1826 | },
1827 | "id": "hdWCCrZR7MlY",
1828 | "outputId": "e088809c-6fd1-4829-a76b-3e67568528e3"
1829 | },
1830 | "source": [
1831 | "rock_df"
1832 | ],
1833 | "execution_count": 123,
1834 | "outputs": [
1835 | {
1836 | "output_type": "execute_result",
1837 | "data": {
1838 | "text/html": [
1839 | "
\n",
1840 | "\n",
1853 | "
\n",
1854 | " \n",
1855 | " \n",
1856 | " | \n",
1857 | " phi | \n",
1858 | " lith | \n",
1859 | "
\n",
1860 | " \n",
1861 | " \n",
1862 | " \n",
1863 | " 0 | \n",
1864 | " 0.05 | \n",
1865 | " C | \n",
1866 | "
\n",
1867 | " \n",
1868 | " 1 | \n",
1869 | " 0.20 | \n",
1870 | " S | \n",
1871 | "
\n",
1872 | " \n",
1873 | " 2 | \n",
1874 | " 0.25 | \n",
1875 | " S | \n",
1876 | "
\n",
1877 | " \n",
1878 | " 3 | \n",
1879 | " 0.08 | \n",
1880 | " C | \n",
1881 | "
\n",
1882 | " \n",
1883 | "
\n",
1884 | "
"
1885 | ],
1886 | "text/plain": [
1887 | " phi lith\n",
1888 | "0 0.05 C\n",
1889 | "1 0.20 S\n",
1890 | "2 0.25 S\n",
1891 | "3 0.08 C"
1892 | ]
1893 | },
1894 | "metadata": {
1895 | "tags": []
1896 | },
1897 | "execution_count": 123
1898 | }
1899 | ]
1900 | },
1901 | {
1902 | "cell_type": "code",
1903 | "metadata": {
1904 | "colab": {
1905 | "base_uri": "https://localhost:8080/"
1906 | },
1907 | "id": "y1G-g5gL7R9K",
1908 | "outputId": "d3a2f111-e2a6-4768-acb4-b506d7ac6533"
1909 | },
1910 | "source": [
1911 | "rock['phi']"
1912 | ],
1913 | "execution_count": 124,
1914 | "outputs": [
1915 | {
1916 | "output_type": "execute_result",
1917 | "data": {
1918 | "text/plain": [
1919 | "[0.05, 0.2, 0.25, 0.08]"
1920 | ]
1921 | },
1922 | "metadata": {
1923 | "tags": []
1924 | },
1925 | "execution_count": 124
1926 | }
1927 | ]
1928 | },
1929 | {
1930 | "cell_type": "code",
1931 | "metadata": {
1932 | "id": "L7PnJwJS7mAp"
1933 | },
1934 | "source": [
1935 | "#Creating a DataFrame from an array."
1936 | ],
1937 | "execution_count": 70,
1938 | "outputs": []
1939 | },
1940 | {
1941 | "cell_type": "code",
1942 | "metadata": {
1943 | "colab": {
1944 | "base_uri": "https://localhost:8080/",
1945 | "height": 203
1946 | },
1947 | "id": "GFOEQ0Dd7t7R",
1948 | "outputId": "36084178-2f31-4e27-9f05-861cc6ac2d77"
1949 | },
1950 | "source": [
1951 | "df = pd.DataFrame(data = np.random.randn(5,4),index='A B C D E'.split(),columns='W X Y Z'.split())\n",
1952 | "\n",
1953 | "df"
1954 | ],
1955 | "execution_count": 125,
1956 | "outputs": [
1957 | {
1958 | "output_type": "execute_result",
1959 | "data": {
1960 | "text/html": [
1961 | "\n",
1962 | "\n",
1975 | "
\n",
1976 | " \n",
1977 | " \n",
1978 | " | \n",
1979 | " W | \n",
1980 | " X | \n",
1981 | " Y | \n",
1982 | " Z | \n",
1983 | "
\n",
1984 | " \n",
1985 | " \n",
1986 | " \n",
1987 | " A | \n",
1988 | " -1.182853 | \n",
1989 | " -0.513556 | \n",
1990 | " -0.515698 | \n",
1991 | " 0.494726 | \n",
1992 | "
\n",
1993 | " \n",
1994 | " B | \n",
1995 | " -0.577124 | \n",
1996 | " 0.886354 | \n",
1997 | " -1.588290 | \n",
1998 | " -1.587124 | \n",
1999 | "
\n",
2000 | " \n",
2001 | " C | \n",
2002 | " -0.240799 | \n",
2003 | " 0.123911 | \n",
2004 | " -1.001634 | \n",
2005 | " 0.902924 | \n",
2006 | "
\n",
2007 | " \n",
2008 | " D | \n",
2009 | " -0.427675 | \n",
2010 | " 0.080528 | \n",
2011 | " -0.625017 | \n",
2012 | " -0.778859 | \n",
2013 | "
\n",
2014 | " \n",
2015 | " E | \n",
2016 | " 2.248956 | \n",
2017 | " 0.264856 | \n",
2018 | " 0.344202 | \n",
2019 | " -1.435114 | \n",
2020 | "
\n",
2021 | " \n",
2022 | "
\n",
2023 | "
"
2024 | ],
2025 | "text/plain": [
2026 | " W X Y Z\n",
2027 | "A -1.182853 -0.513556 -0.515698 0.494726\n",
2028 | "B -0.577124 0.886354 -1.588290 -1.587124\n",
2029 | "C -0.240799 0.123911 -1.001634 0.902924\n",
2030 | "D -0.427675 0.080528 -0.625017 -0.778859\n",
2031 | "E 2.248956 0.264856 0.344202 -1.435114"
2032 | ]
2033 | },
2034 | "metadata": {
2035 | "tags": []
2036 | },
2037 | "execution_count": 125
2038 | }
2039 | ]
2040 | },
2041 | {
2042 | "cell_type": "code",
2043 | "metadata": {
2044 | "id": "cXeuQriC7wZQ"
2045 | },
2046 | "source": [
2047 | "# df"
2048 | ],
2049 | "execution_count": 126,
2050 | "outputs": []
2051 | },
2052 | {
2053 | "cell_type": "code",
2054 | "metadata": {
2055 | "colab": {
2056 | "base_uri": "https://localhost:8080/"
2057 | },
2058 | "id": "e7yWUvZm7zrn",
2059 | "outputId": "732dc5a8-de52-46f6-d8ec-925945d84bca"
2060 | },
2061 | "source": [
2062 | "df['W']"
2063 | ],
2064 | "execution_count": 74,
2065 | "outputs": [
2066 | {
2067 | "output_type": "execute_result",
2068 | "data": {
2069 | "text/plain": [
2070 | "A -0.709325\n",
2071 | "B 0.239717\n",
2072 | "C -0.833494\n",
2073 | "D 0.252288\n",
2074 | "E -0.012246\n",
2075 | "Name: W, dtype: float64"
2076 | ]
2077 | },
2078 | "metadata": {
2079 | "tags": []
2080 | },
2081 | "execution_count": 74
2082 | }
2083 | ]
2084 | },
2085 | {
2086 | "cell_type": "code",
2087 | "metadata": {
2088 | "colab": {
2089 | "base_uri": "https://localhost:8080/",
2090 | "height": 203
2091 | },
2092 | "id": "v7YdfZyG71gi",
2093 | "outputId": "db5b4421-0fd5-43d2-d0b7-613c7620cbef"
2094 | },
2095 | "source": [
2096 | "#Adding a NEw column. \n",
2097 | "\n",
2098 | "df['W_squared'] = df['W']**2\n",
2099 | "\n",
2100 | "df"
2101 | ],
2102 | "execution_count": 76,
2103 | "outputs": [
2104 | {
2105 | "output_type": "execute_result",
2106 | "data": {
2107 | "text/html": [
2108 | "\n",
2109 | "\n",
2122 | "
\n",
2123 | " \n",
2124 | " \n",
2125 | " | \n",
2126 | " W | \n",
2127 | " X | \n",
2128 | " Y | \n",
2129 | " Z | \n",
2130 | " W_squared | \n",
2131 | "
\n",
2132 | " \n",
2133 | " \n",
2134 | " \n",
2135 | " A | \n",
2136 | " -0.709325 | \n",
2137 | " -0.398991 | \n",
2138 | " 2.255707 | \n",
2139 | " 1.286425 | \n",
2140 | " 0.503142 | \n",
2141 | "
\n",
2142 | " \n",
2143 | " B | \n",
2144 | " 0.239717 | \n",
2145 | " -0.993057 | \n",
2146 | " -1.434999 | \n",
2147 | " -0.777527 | \n",
2148 | " 0.057464 | \n",
2149 | "
\n",
2150 | " \n",
2151 | " C | \n",
2152 | " -0.833494 | \n",
2153 | " 0.910116 | \n",
2154 | " -0.249891 | \n",
2155 | " 0.342504 | \n",
2156 | " 0.694712 | \n",
2157 | "
\n",
2158 | " \n",
2159 | " D | \n",
2160 | " 0.252288 | \n",
2161 | " -0.240984 | \n",
2162 | " -0.607454 | \n",
2163 | " -0.266429 | \n",
2164 | " 0.063649 | \n",
2165 | "
\n",
2166 | " \n",
2167 | " E | \n",
2168 | " -0.012246 | \n",
2169 | " -0.213262 | \n",
2170 | " -1.522099 | \n",
2171 | " -0.727474 | \n",
2172 | " 0.000150 | \n",
2173 | "
\n",
2174 | " \n",
2175 | "
\n",
2176 | "
"
2177 | ],
2178 | "text/plain": [
2179 | " W X Y Z W_squared\n",
2180 | "A -0.709325 -0.398991 2.255707 1.286425 0.503142\n",
2181 | "B 0.239717 -0.993057 -1.434999 -0.777527 0.057464\n",
2182 | "C -0.833494 0.910116 -0.249891 0.342504 0.694712\n",
2183 | "D 0.252288 -0.240984 -0.607454 -0.266429 0.063649\n",
2184 | "E -0.012246 -0.213262 -1.522099 -0.727474 0.000150"
2185 | ]
2186 | },
2187 | "metadata": {
2188 | "tags": []
2189 | },
2190 | "execution_count": 76
2191 | }
2192 | ]
2193 | },
2194 | {
2195 | "cell_type": "code",
2196 | "metadata": {
2197 | "colab": {
2198 | "base_uri": "https://localhost:8080/",
2199 | "height": 203
2200 | },
2201 | "id": "iMB8ZIXO7_PA",
2202 | "outputId": "0d4dfb84-ab6d-4577-b875-7af14674e1b2"
2203 | },
2204 | "source": [
2205 | "df['new'] = df['X'] + df['Y']\n",
2206 | "\n",
2207 | "df"
2208 | ],
2209 | "execution_count": 77,
2210 | "outputs": [
2211 | {
2212 | "output_type": "execute_result",
2213 | "data": {
2214 | "text/html": [
2215 | "\n",
2216 | "\n",
2229 | "
\n",
2230 | " \n",
2231 | " \n",
2232 | " | \n",
2233 | " W | \n",
2234 | " X | \n",
2235 | " Y | \n",
2236 | " Z | \n",
2237 | " W_squared | \n",
2238 | " new | \n",
2239 | "
\n",
2240 | " \n",
2241 | " \n",
2242 | " \n",
2243 | " A | \n",
2244 | " -0.709325 | \n",
2245 | " -0.398991 | \n",
2246 | " 2.255707 | \n",
2247 | " 1.286425 | \n",
2248 | " 0.503142 | \n",
2249 | " 1.856716 | \n",
2250 | "
\n",
2251 | " \n",
2252 | " B | \n",
2253 | " 0.239717 | \n",
2254 | " -0.993057 | \n",
2255 | " -1.434999 | \n",
2256 | " -0.777527 | \n",
2257 | " 0.057464 | \n",
2258 | " -2.428056 | \n",
2259 | "
\n",
2260 | " \n",
2261 | " C | \n",
2262 | " -0.833494 | \n",
2263 | " 0.910116 | \n",
2264 | " -0.249891 | \n",
2265 | " 0.342504 | \n",
2266 | " 0.694712 | \n",
2267 | " 0.660225 | \n",
2268 | "
\n",
2269 | " \n",
2270 | " D | \n",
2271 | " 0.252288 | \n",
2272 | " -0.240984 | \n",
2273 | " -0.607454 | \n",
2274 | " -0.266429 | \n",
2275 | " 0.063649 | \n",
2276 | " -0.848438 | \n",
2277 | "
\n",
2278 | " \n",
2279 | " E | \n",
2280 | " -0.012246 | \n",
2281 | " -0.213262 | \n",
2282 | " -1.522099 | \n",
2283 | " -0.727474 | \n",
2284 | " 0.000150 | \n",
2285 | " -1.735361 | \n",
2286 | "
\n",
2287 | " \n",
2288 | "
\n",
2289 | "
"
2290 | ],
2291 | "text/plain": [
2292 | " W X Y Z W_squared new\n",
2293 | "A -0.709325 -0.398991 2.255707 1.286425 0.503142 1.856716\n",
2294 | "B 0.239717 -0.993057 -1.434999 -0.777527 0.057464 -2.428056\n",
2295 | "C -0.833494 0.910116 -0.249891 0.342504 0.694712 0.660225\n",
2296 | "D 0.252288 -0.240984 -0.607454 -0.266429 0.063649 -0.848438\n",
2297 | "E -0.012246 -0.213262 -1.522099 -0.727474 0.000150 -1.735361"
2298 | ]
2299 | },
2300 | "metadata": {
2301 | "tags": []
2302 | },
2303 | "execution_count": 77
2304 | }
2305 | ]
2306 | },
2307 | {
2308 | "cell_type": "code",
2309 | "metadata": {
2310 | "colab": {
2311 | "base_uri": "https://localhost:8080/",
2312 | "height": 282
2313 | },
2314 | "id": "2cEIl-009GLc",
2315 | "outputId": "a88b08d9-03f3-4816-e624-1975943788a9"
2316 | },
2317 | "source": [
2318 | "df.plot()"
2319 | ],
2320 | "execution_count": 78,
2321 | "outputs": [
2322 | {
2323 | "output_type": "execute_result",
2324 | "data": {
2325 | "text/plain": [
2326 | ""
2327 | ]
2328 | },
2329 | "metadata": {
2330 | "tags": []
2331 | },
2332 | "execution_count": 78
2333 | },
2334 | {
2335 | "output_type": "display_data",
2336 | "data": {
2337 | "image/png": "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\n",
2338 | "text/plain": [
2339 | ""
2340 | ]
2341 | },
2342 | "metadata": {
2343 | "tags": [],
2344 | "needs_background": "light"
2345 | }
2346 | }
2347 | ]
2348 | },
2349 | {
2350 | "cell_type": "markdown",
2351 | "metadata": {
2352 | "id": "Ki6MBGSI9QLK"
2353 | },
2354 | "source": [
2355 | "## Loc and I-Loc. \n",
2356 | "\n",
2357 | "1. loc starts with 'l' : so it considers labels. \n",
2358 | "\n",
2359 | "2. iloc starts with 'i' so it considers indexes."
2360 | ]
2361 | },
2362 | {
2363 | "cell_type": "code",
2364 | "metadata": {
2365 | "colab": {
2366 | "base_uri": "https://localhost:8080/",
2367 | "height": 110
2368 | },
2369 | "id": "xyKNfQEQ9H9P",
2370 | "outputId": "e3c22f35-f9db-4c41-e975-8fabf2363c85"
2371 | },
2372 | "source": [
2373 | "df.iloc[0:2,0:2]"
2374 | ],
2375 | "execution_count": 129,
2376 | "outputs": [
2377 | {
2378 | "output_type": "execute_result",
2379 | "data": {
2380 | "text/html": [
2381 | "\n",
2382 | "\n",
2395 | "
\n",
2396 | " \n",
2397 | " \n",
2398 | " | \n",
2399 | " W | \n",
2400 | " X | \n",
2401 | "
\n",
2402 | " \n",
2403 | " \n",
2404 | " \n",
2405 | " A | \n",
2406 | " -1.182853 | \n",
2407 | " -0.513556 | \n",
2408 | "
\n",
2409 | " \n",
2410 | " B | \n",
2411 | " -0.577124 | \n",
2412 | " 0.886354 | \n",
2413 | "
\n",
2414 | " \n",
2415 | "
\n",
2416 | "
"
2417 | ],
2418 | "text/plain": [
2419 | " W X\n",
2420 | "A -1.182853 -0.513556\n",
2421 | "B -0.577124 0.886354"
2422 | ]
2423 | },
2424 | "metadata": {
2425 | "tags": []
2426 | },
2427 | "execution_count": 129
2428 | }
2429 | ]
2430 | },
2431 | {
2432 | "cell_type": "markdown",
2433 | "metadata": {
2434 | "id": "Cx-u2gAH9b_v"
2435 | },
2436 | "source": [
2437 | "### Pick first two rows using loc. "
2438 | ]
2439 | },
2440 | {
2441 | "cell_type": "code",
2442 | "metadata": {
2443 | "colab": {
2444 | "base_uri": "https://localhost:8080/",
2445 | "height": 110
2446 | },
2447 | "id": "tscoRC659a1N",
2448 | "outputId": "c6380e5a-9b23-4321-857e-6db96f241429"
2449 | },
2450 | "source": [
2451 | "df.loc['A':'B',:]"
2452 | ],
2453 | "execution_count": 80,
2454 | "outputs": [
2455 | {
2456 | "output_type": "execute_result",
2457 | "data": {
2458 | "text/html": [
2459 | "\n",
2460 | "\n",
2473 | "
\n",
2474 | " \n",
2475 | " \n",
2476 | " | \n",
2477 | " W | \n",
2478 | " X | \n",
2479 | " Y | \n",
2480 | " Z | \n",
2481 | " W_squared | \n",
2482 | " new | \n",
2483 | "
\n",
2484 | " \n",
2485 | " \n",
2486 | " \n",
2487 | " A | \n",
2488 | " -0.709325 | \n",
2489 | " -0.398991 | \n",
2490 | " 2.255707 | \n",
2491 | " 1.286425 | \n",
2492 | " 0.503142 | \n",
2493 | " 1.856716 | \n",
2494 | "
\n",
2495 | " \n",
2496 | " B | \n",
2497 | " 0.239717 | \n",
2498 | " -0.993057 | \n",
2499 | " -1.434999 | \n",
2500 | " -0.777527 | \n",
2501 | " 0.057464 | \n",
2502 | " -2.428056 | \n",
2503 | "
\n",
2504 | " \n",
2505 | "
\n",
2506 | "
"
2507 | ],
2508 | "text/plain": [
2509 | " W X Y Z W_squared new\n",
2510 | "A -0.709325 -0.398991 2.255707 1.286425 0.503142 1.856716\n",
2511 | "B 0.239717 -0.993057 -1.434999 -0.777527 0.057464 -2.428056"
2512 | ]
2513 | },
2514 | "metadata": {
2515 | "tags": []
2516 | },
2517 | "execution_count": 80
2518 | }
2519 | ]
2520 | },
2521 | {
2522 | "cell_type": "markdown",
2523 | "metadata": {
2524 | "id": "cZeZHXiB9l6W"
2525 | },
2526 | "source": [
2527 | "### Pick first two rows using iloc."
2528 | ]
2529 | },
2530 | {
2531 | "cell_type": "code",
2532 | "metadata": {
2533 | "colab": {
2534 | "base_uri": "https://localhost:8080/",
2535 | "height": 110
2536 | },
2537 | "id": "wj8iJTMO9kYB",
2538 | "outputId": "94f586db-43d9-4784-ad75-ae2dc3989d4f"
2539 | },
2540 | "source": [
2541 | "df.iloc[0:2, :]"
2542 | ],
2543 | "execution_count": 81,
2544 | "outputs": [
2545 | {
2546 | "output_type": "execute_result",
2547 | "data": {
2548 | "text/html": [
2549 | "\n",
2550 | "\n",
2563 | "
\n",
2564 | " \n",
2565 | " \n",
2566 | " | \n",
2567 | " W | \n",
2568 | " X | \n",
2569 | " Y | \n",
2570 | " Z | \n",
2571 | " W_squared | \n",
2572 | " new | \n",
2573 | "
\n",
2574 | " \n",
2575 | " \n",
2576 | " \n",
2577 | " A | \n",
2578 | " -0.709325 | \n",
2579 | " -0.398991 | \n",
2580 | " 2.255707 | \n",
2581 | " 1.286425 | \n",
2582 | " 0.503142 | \n",
2583 | " 1.856716 | \n",
2584 | "
\n",
2585 | " \n",
2586 | " B | \n",
2587 | " 0.239717 | \n",
2588 | " -0.993057 | \n",
2589 | " -1.434999 | \n",
2590 | " -0.777527 | \n",
2591 | " 0.057464 | \n",
2592 | " -2.428056 | \n",
2593 | "
\n",
2594 | " \n",
2595 | "
\n",
2596 | "
"
2597 | ],
2598 | "text/plain": [
2599 | " W X Y Z W_squared new\n",
2600 | "A -0.709325 -0.398991 2.255707 1.286425 0.503142 1.856716\n",
2601 | "B 0.239717 -0.993057 -1.434999 -0.777527 0.057464 -2.428056"
2602 | ]
2603 | },
2604 | "metadata": {
2605 | "tags": []
2606 | },
2607 | "execution_count": 81
2608 | }
2609 | ]
2610 | },
2611 | {
2612 | "cell_type": "code",
2613 | "metadata": {
2614 | "id": "yZ__EWX09wh0"
2615 | },
2616 | "source": [
2617 | "#Must Notice that Loc considers both ends \n",
2618 | "#while iloc doesn't include the right extreme."
2619 | ],
2620 | "execution_count": 82,
2621 | "outputs": []
2622 | },
2623 | {
2624 | "cell_type": "markdown",
2625 | "metadata": {
2626 | "id": "9X5dNWZ0-Hu3"
2627 | },
2628 | "source": [
2629 | "## Importing Data using Pandas/"
2630 | ]
2631 | },
2632 | {
2633 | "cell_type": "code",
2634 | "metadata": {
2635 | "id": "uzOSFwqhYjCS"
2636 | },
2637 | "source": [
2638 | "A"
2639 | ],
2640 | "execution_count": null,
2641 | "outputs": []
2642 | },
2643 | {
2644 | "cell_type": "code",
2645 | "metadata": {
2646 | "colab": {
2647 | "base_uri": "https://localhost:8080/",
2648 | "height": 130
2649 | },
2650 | "id": "BqoPYsmc950C",
2651 | "outputId": "ae50b48e-b4e0-4378-d94a-8ef85ab3666b"
2652 | },
2653 | "source": [
2654 | "data = pd.read_csv('/content/sample_data/california_housing_train.csv')\n",
2655 | "\n",
2656 | "data.tail(2)"
2657 | ],
2658 | "execution_count": 132,
2659 | "outputs": [
2660 | {
2661 | "output_type": "execute_result",
2662 | "data": {
2663 | "text/html": [
2664 | "\n",
2665 | "\n",
2678 | "
\n",
2679 | " \n",
2680 | " \n",
2681 | " | \n",
2682 | " longitude | \n",
2683 | " latitude | \n",
2684 | " housing_median_age | \n",
2685 | " total_rooms | \n",
2686 | " total_bedrooms | \n",
2687 | " population | \n",
2688 | " households | \n",
2689 | " median_income | \n",
2690 | " median_house_value | \n",
2691 | "
\n",
2692 | " \n",
2693 | " \n",
2694 | " \n",
2695 | " 16998 | \n",
2696 | " -124.30 | \n",
2697 | " 41.80 | \n",
2698 | " 19.0 | \n",
2699 | " 2672.0 | \n",
2700 | " 552.0 | \n",
2701 | " 1298.0 | \n",
2702 | " 478.0 | \n",
2703 | " 1.9797 | \n",
2704 | " 85800.0 | \n",
2705 | "
\n",
2706 | " \n",
2707 | " 16999 | \n",
2708 | " -124.35 | \n",
2709 | " 40.54 | \n",
2710 | " 52.0 | \n",
2711 | " 1820.0 | \n",
2712 | " 300.0 | \n",
2713 | " 806.0 | \n",
2714 | " 270.0 | \n",
2715 | " 3.0147 | \n",
2716 | " 94600.0 | \n",
2717 | "
\n",
2718 | " \n",
2719 | "
\n",
2720 | "
"
2721 | ],
2722 | "text/plain": [
2723 | " longitude latitude ... median_income median_house_value\n",
2724 | "16998 -124.30 41.80 ... 1.9797 85800.0\n",
2725 | "16999 -124.35 40.54 ... 3.0147 94600.0\n",
2726 | "\n",
2727 | "[2 rows x 9 columns]"
2728 | ]
2729 | },
2730 | "metadata": {
2731 | "tags": []
2732 | },
2733 | "execution_count": 132
2734 | }
2735 | ]
2736 | },
2737 | {
2738 | "cell_type": "code",
2739 | "metadata": {
2740 | "colab": {
2741 | "base_uri": "https://localhost:8080/",
2742 | "height": 316
2743 | },
2744 | "id": "mNVcA8J6-Z7Z",
2745 | "outputId": "03536a14-9dce-4baa-f28d-23583ef12984"
2746 | },
2747 | "source": [
2748 | "data.describe()"
2749 | ],
2750 | "execution_count": 133,
2751 | "outputs": [
2752 | {
2753 | "output_type": "execute_result",
2754 | "data": {
2755 | "text/html": [
2756 | "\n",
2757 | "\n",
2770 | "
\n",
2771 | " \n",
2772 | " \n",
2773 | " | \n",
2774 | " longitude | \n",
2775 | " latitude | \n",
2776 | " housing_median_age | \n",
2777 | " total_rooms | \n",
2778 | " total_bedrooms | \n",
2779 | " population | \n",
2780 | " households | \n",
2781 | " median_income | \n",
2782 | " median_house_value | \n",
2783 | "
\n",
2784 | " \n",
2785 | " \n",
2786 | " \n",
2787 | " count | \n",
2788 | " 17000.000000 | \n",
2789 | " 17000.000000 | \n",
2790 | " 17000.000000 | \n",
2791 | " 17000.000000 | \n",
2792 | " 17000.000000 | \n",
2793 | " 17000.000000 | \n",
2794 | " 17000.000000 | \n",
2795 | " 17000.000000 | \n",
2796 | " 17000.000000 | \n",
2797 | "
\n",
2798 | " \n",
2799 | " mean | \n",
2800 | " -119.562108 | \n",
2801 | " 35.625225 | \n",
2802 | " 28.589353 | \n",
2803 | " 2643.664412 | \n",
2804 | " 539.410824 | \n",
2805 | " 1429.573941 | \n",
2806 | " 501.221941 | \n",
2807 | " 3.883578 | \n",
2808 | " 207300.912353 | \n",
2809 | "
\n",
2810 | " \n",
2811 | " std | \n",
2812 | " 2.005166 | \n",
2813 | " 2.137340 | \n",
2814 | " 12.586937 | \n",
2815 | " 2179.947071 | \n",
2816 | " 421.499452 | \n",
2817 | " 1147.852959 | \n",
2818 | " 384.520841 | \n",
2819 | " 1.908157 | \n",
2820 | " 115983.764387 | \n",
2821 | "
\n",
2822 | " \n",
2823 | " min | \n",
2824 | " -124.350000 | \n",
2825 | " 32.540000 | \n",
2826 | " 1.000000 | \n",
2827 | " 2.000000 | \n",
2828 | " 1.000000 | \n",
2829 | " 3.000000 | \n",
2830 | " 1.000000 | \n",
2831 | " 0.499900 | \n",
2832 | " 14999.000000 | \n",
2833 | "
\n",
2834 | " \n",
2835 | " 25% | \n",
2836 | " -121.790000 | \n",
2837 | " 33.930000 | \n",
2838 | " 18.000000 | \n",
2839 | " 1462.000000 | \n",
2840 | " 297.000000 | \n",
2841 | " 790.000000 | \n",
2842 | " 282.000000 | \n",
2843 | " 2.566375 | \n",
2844 | " 119400.000000 | \n",
2845 | "
\n",
2846 | " \n",
2847 | " 50% | \n",
2848 | " -118.490000 | \n",
2849 | " 34.250000 | \n",
2850 | " 29.000000 | \n",
2851 | " 2127.000000 | \n",
2852 | " 434.000000 | \n",
2853 | " 1167.000000 | \n",
2854 | " 409.000000 | \n",
2855 | " 3.544600 | \n",
2856 | " 180400.000000 | \n",
2857 | "
\n",
2858 | " \n",
2859 | " 75% | \n",
2860 | " -118.000000 | \n",
2861 | " 37.720000 | \n",
2862 | " 37.000000 | \n",
2863 | " 3151.250000 | \n",
2864 | " 648.250000 | \n",
2865 | " 1721.000000 | \n",
2866 | " 605.250000 | \n",
2867 | " 4.767000 | \n",
2868 | " 265000.000000 | \n",
2869 | "
\n",
2870 | " \n",
2871 | " max | \n",
2872 | " -114.310000 | \n",
2873 | " 41.950000 | \n",
2874 | " 52.000000 | \n",
2875 | " 37937.000000 | \n",
2876 | " 6445.000000 | \n",
2877 | " 35682.000000 | \n",
2878 | " 6082.000000 | \n",
2879 | " 15.000100 | \n",
2880 | " 500001.000000 | \n",
2881 | "
\n",
2882 | " \n",
2883 | "
\n",
2884 | "
"
2885 | ],
2886 | "text/plain": [
2887 | " longitude latitude ... median_income median_house_value\n",
2888 | "count 17000.000000 17000.000000 ... 17000.000000 17000.000000\n",
2889 | "mean -119.562108 35.625225 ... 3.883578 207300.912353\n",
2890 | "std 2.005166 2.137340 ... 1.908157 115983.764387\n",
2891 | "min -124.350000 32.540000 ... 0.499900 14999.000000\n",
2892 | "25% -121.790000 33.930000 ... 2.566375 119400.000000\n",
2893 | "50% -118.490000 34.250000 ... 3.544600 180400.000000\n",
2894 | "75% -118.000000 37.720000 ... 4.767000 265000.000000\n",
2895 | "max -114.310000 41.950000 ... 15.000100 500001.000000\n",
2896 | "\n",
2897 | "[8 rows x 9 columns]"
2898 | ]
2899 | },
2900 | "metadata": {
2901 | "tags": []
2902 | },
2903 | "execution_count": 133
2904 | }
2905 | ]
2906 | },
2907 | {
2908 | "cell_type": "code",
2909 | "metadata": {
2910 | "id": "HhJcnDKIX-qN"
2911 | },
2912 | "source": [
2913 | "hma50 = np.percentile(data['housing_median_age'], 50)"
2914 | ],
2915 | "execution_count": 135,
2916 | "outputs": []
2917 | },
2918 | {
2919 | "cell_type": "code",
2920 | "metadata": {
2921 | "id": "r1r90DyRZ4oR",
2922 | "outputId": "4f8bf24e-6c97-469a-a3a8-4e0c093df994",
2923 | "colab": {
2924 | "base_uri": "https://localhost:8080/"
2925 | }
2926 | },
2927 | "source": [
2928 | "data[data['housing_median_age']>hma50]['housing_median_age']"
2929 | ],
2930 | "execution_count": 138,
2931 | "outputs": [
2932 | {
2933 | "output_type": "execute_result",
2934 | "data": {
2935 | "text/plain": [
2936 | "7 41.0\n",
2937 | "8 34.0\n",
2938 | "9 46.0\n",
2939 | "12 48.0\n",
2940 | "13 31.0\n",
2941 | " ... \n",
2942 | "16993 52.0\n",
2943 | "16994 32.0\n",
2944 | "16995 52.0\n",
2945 | "16996 36.0\n",
2946 | "16999 52.0\n",
2947 | "Name: housing_median_age, Length: 8189, dtype: float64"
2948 | ]
2949 | },
2950 | "metadata": {
2951 | "tags": []
2952 | },
2953 | "execution_count": 138
2954 | }
2955 | ]
2956 | },
2957 | {
2958 | "cell_type": "code",
2959 | "metadata": {
2960 | "id": "P3YlDPo_aBXx"
2961 | },
2962 | "source": [
2963 | ""
2964 | ],
2965 | "execution_count": null,
2966 | "outputs": []
2967 | }
2968 | ]
2969 | }
--------------------------------------------------------------------------------
/Pt.csv:
--------------------------------------------------------------------------------
1 | time,pressure
2 | 0.001,2743.96
3 | 0.0021,2737.52
4 | 0.0034,2730.16
5 | 0.0048,2722.32
6 | 0.0064,2713.83
7 | 0.0082,2704.46
8 | 0.0103,2694.23
9 | 0.0125,2683.03
10 | 0.0151,2671.26
11 | 0.018,2658.36
12 | 0.0212,2644.71
13 | 0.0249,2630.14
14 | 0.029,2614.84
15 | 0.0336,2598.72
16 | 0.0388,2582.14
17 | 0.0447,2564.96
18 | 0.0513,2547.42
19 | 0.0587,2529.89
20 | 0.067,2512.19
21 | 0.0764,2494.89
22 | 0.0869,2478.16
23 | 0.0988,2462.14
24 | 0.1121,2446.97
25 | 0.1271,2432.97
26 | 0.144,2420.21
27 | 0.163,2409.04
28 | 0.1844,2398.75
29 | 0.209,2390.2
30 | 0.236,2382.79
31 | 0.266,2376.35
32 | 0.3,2370.96
33 | 0.339,2366.46
34 | 0.382,2362.35
35 | 0.431,2358.74
36 | 0.486,2355.31
37 | 0.547,2352.5
38 | 0.617,2349.73
39 | 0.695,2346.98
40 | 0.783,2344.54
41 | 0.882,2341.74
42 | 0.993,2339.53
43 | 1.118,2337.28
44 | 1.259,2334.67
45 | 1.417,2332.55
46 | 1.595,2330.48
47 | 1.795,2328.15
48 | 2.021,2325.9
49 | 2.275,2323.66
50 | 2.56,2321.42
51 | 2.881,2319.35
52 | 3.242,2317.33
53 | 3.648,2315.03
54 | 4.105,2313.02
55 | 4.619,2311.06
56 | 5.198,2308.95
57 | 5.848,2306.79
58 | 6.58,2304.87
59 | 7.404,2302.32
60 | 8.331,2300.59
61 | 9.373,2298.46
62 | 10.55,2296.49
63 | 11.86,2294.32
64 | 13.35,2292.28
65 | 15.02,2290.17
66 | 16.9,2288.11
67 | 19.01,2286.06
68 | 21.39,2283.99
69 | 24.06,2281.84
70 | 27.07,2279.76
71 | 30.45,2277.95
72 | 34.26,2275.56
73 | 38.55,2273.78
74 | 43.37,2271.54
75 | 48.79,2269.77
76 | 54.79,2267.69
77 | 60.79,2265.73
78 | 66.79,2264.46
79 | 72,2262.99
80 |
--------------------------------------------------------------------------------
/Python_Crash_Course.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "nbformat": 4,
3 | "nbformat_minor": 0,
4 | "metadata": {
5 | "colab": {
6 | "name": "Python Crash Course.ipynb",
7 | "provenance": [],
8 | "authorship_tag": "ABX9TyOs5lI5J16gWJ6k2t4rcgLc"
9 | },
10 | "kernelspec": {
11 | "name": "python3",
12 | "display_name": "Python 3"
13 | },
14 | "language_info": {
15 | "name": "python"
16 | }
17 | },
18 | "cells": [
19 | {
20 | "cell_type": "markdown",
21 | "metadata": {
22 | "id": "0sJXME0OwKuk"
23 | },
24 | "source": [
25 | "# Python for Petroleum Engineers. "
26 | ]
27 | },
28 | {
29 | "cell_type": "markdown",
30 | "metadata": {
31 | "id": "YgdmKzaOyl-U"
32 | },
33 | "source": [
34 | "> ## Divyanshu Vyas\n",
35 | "Machine Learning Engineer (Oil & Gas) @ DICELYTICS | Founder, Petroleum From Scratch. \n",
36 | "\n",
37 | "> Motivations : Kendrick Lamar | J'Cole | Eminem"
38 | ]
39 | },
40 | {
41 | "cell_type": "markdown",
42 | "metadata": {
43 | "id": "GsQ1gHHR0daB"
44 | },
45 | "source": [
46 | "## Why Python Though? \n",
47 | "\n",
48 | "1. Technical Edge and a smart one at that : Simulations | Automations | Quicker Problem Solving Mindset | Enhanced & Efficient Workflows.\n",
49 | "\n",
50 | "2. Oil & Gas Industry is very new to the Data Science and Machine Learning applications. \n",
51 | "\n",
52 | "3. Future of the Industry is hugely Data-Centric. \n",
53 | "\n",
54 | "4. Lot of Startups coming up that are solely based on DS/ML apps for bigger companies. They pay well. \n",
55 | "\n",
56 | "5. For someone who plans to diversify and smoothly transition to another industry/field - this is a very smart move. You can move into any domain. \n",
57 | "\n",
58 | "No. of Opportunities shoot up significantly!"
59 | ]
60 | },
61 | {
62 | "cell_type": "markdown",
63 | "metadata": {
64 | "id": "6GjhG5YT1VIo"
65 | },
66 | "source": [
67 | "In this Course I'll cover the steps that helped me efficiently transition from Core PE to a Data Analytics PE. "
68 | ]
69 | },
70 | {
71 | "cell_type": "code",
72 | "metadata": {
73 | "id": "XsKq8wqFwGiO"
74 | },
75 | "source": [
76 | "#######################################################################################################"
77 | ],
78 | "execution_count": 2,
79 | "outputs": []
80 | },
81 | {
82 | "cell_type": "markdown",
83 | "metadata": {
84 | "id": "9LKlBCZk227t"
85 | },
86 | "source": [
87 | "#Python Crash Course \n",
88 | "\n"
89 | ]
90 | },
91 | {
92 | "cell_type": "markdown",
93 | "metadata": {
94 | "id": "4vaszy7LYIS-"
95 | },
96 | "source": [
97 | "# Chapter 1 : Data Types."
98 | ]
99 | },
100 | {
101 | "cell_type": "markdown",
102 | "metadata": {
103 | "id": "nQsmrZO53CRU"
104 | },
105 | "source": [
106 | "## 1. Numbers & Mathematical Operators."
107 | ]
108 | },
109 | {
110 | "cell_type": "code",
111 | "metadata": {
112 | "colab": {
113 | "base_uri": "https://localhost:8080/"
114 | },
115 | "id": "2XCPgpPM210-",
116 | "outputId": "55eaaf55-b0cd-4eda-f288-28924373a2a1"
117 | },
118 | "source": [
119 | "1 + 1 "
120 | ],
121 | "execution_count": 5,
122 | "outputs": [
123 | {
124 | "output_type": "execute_result",
125 | "data": {
126 | "text/plain": [
127 | "2"
128 | ]
129 | },
130 | "metadata": {
131 | "tags": []
132 | },
133 | "execution_count": 5
134 | }
135 | ]
136 | },
137 | {
138 | "cell_type": "code",
139 | "metadata": {
140 | "colab": {
141 | "base_uri": "https://localhost:8080/"
142 | },
143 | "id": "CM0YuMF92LcI",
144 | "outputId": "5fb258e5-dff8-4dc9-a718-ca2b7e595e1c"
145 | },
146 | "source": [
147 | "1 - 1"
148 | ],
149 | "execution_count": 6,
150 | "outputs": [
151 | {
152 | "output_type": "execute_result",
153 | "data": {
154 | "text/plain": [
155 | "0"
156 | ]
157 | },
158 | "metadata": {
159 | "tags": []
160 | },
161 | "execution_count": 6
162 | }
163 | ]
164 | },
165 | {
166 | "cell_type": "code",
167 | "metadata": {
168 | "colab": {
169 | "base_uri": "https://localhost:8080/"
170 | },
171 | "id": "YdLOg-n23Qci",
172 | "outputId": "fa777df4-c1bd-4a99-c154-9ae22010d37b"
173 | },
174 | "source": [
175 | "1/2"
176 | ],
177 | "execution_count": 7,
178 | "outputs": [
179 | {
180 | "output_type": "execute_result",
181 | "data": {
182 | "text/plain": [
183 | "0.5"
184 | ]
185 | },
186 | "metadata": {
187 | "tags": []
188 | },
189 | "execution_count": 7
190 | }
191 | ]
192 | },
193 | {
194 | "cell_type": "code",
195 | "metadata": {
196 | "colab": {
197 | "base_uri": "https://localhost:8080/"
198 | },
199 | "id": "iQgLWbq03RtH",
200 | "outputId": "c04bb7f8-f607-45b3-e1e7-b04b6ab7ee59"
201 | },
202 | "source": [
203 | "70.6*2.303"
204 | ],
205 | "execution_count": 8,
206 | "outputs": [
207 | {
208 | "output_type": "execute_result",
209 | "data": {
210 | "text/plain": [
211 | "162.59179999999998"
212 | ]
213 | },
214 | "metadata": {
215 | "tags": []
216 | },
217 | "execution_count": 8
218 | }
219 | ]
220 | },
221 | {
222 | "cell_type": "code",
223 | "metadata": {
224 | "colab": {
225 | "base_uri": "https://localhost:8080/"
226 | },
227 | "id": "JX65x01C3ZnY",
228 | "outputId": "00033c6a-20c5-476e-fa65-c1a3baf9f62e"
229 | },
230 | "source": [
231 | "round(70.6*2.303, 2)"
232 | ],
233 | "execution_count": 9,
234 | "outputs": [
235 | {
236 | "output_type": "execute_result",
237 | "data": {
238 | "text/plain": [
239 | "162.59"
240 | ]
241 | },
242 | "metadata": {
243 | "tags": []
244 | },
245 | "execution_count": 9
246 | }
247 | ]
248 | },
249 | {
250 | "cell_type": "code",
251 | "metadata": {
252 | "colab": {
253 | "base_uri": "https://localhost:8080/"
254 | },
255 | "id": "_cMD3UV53fS3",
256 | "outputId": "374310fb-6caa-4d37-e8fe-514e539a6169"
257 | },
258 | "source": [
259 | "# 5^2 = 25\n",
260 | "5**2"
261 | ],
262 | "execution_count": 10,
263 | "outputs": [
264 | {
265 | "output_type": "execute_result",
266 | "data": {
267 | "text/plain": [
268 | "25"
269 | ]
270 | },
271 | "metadata": {
272 | "tags": []
273 | },
274 | "execution_count": 10
275 | }
276 | ]
277 | },
278 | {
279 | "cell_type": "code",
280 | "metadata": {
281 | "colab": {
282 | "base_uri": "https://localhost:8080/"
283 | },
284 | "id": "v-5hfmt63ke6",
285 | "outputId": "b1363fb0-6711-41b2-bc61-fdd239f2e869"
286 | },
287 | "source": [
288 | "# Finding the Remainder after Division. \n",
289 | "5 % 2"
290 | ],
291 | "execution_count": 12,
292 | "outputs": [
293 | {
294 | "output_type": "execute_result",
295 | "data": {
296 | "text/plain": [
297 | "1"
298 | ]
299 | },
300 | "metadata": {
301 | "tags": []
302 | },
303 | "execution_count": 12
304 | }
305 | ]
306 | },
307 | {
308 | "cell_type": "code",
309 | "metadata": {
310 | "colab": {
311 | "base_uri": "https://localhost:8080/"
312 | },
313 | "id": "_hMYwurF3q8Q",
314 | "outputId": "5a315eee-2ee4-4543-dbef-0f037787a625"
315 | },
316 | "source": [
317 | "4 % 2"
318 | ],
319 | "execution_count": 14,
320 | "outputs": [
321 | {
322 | "output_type": "execute_result",
323 | "data": {
324 | "text/plain": [
325 | "0"
326 | ]
327 | },
328 | "metadata": {
329 | "tags": []
330 | },
331 | "execution_count": 14
332 | }
333 | ]
334 | },
335 | {
336 | "cell_type": "code",
337 | "metadata": {
338 | "colab": {
339 | "base_uri": "https://localhost:8080/"
340 | },
341 | "id": "rlyK4Li033K0",
342 | "outputId": "6881a9b4-0325-42d7-9235-235f45df46c9"
343 | },
344 | "source": [
345 | "## Floor Division : Returns the Quotient after division. \n",
346 | "5 // 2"
347 | ],
348 | "execution_count": 16,
349 | "outputs": [
350 | {
351 | "output_type": "execute_result",
352 | "data": {
353 | "text/plain": [
354 | "2"
355 | ]
356 | },
357 | "metadata": {
358 | "tags": []
359 | },
360 | "execution_count": 16
361 | }
362 | ]
363 | },
364 | {
365 | "cell_type": "markdown",
366 | "metadata": {
367 | "id": "MoakU5jt41Ar"
368 | },
369 | "source": [
370 | "A // B -- Gives you the Quotient. \n",
371 | "\n",
372 | "A % B -- Gives you the Remainder. "
373 | ]
374 | },
375 | {
376 | "cell_type": "code",
377 | "metadata": {
378 | "colab": {
379 | "base_uri": "https://localhost:8080/"
380 | },
381 | "id": "HQoOxr6K33Im",
382 | "outputId": "62541a09-2291-4ee2-bc12-f84350421808"
383 | },
384 | "source": [
385 | "# Hence,\n",
386 | "\n",
387 | "# 5 = 2 * (5 // 2) + 5 % 2\n",
388 | "\n",
389 | "2 * (5 // 2) + 5 % 2"
390 | ],
391 | "execution_count": 17,
392 | "outputs": [
393 | {
394 | "output_type": "execute_result",
395 | "data": {
396 | "text/plain": [
397 | "5"
398 | ]
399 | },
400 | "metadata": {
401 | "tags": []
402 | },
403 | "execution_count": 17
404 | }
405 | ]
406 | },
407 | {
408 | "cell_type": "markdown",
409 | "metadata": {
410 | "id": "Rhq0NDFH5DYX"
411 | },
412 | "source": [
413 | ">### Subtopic : Variable Assignment"
414 | ]
415 | },
416 | {
417 | "cell_type": "code",
418 | "metadata": {
419 | "id": "GaA0nAIy33F7"
420 | },
421 | "source": [
422 | "# Suppose reservoir A has porosity 25 % and Reservoir B has 30%. \n",
423 | "\n",
424 | "phi_A = 0.25 \n",
425 | "phi_B = 0.35"
426 | ],
427 | "execution_count": 18,
428 | "outputs": []
429 | },
430 | {
431 | "cell_type": "code",
432 | "metadata": {
433 | "colab": {
434 | "base_uri": "https://localhost:8080/"
435 | },
436 | "id": "GDV_Yalz33DG",
437 | "outputId": "99dc401d-369a-499a-a407-39fae5988fa2"
438 | },
439 | "source": [
440 | "phi_A , phi_B"
441 | ],
442 | "execution_count": 21,
443 | "outputs": [
444 | {
445 | "output_type": "execute_result",
446 | "data": {
447 | "text/plain": [
448 | "(0.25, 0.35)"
449 | ]
450 | },
451 | "metadata": {
452 | "tags": []
453 | },
454 | "execution_count": 21
455 | }
456 | ]
457 | },
458 | {
459 | "cell_type": "markdown",
460 | "metadata": {
461 | "id": "vmNdD7Cy6SqU"
462 | },
463 | "source": [
464 | ">> #### Variable Name Rules. \n",
465 | "\n",
466 | "1. 1var : Invalid\n",
467 | "2. var1 : Valid\n",
468 | "\n",
469 | "3. Only special character allowed = Underscore _\n",
470 | "\n",
471 | "4. is Case Sensitive. A & a are different. "
472 | ]
473 | },
474 | {
475 | "cell_type": "code",
476 | "metadata": {
477 | "colab": {
478 | "base_uri": "https://localhost:8080/",
479 | "height": 132
480 | },
481 | "id": "Np4GNtM233AN",
482 | "outputId": "f112b0ba-4cda-4020-f8ea-e897a41c1028"
483 | },
484 | "source": [
485 | "dx&dt = 5"
486 | ],
487 | "execution_count": 22,
488 | "outputs": [
489 | {
490 | "output_type": "error",
491 | "ename": "SyntaxError",
492 | "evalue": "ignored",
493 | "traceback": [
494 | "\u001b[0;36m File \u001b[0;32m\"\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m dx&dt = 5\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m can't assign to operator\n"
495 | ]
496 | }
497 | ]
498 | },
499 | {
500 | "cell_type": "code",
501 | "metadata": {
502 | "colab": {
503 | "base_uri": "https://localhost:8080/",
504 | "height": 132
505 | },
506 | "id": "IjBf9B616q_C",
507 | "outputId": "a663c780-ab40-4356-af4a-1e5398a7539e"
508 | },
509 | "source": [
510 | "# phi1 = 3\n",
511 | "\n",
512 | "1phi = 2"
513 | ],
514 | "execution_count": 27,
515 | "outputs": [
516 | {
517 | "output_type": "error",
518 | "ename": "SyntaxError",
519 | "evalue": "ignored",
520 | "traceback": [
521 | "\u001b[0;36m File \u001b[0;32m\"\"\u001b[0;36m, line \u001b[0;32m3\u001b[0m\n\u001b[0;31m 1phi = 2\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n"
522 | ]
523 | }
524 | ]
525 | },
526 | {
527 | "cell_type": "markdown",
528 | "metadata": {
529 | "id": "fsWFD-TL309c"
530 | },
531 | "source": [
532 | "## 2. Strings"
533 | ]
534 | },
535 | {
536 | "cell_type": "code",
537 | "metadata": {
538 | "colab": {
539 | "base_uri": "https://localhost:8080/",
540 | "height": 34
541 | },
542 | "id": "ozV0gHUv3vpd",
543 | "outputId": "1d2593ca-bec9-4979-bf7a-1a553ffc0bf0"
544 | },
545 | "source": [
546 | "'single quotes are allowed'"
547 | ],
548 | "execution_count": 28,
549 | "outputs": [
550 | {
551 | "output_type": "execute_result",
552 | "data": {
553 | "application/vnd.google.colaboratory.intrinsic+json": {
554 | "type": "string"
555 | },
556 | "text/plain": [
557 | "'single quotes are allowed'"
558 | ]
559 | },
560 | "metadata": {
561 | "tags": []
562 | },
563 | "execution_count": 28
564 | }
565 | ]
566 | },
567 | {
568 | "cell_type": "code",
569 | "metadata": {
570 | "colab": {
571 | "base_uri": "https://localhost:8080/",
572 | "height": 34
573 | },
574 | "id": "TCoJzNJt7CHG",
575 | "outputId": "15100eda-da8d-4191-a62b-89210ba113e4"
576 | },
577 | "source": [
578 | "\"Double Quotes are also allowed\""
579 | ],
580 | "execution_count": 29,
581 | "outputs": [
582 | {
583 | "output_type": "execute_result",
584 | "data": {
585 | "application/vnd.google.colaboratory.intrinsic+json": {
586 | "type": "string"
587 | },
588 | "text/plain": [
589 | "'Double Quotes are also allowed'"
590 | ]
591 | },
592 | "metadata": {
593 | "tags": []
594 | },
595 | "execution_count": 29
596 | }
597 | ]
598 | },
599 | {
600 | "cell_type": "markdown",
601 | "metadata": {
602 | "id": "GLC50bmU7jNB"
603 | },
604 | "source": [
605 | ">> #### Printing."
606 | ]
607 | },
608 | {
609 | "cell_type": "code",
610 | "metadata": {
611 | "colab": {
612 | "base_uri": "https://localhost:8080/"
613 | },
614 | "id": "WNN6pHeP7S-L",
615 | "outputId": "2a939e7e-c82a-47e6-efee-9670207e5a7f"
616 | },
617 | "source": [
618 | "print('This is Line1 \\nThis is Line2')"
619 | ],
620 | "execution_count": 35,
621 | "outputs": [
622 | {
623 | "output_type": "stream",
624 | "text": [
625 | "This is Line1 \n",
626 | "This is Line2\n"
627 | ],
628 | "name": "stdout"
629 | }
630 | ]
631 | },
632 | {
633 | "cell_type": "code",
634 | "metadata": {
635 | "colab": {
636 | "base_uri": "https://localhost:8080/"
637 | },
638 | "id": "hZ4ta1N47XSJ",
639 | "outputId": "40d8bb9d-deb8-4ef8-b3c1-aeccc135d009"
640 | },
641 | "source": [
642 | "name = 'Sandstone'\n",
643 | "porosity = 25 #percent. \n",
644 | "\n",
645 | "print('The rock type is name and the rock porosity is porosity')"
646 | ],
647 | "execution_count": 36,
648 | "outputs": [
649 | {
650 | "output_type": "stream",
651 | "text": [
652 | "The rock type is name and the rock porosity is porosity\n"
653 | ],
654 | "name": "stdout"
655 | }
656 | ]
657 | },
658 | {
659 | "cell_type": "markdown",
660 | "metadata": {
661 | "id": "YfckAzYv8DgI"
662 | },
663 | "source": [
664 | "##### f-Strings."
665 | ]
666 | },
667 | {
668 | "cell_type": "code",
669 | "metadata": {
670 | "colab": {
671 | "base_uri": "https://localhost:8080/"
672 | },
673 | "id": "_oNywnYY720j",
674 | "outputId": "7aa17db2-a3be-408b-d437-4a5b71e50f98"
675 | },
676 | "source": [
677 | "print(f'The rock type is {name} and the rock porosity is {porosity} %')"
678 | ],
679 | "execution_count": 38,
680 | "outputs": [
681 | {
682 | "output_type": "stream",
683 | "text": [
684 | "The rock type is Sandstone and the rock porosity is 25 %\n"
685 | ],
686 | "name": "stdout"
687 | }
688 | ]
689 | },
690 | {
691 | "cell_type": "markdown",
692 | "metadata": {
693 | "id": "VUWMIn2Z9VY2"
694 | },
695 | "source": [
696 | "Strings are Immutable/Cannot be modified."
697 | ]
698 | },
699 | {
700 | "cell_type": "code",
701 | "metadata": {
702 | "colab": {
703 | "base_uri": "https://localhost:8080/",
704 | "height": 166
705 | },
706 | "id": "46TODMw89PoH",
707 | "outputId": "c542efe8-59b9-4a73-907d-b10b82cc943f"
708 | },
709 | "source": [
710 | "name[4] = 'r'"
711 | ],
712 | "execution_count": 41,
713 | "outputs": [
714 | {
715 | "output_type": "error",
716 | "ename": "TypeError",
717 | "evalue": "ignored",
718 | "traceback": [
719 | "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
720 | "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)",
721 | "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mname\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m4\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m'r'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
722 | "\u001b[0;31mTypeError\u001b[0m: 'str' object does not support item assignment"
723 | ]
724 | }
725 | ]
726 | },
727 | {
728 | "cell_type": "markdown",
729 | "metadata": {
730 | "id": "PKLi6ji19D35"
731 | },
732 | "source": [
733 | "## 3. Lists"
734 | ]
735 | },
736 | {
737 | "cell_type": "markdown",
738 | "metadata": {
739 | "id": "qv7DoNSgIafX"
740 | },
741 | "source": [
742 | "Number of objects stored in square brackets [ ]. \n",
743 | "\n",
744 | "Lists are Modify-able."
745 | ]
746 | },
747 | {
748 | "cell_type": "code",
749 | "metadata": {
750 | "colab": {
751 | "base_uri": "https://localhost:8080/"
752 | },
753 | "id": "guHq9kNm8X2J",
754 | "outputId": "1aabde45-4c0e-441e-97d1-25b8fc672c94"
755 | },
756 | "source": [
757 | "#list of integer type numbers. \n",
758 | "[1,2,3]"
759 | ],
760 | "execution_count": 43,
761 | "outputs": [
762 | {
763 | "output_type": "execute_result",
764 | "data": {
765 | "text/plain": [
766 | "[1, 2, 3]"
767 | ]
768 | },
769 | "metadata": {
770 | "tags": []
771 | },
772 | "execution_count": 43
773 | }
774 | ]
775 | },
776 | {
777 | "cell_type": "code",
778 | "metadata": {
779 | "colab": {
780 | "base_uri": "https://localhost:8080/"
781 | },
782 | "id": "rVjO_qveBc_0",
783 | "outputId": "344791bf-6a8b-40c9-ccae-30f8304ea0dc"
784 | },
785 | "source": [
786 | "#list of floating point numbers. \n",
787 | "[3.14 , 2.73, 0.87, 162.6]"
788 | ],
789 | "execution_count": 44,
790 | "outputs": [
791 | {
792 | "output_type": "execute_result",
793 | "data": {
794 | "text/plain": [
795 | "[3.14, 2.73, 0.87, 162.6]"
796 | ]
797 | },
798 | "metadata": {
799 | "tags": []
800 | },
801 | "execution_count": 44
802 | }
803 | ]
804 | },
805 | {
806 | "cell_type": "code",
807 | "metadata": {
808 | "colab": {
809 | "base_uri": "https://localhost:8080/"
810 | },
811 | "id": "M_o9LAUPBrTy",
812 | "outputId": "0236edcb-87b4-4ef2-f964-9cd5c6752dda"
813 | },
814 | "source": [
815 | "#mixed bag. \n",
816 | "['reservoir', 'drilling', 70.6, 141.2]"
817 | ],
818 | "execution_count": 45,
819 | "outputs": [
820 | {
821 | "output_type": "execute_result",
822 | "data": {
823 | "text/plain": [
824 | "['reservoir', 'drilling', 70.6, 141.2]"
825 | ]
826 | },
827 | "metadata": {
828 | "tags": []
829 | },
830 | "execution_count": 45
831 | }
832 | ]
833 | },
834 | {
835 | "cell_type": "code",
836 | "metadata": {
837 | "id": "aaCxBYw4Bz1G"
838 | },
839 | "source": [
840 | "#storing it into a variable. \n",
841 | "\n",
842 | "porosities = [0.2, 0.35, 0.4, 0.55]"
843 | ],
844 | "execution_count": 46,
845 | "outputs": []
846 | },
847 | {
848 | "cell_type": "markdown",
849 | "metadata": {
850 | "id": "hwiaLInLB_zM"
851 | },
852 | "source": [
853 | "#### Operations and Manipulations on Lists. "
854 | ]
855 | },
856 | {
857 | "cell_type": "code",
858 | "metadata": {
859 | "colab": {
860 | "base_uri": "https://localhost:8080/"
861 | },
862 | "id": "uAp8VYcoB6UP",
863 | "outputId": "d1f0fc1d-8d72-4452-ff7b-ccab11e2d7aa"
864 | },
865 | "source": [
866 | "# Joining 2 Lists \n",
867 | "[1,2,3] + ['a','b','c']"
868 | ],
869 | "execution_count": 48,
870 | "outputs": [
871 | {
872 | "output_type": "execute_result",
873 | "data": {
874 | "text/plain": [
875 | "[1, 2, 3, 'a', 'b', 'c']"
876 | ]
877 | },
878 | "metadata": {
879 | "tags": []
880 | },
881 | "execution_count": 48
882 | }
883 | ]
884 | },
885 | {
886 | "cell_type": "code",
887 | "metadata": {
888 | "id": "gOMXCFtgB7aM"
889 | },
890 | "source": [
891 | "#APPEND\n",
892 | "new_value = 0.40\n",
893 | "porosities.append(new_value)"
894 | ],
895 | "execution_count": 50,
896 | "outputs": []
897 | },
898 | {
899 | "cell_type": "code",
900 | "metadata": {
901 | "colab": {
902 | "base_uri": "https://localhost:8080/"
903 | },
904 | "id": "EsrMY6BNCxd_",
905 | "outputId": "6f2b445d-c9af-4113-bedd-ffb0a2f5d021"
906 | },
907 | "source": [
908 | "porosities"
909 | ],
910 | "execution_count": 51,
911 | "outputs": [
912 | {
913 | "output_type": "execute_result",
914 | "data": {
915 | "text/plain": [
916 | "[0.2, 0.35, 0.4, 0.55, 0.4]"
917 | ]
918 | },
919 | "metadata": {
920 | "tags": []
921 | },
922 | "execution_count": 51
923 | }
924 | ]
925 | },
926 | {
927 | "cell_type": "code",
928 | "metadata": {
929 | "id": "86BY4yYEC4wa"
930 | },
931 | "source": [
932 | "#Indexing. \n",
933 | "\n",
934 | "# Each Element in the list has an index starting with 0th index\n",
935 | "# for the first element. The same goes for strings as well. "
936 | ],
937 | "execution_count": 52,
938 | "outputs": []
939 | },
940 | {
941 | "cell_type": "code",
942 | "metadata": {
943 | "colab": {
944 | "base_uri": "https://localhost:8080/"
945 | },
946 | "id": "oIPEHavkDFCO",
947 | "outputId": "d73f9abb-9466-43f4-8225-5c38988514f8"
948 | },
949 | "source": [
950 | "porosities\n",
951 | "\n",
952 | "# porosities[0]"
953 | ],
954 | "execution_count": 56,
955 | "outputs": [
956 | {
957 | "output_type": "execute_result",
958 | "data": {
959 | "text/plain": [
960 | "[0.2, 0.35, 0.4, 0.55, 0.4]"
961 | ]
962 | },
963 | "metadata": {
964 | "tags": []
965 | },
966 | "execution_count": 56
967 | }
968 | ]
969 | },
970 | {
971 | "cell_type": "code",
972 | "metadata": {
973 | "colab": {
974 | "base_uri": "https://localhost:8080/"
975 | },
976 | "id": "IXCnbSqVDpVf",
977 | "outputId": "fb3a0fcd-c423-4cdb-9436-138826b75207"
978 | },
979 | "source": [
980 | "#Proof that lists are mutable/can be modified. \n",
981 | "poro = [0.20,0.22,0.34,0.27,45]\n",
982 | "\n",
983 | "#Notice that last porosity is mistakenly added as a percentage\n",
984 | "#We need it as a fraction. \n",
985 | "poro"
986 | ],
987 | "execution_count": 61,
988 | "outputs": [
989 | {
990 | "output_type": "execute_result",
991 | "data": {
992 | "text/plain": [
993 | "[0.2, 0.22, 0.34, 0.27, 45]"
994 | ]
995 | },
996 | "metadata": {
997 | "tags": []
998 | },
999 | "execution_count": 61
1000 | }
1001 | ]
1002 | },
1003 | {
1004 | "cell_type": "code",
1005 | "metadata": {
1006 | "id": "pHnpQjFrENmh"
1007 | },
1008 | "source": [
1009 | "poro[-1] = 0.45"
1010 | ],
1011 | "execution_count": 62,
1012 | "outputs": []
1013 | },
1014 | {
1015 | "cell_type": "code",
1016 | "metadata": {
1017 | "colab": {
1018 | "base_uri": "https://localhost:8080/"
1019 | },
1020 | "id": "WY2Wlm2wEjEQ",
1021 | "outputId": "85626bf7-923a-4fad-c627-b07ba391e5b9"
1022 | },
1023 | "source": [
1024 | "# 2D lists. \n",
1025 | "\n",
1026 | "list_1 = [1,2,3] \n",
1027 | "list_2 = [4,5,6]\n",
1028 | "\n",
1029 | "list_2D = [list_1 , list_2]\n",
1030 | "\n",
1031 | "list_2D"
1032 | ],
1033 | "execution_count": 63,
1034 | "outputs": [
1035 | {
1036 | "output_type": "execute_result",
1037 | "data": {
1038 | "text/plain": [
1039 | "[[1, 2, 3], [4, 5, 6]]"
1040 | ]
1041 | },
1042 | "metadata": {
1043 | "tags": []
1044 | },
1045 | "execution_count": 63
1046 | }
1047 | ]
1048 | },
1049 | {
1050 | "cell_type": "code",
1051 | "metadata": {
1052 | "colab": {
1053 | "base_uri": "https://localhost:8080/"
1054 | },
1055 | "id": "U_iVeXD3FbmW",
1056 | "outputId": "6c2faa8e-6405-4c89-eb16-cee4270c108b"
1057 | },
1058 | "source": [
1059 | "list_2D[0][-1]"
1060 | ],
1061 | "execution_count": 65,
1062 | "outputs": [
1063 | {
1064 | "output_type": "execute_result",
1065 | "data": {
1066 | "text/plain": [
1067 | "3"
1068 | ]
1069 | },
1070 | "metadata": {
1071 | "tags": []
1072 | },
1073 | "execution_count": 65
1074 | }
1075 | ]
1076 | },
1077 | {
1078 | "cell_type": "markdown",
1079 | "metadata": {
1080 | "id": "bLGUZu7VF7uD"
1081 | },
1082 | "source": [
1083 | "**List Slicing.**\n",
1084 | "\n",
1085 | "list_name[start:stop:step]"
1086 | ]
1087 | },
1088 | {
1089 | "cell_type": "code",
1090 | "metadata": {
1091 | "colab": {
1092 | "base_uri": "https://localhost:8080/"
1093 | },
1094 | "id": "udaubIXKFfP4",
1095 | "outputId": "a70910c3-6e34-423a-e7c9-74010de51592"
1096 | },
1097 | "source": [
1098 | "#We can access a particular section or slice of a list.\n",
1099 | "\n",
1100 | "perms = [4,5,1,10,100,1000,3,40,50,60]\n",
1101 | "\n",
1102 | "perms[3:]"
1103 | ],
1104 | "execution_count": 68,
1105 | "outputs": [
1106 | {
1107 | "output_type": "execute_result",
1108 | "data": {
1109 | "text/plain": [
1110 | "[10, 100, 1000, 3, 40, 50, 60]"
1111 | ]
1112 | },
1113 | "metadata": {
1114 | "tags": []
1115 | },
1116 | "execution_count": 68
1117 | }
1118 | ]
1119 | },
1120 | {
1121 | "cell_type": "code",
1122 | "metadata": {
1123 | "colab": {
1124 | "base_uri": "https://localhost:8080/"
1125 | },
1126 | "id": "MbCmUgKdGG1o",
1127 | "outputId": "e4ae81ab-f068-4484-c113-e8753113d2b5"
1128 | },
1129 | "source": [
1130 | "perms[0:-1:2]"
1131 | ],
1132 | "execution_count": 69,
1133 | "outputs": [
1134 | {
1135 | "output_type": "execute_result",
1136 | "data": {
1137 | "text/plain": [
1138 | "[4, 1, 100, 3, 50]"
1139 | ]
1140 | },
1141 | "metadata": {
1142 | "tags": []
1143 | },
1144 | "execution_count": 69
1145 | }
1146 | ]
1147 | },
1148 | {
1149 | "cell_type": "markdown",
1150 | "metadata": {
1151 | "id": "yVlpiqexG3kx"
1152 | },
1153 | "source": [
1154 | "## 4. Tuples"
1155 | ]
1156 | },
1157 | {
1158 | "cell_type": "code",
1159 | "metadata": {
1160 | "colab": {
1161 | "base_uri": "https://localhost:8080/"
1162 | },
1163 | "id": "Hs6n2hawGV7z",
1164 | "outputId": "a3f8f466-ab6f-4774-fdd4-e2d1949d1a5c"
1165 | },
1166 | "source": [
1167 | "t = (1,2,3)\n",
1168 | "\n",
1169 | "t[0]"
1170 | ],
1171 | "execution_count": 70,
1172 | "outputs": [
1173 | {
1174 | "output_type": "execute_result",
1175 | "data": {
1176 | "text/plain": [
1177 | "1"
1178 | ]
1179 | },
1180 | "metadata": {
1181 | "tags": []
1182 | },
1183 | "execution_count": 70
1184 | }
1185 | ]
1186 | },
1187 | {
1188 | "cell_type": "code",
1189 | "metadata": {
1190 | "id": "c88BJGfeHJd1"
1191 | },
1192 | "source": [
1193 | "#TUPLES are a SECURE way to store Data. \n",
1194 | "\n",
1195 | "#They help prevent modification. IMMUTABLE."
1196 | ],
1197 | "execution_count": 71,
1198 | "outputs": []
1199 | },
1200 | {
1201 | "cell_type": "code",
1202 | "metadata": {
1203 | "colab": {
1204 | "base_uri": "https://localhost:8080/",
1205 | "height": 166
1206 | },
1207 | "id": "FXXpB3sRHQ6N",
1208 | "outputId": "a9b41597-0329-4ddd-a6cf-5b793937058c"
1209 | },
1210 | "source": [
1211 | "t[1] = 2"
1212 | ],
1213 | "execution_count": 72,
1214 | "outputs": [
1215 | {
1216 | "output_type": "error",
1217 | "ename": "TypeError",
1218 | "evalue": "ignored",
1219 | "traceback": [
1220 | "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
1221 | "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)",
1222 | "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mt\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m2\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
1223 | "\u001b[0;31mTypeError\u001b[0m: 'tuple' object does not support item assignment"
1224 | ]
1225 | }
1226 | ]
1227 | },
1228 | {
1229 | "cell_type": "markdown",
1230 | "metadata": {
1231 | "id": "IAOzK1ibHcuS"
1232 | },
1233 | "source": [
1234 | "## 5. SETS"
1235 | ]
1236 | },
1237 | {
1238 | "cell_type": "code",
1239 | "metadata": {
1240 | "id": "K8khvdy3HTtY"
1241 | },
1242 | "source": [
1243 | "#MOST IMPORTANT application of Sets is that they help store \n",
1244 | "#only unique information.\n",
1245 | "\n",
1246 | "set1 = {1,2,3}"
1247 | ],
1248 | "execution_count": 74,
1249 | "outputs": []
1250 | },
1251 | {
1252 | "cell_type": "code",
1253 | "metadata": {
1254 | "id": "iPe7vNEJHZLk"
1255 | },
1256 | "source": [
1257 | "duplicates = [1,2,2,3,4,5,6,6,6,6,7]"
1258 | ],
1259 | "execution_count": 76,
1260 | "outputs": []
1261 | },
1262 | {
1263 | "cell_type": "code",
1264 | "metadata": {
1265 | "colab": {
1266 | "base_uri": "https://localhost:8080/"
1267 | },
1268 | "id": "o5YUKhshHbe1",
1269 | "outputId": "c2c9e08f-7960-46c1-f153-f956fb8ee31b"
1270 | },
1271 | "source": [
1272 | "set(duplicates)"
1273 | ],
1274 | "execution_count": 77,
1275 | "outputs": [
1276 | {
1277 | "output_type": "execute_result",
1278 | "data": {
1279 | "text/plain": [
1280 | "{1, 2, 3, 4, 5, 6, 7}"
1281 | ]
1282 | },
1283 | "metadata": {
1284 | "tags": []
1285 | },
1286 | "execution_count": 77
1287 | }
1288 | ]
1289 | },
1290 | {
1291 | "cell_type": "markdown",
1292 | "metadata": {
1293 | "id": "FbiACyKxIAgK"
1294 | },
1295 | "source": [
1296 | "## 6. DICTIONARIES"
1297 | ]
1298 | },
1299 | {
1300 | "cell_type": "code",
1301 | "metadata": {
1302 | "id": "la10z29ZH8si"
1303 | },
1304 | "source": [
1305 | "reservoir1 = {'phi':[0.2,0.3,0.25],'K(mD)':[120,124,140]}"
1306 | ],
1307 | "execution_count": 79,
1308 | "outputs": []
1309 | },
1310 | {
1311 | "cell_type": "code",
1312 | "metadata": {
1313 | "colab": {
1314 | "base_uri": "https://localhost:8080/"
1315 | },
1316 | "id": "htcZljeQH_yA",
1317 | "outputId": "f274d92a-cea9-4fc9-e653-d6260f4b742c"
1318 | },
1319 | "source": [
1320 | "reservoir1['phi']"
1321 | ],
1322 | "execution_count": 80,
1323 | "outputs": [
1324 | {
1325 | "output_type": "execute_result",
1326 | "data": {
1327 | "text/plain": [
1328 | "[0.2, 0.3, 0.25]"
1329 | ]
1330 | },
1331 | "metadata": {
1332 | "tags": []
1333 | },
1334 | "execution_count": 80
1335 | }
1336 | ]
1337 | },
1338 | {
1339 | "cell_type": "code",
1340 | "metadata": {
1341 | "colab": {
1342 | "base_uri": "https://localhost:8080/"
1343 | },
1344 | "id": "9nv3vqJwI7-B",
1345 | "outputId": "9e646f7d-80a8-458f-8269-44910984afb6"
1346 | },
1347 | "source": [
1348 | "reservoir1.keys()"
1349 | ],
1350 | "execution_count": 83,
1351 | "outputs": [
1352 | {
1353 | "output_type": "execute_result",
1354 | "data": {
1355 | "text/plain": [
1356 | "dict_keys(['phi', 'K(mD)'])"
1357 | ]
1358 | },
1359 | "metadata": {
1360 | "tags": []
1361 | },
1362 | "execution_count": 83
1363 | }
1364 | ]
1365 | },
1366 | {
1367 | "cell_type": "code",
1368 | "metadata": {
1369 | "colab": {
1370 | "base_uri": "https://localhost:8080/"
1371 | },
1372 | "id": "Jzmku2G3I9aW",
1373 | "outputId": "455ab534-ae2b-4e01-f04a-2368691bdedb"
1374 | },
1375 | "source": [
1376 | "reservoir1.values()"
1377 | ],
1378 | "execution_count": 84,
1379 | "outputs": [
1380 | {
1381 | "output_type": "execute_result",
1382 | "data": {
1383 | "text/plain": [
1384 | "dict_values([[0.2, 0.3, 0.25], [120, 124, 140]])"
1385 | ]
1386 | },
1387 | "metadata": {
1388 | "tags": []
1389 | },
1390 | "execution_count": 84
1391 | }
1392 | ]
1393 | },
1394 | {
1395 | "cell_type": "code",
1396 | "metadata": {
1397 | "colab": {
1398 | "base_uri": "https://localhost:8080/",
1399 | "height": 138
1400 | },
1401 | "id": "CUfHG4BnJGKP",
1402 | "outputId": "ba44c748-ea48-45b8-de2a-40739afe95a9"
1403 | },
1404 | "source": [
1405 | "##Optional. Converting a dictionary to a table. \n",
1406 | "import pandas as pd\n",
1407 | "pd.DataFrame(reservoir1)"
1408 | ],
1409 | "execution_count": 85,
1410 | "outputs": [
1411 | {
1412 | "output_type": "execute_result",
1413 | "data": {
1414 | "text/html": [
1415 | "\n",
1416 | "\n",
1429 | "
\n",
1430 | " \n",
1431 | " \n",
1432 | " | \n",
1433 | " phi | \n",
1434 | " K(mD) | \n",
1435 | "
\n",
1436 | " \n",
1437 | " \n",
1438 | " \n",
1439 | " 0 | \n",
1440 | " 0.20 | \n",
1441 | " 120 | \n",
1442 | "
\n",
1443 | " \n",
1444 | " 1 | \n",
1445 | " 0.30 | \n",
1446 | " 124 | \n",
1447 | "
\n",
1448 | " \n",
1449 | " 2 | \n",
1450 | " 0.25 | \n",
1451 | " 140 | \n",
1452 | "
\n",
1453 | " \n",
1454 | "
\n",
1455 | "
"
1456 | ],
1457 | "text/plain": [
1458 | " phi K(mD)\n",
1459 | "0 0.20 120\n",
1460 | "1 0.30 124\n",
1461 | "2 0.25 140"
1462 | ]
1463 | },
1464 | "metadata": {
1465 | "tags": []
1466 | },
1467 | "execution_count": 85
1468 | }
1469 | ]
1470 | },
1471 | {
1472 | "cell_type": "markdown",
1473 | "metadata": {
1474 | "id": "ikyTEjC6Q2dG"
1475 | },
1476 | "source": [
1477 | "# Chapter 2 : Operators & Statements."
1478 | ]
1479 | },
1480 | {
1481 | "cell_type": "markdown",
1482 | "metadata": {
1483 | "id": "e54swgeMROwI"
1484 | },
1485 | "source": [
1486 | "1. ### Comparison Operators"
1487 | ]
1488 | },
1489 | {
1490 | "cell_type": "code",
1491 | "metadata": {
1492 | "colab": {
1493 | "base_uri": "https://localhost:8080/"
1494 | },
1495 | "id": "wz15P9gnJTng",
1496 | "outputId": "ea71f9de-f5ba-474c-99e0-4c5288c9217e"
1497 | },
1498 | "source": [
1499 | "1>2"
1500 | ],
1501 | "execution_count": 86,
1502 | "outputs": [
1503 | {
1504 | "output_type": "execute_result",
1505 | "data": {
1506 | "text/plain": [
1507 | "False"
1508 | ]
1509 | },
1510 | "metadata": {
1511 | "tags": []
1512 | },
1513 | "execution_count": 86
1514 | }
1515 | ]
1516 | },
1517 | {
1518 | "cell_type": "code",
1519 | "metadata": {
1520 | "colab": {
1521 | "base_uri": "https://localhost:8080/"
1522 | },
1523 | "id": "bMElx0MbQyxW",
1524 | "outputId": "20ebb9d2-8e39-46ca-f30d-48b0d0b089d6"
1525 | },
1526 | "source": [
1527 | "2>1"
1528 | ],
1529 | "execution_count": 87,
1530 | "outputs": [
1531 | {
1532 | "output_type": "execute_result",
1533 | "data": {
1534 | "text/plain": [
1535 | "True"
1536 | ]
1537 | },
1538 | "metadata": {
1539 | "tags": []
1540 | },
1541 | "execution_count": 87
1542 | }
1543 | ]
1544 | },
1545 | {
1546 | "cell_type": "code",
1547 | "metadata": {
1548 | "colab": {
1549 | "base_uri": "https://localhost:8080/"
1550 | },
1551 | "id": "mWkcwNXrRSxo",
1552 | "outputId": "f96f1a02-0070-4dda-9fe4-36740e6c296e"
1553 | },
1554 | "source": [
1555 | "1 == 1"
1556 | ],
1557 | "execution_count": 88,
1558 | "outputs": [
1559 | {
1560 | "output_type": "execute_result",
1561 | "data": {
1562 | "text/plain": [
1563 | "True"
1564 | ]
1565 | },
1566 | "metadata": {
1567 | "tags": []
1568 | },
1569 | "execution_count": 88
1570 | }
1571 | ]
1572 | },
1573 | {
1574 | "cell_type": "code",
1575 | "metadata": {
1576 | "colab": {
1577 | "base_uri": "https://localhost:8080/"
1578 | },
1579 | "id": "wLKFybgdRTzh",
1580 | "outputId": "f693854b-b511-43ab-ad40-5fa91070d732"
1581 | },
1582 | "source": [
1583 | "3 >= 1"
1584 | ],
1585 | "execution_count": 89,
1586 | "outputs": [
1587 | {
1588 | "output_type": "execute_result",
1589 | "data": {
1590 | "text/plain": [
1591 | "True"
1592 | ]
1593 | },
1594 | "metadata": {
1595 | "tags": []
1596 | },
1597 | "execution_count": 89
1598 | }
1599 | ]
1600 | },
1601 | {
1602 | "cell_type": "code",
1603 | "metadata": {
1604 | "colab": {
1605 | "base_uri": "https://localhost:8080/"
1606 | },
1607 | "id": "M8MtRIdCRVuE",
1608 | "outputId": "b93b7239-6118-43ba-cf5a-9184bc9eaf3c"
1609 | },
1610 | "source": [
1611 | "1 >= 3"
1612 | ],
1613 | "execution_count": 90,
1614 | "outputs": [
1615 | {
1616 | "output_type": "execute_result",
1617 | "data": {
1618 | "text/plain": [
1619 | "False"
1620 | ]
1621 | },
1622 | "metadata": {
1623 | "tags": []
1624 | },
1625 | "execution_count": 90
1626 | }
1627 | ]
1628 | },
1629 | {
1630 | "cell_type": "markdown",
1631 | "metadata": {
1632 | "id": "fHB0WUtORt2X"
1633 | },
1634 | "source": [
1635 | "### 2. Logical Operators."
1636 | ]
1637 | },
1638 | {
1639 | "cell_type": "code",
1640 | "metadata": {
1641 | "id": "nr3-Z1sTRXUY"
1642 | },
1643 | "source": [
1644 | "# and | or | not | is"
1645 | ],
1646 | "execution_count": 91,
1647 | "outputs": []
1648 | },
1649 | {
1650 | "cell_type": "code",
1651 | "metadata": {
1652 | "colab": {
1653 | "base_uri": "https://localhost:8080/"
1654 | },
1655 | "id": "VVph2TeVR0ex",
1656 | "outputId": "cb06ce86-a361-4b71-89b8-2590ebd99727"
1657 | },
1658 | "source": [
1659 | "(1 > 2) and (2 < 3)"
1660 | ],
1661 | "execution_count": 92,
1662 | "outputs": [
1663 | {
1664 | "output_type": "execute_result",
1665 | "data": {
1666 | "text/plain": [
1667 | "False"
1668 | ]
1669 | },
1670 | "metadata": {
1671 | "tags": []
1672 | },
1673 | "execution_count": 92
1674 | }
1675 | ]
1676 | },
1677 | {
1678 | "cell_type": "code",
1679 | "metadata": {
1680 | "colab": {
1681 | "base_uri": "https://localhost:8080/"
1682 | },
1683 | "id": "31YS3PxMR3bx",
1684 | "outputId": "03059976-8892-4fe1-bc09-ee06d34bdf55"
1685 | },
1686 | "source": [
1687 | "(1 > 2) or (2 < 3)"
1688 | ],
1689 | "execution_count": 93,
1690 | "outputs": [
1691 | {
1692 | "output_type": "execute_result",
1693 | "data": {
1694 | "text/plain": [
1695 | "True"
1696 | ]
1697 | },
1698 | "metadata": {
1699 | "tags": []
1700 | },
1701 | "execution_count": 93
1702 | }
1703 | ]
1704 | },
1705 | {
1706 | "cell_type": "code",
1707 | "metadata": {
1708 | "colab": {
1709 | "base_uri": "https://localhost:8080/"
1710 | },
1711 | "id": "SBiwAOotR5sY",
1712 | "outputId": "02e4f8ed-5039-40a3-e5d1-1f7a11f8aa0f"
1713 | },
1714 | "source": [
1715 | "(1 == 2) or (2 == 3) or (4 == 4)"
1716 | ],
1717 | "execution_count": 94,
1718 | "outputs": [
1719 | {
1720 | "output_type": "execute_result",
1721 | "data": {
1722 | "text/plain": [
1723 | "True"
1724 | ]
1725 | },
1726 | "metadata": {
1727 | "tags": []
1728 | },
1729 | "execution_count": 94
1730 | }
1731 | ]
1732 | },
1733 | {
1734 | "cell_type": "code",
1735 | "metadata": {
1736 | "colab": {
1737 | "base_uri": "https://localhost:8080/"
1738 | },
1739 | "id": "Ly2LiwaoR7go",
1740 | "outputId": "76b7a22c-fe5c-4ec8-af0c-f3bb195691a6"
1741 | },
1742 | "source": [
1743 | "not 1"
1744 | ],
1745 | "execution_count": 96,
1746 | "outputs": [
1747 | {
1748 | "output_type": "execute_result",
1749 | "data": {
1750 | "text/plain": [
1751 | "False"
1752 | ]
1753 | },
1754 | "metadata": {
1755 | "tags": []
1756 | },
1757 | "execution_count": 96
1758 | }
1759 | ]
1760 | },
1761 | {
1762 | "cell_type": "code",
1763 | "metadata": {
1764 | "colab": {
1765 | "base_uri": "https://localhost:8080/"
1766 | },
1767 | "id": "W4JyXHwJR83t",
1768 | "outputId": "e1406ecb-8195-4399-e0f1-e24cd66b52e8"
1769 | },
1770 | "source": [
1771 | "1 is 2"
1772 | ],
1773 | "execution_count": 98,
1774 | "outputs": [
1775 | {
1776 | "output_type": "execute_result",
1777 | "data": {
1778 | "text/plain": [
1779 | "False"
1780 | ]
1781 | },
1782 | "metadata": {
1783 | "tags": []
1784 | },
1785 | "execution_count": 98
1786 | }
1787 | ]
1788 | },
1789 | {
1790 | "cell_type": "markdown",
1791 | "metadata": {
1792 | "id": "VxLqMe8RStmi"
1793 | },
1794 | "source": [
1795 | "3. ### if - elif - else Statements."
1796 | ]
1797 | },
1798 | {
1799 | "cell_type": "code",
1800 | "metadata": {
1801 | "colab": {
1802 | "base_uri": "https://localhost:8080/"
1803 | },
1804 | "id": "U5fSdks1S1hp",
1805 | "outputId": "0563e838-d5f6-4776-8939-c1fdde4ba47e"
1806 | },
1807 | "source": [
1808 | "\n",
1809 | "if 1 == 2:\n",
1810 | " print('first')\n",
1811 | "elif 3 == 3:\n",
1812 | " print('middle')\n",
1813 | "else:\n",
1814 | " print('Last')"
1815 | ],
1816 | "execution_count": 99,
1817 | "outputs": [
1818 | {
1819 | "output_type": "stream",
1820 | "text": [
1821 | "middle\n"
1822 | ],
1823 | "name": "stdout"
1824 | }
1825 | ]
1826 | },
1827 | {
1828 | "cell_type": "code",
1829 | "metadata": {
1830 | "colab": {
1831 | "base_uri": "https://localhost:8080/"
1832 | },
1833 | "id": "Ru9jrpCsS8mb",
1834 | "outputId": "f7005b40-d9b5-4dfd-fb61-db18bde11597"
1835 | },
1836 | "source": [
1837 | "user_input = 'x'\n",
1838 | "\n",
1839 | "if type(user_input) == str:\n",
1840 | " print('Invalid Input')\n",
1841 | "else:\n",
1842 | " if user_input % 2 == 0:\n",
1843 | " print('Even Number')\n",
1844 | " elif user_input % 2 != 0:\n",
1845 | " print('ODD Number')\n"
1846 | ],
1847 | "execution_count": 111,
1848 | "outputs": [
1849 | {
1850 | "output_type": "stream",
1851 | "text": [
1852 | "Invalid Input\n"
1853 | ],
1854 | "name": "stdout"
1855 | }
1856 | ]
1857 | },
1858 | {
1859 | "cell_type": "markdown",
1860 | "metadata": {
1861 | "id": "lbGHKtnGX6qf"
1862 | },
1863 | "source": [
1864 | "# Chapter 3 : Loops / Iterations"
1865 | ]
1866 | },
1867 | {
1868 | "cell_type": "markdown",
1869 | "metadata": {
1870 | "id": "KfkB4t6ZYNZa"
1871 | },
1872 | "source": [
1873 | "### 1. for Loops."
1874 | ]
1875 | },
1876 | {
1877 | "cell_type": "code",
1878 | "metadata": {
1879 | "colab": {
1880 | "base_uri": "https://localhost:8080/"
1881 | },
1882 | "id": "KLRPOhjCTSCp",
1883 | "outputId": "98eba13e-1e93-4f4f-daa3-740804a8e6a9"
1884 | },
1885 | "source": [
1886 | "liths = ['sst', 'dolo', 'lst', 'shale']\n",
1887 | "\n",
1888 | "for name in liths:\n",
1889 | " print(name)"
1890 | ],
1891 | "execution_count": 112,
1892 | "outputs": [
1893 | {
1894 | "output_type": "stream",
1895 | "text": [
1896 | "sst\n",
1897 | "dolo\n",
1898 | "lst\n",
1899 | "shale\n"
1900 | ],
1901 | "name": "stdout"
1902 | }
1903 | ]
1904 | },
1905 | {
1906 | "cell_type": "code",
1907 | "metadata": {
1908 | "colab": {
1909 | "base_uri": "https://localhost:8080/"
1910 | },
1911 | "id": "NcdcQVq5Tsa8",
1912 | "outputId": "c8a5fa9e-5c9c-4695-b080-c921ed313399"
1913 | },
1914 | "source": [
1915 | "nums = [1,2,3,4,5,6,7,8,9]\n",
1916 | "\n",
1917 | "for n in nums:\n",
1918 | " if n% 2 == 0:\n",
1919 | " print('EVEN')\n",
1920 | " else:\n",
1921 | " print('ODD')"
1922 | ],
1923 | "execution_count": 113,
1924 | "outputs": [
1925 | {
1926 | "output_type": "stream",
1927 | "text": [
1928 | "ODD\n",
1929 | "EVEN\n",
1930 | "ODD\n",
1931 | "EVEN\n",
1932 | "ODD\n",
1933 | "EVEN\n",
1934 | "ODD\n",
1935 | "EVEN\n",
1936 | "ODD\n"
1937 | ],
1938 | "name": "stdout"
1939 | }
1940 | ]
1941 | },
1942 | {
1943 | "cell_type": "markdown",
1944 | "metadata": {
1945 | "id": "J2Lk7_1nY7gY"
1946 | },
1947 | "source": [
1948 | "### 2. While Loops."
1949 | ]
1950 | },
1951 | {
1952 | "cell_type": "code",
1953 | "metadata": {
1954 | "colab": {
1955 | "base_uri": "https://localhost:8080/"
1956 | },
1957 | "id": "2jGYd1FMYxeg",
1958 | "outputId": "513eacef-ac23-452c-c5ae-09144298594a"
1959 | },
1960 | "source": [
1961 | "#Keeps running as long as the condition is satisfied.\n",
1962 | "i = 1\n",
1963 | "while i < 5:\n",
1964 | " print('i is: {}'.format(i))\n",
1965 | " i = i+1"
1966 | ],
1967 | "execution_count": 115,
1968 | "outputs": [
1969 | {
1970 | "output_type": "stream",
1971 | "text": [
1972 | "i is: 1\n",
1973 | "i is: 2\n",
1974 | "i is: 3\n",
1975 | "i is: 4\n"
1976 | ],
1977 | "name": "stdout"
1978 | }
1979 | ]
1980 | },
1981 | {
1982 | "cell_type": "code",
1983 | "metadata": {
1984 | "colab": {
1985 | "base_uri": "https://localhost:8080/"
1986 | },
1987 | "id": "CzTNJiS2Y-3M",
1988 | "outputId": "272b9084-163b-4b56-968b-88cf8b15e76a"
1989 | },
1990 | "source": [
1991 | "#NOTE Range Function. \n",
1992 | "range(10)"
1993 | ],
1994 | "execution_count": 116,
1995 | "outputs": [
1996 | {
1997 | "output_type": "execute_result",
1998 | "data": {
1999 | "text/plain": [
2000 | "range(0, 10)"
2001 | ]
2002 | },
2003 | "metadata": {
2004 | "tags": []
2005 | },
2006 | "execution_count": 116
2007 | }
2008 | ]
2009 | },
2010 | {
2011 | "cell_type": "code",
2012 | "metadata": {
2013 | "colab": {
2014 | "base_uri": "https://localhost:8080/"
2015 | },
2016 | "id": "zhXbaoOhZy0F",
2017 | "outputId": "98cee505-3796-4087-b67a-cee4977c97e7"
2018 | },
2019 | "source": [
2020 | "for i in range(10):\n",
2021 | " print(i)"
2022 | ],
2023 | "execution_count": 117,
2024 | "outputs": [
2025 | {
2026 | "output_type": "stream",
2027 | "text": [
2028 | "0\n",
2029 | "1\n",
2030 | "2\n",
2031 | "3\n",
2032 | "4\n",
2033 | "5\n",
2034 | "6\n",
2035 | "7\n",
2036 | "8\n",
2037 | "9\n"
2038 | ],
2039 | "name": "stdout"
2040 | }
2041 | ]
2042 | },
2043 | {
2044 | "cell_type": "markdown",
2045 | "metadata": {
2046 | "id": "8EoLoKJxZ51Q"
2047 | },
2048 | "source": [
2049 | "# Chapter 4 : Functions"
2050 | ]
2051 | },
2052 | {
2053 | "cell_type": "code",
2054 | "metadata": {
2055 | "id": "g8cqFNniZ10e"
2056 | },
2057 | "source": [
2058 | "def func_name():\n",
2059 | " #All you want to do in the function. \n",
2060 | " #return values if applicable. \n",
2061 | " pass"
2062 | ],
2063 | "execution_count": 118,
2064 | "outputs": []
2065 | },
2066 | {
2067 | "cell_type": "code",
2068 | "metadata": {
2069 | "id": "J4LUmaR2aka0"
2070 | },
2071 | "source": [
2072 | "#Example 1 : Take an input and return square. \n",
2073 | "def squarer(x):\n",
2074 | "\n",
2075 | " sq = x**2\n",
2076 | "\n",
2077 | " return sq"
2078 | ],
2079 | "execution_count": 119,
2080 | "outputs": []
2081 | },
2082 | {
2083 | "cell_type": "code",
2084 | "metadata": {
2085 | "colab": {
2086 | "base_uri": "https://localhost:8080/"
2087 | },
2088 | "id": "ChOycHO-ar2X",
2089 | "outputId": "d495082a-4782-4a03-f824-395c11c6e905"
2090 | },
2091 | "source": [
2092 | "squarer(2)"
2093 | ],
2094 | "execution_count": 120,
2095 | "outputs": [
2096 | {
2097 | "output_type": "execute_result",
2098 | "data": {
2099 | "text/plain": [
2100 | "4"
2101 | ]
2102 | },
2103 | "metadata": {
2104 | "tags": []
2105 | },
2106 | "execution_count": 120
2107 | }
2108 | ]
2109 | },
2110 | {
2111 | "cell_type": "code",
2112 | "metadata": {
2113 | "id": "lAnAbpBNatkV"
2114 | },
2115 | "source": [
2116 | "#Example 2 : Take in a number and power and raise number to\n",
2117 | "# that power. \n",
2118 | "\n",
2119 | "def powerer(number, power):\n",
2120 | "\n",
2121 | " result = number**power\n",
2122 | "\n",
2123 | " return result"
2124 | ],
2125 | "execution_count": 121,
2126 | "outputs": []
2127 | },
2128 | {
2129 | "cell_type": "code",
2130 | "metadata": {
2131 | "colab": {
2132 | "base_uri": "https://localhost:8080/"
2133 | },
2134 | "id": "FKIvbl8UbCxK",
2135 | "outputId": "62eb293c-4c0a-42c4-f797-75f18cb1ecbc"
2136 | },
2137 | "source": [
2138 | "powerer(625 , 0.5)"
2139 | ],
2140 | "execution_count": 122,
2141 | "outputs": [
2142 | {
2143 | "output_type": "execute_result",
2144 | "data": {
2145 | "text/plain": [
2146 | "25.0"
2147 | ]
2148 | },
2149 | "metadata": {
2150 | "tags": []
2151 | },
2152 | "execution_count": 122
2153 | }
2154 | ]
2155 | },
2156 | {
2157 | "cell_type": "markdown",
2158 | "metadata": {
2159 | "id": "pBK6WvfnjHaC"
2160 | },
2161 | "source": [
2162 | "# Mini-Projects 1 : Hands on practice with Functions"
2163 | ]
2164 | },
2165 | {
2166 | "cell_type": "markdown",
2167 | "metadata": {
2168 | "id": "UuH2oo31jLcF"
2169 | },
2170 | "source": [
2171 | "#### Project 1 : Darcy's Law\n",
2172 | "\n",
2173 | "$ q = \\frac {kh} {141.2 \\mu B ln(re/rw) } \\triangle P $ "
2174 | ]
2175 | },
2176 | {
2177 | "cell_type": "code",
2178 | "metadata": {
2179 | "id": "8I-jY6FYbGI6"
2180 | },
2181 | "source": [
2182 | "#Functions are very important. \n",
2183 | "\n",
2184 | "#1. Make the code clean. \n",
2185 | "#2. Helps Prevent repetitive commands."
2186 | ],
2187 | "execution_count": 123,
2188 | "outputs": []
2189 | },
2190 | {
2191 | "cell_type": "code",
2192 | "metadata": {
2193 | "id": "ZT27GCZYjzWh"
2194 | },
2195 | "source": [
2196 | "#So here the term except delP is important. \n",
2197 | "#And we can use it again and again. So we can create a function of it. \n",
2198 | "\n",
2199 | "#function definition. \n",
2200 | "def slope():\n",
2201 | "\n",
2202 | " k = int(input('Enter K: '))\n",
2203 | " h = int(input('Enter h: '))\n",
2204 | " mu = int(input('Enter viscocity: '))\n",
2205 | " B = float(input('Enter FVF: '))\n",
2206 | "\n",
2207 | " lnrerw = 0.5\n",
2208 | "\n",
2209 | " m = k*h/(141.2*mu*B*lnrerw)\n",
2210 | "\n",
2211 | " return m"
2212 | ],
2213 | "execution_count": 124,
2214 | "outputs": []
2215 | },
2216 | {
2217 | "cell_type": "code",
2218 | "metadata": {
2219 | "colab": {
2220 | "base_uri": "https://localhost:8080/"
2221 | },
2222 | "id": "LQRDbhB1j1Pt",
2223 | "outputId": "77e4ecc4-1708-4b4f-d436-d77cec6fd903"
2224 | },
2225 | "source": [
2226 | "#function call to get the value function returns. \n",
2227 | "#Note that this example also teaches how to take user input.\n",
2228 | "delP = 500 #psia\n",
2229 | "\n",
2230 | "m = slope()\n",
2231 | "\n",
2232 | "q = m*delP\n",
2233 | "\n",
2234 | "print(f'The flowrate at {delP} psi drawdown is {q} STB/D')"
2235 | ],
2236 | "execution_count": 125,
2237 | "outputs": [
2238 | {
2239 | "output_type": "stream",
2240 | "text": [
2241 | "Enter K: 100\n",
2242 | "Enter h: 30\n",
2243 | "Enter viscocity: 70\n",
2244 | "Enter FVF: 1.1\n",
2245 | "The flowrate at 500 psi drawdown is 275.928037967698 STB/D\n"
2246 | ],
2247 | "name": "stdout"
2248 | }
2249 | ]
2250 | },
2251 | {
2252 | "cell_type": "markdown",
2253 | "metadata": {
2254 | "id": "E7D0d8DQkGp8"
2255 | },
2256 | "source": [
2257 | "#### Project 2 : Function to find API gravity."
2258 | ]
2259 | },
2260 | {
2261 | "cell_type": "code",
2262 | "metadata": {
2263 | "id": "1uWwE3fDj4mi"
2264 | },
2265 | "source": [
2266 | "def API(SG):\n",
2267 | "\n",
2268 | " api = 141.5/SG - 131.5\n",
2269 | "\n",
2270 | " return api"
2271 | ],
2272 | "execution_count": 126,
2273 | "outputs": []
2274 | },
2275 | {
2276 | "cell_type": "code",
2277 | "metadata": {
2278 | "colab": {
2279 | "base_uri": "https://localhost:8080/"
2280 | },
2281 | "id": "F-u61-ZKkSRx",
2282 | "outputId": "b07db1de-0717-45dc-e459-708455fccf50"
2283 | },
2284 | "source": [
2285 | "API(1)"
2286 | ],
2287 | "execution_count": 127,
2288 | "outputs": [
2289 | {
2290 | "output_type": "execute_result",
2291 | "data": {
2292 | "text/plain": [
2293 | "10.0"
2294 | ]
2295 | },
2296 | "metadata": {
2297 | "tags": []
2298 | },
2299 | "execution_count": 127
2300 | }
2301 | ]
2302 | },
2303 | {
2304 | "cell_type": "markdown",
2305 | "metadata": {
2306 | "id": "4vlXVxNfkWVm"
2307 | },
2308 | "source": [
2309 | "#### LAMBDA Functions / Anonymous Functions."
2310 | ]
2311 | },
2312 | {
2313 | "cell_type": "code",
2314 | "metadata": {
2315 | "colab": {
2316 | "base_uri": "https://localhost:8080/"
2317 | },
2318 | "id": "RV7jj3jKkTb9",
2319 | "outputId": "8fe5e78e-8863-4247-c409-3e72e0daa5a0"
2320 | },
2321 | "source": [
2322 | "API = lambda SG : 141.5/SG - 131.5\n",
2323 | "\n",
2324 | "API(1)"
2325 | ],
2326 | "execution_count": 128,
2327 | "outputs": [
2328 | {
2329 | "output_type": "execute_result",
2330 | "data": {
2331 | "text/plain": [
2332 | "10.0"
2333 | ]
2334 | },
2335 | "metadata": {
2336 | "tags": []
2337 | },
2338 | "execution_count": 128
2339 | }
2340 | ]
2341 | },
2342 | {
2343 | "cell_type": "markdown",
2344 | "metadata": {
2345 | "id": "GZyP-tCQk0nZ"
2346 | },
2347 | "source": [
2348 | "# Mini-Projects 2 : Hands on with Iterations."
2349 | ]
2350 | },
2351 | {
2352 | "cell_type": "markdown",
2353 | "metadata": {
2354 | "id": "oiWSFkTnlkvO"
2355 | },
2356 | "source": [
2357 | "## Solving for a root."
2358 | ]
2359 | },
2360 | {
2361 | "cell_type": "code",
2362 | "metadata": {
2363 | "colab": {
2364 | "base_uri": "https://localhost:8080/",
2365 | "height": 269
2366 | },
2367 | "id": "cMKCVZ62kvJJ",
2368 | "outputId": "6f9fa169-4a6c-4dba-896c-1809c5357520"
2369 | },
2370 | "source": [
2371 | "#Can ignore on Day1. Can come back later and understand.\n",
2372 | "import numpy as np\n",
2373 | "import matplotlib.pyplot as plt\n",
2374 | "\n",
2375 | "x = np.linspace(-10,10)\n",
2376 | "\n",
2377 | "y1 = np.sin(x) ; y2 = x +1\n",
2378 | "\n",
2379 | "plt.plot(x,y1)\n",
2380 | "plt.plot(x,y2)\n",
2381 | "\n",
2382 | "plt.axvline(root,color='red')\n",
2383 | "\n",
2384 | "plt.ylim(-3,3)\n",
2385 | "plt.xlim(-5,5)\n",
2386 | "\n",
2387 | "plt.grid()"
2388 | ],
2389 | "execution_count": 151,
2390 | "outputs": [
2391 | {
2392 | "output_type": "display_data",
2393 | "data": {
2394 | "image/png": "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\n",
2395 | "text/plain": [
2396 | ""
2397 | ]
2398 | },
2399 | "metadata": {
2400 | "tags": [],
2401 | "needs_background": "light"
2402 | }
2403 | }
2404 | ]
2405 | },
2406 | {
2407 | "cell_type": "code",
2408 | "metadata": {
2409 | "id": "C-_q5YB4lWfm"
2410 | },
2411 | "source": [
2412 | "# Analytical way :\n",
2413 | "# sinx = x and solve."
2414 | ],
2415 | "execution_count": 133,
2416 | "outputs": []
2417 | },
2418 | {
2419 | "cell_type": "markdown",
2420 | "metadata": {
2421 | "id": "uSOL6iXRlxbb"
2422 | },
2423 | "source": [
2424 | "### Using Newton-Raphson's Method. \n",
2425 | "\n"
2426 | ]
2427 | },
2428 | {
2429 | "cell_type": "markdown",
2430 | "metadata": {
2431 | "id": "lf-uehoHmNiN"
2432 | },
2433 | "source": [
2434 | "Step 1 : $ f(x) = 0 $\n",
2435 | "\n",
2436 | "Step 2 : $ x_{n+1} = x_{n} - \\frac{f(x_n)}{ f'(x_n)} $\n",
2437 | "\n",
2438 | "Repeat Step 2 till Convergence."
2439 | ]
2440 | },
2441 | {
2442 | "cell_type": "code",
2443 | "metadata": {
2444 | "id": "vKac8sHBlwcp"
2445 | },
2446 | "source": [
2447 | "import math"
2448 | ],
2449 | "execution_count": 139,
2450 | "outputs": []
2451 | },
2452 | {
2453 | "cell_type": "code",
2454 | "metadata": {
2455 | "id": "9M6nwX7nmywQ"
2456 | },
2457 | "source": [
2458 | "# f(x) = 1 + x - sin(x) \n",
2459 | "# f'(x) = 1 - cos(x)\n",
2460 | "\n",
2461 | "f = lambda x_0 : 1 + x_0 - math.sin(x_0)\n",
2462 | "fdash = lambda x_0 : 1 - math.cos(x_0)\n",
2463 | "\n",
2464 | "\n",
2465 | "\n",
2466 | "x0 = 1\n",
2467 | "for i in range(2):\n",
2468 | " x0 = x0 - f(x0)/fdash(x0)\n",
2469 | "\n",
2470 | "root = x0"
2471 | ],
2472 | "execution_count": 150,
2473 | "outputs": []
2474 | },
2475 | {
2476 | "cell_type": "code",
2477 | "metadata": {
2478 | "colab": {
2479 | "base_uri": "https://localhost:8080/"
2480 | },
2481 | "id": "wXjvAl4wm8z5",
2482 | "outputId": "0e6c1f88-88ff-465f-a2d9-77b0c239bcf4"
2483 | },
2484 | "source": [
2485 | "root"
2486 | ],
2487 | "execution_count": 154,
2488 | "outputs": [
2489 | {
2490 | "output_type": "execute_result",
2491 | "data": {
2492 | "text/plain": [
2493 | "-2.0242117630700327"
2494 | ]
2495 | },
2496 | "metadata": {
2497 | "tags": []
2498 | },
2499 | "execution_count": 154
2500 | }
2501 | ]
2502 | },
2503 | {
2504 | "cell_type": "code",
2505 | "metadata": {
2506 | "colab": {
2507 | "base_uri": "https://localhost:8080/"
2508 | },
2509 | "id": "XvvWzeghn0oz",
2510 | "outputId": "103f2f3a-790a-48c6-cb1e-4e7ab8fb77af"
2511 | },
2512 | "source": [
2513 | "math.sin(root)"
2514 | ],
2515 | "execution_count": 157,
2516 | "outputs": [
2517 | {
2518 | "output_type": "execute_result",
2519 | "data": {
2520 | "text/plain": [
2521 | "-0.8989562562324447"
2522 | ]
2523 | },
2524 | "metadata": {
2525 | "tags": []
2526 | },
2527 | "execution_count": 157
2528 | }
2529 | ]
2530 | },
2531 | {
2532 | "cell_type": "code",
2533 | "metadata": {
2534 | "colab": {
2535 | "base_uri": "https://localhost:8080/"
2536 | },
2537 | "id": "iVaPdDvvoSJQ",
2538 | "outputId": "fb9897d3-27ed-4198-940e-51f554e35e26"
2539 | },
2540 | "source": [
2541 | "1 + root"
2542 | ],
2543 | "execution_count": 156,
2544 | "outputs": [
2545 | {
2546 | "output_type": "execute_result",
2547 | "data": {
2548 | "text/plain": [
2549 | "-1.0242117630700327"
2550 | ]
2551 | },
2552 | "metadata": {
2553 | "tags": []
2554 | },
2555 | "execution_count": 156
2556 | }
2557 | ]
2558 | },
2559 | {
2560 | "cell_type": "markdown",
2561 | "metadata": {
2562 | "id": "X4Cz_ur4olVH"
2563 | },
2564 | "source": [
2565 | "# Homework Project :\n",
2566 | "\n",
2567 | "1. Finding Square Root Using Loops (Newton-Raphson). \n",
2568 | "\n",
2569 | "2. Klinkenberg Effect (Tarek Ahmed) using Newton Raphson.\n",
2570 | "\n",
2571 | "Source to Learn : https://www.youtube.com/watch?v=IHV7NO3akJ0&list=PLLwtZopJNyqZQ2n-UV0chlF3GXRL8f-ox"
2572 | ]
2573 | },
2574 | {
2575 | "cell_type": "code",
2576 | "metadata": {
2577 | "id": "qXSpELTsoVQE"
2578 | },
2579 | "source": [
2580 | ""
2581 | ],
2582 | "execution_count": null,
2583 | "outputs": []
2584 | }
2585 | ]
2586 | }
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Petroleum-DS-ML-with-Python
2 |
3 | This Repository consists of All the Codes/Notebooks/Presentations that I've either presented in various events in the past or will be presenting.
4 |
5 | The main aim is to put together all the Petroleum Data Analytics Projects at one place, and allow easy sharing.
6 |
--------------------------------------------------------------------------------