
Week 4 Tutorial Part 1 numpy
NPTEL-NOC IITM
Overview
рдпрд╣ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ NumPy рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Python рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реИред рдпрд╣ Jupyter Lab рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ, NumPy рдХреЛ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдФрд░ рдЗрдореНрдкреЛрд░реНрдЯ рдХрд░рдиреЗ, рдФрд░ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ NumPy arrays рдмрдирд╛рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЛ рдХрд╡рд░ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдореЗрдВ arrays рдХреЛ рдЗрдВрдбреЗрдХреНрд╕ рдХрд░рдиреЗ, рд╕реНрд▓рд╛рдЗрд╕ рдХрд░рдиреЗ рдФрд░ рд░реАрд╢реЗрдк рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ, рд╕рд╛рде рд╣реА array рдСрдкрд░реЗрд╢рдиреНрд╕ рдФрд░ рдпреВрдирд┐рд╡рд░реНрд╕рд▓ рдлрдВрдХреНрд╢рдиреНрд╕ (ufuncs) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧрдгрд┐рддреАрдп рдЧрдгрдирд╛рдПрдВ рдХрд░рдирд╛ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИред рдЕрдВрдд рдореЗрдВ, рдпрд╣ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЧреБрдгрди рдФрд░ рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдХрд╛рд░реНрдпреЛрдВ рдЬреИрд╕реЗ рдХрд┐ рдпреЛрдЧ, рдиреНрдпреВрдирддрдо рдФрд░ рдЕрдзрд┐рдХрддрдо рдорд╛рдиреЛрдВ рдХреА рдЧрдгрдирд╛ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рддрд╛ рд╣реИред
Save this permanently with flashcards, quizzes, and AI chat
Chapters
- Jupyter Lab рдХреЛ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ `jupyter lab` рдХрдорд╛рдВрдб рд╕реЗ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЦреБрд▓рддрд╛ рд╣реИред
- Jupyter Notebook рдХреЛ `jupyter notebook` рдХрдорд╛рдВрдб рд╕реЗ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдСрдЯреЛ-рдУрдкрди рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП `jupyter lab --no-browser` рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
- NumPy рдХреЛ `pip install numpy` рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- NumPy рдХреЛ рдЖрдорддреМрд░ рдкрд░ `import numpy as np` рдХреЗ рд░реВрдк рдореЗрдВ рдЗрдореНрдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- NumPy arrays рдХреЛ Python lists рд╕реЗ `np.array()` рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- Arrays рдореЗрдВ рд╕рднреА elements рдХрд╛ рдбреЗрдЯрд╛ рдЯрд╛рдЗрдк рд╕рдорд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
- рдЖрдк `dtype` рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рдЯрд╛рдЗрдк рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреИрд╕реЗ, `np.float64`)ред
- Arrays рдХреЛ `np.zeros()`, `np.ones()`, `np.arange()`, `np.linspace()`, рдФрд░ `np.random.rand()` рдЬреИрд╕реЗ рдлрд╝рдВрдХреНрд╢рдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднреА рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- `np.arange()` рдПрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЕрдВрддрд░рд╛рд▓ рдкрд░ рдорд╛рдиреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдмрдирд╛рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ `np.linspace()` рдПрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рджреВрд░реА рд╡рд╛рд▓реЗ рдорд╛рди рдмрдирд╛рддрд╛ рд╣реИред
- 1D arrays рдХреЛ Python lists рдХреА рддрд░рд╣ рд╣реА рдЗрдВрдбреЗрдХреНрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ 0-рдЖрдзрд╛рд░рд┐рдд рдЗрдВрдбреЗрдХреНрд╕рд┐рдВрдЧ рд╣реЛрддреА рд╣реИред
- Negative indexing рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдВрдд рд╕реЗ рддрддреНрд╡реЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЬреИрд╕реЗ, -1 рдЕрдВрддрд┐рдо рддрддреНрд╡ рд╣реИ)ред
- Slicing рдХрд╛ рдЙрдкрдпреЛрдЧ array рдХреЗ рдПрдХ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЬреИрд╕реЗ, `arr[start:stop:step]`)ред
- 2D arrays (matrices) рдХреЛ `arr[row, column]` рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- рд╕реНрд▓рд╛рдЗрд╕рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрдВрдХреНрддрд┐рдпреЛрдВ, рд╕реНрддрдВрднреЛрдВ рдпрд╛ рджреЛрдиреЛрдВ рдХреЗ рд╕рдмрд╕реЗрдЯ рдХреЛ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- Arrays рдХреЛ `reshape()` рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдЖрдХрд╛рд░реЛрдВ рдореЗрдВ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдмрд╢рд░реНрддреЗ рддрддреНрд╡реЛрдВ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ рд╕рдорд╛рди рд░рд╣реЗред
- Arrays рдХреЛ `flatten()` рдпрд╛ `ravel()` рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ 1D array рдореЗрдВ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- `np.vstack()` рдФрд░ `np.hstack()` рдХрд╛ рдЙрдкрдпреЛрдЧ arrays рдХреЛ рд▓рдВрдмрд╡рдд рдпрд╛ рдХреНрд╖реИрддрд┐рдЬ рд░реВрдк рд╕реЗ рд╕реНрдЯреИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- `np.split()`, `np.vsplit()`, рдФрд░ `np.hsplit()` рдХрд╛ рдЙрдкрдпреЛрдЧ arrays рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- Arrays рдХреЛ `np.concatenate()` рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- NumPy element-wise рд╕рдВрдЪрд╛рд▓рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдЬреЛрдбрд╝, рдШрдЯрд╛рд╡, рдЧреБрдгрд╛ рдФрд░ рднрд╛рдЧ, рджреЛ arrays рдХреЗ рдмреАрдЪ рдпрд╛ рдПрдХ array рдФрд░ рдПрдХ рд╕реНрдХреЗрд▓рд░ рдХреЗ рдмреАрдЪред
- рдпреВрдирд┐рд╡рд░реНрд╕рд▓ рдлрд╝рдВрдХреНрд╢рдиреНрд╕ (ufuncs) рдЬреИрд╕реЗ `np.add()`, `np.subtract()`, `np.multiply()`, `np.divide()` рдХрд╛ рдЙрдкрдпреЛрдЧ element-wise рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- NumPy рдореЗрдВ `np.sqrt()`, `np.exp()`, `np.sin()`, `np.cos()` рдЬреИрд╕реЗ рдХрдИ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЧрдгрд┐рддреАрдп рдлрд╝рдВрдХреНрд╢рдиреНрд╕ рд╣реИрдВ рдЬреЛ arrays рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред
- рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЧреБрдгрди `np.dot()` рдпрд╛ `@` рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
- NumPy arrays рдХреЗ рд▓рд┐рдП `sum()`, `min()`, `max()`, `mean()`, `std()` рдЬреИрд╕реЗ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдлрд╝рдВрдХреНрд╢рдиреНрд╕ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
Key takeaways
- NumPy Python рдореЗрдВ рдХреБрд╢рд▓ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдЧрдгрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ foundational library рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ arrays рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
- Arrays рдХреЛ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ lists рд╕реЗ рд░реВрдкрд╛рдВрддрд░рдг рдФрд░ рд╡рд┐рд╢реЗрд╖ рдлрд╝рдВрдХреНрд╢рдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢рд╛рдорд┐рд▓ рд╣реИред
- Indexing рдФрд░ slicing arrays рдХреЗ рднреАрддрд░ рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рддрдХрдиреАрдХреЗрдВ рд╣реИрдВред
- Reshaping рдФрд░ concatenation рдЬреИрд╕реЗ array manipulation рдлрд╝рдВрдХреНрд╢рдиреНрд╕ рдбреЗрдЯрд╛ рдХреЛ рдкреБрдирд░реНрд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдФрд░ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред
- NumPy element-wise рд╕рдВрдЪрд╛рд▓рди рдФрд░ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЧрдгрд┐рддреАрдп рдФрд░ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдлрд╝рдВрдХреНрд╢рдиреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреБрд╢рд▓ рдЧрдгрдирд╛ рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред
- рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЧреБрдгрди рдХреЗ рд▓рд┐рдП `np.dot()` рдпрд╛ `@` рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред
Key terms
Test your understanding
- NumPy arrays рдХреЛ Python lists рд╕реЗ рдмрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдбреЗрдЯрд╛ рдЯрд╛рдЗрдк рдХреНрдпреЛрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ?
- рдЖрдк NumPy array рдХреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рддрддреНрд╡ рдпрд╛ рддрддреНрд╡реЛрдВ рдХреЗ рд╕рдмрд╕реЗрдЯ рддрдХ рдХреИрд╕реЗ рдкрд╣реБрдВрдЪ рд╕рдХрддреЗ рд╣реИрдВ?
- NumPy array рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдЖрдпрд╛рдореЛрдВ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рди рдлрд╝рдВрдХреНрд╢рдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?
- NumPy arrays рдкрд░ element-wise рдЧрдгрд┐рддреАрдп рд╕рдВрдЪрд╛рд▓рди рдХреИрд╕реЗ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ?
- NumPy рдореЗрдВ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЧреБрдгрди рдХреЛ рдХреИрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?