├── .gitignore └── Numpy Crash Course.ipynb /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store -------------------------------------------------------------------------------- /Numpy Crash Course.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 13, 6 | "metadata": {}, 7 | "outputs": [ 8 | { 9 | "name": "stdout", 10 | "output_type": "stream", 11 | "text": [ 12 | "Requirement already satisfied: numpy in /Users/nicholasrenotte/opt/anaconda3/lib/python3.7/site-packages (1.17.2)\r\n" 13 | ] 14 | } 15 | ], 16 | "source": [ 17 | "!pip install numpy" 18 | ] 19 | }, 20 | { 21 | "cell_type": "code", 22 | "execution_count": 14, 23 | "metadata": {}, 24 | "outputs": [], 25 | "source": [ 26 | "import numpy as np" 27 | ] 28 | }, 29 | { 30 | "cell_type": "markdown", 31 | "metadata": {}, 32 | "source": [ 33 | "# 1. Create" 34 | ] 35 | }, 36 | { 37 | "cell_type": "code", 38 | "execution_count": 15, 39 | "metadata": {}, 40 | "outputs": [], 41 | "source": [ 42 | "data = np.random.rand(2,3,4)\n", 43 | "zeroes = np.zeros((2,2,2))\n", 44 | "full = np.full((2,2,2), 7)\n", 45 | "ones = np.ones((2,2,2))" 46 | ] 47 | }, 48 | { 49 | "cell_type": "code", 50 | "execution_count": 16, 51 | "metadata": {}, 52 | "outputs": [ 53 | { 54 | "data": { 55 | "text/plain": [ 56 | "array([[[0.48003108, 0.44146385, 0.80173342, 0.36955555],\n", 57 | " [0.36791853, 0.96672089, 0.02690897, 0.05000183],\n", 58 | " [0.51120249, 0.09960263, 0.78821282, 0.85545042]],\n", 59 | "\n", 60 | " [[0.67808393, 0.46217333, 0.80645816, 0.93515466],\n", 61 | " [0.92385328, 0.04500892, 0.83364112, 0.94561375],\n", 62 | " [0.356634 , 0.83439379, 0.82842758, 0.48934849]]])" 63 | ] 64 | }, 65 | "execution_count": 16, 66 | "metadata": {}, 67 | "output_type": "execute_result" 68 | } 69 | ], 70 | "source": [ 71 | "data" 72 | ] 73 | }, 74 | { 75 | "cell_type": "code", 76 | "execution_count": 19, 77 | "metadata": {}, 78 | "outputs": [ 79 | { 80 | "data": { 81 | "text/plain": [ 82 | "array([[[1., 1.],\n", 83 | " [1., 1.]],\n", 84 | "\n", 85 | " [[1., 1.],\n", 86 | " [1., 1.]]])" 87 | ] 88 | }, 89 | "execution_count": 19, 90 | "metadata": {}, 91 | "output_type": "execute_result" 92 | } 93 | ], 94 | "source": [ 95 | "ones" 96 | ] 97 | }, 98 | { 99 | "cell_type": "code", 100 | "execution_count": 20, 101 | "metadata": {}, 102 | "outputs": [], 103 | "source": [ 104 | "arr = np.array([[1,2,3,4],[1,2,3,4]])" 105 | ] 106 | }, 107 | { 108 | "cell_type": "code", 109 | "execution_count": 22, 110 | "metadata": {}, 111 | "outputs": [ 112 | { 113 | "data": { 114 | "text/plain": [ 115 | "numpy.ndarray" 116 | ] 117 | }, 118 | "execution_count": 22, 119 | "metadata": {}, 120 | "output_type": "execute_result" 121 | } 122 | ], 123 | "source": [ 124 | "type(arr)" 125 | ] 126 | }, 127 | { 128 | "cell_type": "code", 129 | "execution_count": null, 130 | "metadata": {}, 131 | "outputs": [], 132 | "source": [] 133 | }, 134 | { 135 | "cell_type": "markdown", 136 | "metadata": {}, 137 | "source": [ 138 | "# 2. Read" 139 | ] 140 | }, 141 | { 142 | "cell_type": "code", 143 | "execution_count": 23, 144 | "metadata": {}, 145 | "outputs": [], 146 | "source": [ 147 | "# Attributes\n", 148 | "shape = data.shape\n", 149 | "size = data.size\n", 150 | "types = data.dtype" 151 | ] 152 | }, 153 | { 154 | "cell_type": "code", 155 | "execution_count": 26, 156 | "metadata": {}, 157 | "outputs": [ 158 | { 159 | "data": { 160 | "text/plain": [ 161 | "dtype('float64')" 162 | ] 163 | }, 164 | "execution_count": 26, 165 | "metadata": {}, 166 | "output_type": "execute_result" 167 | } 168 | ], 169 | "source": [ 170 | "types" 171 | ] 172 | }, 173 | { 174 | "cell_type": "code", 175 | "execution_count": 31, 176 | "metadata": {}, 177 | "outputs": [], 178 | "source": [ 179 | "# Slicing\n", 180 | "arr = data[0]\n", 181 | "slicer = data[0][0:2]\n", 182 | "reverse = data[-1]\n", 183 | "singleval = data[0][0][0]" 184 | ] 185 | }, 186 | { 187 | "cell_type": "code", 188 | "execution_count": 34, 189 | "metadata": {}, 190 | "outputs": [ 191 | { 192 | "data": { 193 | "text/plain": [ 194 | "0.480031081005698" 195 | ] 196 | }, 197 | "execution_count": 34, 198 | "metadata": {}, 199 | "output_type": "execute_result" 200 | } 201 | ], 202 | "source": [ 203 | "singleval" 204 | ] 205 | }, 206 | { 207 | "cell_type": "code", 208 | "execution_count": 35, 209 | "metadata": {}, 210 | "outputs": [ 211 | { 212 | "data": { 213 | "text/plain": [ 214 | "array([[[0.48003108, 0.44146385, 0.80173342, 0.36955555],\n", 215 | " [0.36791853, 0.96672089, 0.02690897, 0.05000183],\n", 216 | " [0.51120249, 0.09960263, 0.78821282, 0.85545042]],\n", 217 | "\n", 218 | " [[0.67808393, 0.46217333, 0.80645816, 0.93515466],\n", 219 | " [0.92385328, 0.04500892, 0.83364112, 0.94561375],\n", 220 | " [0.356634 , 0.83439379, 0.82842758, 0.48934849]]])" 221 | ] 222 | }, 223 | "execution_count": 35, 224 | "metadata": {}, 225 | "output_type": "execute_result" 226 | } 227 | ], 228 | "source": [ 229 | "data" 230 | ] 231 | }, 232 | { 233 | "cell_type": "markdown", 234 | "metadata": {}, 235 | "source": [ 236 | "# 3. Update" 237 | ] 238 | }, 239 | { 240 | "cell_type": "code", 241 | "execution_count": 36, 242 | "metadata": {}, 243 | "outputs": [], 244 | "source": [ 245 | "list1 = np.random.rand(10) \n", 246 | "list2 = np.random.rand(10) " 247 | ] 248 | }, 249 | { 250 | "cell_type": "code", 251 | "execution_count": 38, 252 | "metadata": {}, 253 | "outputs": [ 254 | { 255 | "data": { 256 | "text/plain": [ 257 | "array([0.38704184, 0.53632305, 0.9944246 , 0.44505152, 0.64292829,\n", 258 | " 0.30036371, 0.62623128, 0.98110138, 0.24716036, 0.10309413])" 259 | ] 260 | }, 261 | "execution_count": 38, 262 | "metadata": {}, 263 | "output_type": "execute_result" 264 | } 265 | ], 266 | "source": [ 267 | "list2" 268 | ] 269 | }, 270 | { 271 | "cell_type": "code", 272 | "execution_count": 39, 273 | "metadata": {}, 274 | "outputs": [], 275 | "source": [ 276 | "# Basic Math\n", 277 | "add = np.add(list1, list2)\n", 278 | "sub = np.subtract(list1, list2)\n", 279 | "div = np.divide(list1, list2)\n", 280 | "mult = np.multiply(list1, list2)\n", 281 | "dot = np.dot(list1, list2)" 282 | ] 283 | }, 284 | { 285 | "cell_type": "code", 286 | "execution_count": 45, 287 | "metadata": {}, 288 | "outputs": [ 289 | { 290 | "data": { 291 | "text/plain": [ 292 | "2.9501773252530117" 293 | ] 294 | }, 295 | "execution_count": 45, 296 | "metadata": {}, 297 | "output_type": "execute_result" 298 | } 299 | ], 300 | "source": [ 301 | "dot" 302 | ] 303 | }, 304 | { 305 | "cell_type": "code", 306 | "execution_count": 47, 307 | "metadata": {}, 308 | "outputs": [], 309 | "source": [ 310 | "# Stat Functions\n", 311 | "sqrt = np.sqrt(25)\n", 312 | "ab = np.abs(-2)\n", 313 | "power = np.power(2,7)\n", 314 | "log = np.log(25)\n", 315 | "exp = np.exp([2,3])\n", 316 | "mins = np.min(list1)\n", 317 | "maxs = np.max(list1)" 318 | ] 319 | }, 320 | { 321 | "cell_type": "code", 322 | "execution_count": 56, 323 | "metadata": {}, 324 | "outputs": [ 325 | { 326 | "data": { 327 | "text/plain": [ 328 | "0.9300368518784375" 329 | ] 330 | }, 331 | "execution_count": 56, 332 | "metadata": {}, 333 | "output_type": "execute_result" 334 | } 335 | ], 336 | "source": [ 337 | "maxs" 338 | ] 339 | }, 340 | { 341 | "cell_type": "code", 342 | "execution_count": 57, 343 | "metadata": {}, 344 | "outputs": [ 345 | { 346 | "data": { 347 | "text/plain": [ 348 | "array([[[0.48003108, 0.44146385, 0.80173342, 0.36955555],\n", 349 | " [0.36791853, 0.96672089, 0.02690897, 0.05000183],\n", 350 | " [0.51120249, 0.09960263, 0.78821282, 0.85545042]],\n", 351 | "\n", 352 | " [[0.67808393, 0.46217333, 0.80645816, 0.93515466],\n", 353 | " [0.92385328, 0.04500892, 0.83364112, 0.94561375],\n", 354 | " [0.356634 , 0.83439379, 0.82842758, 0.48934849]]])" 355 | ] 356 | }, 357 | "execution_count": 57, 358 | "metadata": {}, 359 | "output_type": "execute_result" 360 | } 361 | ], 362 | "source": [ 363 | "data" 364 | ] 365 | }, 366 | { 367 | "cell_type": "code", 368 | "execution_count": 59, 369 | "metadata": {}, 370 | "outputs": [], 371 | "source": [ 372 | "data[0][0][0] = 700" 373 | ] 374 | }, 375 | { 376 | "cell_type": "code", 377 | "execution_count": 60, 378 | "metadata": {}, 379 | "outputs": [ 380 | { 381 | "data": { 382 | "text/plain": [ 383 | "array([[[7.00000000e+02, 4.41463849e-01, 8.01733417e-01, 3.69555550e-01],\n", 384 | " [3.67918528e-01, 9.66720888e-01, 2.69089716e-02, 5.00018320e-02],\n", 385 | " [5.11202492e-01, 9.96026268e-02, 7.88212818e-01, 8.55450419e-01]],\n", 386 | "\n", 387 | " [[6.78083930e-01, 4.62173332e-01, 8.06458161e-01, 9.35154662e-01],\n", 388 | " [9.23853275e-01, 4.50089233e-02, 8.33641123e-01, 9.45613753e-01],\n", 389 | " [3.56634000e-01, 8.34393794e-01, 8.28427576e-01, 4.89348492e-01]]])" 390 | ] 391 | }, 392 | "execution_count": 60, 393 | "metadata": {}, 394 | "output_type": "execute_result" 395 | } 396 | ], 397 | "source": [ 398 | "data" 399 | ] 400 | }, 401 | { 402 | "cell_type": "code", 403 | "execution_count": 62, 404 | "metadata": {}, 405 | "outputs": [ 406 | { 407 | "data": { 408 | "text/plain": [ 409 | "array([[[3.69555550e-01, 4.41463849e-01, 8.01733417e-01, 7.00000000e+02],\n", 410 | " [2.69089716e-02, 5.00018320e-02, 3.67918528e-01, 9.66720888e-01],\n", 411 | " [9.96026268e-02, 5.11202492e-01, 7.88212818e-01, 8.55450419e-01]],\n", 412 | "\n", 413 | " [[4.62173332e-01, 6.78083930e-01, 8.06458161e-01, 9.35154662e-01],\n", 414 | " [4.50089233e-02, 8.33641123e-01, 9.23853275e-01, 9.45613753e-01],\n", 415 | " [3.56634000e-01, 4.89348492e-01, 8.28427576e-01, 8.34393794e-01]]])" 416 | ] 417 | }, 418 | "execution_count": 62, 419 | "metadata": {}, 420 | "output_type": "execute_result" 421 | } 422 | ], 423 | "source": [ 424 | "data.sort()\n", 425 | "data" 426 | ] 427 | }, 428 | { 429 | "cell_type": "code", 430 | "execution_count": 64, 431 | "metadata": {}, 432 | "outputs": [ 433 | { 434 | "name": "stdout", 435 | "output_type": "stream", 436 | "text": [ 437 | "(2, 3, 4)\n" 438 | ] 439 | } 440 | ], 441 | "source": [ 442 | "print(data.shape)" 443 | ] 444 | }, 445 | { 446 | "cell_type": "code", 447 | "execution_count": 65, 448 | "metadata": {}, 449 | "outputs": [ 450 | { 451 | "data": { 452 | "text/plain": [ 453 | "(2, 2, 6)" 454 | ] 455 | }, 456 | "execution_count": 65, 457 | "metadata": {}, 458 | "output_type": "execute_result" 459 | } 460 | ], 461 | "source": [ 462 | "data = data.reshape((2,2,-1))\n", 463 | "data.shape" 464 | ] 465 | }, 466 | { 467 | "cell_type": "code", 468 | "execution_count": 67, 469 | "metadata": {}, 470 | "outputs": [ 471 | { 472 | "name": "stdout", 473 | "output_type": "stream", 474 | "text": [ 475 | "[0. 0. 0. 0. 0. 0. 0. 0.]\n", 476 | "[0. 0. 0. 0. 0. 0. 0. 0. 3. 4.]\n" 477 | ] 478 | } 479 | ], 480 | "source": [ 481 | "zeroes = np.zeros((8))\n", 482 | "print(zeroes)\n", 483 | "zeroes = np.append(zeroes, [3,4])\n", 484 | "print(zeroes)" 485 | ] 486 | }, 487 | { 488 | "cell_type": "code", 489 | "execution_count": 68, 490 | "metadata": {}, 491 | "outputs": [ 492 | { 493 | "name": "stdout", 494 | "output_type": "stream", 495 | "text": [ 496 | "[0. 0. 1. 0. 0. 0. 0. 0. 0. 3. 4.]\n" 497 | ] 498 | } 499 | ], 500 | "source": [ 501 | "zeroes = np.insert(zeroes, 2, 1)\n", 502 | "print(zeroes)" 503 | ] 504 | }, 505 | { 506 | "cell_type": "markdown", 507 | "metadata": {}, 508 | "source": [ 509 | "# 4. Delete" 510 | ] 511 | }, 512 | { 513 | "cell_type": "code", 514 | "execution_count": 69, 515 | "metadata": {}, 516 | "outputs": [ 517 | { 518 | "data": { 519 | "text/plain": [ 520 | "array([[[3.69555550e-01, 4.41463849e-01, 8.01733417e-01, 7.00000000e+02,\n", 521 | " 2.69089716e-02, 5.00018320e-02],\n", 522 | " [3.67918528e-01, 9.66720888e-01, 9.96026268e-02, 5.11202492e-01,\n", 523 | " 7.88212818e-01, 8.55450419e-01]],\n", 524 | "\n", 525 | " [[4.62173332e-01, 6.78083930e-01, 8.06458161e-01, 9.35154662e-01,\n", 526 | " 4.50089233e-02, 8.33641123e-01],\n", 527 | " [9.23853275e-01, 9.45613753e-01, 3.56634000e-01, 4.89348492e-01,\n", 528 | " 8.28427576e-01, 8.34393794e-01]]])" 529 | ] 530 | }, 531 | "execution_count": 69, 532 | "metadata": {}, 533 | "output_type": "execute_result" 534 | } 535 | ], 536 | "source": [ 537 | "data" 538 | ] 539 | }, 540 | { 541 | "cell_type": "code", 542 | "execution_count": 70, 543 | "metadata": {}, 544 | "outputs": [ 545 | { 546 | "data": { 547 | "text/plain": [ 548 | "array([[[0.36791853, 0.96672089, 0.09960263, 0.51120249, 0.78821282,\n", 549 | " 0.85545042]],\n", 550 | "\n", 551 | " [[0.92385328, 0.94561375, 0.356634 , 0.48934849, 0.82842758,\n", 552 | " 0.83439379]]])" 553 | ] 554 | }, 555 | "execution_count": 70, 556 | "metadata": {}, 557 | "output_type": "execute_result" 558 | } 559 | ], 560 | "source": [ 561 | "np.delete(data, 0, axis=1)" 562 | ] 563 | }, 564 | { 565 | "cell_type": "code", 566 | "execution_count": 71, 567 | "metadata": {}, 568 | "outputs": [], 569 | "source": [ 570 | "np.save(\"new array\", data)" 571 | ] 572 | }, 573 | { 574 | "cell_type": "code", 575 | "execution_count": 72, 576 | "metadata": {}, 577 | "outputs": [], 578 | "source": [ 579 | "test = np.load(\"new array.npy\")" 580 | ] 581 | }, 582 | { 583 | "cell_type": "code", 584 | "execution_count": 73, 585 | "metadata": {}, 586 | "outputs": [ 587 | { 588 | "data": { 589 | "text/plain": [ 590 | "array([[[3.69555550e-01, 4.41463849e-01, 8.01733417e-01, 7.00000000e+02,\n", 591 | " 2.69089716e-02, 5.00018320e-02],\n", 592 | " [3.67918528e-01, 9.66720888e-01, 9.96026268e-02, 5.11202492e-01,\n", 593 | " 7.88212818e-01, 8.55450419e-01]],\n", 594 | "\n", 595 | " [[4.62173332e-01, 6.78083930e-01, 8.06458161e-01, 9.35154662e-01,\n", 596 | " 4.50089233e-02, 8.33641123e-01],\n", 597 | " [9.23853275e-01, 9.45613753e-01, 3.56634000e-01, 4.89348492e-01,\n", 598 | " 8.28427576e-01, 8.34393794e-01]]])" 599 | ] 600 | }, 601 | "execution_count": 73, 602 | "metadata": {}, 603 | "output_type": "execute_result" 604 | } 605 | ], 606 | "source": [ 607 | "test" 608 | ] 609 | }, 610 | { 611 | "cell_type": "code", 612 | "execution_count": null, 613 | "metadata": {}, 614 | "outputs": [], 615 | "source": [] 616 | } 617 | ], 618 | "metadata": { 619 | "kernelspec": { 620 | "display_name": "Python 3", 621 | "language": "python", 622 | "name": "python3" 623 | }, 624 | "language_info": { 625 | "codemirror_mode": { 626 | "name": "ipython", 627 | "version": 3 628 | }, 629 | "file_extension": ".py", 630 | "mimetype": "text/x-python", 631 | "name": "python", 632 | "nbconvert_exporter": "python", 633 | "pygments_lexer": "ipython3", 634 | "version": "3.7.4" 635 | } 636 | }, 637 | "nbformat": 4, 638 | "nbformat_minor": 2 639 | } 640 | --------------------------------------------------------------------------------