ऐरे विशेषताएँ और निरीक्षण
ndim, shape, size और dtype विशेषताओं का अन्वेषण कीजिए और reshape() से ऐरे का आकार बदलना सीखिए।
ऐरे विशेषताएँ और निरीक्षण, CoddyKit पर Pandas & NumPy Academy का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Pandas & NumPy Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Pandas & NumPy Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
Array Attributes क्यों महत्वपूर्ण हैं
किसी array पर काम करने से पहले आप उसका shape, आयाम और dtype जानना चाहेंगे। NumPy हल्के attributes के माध्यम से ये जानकारी तुरंत देता है।
import numpy as np
a = np.array([[1, 2, 3], [4, 5, 6]])
print('ndim:', a.ndim) # 2
print('shape:', a.shape) # (2, 3)
print('size:', a.size) # 6
print('dtype:', a.dtype) # int64ndim: आयामों की संख्या
ndim बताता है कि किसी array में कितने आयाम हैं: सपाट सूची का मान 1, सूचियों की सूची का 2 होता है, और ML tensors में अक्सर 3 या 4 आयाम होते हैं।
import numpy as np
v = np.array([1, 2, 3])
print(v.ndim) # 1
m = np.zeros((4, 5))
print(m.ndim) # 2
t = np.ones((2, 3, 4))
print(t.ndim) # 3shape: आयामों का Tuple
shape एक tuple है जिसमें हर आयाम के लिए एक आकार होता है। 2-D array के लिए यह (rows, columns) होता है — और लचीला code लिखने के लिए आप इसे अलग-अलग मानों में बाँट सकते हैं।
import numpy as np
a = np.arange(24).reshape(2, 3, 4)
print(a.shape) # (2, 3, 4)
n_rows, n_cols = np.zeros((5, 7)).shape
print(n_rows, n_cols) # 5 7size: Elements की कुल संख्या
size कुल elements की संख्या देता है — shape में दिए सभी आकारों का गुणनफल। इससे यह जाँचने में सुविधा होती है कि reshape के दौरान कुछ छूटा तो नहीं।
import numpy as np
a = np.ones((3, 4, 5))
print(a.size) # 60 (3*4*5)
print(np.prod(a.shape))# 60
# Memory estimate in bytes
print(a.size * a.itemsize, 'bytes') # 480 bytesdtype: Element का डेटा प्रकार
dtype हर element का प्रकार बताता है और itemsize उसका byte आकार बताता है। float64 को float32 में बदलने से मेमोरी आधी हो जाती है और अक्सर code तेज़ चलता है।
import numpy as np
a = np.array([1.5, 2.5, 3.5])
print(a.dtype) # float64
print(a.itemsize) # 8 bytes
b = a.astype(np.float32)
print(b.dtype) # float32
print(b.itemsize) # 4 bytesnbytes: मेमोरी का कुल उपयोग
nbytes array द्वारा bytes में उपयोग की गई कुल मेमोरी है — size को itemsize से गुणा करने पर यही मिलता है। downcasting से पहले और बाद में इसे जाँचकर पुष्टि करें कि वास्तव में जगह बची है।
import numpy as np
a = np.ones((1000, 1000), dtype=np.float64)
print(a.nbytes) # 8000000 (8 MB)
b = a.astype(np.float32)
print(b.nbytes) # 4000000 (4 MB)reshape(): Array का आकार बदलना
reshape डेटा की copy बनाए बिना array को नया shape देता है, बशर्ते elements की संख्या समान रहे। -1 देने पर NumPy उस आयाम का आकार स्वयं निर्धारित कर लेता है।
import numpy as np
a = np.arange(12)
print(a.shape) # (12,)
b = a.reshape(3, 4)
print(b.shape) # (3, 4)
c = a.reshape(2, -1) # -1 inferred as 6
print(c.shape) # (2, 6)ravel() और flatten() से सपाट बनाना
ravel() और flatten() दोनों array को 1-D में बदल देते हैं। अंतर यह है कि ravel आमतौर पर memory साझा करता है (copy नहीं बनाता), जबकि flatten हमेशा नई copy बनाता है।
import numpy as np
m = np.array([[1, 2, 3], [4, 5, 6]])
r = m.ravel() # view (usually)
f = m.flatten() # always a copy
print(r) # [1 2 3 4 5 6]
print(f) # [1 2 3 4 5 6]Arrays का Transpose करना
.T attribute आपको transpose देता है — rows और columns आपस में बदल जाते हैं। इसमें डेटा की copy नहीं बनती और matrices को सही क्रम में लगाने के लिए यह आवश्यक है।
import numpy as np
m = np.array([[1, 2, 3], [4, 5, 6]]) # shape (2, 3)
print(m.T.shape) # (3, 2)
print(m.T)
# [[1 4]
# [2 5]
# [3 6]]strides: मेमोरी का विन्यास
strides बताते हैं कि हर आयाम में NumPy मेमोरी में कितने bytes आगे बढ़ता है। इसी कारण transpose में डेटा की copy नहीं बनती — केवल stride के मान आपस में बदलते हैं।
import numpy as np
a = np.ones((3, 4), dtype=np.float64)
print(a.strides) # (32, 8) — 4 cols x 8 bytes, 1 col x 8 bytes
b = a.T
print(b.strides) # (8, 32) — strides swapped, no data copyViews और Copies जाँचना
view मूल array के साथ memory साझा करता है, इसलिए एक को बदलने पर दोनों बदलते हैं; copy स्वतंत्र होती है। यह जाँचने के लिए np.shares_memory(a, b) का उपयोग करें कि आपके पास कौन-सा है।
import numpy as np
a = np.arange(6)
b = a.reshape(2, 3) # view
print(np.shares_memory(a, b)) # True
c = a.copy()
print(np.shares_memory(a, c)) # Falseत्वरित जाँच
इस पाठ से NumPy array attributes की अपनी समझ जाँचें।
पाठ का पुनरावलोकन
बहुत अच्छी प्रगति! ndim, shape, और size संरचना बताते हैं, dtype डेटा का प्रकार बताता है, और reshape एक view लौटाता है जबकि flatten हमेशा copy बनाता है। अगला विषय: array गणित।
एआई शिक्षक के साथ Python सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 30
- पाठ
- 120
अक्सर पूछे जाने वाले प्रश्न
क्या “ऐरे विशेषताएँ और निरीक्षण” पाठ निःशुल्क है?
हाँ—“ऐरे विशेषताएँ और निरीक्षण” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Pandas & NumPy Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Pandas & NumPy Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“ऐरे विशेषताएँ और निरीक्षण” में मैं क्या सीखूँगा?
ndim, shape, size और dtype विशेषताओं का अन्वेषण कीजिए और reshape() से ऐरे का आकार बदलना सीखिए। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Pandas & NumPy Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Pandas & NumPy Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Pandas & NumPy Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।
“ऐरे विशेषताएँ और निरीक्षण” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Pandas & NumPy Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Pandas & NumPy Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- NumPy ऐरे बनाना
- ऐरे विशेषताएँ और निरीक्षण
- तत्व-दर-तत्व अंकगणित
- ऐरे स्लाइसिंग और इंडेक्सिंग