Значення за замовчуванням для min_df та max_df - 1 та 1,0 відповідно. Ці за замовчуванням насправді взагалі нічого не роблять.
Враховуючи це, я вважаю, що прийнята в даний час відповідь @Ffisegydd не зовсім правильна.
Наприклад, запустіть це, використовуючи значення за замовчуванням, щоб побачити, що коли min_df=1
і max_df=1.0
тоді
1) використовуються всі маркери, які є хоча б в одному документі (наприклад, усі маркери!)
2) використовуються всі маркери, які є у всіх документах (ми тестуватимемо з одним кандидатом: скрізь).
cv = CountVectorizer(min_df=1, max_df=1.0, lowercase=True)
corpus = ['one two three everywhere', 'four five six everywhere', 'seven eight nine everywhere']
X = cv.fit_transform(corpus)
vocab = cv.get_feature_names()
print vocab
print X.toarray()
print cv.stop_words_
Ми отримуємо:
[u'eight', u'everywhere', u'five', u'four', u'nine', u'one', u'seven', u'six', u'three', u'two']
[[0 1 0 0 0 1 0 0 1 1]
[0 1 1 1 0 0 0 1 0 0]
[1 1 0 0 1 0 1 0 0 0]]
set([])
Всі жетони зберігаються. Стоп-слів немає.
Подальше базікання з аргументами прояснить інші конфігурації.
Для розваги та розуміння я б також рекомендував пограти stop_words = 'english'
і побачити, що, як правило, всі слова, крім "сім", видалено! У тому числі "скрізь".