कॉलम मानों के आधार पर पंक्तियों को फ़िल्टर करने के लिए, हम क्वेरी () फ़ंक्शन का उपयोग कर सकते हैं। फ़ंक्शन में, वह शर्त सेट करें जिसके द्वारा आप रिकॉर्ड्स को फ़िल्टर करना चाहते हैं। सबसे पहले, आवश्यक पुस्तकालय आयात करें -
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'])
5 के बराबर "रैंक" वाले रिकॉर्ड्स को फ़िल्टर करने के लिए query() का उपयोग करें -
dataFrame.query("Rank == 5"))
उदाहरण
पूरा कोड निम्नलिखित है -
import pandas as pd # data in the form of list of team rankings Team = [['India', 1, 100],['Australia', 2, 85],['England', 3, 75],['New Zealand', 4 , 65],['South Africa', 5, 50],['Bangladesh', 6, 40]] # Creating a DataFrame and add columns dataFrame = pd.DataFrame(Team, columns=['Country', 'Rank', 'Points']) print"DataFrame...\n",dataFrame # using query to filter rows 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 # data in the form of list of team rankings Team = [['India', 1, 100],['Australia', 2, 85],['England', 3, 75],['New Zealand', 4 , 65],['South Africa', 5, 50],['Bangladesh', 6, 40]] # Creating a DataFrame and add columns dataFrame = pd.DataFrame(Team, columns=['Country', 'Rank', 'Points']) print"DataFrame...\n",dataFrame # using query to filter rows 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