📑 Table of Contents — किसी भी topic पर सीधे जाएँ
NumPy क्या है? — List से आगे की दुनिया
List vs NumPy Array — Memory में क्या अंतर है
# List se har element x2 karna — LOOP chahiye nums_list = [1, 2, 3, 4, 5] doubled = [n * 2 for n in nums_list] print(doubled) # NumPy se — SEEDHA, bina loop! import numpy as np nums_array = np.array([1, 2, 3, 4, 5]) print(nums_array * 2)
[ 2 4 6 8 10]
* 2 लिखते ही पूरे array पर एक साथ operation हो गया — इसे Vectorized Operation कहते हैं, यही NumPy की असली ताकत है।Array बनाना — NumPy से पहली मुलाक़ात
import numpy as np — फिर कई तरीकों से arrays बना सकते हैं।import numpy as np arr = np.array([10, 20, 30, 40]) print(arr) print(type(arr))
<class 'numpy.ndarray'>
🏗️ Ready-made Array Creators
print(np.zeros(4)) # 4 zeros print(np.ones(3)) # 3 ones print(np.arange(1, 10, 2)) # 1 se 10 tak, 2-2 ke gap se print(np.linspace(0, 1, 5)) # 0 se 1 tak 5 barabar bante hue points
[1. 1. 1.]
[1 3 5 7 9]
[0. 0.25 0.5 0.75 1. ]
print(np.full(4, 7)) # 4 elements, sabki value 7 print(np.eye(3)) # 3x3 Identity Matrix (diagonal par 1)
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]
Array Attributes — Array के बारे में जानकारी
| Attribute | क्या बताता है |
|---|---|
| shape | (rows, columns) — array का आकार |
| size | कुल elements की संख्या |
| dtype | Data type (int64, float64...) |
| ndim | Dimensions की संख्या (1D, 2D...) |
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
print("Shape:", arr.shape)
print("Size:", arr.size)
print("Dtype:", arr.dtype)
print("Dimensions:", arr.ndim)Size: 6
Dtype: int64
Dimensions: 2
Indexing व Slicing — List जैसा ही, पर तेज़
import numpy as np arr = np.array([10, 20, 30, 40, 50]) print(arr[0]) # pehla print(arr[-1]) # aakhri print(arr[1:4]) # index 1,2,3 print(arr[::2]) # har 2nd element
50
[20 30 40]
[10 30 50]
🎯 Boolean Indexing — Array का जादू (List में नहीं होता!)
marks = np.array([45, 78, 92, 34, 88, 55]) print(marks > 60) # True/False ka array print(marks[marks > 60]) # sirf jo condition satisfy kare!
[78 92 88]
marks > 60 हर element को condition से check करता है और True/False का array देता है — फिर उसी को index की तरह उपयोग करके सिर्फ True वाले elements मिल जाते हैं। List में यह करने के लिए loop/comprehension चाहिए होता!2D Arrays — Matrix जैसा Data (Rows-Columns)
2D Array Indexing — arr[row, col]
import numpy as np matrix = np.array([[1, 2, 3], [4, 5, 6]]) print(matrix) print(matrix[1, 1]) # row1, col1 print(matrix[0]) # poori pehli row print(matrix[:, 1]) # poora dusra column
[4 5 6]]
5
[1 2 3]
[2 5]
matrix[:, 1] में : = "सभी rows", 1 = "column index 1" — यानी हर row के column-1 वाले elements की list निकल आई (2 और 5)।➕ Matrix Operations
A = np.array([[1, 2], [3, 4]]) B = np.array([[5, 6], [7, 8]]) print(A + B) # element-wise addition print(A * B) # element-wise multiplication print(np.dot(A, B)) # matrix multiplication (asli wali!)
[10 12]]
[[ 5 12]
[21 32]]
[[19 22]
[43 50]]
🔄 Transpose — Rows को Columns बनाना
matrix = np.array([[1, 2, 3], [4, 5, 6]])
print("Original shape:", matrix.shape)
print(matrix.T) # ya np.transpose(matrix)
print("Transpose shape:", matrix.T.shape)[[1 4]
[2 5]
[3 6]]
Transpose shape: (3, 2)
📐 axis Parameter — Row-wise या Column-wise Calculation
marks = np.array([[80, 90], [70, 60], [95, 85]]) # 3 students, 2 subjects print(marks.sum()) # SABKA total print(marks.sum(axis=0)) # HAR SUBJECT ka total (column-wise) print(marks.sum(axis=1)) # HAR STUDENT ka total (row-wise)
[245 235]
[170 130 180]
Array Operations — बिना Loop के पूरा Array Process
import numpy as np arr = np.array([10, 20, 30, 40]) print(arr + 5) # har element me 5 jodo print(arr - 5) print(arr * 2) print(arr / 10) print(arr ** 2)
[ 5 15 25 35]
[20 40 60 80]
[1. 2. 3. 4.]
[ 100 400 900 1600]
📊 Statistical Functions — Data Science का आधार
marks = np.array([78, 92, 65, 88, 55])
print("Sum:", marks.sum())
print("Mean:", marks.mean())
print("Max:", marks.max())
print("Min:", marks.min())
print("Std Dev:", round(marks.std(), 2))Mean: 75.6
Max: 92
Min: 55
Std Dev: 13.5
📍 argmax() व argmin() — सबसे बड़ा/छोटा कहाँ है?
marks = np.array([78, 92, 65, 88, 55])
print("Max value:", marks.max())
print("Max kahan hai (index):", marks.argmax())
print("Min kahan hai (index):", marks.argmin())Max kahan hai (index): 1
Min kahan hai (index): 4
⚠️ copy() vs साधारण Assignment — बड़ा Trap!
b = a लिखने से (List की तरह ही) दोनों एक ही array को refer करते हैं — एक बदलने पर दूसरा भी बदल जाता है! असली independent copy के लिए .copy() ज़रूरी है।a = np.array([1, 2, 3])
b = a # SIRF reference — Chapter 5 ke aliasing jaisa!
b[0] = 100
print("a:", a) # a bhi badal gaya!
print("b:", b)b: [100 2 3]
a = np.array([1, 2, 3])
b = a.copy() # ab dono ALAG hain
b[0] = 100
print("a:", a) # a surakshit rahi!
print("b:", b)b: [100 2 3]
🔢 Two Arrays के बीच Operations
a = np.array([1, 2, 3]) b = np.array([10, 20, 30]) print(a + b) # position-by-position: 1+10, 2+20, 3+30
b = a reference बनाता है (दोनों जुड़े); b = a.copy() independent copy देता है — यह Chapter 5 के list aliasing जैसा ही खतरा है।Broadcasting — अलग-अलग Size के Arrays का मेल
Broadcasting — छोटा Array बड़े जैसा "फैल" जाता है
import numpy as np arr = np.array([1, 2, 3]) result = arr + 5 # 5 teeno positions par "broadcast" hua print(result)
matrix = np.array([[1, 2, 3], [4, 5, 6]]) row = np.array([10, 20, 30]) print(matrix + row) # row har matrix-row par broadcast hui
[14 25 36]]
Useful Functions — रोज़ काम आने वाले NumPy Tools
| Function | काम |
|---|---|
| reshape() | Array का shape बदलना |
| sort() | Array sort करना |
| concatenate() | दो arrays जोड़ना |
| np.where() | Condition के आधार पर values चुनना |
| flatten() | 2D को 1D में बदलना |
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6]) matrix = arr.reshape(2, 3) # 1D ko 2x3 me badla print(matrix) nums = np.array([5, 2, 8, 1]) print(np.sort(nums))
[4 5 6]]
[1 2 5 8]
marks = np.array([45, 78, 55, 90]) result = np.where(marks >= 60, "Pass", "Fail") print(result)
➕ Array में जोड़ना/हटाना — append(), insert(), delete()
arr = np.array([10, 20, 30])
added = np.append(arr, 40) # aakhir me jodna
print("append:", added)
inserted = np.insert(arr, 1, 99) # index 1 par 99 daalna
print("insert:", inserted)
deleted = np.delete(arr, 0) # index 0 hatana
print("delete:", deleted)
print("Original arr abhi bhi wahi hai:", arr)insert: [10 99 20 30]
delete: [20 30]
Original arr abhi bhi wahi hai: [10 20 30]
📚 Stacking — Arrays को जोड़ना (vstack, hstack)
a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) print(np.vstack((a, b))) # vertically (rows ban jate hain) print(np.hstack((a, b))) # horizontally (ek line me jud jate hain)
[4 5 6]]
[1 2 3 4 5 6]
🎯 Output-Based Questions — NumPy पर Tricky सवाल
Q1. Vectorized Multiplication
import numpy as np arr = np.array([1, 2, 3]) print(arr * 3)
← हर element को 3 से गुणा — List होता तो [1,2,3,1,2,3,1,2,3] मिलता (repetition)!
Q2. shape Attribute
import numpy as np arr = np.array([[1,2,3],[4,5,6]]) print(arr.shape)
← 2 rows, 3 columns।
Q3. Boolean Indexing
import numpy as np nums = np.array([12, 45, 7, 89, 23]) print(nums[nums < 30])
← सिर्फ 30 से कम values filter हुईं।
Q4. Broadcasting Scalar
import numpy as np arr = np.array([2, 4, 6]) print(arr - 1)
← 1 हर element पर broadcast हुआ (हर element से 1 घटा)।
Q5. 2D Column Access
import numpy as np m = np.array([[1,2],[3,4],[5,6]]) print(m[:, 0])
← सभी rows का column 0 — पहला column।
Q6. reshape() की Condition
import numpy as np arr = np.array([1,2,3,4,5]) print(arr.reshape(2,3))
← 5 elements हैं, 2×3=6 चाहिए — mismatch से error!
Q7. mean() Calculation
import numpy as np arr = np.array([10, 20, 30, 40]) print(arr.mean())
← (10+20+30+40)/4 = 100/4 = 25.0।
Q8. np.where() Logic
import numpy as np n = np.array([3, 8, 15, 2]) print(np.where(n % 2 == 0, "Even", "Odd"))
← हर element के लिए even/odd check एक साथ।
Summary — Quick Revision (Exam से पहले पढ़ें)
- NumPy = Numerical Python; ndarray = n-dimensional array; List से तेज़ (homogeneous, contiguous memory)।
- Array बनाना: np.array(list), np.zeros(n), np.ones(n), np.arange(start,stop,step), np.linspace(start,stop,n)।
- Attributes: shape (rows,cols), size (total elements), dtype (data type), ndim (dimensions की संख्या)।
- Indexing/Slicing List जैसी ही; Boolean Indexing — condition से सीधे filter (arr[arr > 60]), सिर्फ NumPy में।
- 2D Arrays: arr[row, col] या arr[row][col]; arr[:, col] पूरा column; arr[row, :] पूरी row; np.dot() असली matrix multiplication।
- Vectorized Operations: arr + n, arr * n — बिना loop पूरे array पर; sum(), mean(), max(), min(), std() सांख्यिकी functions।
- Broadcasting: छोटा array/scalar अपने आप बड़े shape में "फैलकर" operation करता है — NumPy की सबसे बड़ी खासियत।
- Useful functions: reshape() shape बदलना (elements count match ज़रूरी), sort(), concatenate(), flatten(), np.where(condition, true_val, false_val)।
Model Questions — 50 MCQs + 15 Theory Questions
❓ A. Multiple Choice Questions (50)
| # | प्रश्न |
|---|---|
| 1 | NumPy का पूरा नाम है — (a) Numeric Python(b) Numerical Python(c) Number Python(d) Numbering Python ✔ सही उत्तर: (b) Numerical Python |
| 2 | NumPy array का data type कहलाता है — (a) list(b) tuple(c) ndarray(d) matrix ✔ सही उत्तर: (c) ndarrayn-dimensional array। |
| 3 | NumPy को import करने का standard तरीका — (a) import numpy(b) import numpy as np(c) from numpy import *(d) numpy.import() ✔ सही उत्तर: (b) import numpy as npnp alias सबसे common है। |
| 4 | List से NumPy array तेज़ क्यों है? (a) कम elements रखता है(b) Homogeneous व contiguous memory(c) सिर्फ numbers रखता है इसलिए(d) कोई कारण नहीं ✔ सही उत्तर: (b) Homogeneous व contiguous memory |
| 5 | List को array में बदलने का function — (a) np.list()(b) np.array()(c) np.convert()(d) np.make() ✔ सही उत्तर: (b) np.array() |
| 6 | np.zeros(3) का output — (a) [0 0 0](b) [0. 0. 0.](c) [1 1 1](d) Error ✔ सही उत्तर: (b) [0. 0. 0.]Default float type होता है। |
| 7 | np.arange(1, 10, 2) का output — (a) [1 3 5 7 9](b) [1 2 3 4 5 6 7 8 9](c) [2 4 6 8](d) [1 10] ✔ सही उत्तर: (a) [1 3 5 7 9]range() जैसा — stop exclude। |
| 8 | Array का shape बताने वाला attribute — (a) size(b) shape(c) dtype(d) ndim ✔ सही उत्तर: (b) shape |
| 9 | Array के कुल elements बताने वाला attribute — (a) shape(b) len(c) size(d) count ✔ सही उत्तर: (c) size |
| 10 | Array का data type बताने वाला attribute — (a) type(b) dtype(c) datatype(d) kind ✔ सही उत्तर: (b) dtype |
| 11 | np.array([[1,2],[3,4]]).ndim का output — (a) 1(b) 2(c) 4(d) 0 ✔ सही उत्तर: (b) 22D array। |
| 12 | 1D array का ndim होता है — (a) 0(b) 1(c) 2(d) निर्भर करता है ✔ सही उत्तर: (b) 1 |
| 13 | arr = np.array([10,20,30]); arr[1] का output — (a) 10(b) 20(c) 30(d) Error ✔ सही उत्तर: (b) 20Index 0-based, इसलिए index 1 = दूसरा element। |
| 14 | Array slicing में stop index — (a) शामिल होता है(b) शामिल नहीं होता(c) हमेशा -1(d) हमेशा 0 ✔ सही उत्तर: (b) शामिल नहीं होताList slicing जैसा ही rule। |
| 15 | Boolean Indexing का उदाहरण — (a) arr[0](b) arr[arr > 10](c) arr[:5](d) arr[-1] ✔ सही उत्तर: (b) arr[arr > 10]Condition से filter — सिर्फ NumPy में। |
| 16 | Boolean Indexing List में सीधे चलता है क्या? (a) हाँ(b) नहीं(c) कभी-कभी(d) सिर्फ छोटी lists में ✔ सही उत्तर: (b) नहींList के लिए loop/comprehension चाहिए। |
| 17 | 2D array में matrix[1,2] का मतलब — (a) row 2, col 1(b) row 1, col 2(c) sirf index 12(d) Error ✔ सही उत्तर: (b) row 1, col 2 |
| 18 | matrix[:, 0] क्या देता है? (a) पहली row(b) पहला column(c) पूरा matrix(d) आखिरी row ✔ सही उत्तर: (b) पहला column |
| 19 | matrix[1, :] क्या देता है? (a) दूसरा column(b) दूसरी row(c) पहली row(d) Error ✔ सही उत्तर: (b) दूसरी row |
| 20 | Element-wise multiplication के लिए operator — (a) *(b) np.dot()(c) @(d) matmul only ✔ सही उत्तर: (a) *np.dot() असली matrix multiplication के लिए। |
| 21 | असली Matrix Multiplication के लिए function — (a) *(b) np.dot()(c) +(d) np.add() ✔ सही उत्तर: (b) np.dot() |
| 22 | arr = np.array([1,2,3]); print(arr + 10) का output — (a) [11 12 13](b) [1 2 3 10](c) Error(d) [10 10 10] ✔ सही उत्तर: (a) [11 12 13]Broadcasting से हर element में 10 जुड़ा। |
| 23 | Vectorized Operation का मतलब — (a) Loop से operation(b) पूरे array पर एक साथ, बिना loop(c) सिर्फ एक element पर(d) कोई operation नहीं ✔ सही उत्तर: (b) पूरे array पर एक साथ, बिना loop |
| 24 | arr.sum() क्या देता है? (a) पहला element(b) सभी elements का योग(c) सबसे बड़ा element(d) elements की गिनती ✔ सही उत्तर: (b) सभी elements का योग |
| 25 | arr.mean() क्या देता है? (a) योग(b) औसत(c) maximum(d) minimum ✔ सही उत्तर: (b) औसत |
| 26 | arr.std() क्या बताता है? (a) Standard Deviation(b) Sum Total(c) Standard Data(d) Sort Data ✔ सही उत्तर: (a) Standard DeviationData के फैलाव को मापता है। |
| 27 | Broadcasting क्या करता है? (a) Array delete करता है(b) अलग shape के arrays को operation लायक बनाता है(c) Array sort करता है(d) Loop चलाता है ✔ सही उत्तर: (b) अलग shape के arrays को operation लायक बनाता है |
| 28 | np.array([1,2,3]) + 5 में 5 — (a) सिर्फ पहले element में जुड़ता है(b) हर element में broadcast होकर जुड़ता है(c) Error देता है(d) आखिरी element में जुड़ता है ✔ सही उत्तर: (b) हर element में broadcast होकर जुड़ता है |
| 29 | Array shape बदलने वाला function — (a) resize()(b) reshape()(c) change()(d) transform() ✔ सही उत्तर: (b) reshape() |
| 30 | 6 elements वाला array किस shape में reshape हो सकता है? (a) (2, 3)(b) (3, 3)(c) (2, 4)(d) (5, 1) ✔ सही उत्तर: (a) (2, 3)2×3=6 — elements count match होना चाहिए। |
| 31 | 5 elements को (2,3) में reshape करने पर — (a) सही चलेगा(b) ValueError(c) खाली array बनेगा(d) पहले 5 elements उपयोग होंगे ✔ सही उत्तर: (b) ValueError5 ≠ 6, mismatch। |
| 32 | Array sort करने वाला function — (a) np.arrange()(b) np.sort()(c) np.order()(d) np.rank() ✔ सही उत्तर: (b) np.sort() |
| 33 | 2D array को 1D में बदलने वाला function — (a) reshape()(b) flatten()(c) unfold()(d) squeeze() ✔ सही उत्तर: (b) flatten() |
| 34 | np.where(condition, x, y) क्या करता है? (a) Condition true पर x, false पर y(b) हमेशा x देता है(c) हमेशा y देता है(d) Error देता है ✔ सही उत्तर: (a) Condition true पर x, false पर y |
| 35 | दो arrays को जोड़ने (concatenate) वाला function — (a) np.join()(b) np.concatenate()(c) np.merge()(d) np.combine() ✔ सही उत्तर: (b) np.concatenate() |
| 36 | np.linspace(0, 10, 5) क्या देता है? (a) 5 random numbers(b) 0 से 10 तक 5 बराबर बँटे points(c) सिर्फ 0 और 10(d) Error ✔ सही उत्तर: (b) 0 से 10 तक 5 बराबर बँटे points |
| 37 | np.ones((2,3)) का shape — (a) (3,2)(b) (2,3)(c) (6,)(d) (2,2) ✔ सही उत्तर: (b) (2,3)दिया गया tuple ही shape बनता है। |
| 38 | Array के negative index का मतलब — (a) Error(b) पीछे से गिनती(c) हमेशा 0(d) Random access ✔ सही उत्तर: (b) पीछे से गिनतीarr[-1] = आखिरी element। |
| 39 | Array और List दोनों mutable हैं क्या? (a) दोनों mutable हैं(b) दोनों immutable हैं(c) सिर्फ Array mutable(d) सिर्फ List mutable ✔ सही उत्तर: (a) दोनों mutable हैं |
| 40 | NumPy array के elements होते हैं — (a) Mixed types (heterogeneous)(b) एक ही type (homogeneous)(c) हमेशा strings(d) हमेशा booleans ✔ सही उत्तर: (b) एक ही type (homogeneous) |
| 41 | Array पर for loop से iterate करना possible है क्या? (a) नहीं(b) हाँ, List जैसा ही(c) सिर्फ 1D arrays में(d) कभी नहीं ✔ सही उत्तर: (b) हाँ, List जैसा ही |
| 42 | np.array([1,2,3]).dtype संभावित output — (a) int64(b) list(c) array(d) numpy ✔ सही उत्तर: (a) int64System के अनुसार int32/int64 हो सकता है। |
| 43 | arr.max() क्या देता है? (a) सबसे छोटा element(b) सबसे बड़ा element(c) योग(d) औसत ✔ सही उत्तर: (b) सबसे बड़ा element |
| 44 | arr.min() क्या देता है? (a) सबसे बड़ा element(b) सबसे छोटा element(c) योग(d) count ✔ सही उत्तर: (b) सबसे छोटा element |
| 45 | दो arrays a=[1,2] व b=[3,4] का a+b — (a) [1,2,3,4](b) [4,6](c) [3,8](d) Error ✔ सही उत्तर: (b) [4,6]Element-wise addition — position के हिसाब से। |
| 46 | NumPy किस field में सबसे ज़्यादा उपयोग होती है? (a) Web Design(b) Data Science/ML(c) Game Development(d) Mobile Apps ✔ सही उत्तर: (b) Data Science/ML |
| 47 | np.array vs list — कौन ज़्यादा memory-efficient है? (a) List(b) NumPy Array(c) दोनों बराबर(d) निर्भर करता है ✔ सही उत्तर: (b) NumPy Array |
| 48 | List में mixed data types (int, string साथ) — (a) रख सकते हैं(b) कभी नहीं रख सकते(c) सिर्फ numbers रख सकते हैं(d) Error देता है ✔ सही उत्तर: (a) रख सकते हैंNumPy array में नहीं — वह homogeneous है। |
| 49 | arr[::-1] NumPy array पर क्या करता है? (a) पहला element(b) पूरा array reverse(c) Sort करता है(d) Error ✔ सही उत्तर: (b) पूरा array reverseList slicing जैसा ही व्यवहार। |
| 50 | NumPy की सबसे बड़ी खासियत — (a) सिर्फ 1D arrays support करना(b) Fast vectorized operations व broadcasting(c) सिर्फ strings रखना(d) धीमा पर सुरक्षित होना ✔ सही उत्तर: (b) Fast vectorized operations व broadcasting |
📝 B. 15 Theory Questions (Short Answers)
- NumPy क्या है? इसकी ज़रूरत क्यों है?NumPy (Numerical Python) एक library है जो fast, memory-efficient arrays (ndarray) देती है। Data Science, ML व scientific computing में बड़ी मात्रा में numerical data को तेज़ी से process करने के लिए ज़रूरी है।
- NumPy Array और Python List में 4 अंतर लिखिए।List mixed types रख सकती है, Array सिर्फ एक type (homogeneous); List धीमी, Array तेज़; List operations के लिए loop चाहिए, Array vectorized (बिना loop); List scattered memory, Array contiguous memory।
- NumPy array कैसे बनाते हैं? 3 तरीके लिखिए।np.array(list) — list से; np.zeros(n)/np.ones(n) — भरे हुए arrays; np.arange(start,stop,step) — range जैसा; np.linspace(start,stop,n) — बराबर बँटे points।
- Array के 4 मुख्य attributes लिखिए।shape (rows,columns का tuple), size (कुल elements), dtype (data type), ndim (dimensions की संख्या)।
- Boolean Indexing क्या है? उदाहरण दीजिए।Condition से array को सीधे filter करना — जैसे arr[arr > 60] सिर्फ 60 से बड़े elements देता है। List में यह करने के लिए loop/comprehension चाहिए होता।
- 2D Array में element कैसे access करते हैं?arr[row, col] या arr[row][col] दोनों से — पहला index row चुनता है, दूसरा column। arr[:, col] पूरा column देता है, arr[row, :] पूरी row।
- Element-wise multiplication और Matrix multiplication में अंतर बताइए।Element-wise (A * B) — position-by-position साधारण गुणा; Matrix multiplication (np.dot(A, B)) — असली linear algebra matrix multiplication, अलग नियम से।
- Vectorized Operation क्या है? उदाहरण दीजिए।पूरे array पर एक साथ operation करना, बिना loop लिखे — जैसे arr * 2 हर element को double कर देता है, जबकि list में यही काम के लिए loop चाहिए होता।
- Broadcasting क्या है? समझाइए।अलग shape के arrays/scalars के बीच operations करने की NumPy की क्षमता — छोटे array या scalar को अपने आप बड़े array के shape में "फैलाकर" (broadcast करके) operation किया जाता है। जैसे [1,2,3] + 5 = [6,7,8]।
- Statistical functions (sum, mean, max, min, std) का उपयोग लिखिए।arr.sum() — योग; arr.mean() — औसत; arr.max()/min() — सबसे बड़ा/छोटा; arr.std() — standard deviation (data का फैलाव)।
- reshape() function क्या करता है? क्या सावधानी रखनी चाहिए?Array का shape बदलता है — जैसे 1D को 2D में। सावधानी: नए shape के elements की कुल संख्या पुराने array के बराबर होनी चाहिए, वरना ValueError आती है (जैसे 5 elements को (2,3) में नहीं बदल सकते)।
- np.where() function समझाइए।np.where(condition, value_if_true, value_if_false) — पूरे array पर एक साथ if-else जैसा काम करता है। जैसे marks पर Pass/Fail label लगाना np.where(marks>=60, "Pass", "Fail") से एक line में हो जाता है।
- flatten() function क्या करता है?किसी 2D (या अधिक dimensions वाले) array को 1D array में बदल देता है — सभी elements एक ही row/line में आ जाते हैं। Data को simple sequence में process करने के लिए उपयोगी।
- NumPy array indexing/slicing List से कैसे मिलती-जुलती है?0-based indexing, negative index पीछे से गिनती, slicing [start:stop:step] — ये सब List जैसे ही काम करते हैं। अतिरिक्त सुविधा — Boolean Indexing, जो List में नहीं होती।
- Concatenate function का उपयोग व syntax लिखिए।np.concatenate((array1, array2)) — दो या अधिक arrays को जोड़कर एक नया बड़ा array बनाता है। Tuple के रूप में arrays पास करने होते हैं।