title: Countvectorizer Initialization
body: <p>I recently initialized a countvectorizer as follows:</p>
  
  <pre><code>vectorizer = CountVectorizer( input=u'content',
               encoding=u'utf-8',
               charset=None,
               decode_error=u'strict',
               charset_error=None,
               strip_accents=None,
               lowercase=True,
               preprocessor=None,
               tokenizer=None,
               stop_words=None,
               ngram_range=(1, 1),
               analyzer=u'word',
               max_df=1.0,
               min_df=0,
               token_pattern=u'(?u)\b\w\w+\b',
               max_features=None,
               vocabulary=None,
               binary=False,
               dtype=np.int64)
  </code></pre>
  
  <p>Afterwards, I made the call:</p>
  
  <pre><code>documents = ['1fbe01fe', '1fbe01ff']
  x = vectorizer.fit_transform(documents)
  </code></pre>
  
  <p>which generated an error: </p>
  
  <pre><code>ValueError: empty vocabulary; perhaps the documents only contain stop words
  </code></pre>
  
  <p>However, when I remove the line "token_pattern=u'(?u)\b\w\w+\b'" from the initialization, the same lines do not generate an error. This confused me because as far as I know the default initializations for the parameters in countvectorizer do provide the same 'token_pattern'. Hence if I don't explicitly provide this pattern, won't it just fill in automatically, so the same error should be generated?</p>
  
  <p>Any help would be appreciated!</p>