डेटा एनालिटिक्स जटिल परिदृश्य प्रस्तुत करता है जहां डेटा को इधर-उधर घुमाने के लिए रैंगल करने की आवश्यकता होती है। इस संदर्भ में, आइए देखें कि हम एक बड़ी सूची कैसे ले सकते हैं और इसे आवश्यकता के अनुसार कई सबलिस्ट में विभाजित कर सकते हैं। इस लेख में हम इसे प्राप्त करने के दृष्टिकोणों का पता लगाएंगे।
zip और फॉर लूप के साथ
इस दृष्टिकोण में हम सूची स्लाइसिंग का उपयोग उस बिंदु से तत्व प्राप्त करने के लिए करते हैं जहां विभाजन होना है। फिर हम zip और फॉर लूप का उपयोग करके फॉर लूप का उपयोग करके सबलिस्ट बनाते हैं।
उदाहरण
Alist = ['Mon', 'Tue', 'Wed', 6, 7, 'Thu', 'Fri', 11, 21, 4]
# विभाजन के इंडेक्स
split_points = [2, 5, 8]
# दी गई सूची
print("दी गई सूची : " + str(Alist))
# विभाजन बिंदु
print("विभाजन के बिंदु : ", split_points)
# विभाजन करें
split_list = [Alist[i: j] for i, j in zip([0] + split_points, split_points + [None])]
# परिणाम प्रिंट करना
print("विभाजित सूचियाँ हैं : ", split_list)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है -
दी गई सूची : ['Mon', 'Tue', 'Wed', 6, 7, 'Thu', 'Fri', 11, 21, 4] विभाजन के बिंदु : [2, 5, 8] विभाजित सूचियाँ हैं : [['Mon', 'Tue'], ['Wed', 6, 7], ['Thu', 'Fri', 11], [21, 4]]
chain और zip का उपयोग
chain फंक्शन एक इटरेटर बनाता है जो पहले इटरेबल से तत्व लौटाता है जब तक यह समाप्त नहीं हो जाता। इसलिए यह उन बिंदुओं को चिह्नित करता है जहां विभाजन होता है। फिर हम zip फंक्शन का उपयोग विभाजन के परिणाम को सबलिस्ट में पैकेज करने के लिए करते हैं।
उदाहरण
from itertools import chain
Alist = ['Mon', 'Tue', 'Wed', 6, 7, 'Thu', 'Fri', 11, 21, 4]
# विभाजन के इंडेक्स
split_points = [2, 5, 8]
# दी गई सूची
print("दी गई सूची : ", str(Alist))
# विभाजन बिंदु
print("विभाजन के बिंदु : ", split_points)
# कस्टम सूची विभाजन करने के लिए
sublists = zip(chain([0], split_points), chain(split_points, [None]))
split_list = list(Alist[i:j] for i, j in sublists)
# परिणाम प्रिंट करना
print("विभाजित सूचियाँ हैं : ", split_list)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है -
दी गई सूची : ['Mon', 'Tue', 'Wed', 6, 7, 'Thu', 'Fri', 11, 21, 4] विभाजन के बिंदु : [2, 5, 8] विभाजित सूचियाँ हैं : [['Mon', 'Tue'], ['Wed', 6, 7], ['Thu', 'Fri', 11], [21, 4]]