NumPy स्प्लिटिंग ऐरे
NumPy सरणियों को विभाजित करना
स्प्लिटिंग ज्वाइनिंग का उल्टा ऑपरेशन है।
जुड़ने से कई सरणियाँ एक में विलीन हो जाती हैं और विभाजन एक सरणी को कई में तोड़ देता है।
हम array_split()
सरणियों को विभाजित करने के लिए उपयोग करते हैं, हम इसे उस सरणी को पास करते हैं जिसे हम विभाजित करना चाहते हैं और विभाजन की संख्या।
उदाहरण
सरणी को 3 भागों में विभाजित करें:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
newarr =
np.array_split(arr, 3)
print(newarr)
नोट: वापसी मूल्य एक सरणी है जिसमें तीन सरणियाँ हैं।
यदि सरणी में आवश्यकता से कम तत्व हैं, तो यह तदनुसार अंत से समायोजित हो जाएगा।
उदाहरण
सरणी को 4 भागों में विभाजित करें:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
newarr =
np.array_split(arr, 4)
print(newarr)
नोट: हमारे पास विधि भी split()
उपलब्ध है लेकिन यह तत्वों को समायोजित नहीं करेगा जब तत्वों को विभाजित करने के लिए स्रोत सरणी में कम होता है जैसे ऊपर उदाहरण में, array_split()
ठीक से काम किया लेकिन
split()
असफल हो जाएगा।
सरणियों में विभाजित करें
विधि का वापसी मान array_split()
एक सरणी है जिसमें प्रत्येक विभाजन एक सरणी के रूप में होता है।
यदि आप किसी सरणी को 3 सरणियों में विभाजित करते हैं, तो आप उन्हें किसी भी सरणी तत्व की तरह परिणाम से एक्सेस कर सकते हैं:
उदाहरण
विभाजित सरणियों तक पहुँचें:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
newarr =
np.array_split(arr, 3)
print(newarr[0])
print(newarr[1])
print(newarr[2])
2-डी सरणियों को विभाजित करना
2-डी सरणियों को विभाजित करते समय समान सिंटैक्स का उपयोग करें।
विधि का उपयोग करें array_split()
, उस सरणी में पास करें जिसे आप विभाजित करना चाहते हैं और जितने विभाजन आप करना चाहते हैं।
उदाहरण
2-डी सरणी को तीन 2-डी सरणी में विभाजित करें।
import numpy as np
arr = np.array([[1, 2], [3, 4], [5, 6], [7, 8], [9,
10], [11, 12]])
newarr = np.array_split(arr, 3)
print(newarr)
ऊपर दिया गया उदाहरण तीन 2-डी सरणियाँ देता है।
आइए एक और उदाहरण देखें, इस बार 2-डी सरणी में प्रत्येक तत्व में 3 तत्व होते हैं।
उदाहरण
2-डी सरणी को तीन 2-डी सरणी में विभाजित करें।
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10,
11, 12], [13, 14, 15], [16, 17, 18]])
newarr = np.array_split(arr, 3)
print(newarr)
ऊपर दिया गया उदाहरण तीन 2-डी सरणियाँ देता है।
इसके अलावा, आप निर्दिष्ट कर सकते हैं कि आप किस अक्ष को विभाजित करना चाहते हैं।
नीचे दिया गया उदाहरण तीन 2-डी सरणियों को भी लौटाता है, लेकिन वे पंक्ति (अक्ष = 1) के साथ विभाजित होते हैं।
उदाहरण
2-डी सरणी को पंक्तियों के साथ तीन 2-डी सरणी में विभाजित करें।
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10,
11, 12], [13, 14, 15], [16, 17, 18]])
newarr = np.array_split(arr, 3, axis=1)
print(newarr)
एक वैकल्पिक समाधान के hsplit()
विपरीत उपयोग कर रहा है
hstack()
उदाहरण
hsplit()
2-डी सरणी को पंक्तियों के साथ तीन 2-डी सरणी में विभाजित करने के लिए विधि का उपयोग करें ।
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9],
[10, 11, 12], [13, 14, 15], [16, 17, 18]])
newarr = np.hsplit(arr, 3)
print(newarr)
नोट: और के समान विकल्प vstack()
और
के रूप में
dstack()
उपलब्ध हैं
।vsplit()
dsplit()