Feedback Form

Indexing & Slicing in NumPy in hindi

Indexing & Slicing in NumPy in Hindi | NumPy Indexing and Slicing Explained

Indexing & Slicing in NumPy in Hindi

NumPy Python की सबसे important library मानी जाती है, खासकर engineering, data science और college level programming exams के लिए। जब भी arrays पर काम करने की बात आती है, तो Indexing और Slicing सबसे basic और सबसे ज्यादा पूछे जाने वाले concepts होते हैं। इस article में हम इन्हें बिल्कुल classroom style में, आसान हिंदी में step-by-step समझेंगे।

Exam point of view से देखा जाए तो NumPy Indexing & Slicing से direct questions आते हैं, जैसे array से value निकालना, sub-array बनाना, या specific data access करना। इसलिए इन topics को clear तरीके से समझना बहुत जरूरी है।

Indexing in NumPy

NumPy में Indexing का मतलब होता है array के अंदर मौजूद किसी specific element को access करना। जैसे हम real life में cupboard के किसी particular खाने को खोलते हैं, वैसे ही array के अंदर position के basis पर data निकाला जाता है।

NumPy array में indexing हमेशा 0 से start होती है। यानी पहला element index 0 पर होता है, दूसरा index 1 पर और इसी तरह आगे बढ़ता है। यह concept Python lists जैसा ही होता है।

1D Array Indexing

जब हमारे पास सिर्फ एक row वाला array होता है, तो उसे 1D array कहते हैं। ऐसे array में indexing सबसे simple होती है और exam में यही सबसे पहले पूछा जाता है।

मान लो हमारे पास एक NumPy array है जिसमें कुछ numbers store हैं। अगर हमें किसी particular position का value चाहिए, तो हम index number का use करते हैं।

import numpy as np
arr = np.array([10, 20, 30, 40, 50])
print(arr[2])

ऊपर दिए गए code में arr[2] लिखा है। क्योंकि indexing 0 से शुरू होती है, इसलिए index 2 पर value 30 होगी। Exam में ऐसे output based questions बहुत common हैं।

Negative Indexing

NumPy में indexing सिर्फ positive numbers तक limited नहीं होती। यहाँ Negative Indexing भी possible है। Negative index array के end से value निकालने के लिए use किया जाता है।

-1 का मतलब last element, -2 का मतलब second last element और इसी तरह आगे बढ़ता है। यह feature NumPy को और powerful बनाता है।

print(arr[-1])
print(arr[-3])

ऊपर के example में arr[-1] last value यानी 50 देगा, और arr[-3] end से तीसरी value यानी 30 return करेगा।

2D Array Indexing

जब array rows और columns में होता है, तो उसे 2D array कहा जाता है। College exams में matrix based questions अक्सर 2D NumPy arrays पर ही होते हैं।

2D array में indexing के लिए row index और column index दोनों देने पड़ते हैं। Syntax होता है: array[row_index, column_index]

arr2 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr2[1, 2])

यहाँ arr2[1,2] का मतलब है दूसरी row और तीसरा column। Output होगा 6। Exam में indexing order गलत करने से marks कट जाते हैं, इसलिए इसे ध्यान से समझना जरूरी है।

Row and Column Access

कई बार हमें पूरा row या पूरा column access करना होता है। NumPy indexing यह काम भी बहुत आसानी से कर देती है।

अगर हमें पूरी row चाहिए, तो column की जगह : symbol का use करते हैं। यही concept आगे slicing में और clear होगा।

print(arr2[0, :])
print(arr2[:, 1])

पहले statement में पहली row के सारे elements मिलेंगे। दूसरे statement में सभी rows का दूसरा column मिलेगा। Data analysis में यह technique बहुत ज्यादा use होती है।

Indexing vs Python List

Exam में कई बार पूछा जाता है कि NumPy indexing और Python list indexing में क्या difference है। Basic level पर दोनों similar लगते हैं, लेकिन NumPy indexing ज्यादा powerful होती है।

Point Python List NumPy Array
Speed Slow Fast
Multi-Dimension Complex Easy
Indexing Power Limited Advanced

यही reason है कि scientific computing और machine learning में Python list के बजाय NumPy arrays prefer किए जाते हैं। Indexing concept clear होगा तो आगे slicing और advanced operations समझना आसान हो जाएगा।

Slicing in NumPy

NumPy में Slicing का मतलब होता है array के किसी selected हिस्से को निकालना। जहाँ indexing से हम सिर्फ एक single value access करते हैं, वहीं slicing से हम multiple values या sub-array बना सकते हैं। Exam और practical दोनों point of view से यह concept बहुत important है।

Simple शब्दों में कहें तो slicing array को छोटे-छोटे meaningful parts में divide करने का तरीका है। Data analysis, machine learning और scientific calculation में slicing का use almost हर जगह होता है।

Slicing Syntax

NumPy slicing का basic syntax Python list slicing जैसा ही होता है: array[start : stop : step]

  • start – जहाँ से slicing शुरू होगी
  • stop – जहाँ तक slicing होगी (यह index include नहीं होता)
  • step – कितने gap से elements लेने हैं

अगर start नहीं देते तो slicing 0 से शुरू होती है। अगर stop नहीं देते तो slicing array के end तक जाती है। और step नहीं देने पर default value 1 होती है।

1D Array Slicing

1D array slicing सबसे आसान होती है और exams में direct questions यहीं से आते हैं। इसमें हम array के continuous elements को select करते हैं।

import numpy as np
arr = np.array([10, 20, 30, 40, 50, 60])
print(arr[1:4])

ऊपर दिए गए example में slicing index 1 से start होकर index 4 से पहले तक जाएगी। Output होगा: 20, 30, 40। ध्यान रखो, stop index हमेशा exclude होता है।

Slicing with Step

Step parameter slicing को और powerful बना देता है। इसकी help से हम हर element नहीं बल्कि fixed gap से elements ले सकते हैं।

print(arr[0:6:2])

यहाँ step = 2 है, इसलिए हर दूसरे element को लिया जाएगा। Output होगा: 10, 30, 50। ऐसे questions logical thinking check करने के लिए पूछे जाते हैं।

Negative Slicing

जैसे indexing में negative values होती हैं, वैसे ही slicing में भी negative start और stop use किए जा सकते हैं। Negative slicing array के end से count करती है।

print(arr[-5:-1])

इस example में slicing end से पाँचवें element से start होकर last element से पहले तक जाएगी। Output होगा: 20, 30, 40, 50। Exam में negative slicing से confusion होता है, इसलिए practice जरूरी है।

2D Array Slicing

2D array slicing थोड़ा advanced होती है, लेकिन college level exams में matrix related questions में यह जरूर पूछी जाती है। इसमें rows और columns दोनों को slice किया जा सकता है।

arr2 = np.array([[1,2,3,4], [5,6,7,8], [9,10,11,12]])

अब मान लो हमें सिर्फ first दो rows और last दो columns चाहिए। यह काम slicing से बहुत easily हो जाता है।

print(arr2[0:2, 2:4])

यहाँ पहले part में rows slice हो रही हैं और दूसरे part में columns। Output होगा:
3 4
7 8

Row-wise and Column-wise Slicing

कई practical situations में हमें पूरी row या पूरी column का data चाहिए। NumPy slicing इसे बहुत simple बना देती है।

print(arr2[1, :])
print(arr2[:, 0])

पहले statement में दूसरी row के सारे elements मिलेंगे। दूसरे statement में सभी rows का पहला column मिलेगा। यही concept आगे data analysis में बहुत काम आता है।

Slicing Creates View, Not Copy

NumPy slicing का एक बहुत important point यह है कि slicing से जो sub-array बनता है, वह original array का view होता है, copy नहीं।

इसका मतलब है कि अगर sliced array में change करेंगे, तो original array में भी change दिखेगा। Exam में यह concept theoretical question में पूछा जाता है।

sub = arr[1:4]
sub[0] = 999
print(arr)

यहाँ sub array में change करने पर original arr भी modify हो जाएगा। यह behaviour Python list से अलग होता है।

Copy vs Slice Difference

अगर आपको original array को safe रखना है, तो slicing के साथ copy() method use करनी चाहिए।

sub_copy = arr[1:4].copy()

अब sub_copy में changes करने से original array पर कोई effect नहीं पड़ेगा। यह concept interview और advanced exam questions में काम आता है।

Indexing vs Slicing (Quick Comparison)

Point Indexing Slicing
Access Type Single Element Multiple Elements
Output Scalar Value Array / Sub-array
Usage Specific Value Data Selection

अगर Indexing और Slicing दोनों concepts clear हैं, तो NumPy के advanced topics जैसे Boolean Indexing, Fancy Indexing और Data Filtering समझना बहुत आसान हो जाता है। यही reason है कि exams में इस topic को strong माना जाता है।

FAQs

आपका अगला टॉपिक पढ़े Multidimensional Arrays in NumPy in hindi
NumPy Indexing in Hindi का मतलब है NumPy array के अंदर किसी specific element को उसकी position यानी index के आधार पर access करना। इसका use इसलिए किया जाता है ताकि large data set में से exact value जल्दी और efficiently निकाली जा सके। College exams में output based और theory दोनों तरह के questions Indexing पर पूछे जाते हैं।
NumPy Slicing in Hindi का मतलब है array के किसी selected हिस्से को निकालना। Slicing से हम single value नहीं बल्कि multiple values या sub-array बनाते हैं। Data analysis और machine learning में slicing का use data selection और filtering के लिए किया जाता है।
NumPy Indexing से array का सिर्फ एक element access किया जाता है, जबकि NumPy Slicing से array का एक पूरा part या sub-array मिलता है। Indexing का output single value होता है, जबकि slicing का output नया array या view होता है। Exams में यह difference short notes में अक्सर पूछा जाता है।
Negative Indexing in NumPy in Hindi का मतलब है array के end से elements access करना। यहाँ -1 last element को represent करता है और -2 second last element को। यह feature backward direction से data access करने के लिए use किया जाता है और exams में common question है।
2D array में Indexing और Slicing rows और columns दोनों पर apply होती है। इसमें row index और column index देना पड़ता है। Matrix based problems और practical questions में 2D NumPy Indexing & Slicing in Hindi बहुत ज्यादा पूछी जाती है।
NumPy Slicing default रूप से view बनाती है, copy नहीं। इसका मतलब है कि sliced array में change करने पर original array भी change हो जाता है। अगर original data को safe रखना हो तो copy() method का use किया जाता है। यह concept theoretical और conceptual questions में पूछा जाता है।