Python Academy · पाठ

ऐरे संक्रियाएँ और ब्रॉडकास्टिंग

वेक्टराइज़्ड अंकगणित करें और ब्रॉडकास्टिंग के नियम समझें।

पाठ 2, कुल 4 में से13 चरण

ऐरे संक्रियाएँ और ब्रॉडकास्टिंग, CoddyKit पर Python Academy का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Python Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

सदिशीकृत अंकगणित

NumPy पूरे ऐरे में Python लूप के बिना, प्रत्येक तत्व पर अंकगणित लागू करता है — यह अनुकूलित C कोड में निष्पादित होता है।

import numpy as np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
print(a + b)    # [5 7 9]
print(a * b)    # [4 10 18]
print(a ** 2)   # [1 4 9]

सार्वत्रिक फ़ंक्शन (ufuncs)

NumPy के ufuncs प्रत्येक तत्व पर C-स्तरीय फ़ंक्शन लागू करते हैं: np.sqrt, np.exp, np.log, np.sin आदि।

import numpy as np

x = np.linspace(0, np.pi, 5)
print(np.sin(x))   # [0. 0.707 1. 0.707 0.]
print(np.exp([1.0, 2.0, 3.0]))   # [2.718 7.389 20.086]

रिडक्शन operations

np.sum, np.mean, np.max, np.min, np.std से किसी ऐरे को एक scalar (या कम-आयामी ऐरे) में घटाएँ।

import numpy as np

m = np.array([[1, 2, 3], [4, 5, 6]])
print(np.sum(m))          # 21
print(np.sum(m, axis=0))  # [5 7 9]  — sum each column
print(np.sum(m, axis=1))  # [6 15]   — sum each row

ब्रॉडकास्टिंग के नियम

ब्रॉडकास्टिंग छोटे ऐरे को डेटा की copy बनाए बिना बड़े ऐरे के अनुरूप फैलाती है। नियम: आयाम दाईं ओर से मिलाए जाते हैं; आकार 1 वाले आयाम फैलाए जाते हैं।

import numpy as np

a = np.array([[1], [2], [3]])  # shape (3,1)
b = np.array([10, 20, 30])     # shape (3,)

print(a + b)
# [[11 21 31]
#  [12 22 32]
#  [13 23 33]]

scalar operations की ब्रॉडकास्टिंग

एक scalar को ऐरे के सभी तत्वों पर प्रसारित किया जाता है।

import numpy as np

arr = np.arange(6).reshape(2, 3)
print(arr + 10)
# [[10 11 12]
#  [13 14 15]]
print(arr * 0.5)
# [[0.  0.5 1. ]
#  [1.5 2.  2.5]]

तुलना और Boolean operations

तुलनाएँ boolean ऐरे बनाती हैं। इन्हें &, |, ~ के साथ मिलाएँ (Python के and/or/not के साथ नहीं)।

import numpy as np

arr = np.array([1, 5, 3, 8, 2])
print(arr > 3)           # [False  True False  True False]
print(arr[(arr > 2) & (arr < 7)])  # [5 3]

where()

np.where(condition, x, y) True होने पर x के और False होने पर y के elements लौटाता है।

import numpy as np

arr = np.array([-2, 3, -1, 4, 0])
result = np.where(arr >= 0, arr, 0)  # clip negatives to 0
print(result)   # [0 3 0 4 0]

Axes के साथ aggregations

बहु-आयामी ऐरे के किसी विशेष आयाम के साथ reduction करने के लिए axis= निर्दिष्ट करें।

import numpy as np

data = np.arange(12).reshape(3, 4)
print(data.mean(axis=0))   # mean of each column → shape (4,)
print(data.mean(axis=1))   # mean of each row → shape (3,)

cumsum और diff

np.cumsum संचयी योग निकालता है; np.diff क्रमागत elements के बीच अंतर निकालता है।

import numpy as np

prices = np.array([100, 110, 105, 115])
print(np.cumsum(prices))          # [100 210 315 430]
print(np.diff(prices))            # [10 -5 10] (daily changes)

सदिशीकृत String operations

np.char strings वाले ऐरे पर सदिशीकृत string operations उपलब्ध कराता है।

import numpy as np

words = np.array(["apple", "banana", "cherry"])
print(np.char.upper(words))       # ['APPLE' 'BANANA' 'CHERRY']
print(np.char.startswith(words, "a"))  # [True False False]

Python सूचियों की तुलना में प्रदर्शन

संख्यात्मक कार्यों में NumPy समान Python लूप की तुलना में 10–100 गुना तेज़ है, क्योंकि यह Python interpreter के अतिरिक्त बोझ के बिना C में निष्पादित होता है।

import numpy as np, time

n = 1_000_000

start = time.perf_counter()
python_sum = sum(i**2 for i in range(n))
print(f"Python: {time.perf_counter()-start:.3f}s")

arr = np.arange(n)
start = time.perf_counter()
numpy_sum = (arr**2).sum()
print(f"NumPy:  {time.perf_counter()-start:.3f}s")

त्वरित जाँच

shape-(3,1) ऐरे को shape-(3,) ऐरे में जोड़ने पर परिणाम का आकार क्या होगा?

पुनरावलोकन

NumPy operations प्रत्येक तत्व पर C में निष्पादित होते हैं (Python लूप नहीं)। ब्रॉडकास्टिंग compatible shapes को copy बनाए बिना फैलाती है। विशिष्ट आयामों के साथ reductions के लिए axis= का उपयोग करें। Ufuncs (np.sin, np.exp आदि) C की गति से प्रत्येक तत्व पर लागू होते हैं।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Python सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
76
पाठ
320

अक्सर पूछे जाने वाले प्रश्न

क्या “ऐरे संक्रियाएँ और ब्रॉडकास्टिंग” पाठ निःशुल्क है?

हाँ—“ऐरे संक्रियाएँ और ब्रॉडकास्टिंग” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Python Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“ऐरे संक्रियाएँ और ब्रॉडकास्टिंग” में मैं क्या सीखूँगा?

वेक्टराइज़्ड अंकगणित करें और ब्रॉडकास्टिंग के नियम समझें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Python Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Python Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Python Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“ऐरे संक्रियाएँ और ब्रॉडकास्टिंग” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Python Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Python Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. NumPy ऐरे और dtypes
  2. ऐरे संक्रियाएँ और ब्रॉडकास्टिंग
  3. अनुक्रमण, स्लाइसिंग और फ़ैंसी अनुक्रमण
  4. NumPy से रैखिक बीजगणित
← Python Academy पर वापस जाएँ