कॉलम मानों के आधार पर पंक्तियों को फ़िल्टर करने के लिए, हम query() फंक्शन का उपयोग कर सकते हैं। फंक्शन में, उस कंडीशन को सेट करें जिसके माध्यम से आप रिकॉर्ड फ़िल्टर करना चाहते हैं। सबसे पहले आवश्यक लाइब्रेरी इम्पोर्ट करें –
import pandas as pd
निम्न हमारे टीम रिकॉर्ड के साथ डेटा है –
Team = [['India', 1, 100],['Australia', 2, 85],['England', 3, 75],['New Zealand', 4, 65],['South Africa', 5, 50],['Bangladesh', 6, 40]]
उपरोक्त से डेटाफ्रेम बनाएं और कॉलम जोड़ें –
dataFrame = pd.DataFrame(Team, columns=['Country', 'Rank', 'Points'])
query() का उपयोग करके "Rank" 5 के बराबर वाले रिकॉर्ड फ़िल्टर करें –
dataFrame.query("Rank == 5")
उदाहरण
निम्न पूर्ण कोड है –
import pandas as pd
# टीम रैंकिंग के रूप में डेटा की सूची
Team = [['India', 1, 100],['Australia', 2, 85],['England', 3, 75],['New Zealand', 4, 65],['South Africa', 5, 50],['Bangladesh', 6, 40]]
# डेटाफ्रेम बनाएं और कॉलम जोड़ें
dataFrame = pd.DataFrame(Team, columns=['Country', 'Rank', 'Points'])
print "DataFrame...\n", dataFrame
# query का उपयोग करके पंक्तियों को फ़िल्टर करें
print "\nFetch Team with Rank 5..\n", dataFrame.query("Rank == 5")
आउटपुट
यह निम्न आउटपुट उत्पन्न करेगा –
DataFrame... Country Rank Points 0 India 1 100 1 Australia 2 85 2 England 3 75 3 New Zealand 4 65 4 South Africa 5 50 5 Bangladesh 6 40 Fetch Team with Rank 5.. Country Rank Points 4 South Africa 5 50
उदाहरण
आइए एक और उदाहरण देखें। यहां, पंक्तियों को फ़िल्टर करने के लिए एक अलग कंडीशन है –
import pandas as pd
# टीम रैंकिंग के रूप में डेटा की सूची
Team = [['India', 1, 100],['Australia', 2, 85],['England', 3, 75],['New Zealand', 4, 65],['South Africa', 5, 50],['Bangladesh', 6, 40]]
# डेटाफ्रेम बनाएं और कॉलम जोड़ें
dataFrame = pd.DataFrame(Team, columns=['Country', 'Rank', 'Points'])
print "DataFrame...\n", dataFrame
# query का उपयोग करके पंक्तियों को फ़िल्टर करें
print "\nFetch Team with points above 70 and Rank less than 3..\n"
print(dataFrame.query("Points > 70 and Rank < 3"))
आउटपुट
यह निम्न आउटपुट उत्पन्न करेगा –
DataFrame... Country Rank Points 0 India 1 100 1 Australia 2 85 2 England 3 75 3 New Zealand 4 65 4 South Africa 5 50 5 Bangladesh 6 40 Fetch Team with points above 70 and Rank less than 3.. Country Rank Points 0 India 1 100 1 Australia 2 85