{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Python Library Practice: NumPy\n", "\n", "NumPy is the fundamental package for scientific computing in Python. It provides high-performance multidimensional array objects and tools for working with them.\n", "\n", "### Resources:\n", "Refer to the **[Mathematics for Data Science](https://aashishgarg13.github.io/DataScience/math-ds-complete/)** section on your hub for Linear Algebra concepts that use NumPy.\n", "\n", "### Objectives:\n", "1. **Array Creation**: Create arrays from lists and using built-in functions.\n", "2. **Array Operations**: Element-wise math and broadcasting.\n", "3. **Indexing & Slicing**: Selecting specific data points.\n", "4. **Linear Algebra**: Matrix multiplication and dot products.\n", "\n", "---" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 1. Array Creation\n", "\n", "### Task 1: Create Basics\n", "1. Create a 1D array of numbers from 0 to 9.\n", "2. Create a 3x3 identity matrix." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "\n", "# YOUR CODE HERE\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "Click to see Solution\n", "\n", "```python\n", "arr1 = np.arange(10)\n", "identity = np.eye(3)\n", "print(arr1)\n", "print(identity)\n", "```\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 2. Array Operations\n", "\n", "### Task 2: Vector Math\n", "Given two arrays `a = [10, 20, 30]` and `b = [1, 2, 3]`, perform addition, subtraction, and element-wise multiplication." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "a = np.array([10, 20, 30])\n", "b = np.array([1, 2, 3])\n", "\n", "# YOUR CODE HERE\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "Click to see Solution\n", "\n", "```python\n", "print(\"Add:\", a + b)\n", "print(\"Sub:\", a - b)\n", "print(\"Mul:\", a * b)\n", "```\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 3. Indexing and Slicing\n", "\n", "### Task 3: Select Subsets\n", "Create a 4x4 matrix and extract the middle 2x2 square." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "mat = np.arange(16).reshape(4, 4)\n", "print(\"Original:\\n\", mat)\n", "\n", "# YOUR CODE HERE\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "Click to see Solution\n", "\n", "```python\n", "middle = mat[1:3, 1:3]\n", "print(\"Middle 2x2:\\n\", middle)\n", "```\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 4. Statistics with NumPy\n", "\n", "### Task 4: Aggregations\n", "Calculate the mean, standard deviation, and sum of a random 100-element array." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "data = np.random.randn(100)\n", "\n", "# YOUR CODE HERE\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "Click to see Solution\n", "\n", "```python\n", "print(\"Mean:\", np.mean(data))\n", "print(\"Std:\", np.std(data))\n", "print(\"Sum:\", np.sum(data))\n", "```\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "--- \n", "### Great NumPy Practice! \n", "NumPy is the engine behind Pandas and Scikit-Learn. Mastering it makes everything else easier.\n", "Next: **Pandas Practice**." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.7" } }, "nbformat": 4, "nbformat_minor": 4 }