यदि आप जो करने की कोशिश कर रहे हैं वह केवल पंक्तियों का चयन करना है जहां कोई भी कॉलम स्थिति को पूरा करता है, तो आप DataFrame.any()
का उपयोग axis=1
(पंक्ति-वार समूह करने के लिए) के साथ कर सकते हैं। उदाहरण -
In [3]: df
Out[3]:
A B C
0 1 2 3
1 3 4 5
2 3 1 4
In [6]: df[(df <= 2).any(axis=1)]
Out[6]:
A B C
0 1 2 3
2 3 1 4
वैकल्पिक रूप से, अगर आप पंक्तियों जहां सभी स्तंभों शर्त को पूरा छानने के लिए कोशिश कर रहे हैं, .any()
की .all()
inplace का उपयोग करें। all
का उदाहरण -
In [8]: df = pd.DataFrame([[1,2,3],[3,4,5],[3,1,4],[1,2,1]],columns=['A','B','C'])
In [9]: df
Out[9]:
A B C
0 1 2 3
1 3 4 5
2 3 1 4
3 1 2 1
In [11]: df[(df <= 2).all(axis=1)]
Out[11]:
A B C
3 1 2 1
स्रोत
2015-09-23 05:53:30
आप किस फ़िल्टर की स्थिति को लागू करना चाहते हैं, उदाहरण 'डीएफ' क्या है और आप आउटपुट के रूप में क्या उम्मीद कर रहे हैं? पूरे डीएफ के लिए कोशिश करते समय, निश्चित रूप से कुछ पंक्तियां होंगी जहां केवल कुछ कॉलम ही स्थिति (और इसके विपरीत) को पूरा करते हैं, इसलिए उन स्थानों के लिए जहां स्थिति पूरी नहीं होती है, इसे 'NaN' के साथ प्रतिस्थापित किया जाता है। –
क्या आप पंक्तियों का चयन करने की कोशिश कर रहे हैं जहां कोई भी कॉलम शर्त को पूरा करता है? या जहां सभी कॉलम इस शर्त को पूरा करते हैं? –
@AandandSumar मैं उन पंक्तियों का चयन करना चाहता हूं जहां कोई कॉलम शर्त को पूरा करता है। पूछने के लिए धन्यवाद। – Rex