title: What is the right way to use NLTK stopwords?
body: <p>I'm working on a bag of words project and I want to remove stop words from the NLTK list of stop words. At moment, I'm doing this:</p>
  
  <p><code>words.difference_update(set(stopwords.words("english")))</code></p>
  
  <p>(words is a set containing all the words in the corpus)</p>
  
  <p>However, when I look at the contents of <code>stopwords.words("english")</code> I see words like: "couldn" and "doesn". I assume these are word prefixes for words like "couldn't" and "doesn't" and maybe other words.</p>
  
  <p>So, I assume there is a way to check to see if a word is in the stop words list that is more sophisticated than pure string equality but I can't figure out what it is. Any help is appreciated.</p>