python - पांडा में डेटाफ्रेम पर "इसमें शामिल नहीं है" की खोज करें




pandas contains (2)

मैंने कुछ खोज की है और df["col"].str.contains(word) को फ़िल्टर करने का तरीका नहीं समझ सकता है df["col"].str.contains(word) , हालांकि मैं सोच रहा हूं कि रिवर्स करने का कोई तरीका है: डेटाफ्रेम फ़िल्टर करें उस सेट की तारीफ से। उदाहरण: के प्रभाव के लिए !(df["col"].str.contains(word))

क्या यह DataFrame विधि के माध्यम से किया जा सकता है?


आप इनवर्टर (~) ऑपरेटर का उपयोग कर सकते हैं (जो बुलियन डेटा के लिए नहीं है):

~df["col"].str.contains(word)

एक नियमित अभिव्यक्ति भी स्वीकार करता है ...


एंडी द्वारा अनुशंसित आदेश का उपयोग करने से पहले मुझे नल मूल्यों से छुटकारा पाना पड़ा। एक उदाहरण:

df = pd.DataFrame(index = [0, 1, 2], columns=['first', 'second', 'third'])
df.ix[:, 'first'] = 'myword'
df.ix[0, 'second'] = 'myword'
df.ix[2, 'second'] = 'myword'
df.ix[1, 'third'] = 'myword'
df

    first   second  third
0   myword  myword   NaN
1   myword  NaN      myword 
2   myword  myword   NaN

अब आदेश चला रहा है:

~df["second"].str.contains(word)

मुझे निम्नलिखित त्रुटि मिलती है:

TypeError: bad operand type for unary ~: 'float'

मैंने पहले ड्रॉपना () या fillna () का उपयोग करके नल मानों से छुटकारा पा लिया और बिना किसी समस्या के कमांड को पुनः प्रयास किया।





contains