आइए एक परिदृश्य पर विचार करें जहां आपके पास एक सूची है जो सूचियों से इसके तत्वों के रूप में बनी है। हम आंतरिक सूचियों के विभिन्न पदों पर एक वर्ण की बारंबारता ज्ञात करने में रुचि रखते हैं। नीचे दिया गया उदाहरण आवश्यकता को स्पष्ट करेगा।
नीचे दी गई सूचियों की सूची पर विचार करें।
listA = [['a', 'a', 'b'], ['a', 'c', 'b'], ['c', 'a', 'b'], ['c', 'a', 'a']]
अबोब सूची में हमारे पास ऐसे तत्व हैं जो 3 तत्वों वाली सूचियां हैं। अगर मुझे लगता है कि पहली आंतरिक सूची शीर्षक में 0,1,2 पदों पर ए, ए, बी है। इसी तरह तीसरी सूची के लिए यह 0,1,2 पर c,a,b है। सभी आंतरिक सूचियों को ध्यान में रखते हुए हम कह सकते हैं कि 0 स्थिति पर आवृत्ति a 2 है, और स्थिति 1 पर 3 है और स्थिति 2 पर यह 1 है।
नीचे दिए गए कार्यक्रमों का उद्देश्य सूचियों की सूची में किसी भी तत्व के लिए ऐसे मूल्यों को खोजना है।
उइसंग पांडा
डेटाफ़्रेम बनाकर डेटा हेरफेर के लिए पांडा लाइब्रेरी का व्यापक रूप से उपयोग किया जाता है। इसलिए हम एक डेटाफ़्रेम बनाते हैं और इसके माध्यम से लूप बनाते हैं, जहाँ यह पता लगाने के लिए कि डेटा फ़्रेम में प्रत्येक स्थिति में मान 'a' मौजूद है या नहीं।
उदाहरण
import pandas as pd # Given list of lists listA = [['a', 'a', 'b'], ['a', 'c', 'b'], ['c', 'a', 'b'], ['c', 'a', 'a']] # using pandas df = pd.DataFrame(listA) res = df.where(df == 'a', 0).where(df != 'a', 1) # Result print("Occurrence of 'a' at 0,1 and 2 position\n", res.sum())
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
Occurrence of 'a' at 0,1 and 2 position 0 2.0 1 3.0 2 1.0
ज़िप के साथ
हम सूची में सबलिस्ट में प्रत्येक स्थिति के माध्यम से लूप के लिए लूप का उपयोग कर सकते हैं और सूचियों की पूरी सूची में ज़िप फ़ंक्शन लागू कर सकते हैं।
उदाहरण
# Given list of lists listA = [['a', 'a', 'b'], ['a', 'c', 'b'], ['c', 'a', 'b'], ['c', 'a', 'a']] res = [elem.count('a') for elem in zip(*listA)] # Result print("Occurrence of 'a' at 0,1 and 2 position\n", res)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
Occurrence of 'a' at 0,1 and 2 position [2, 3, 1]