CountVectorizer excluindo recursos que aparecem apenas uma vez

Estou usando o pacote sklearn python e estou tendo problemas para criar umCountVectorizer com um dicionário pré-criado, onde oCountVectorizer não exclui recursos que aparecem apenas uma vez ou nem aparecem.

Aqui está o código de exemplo que eu tenho:

train_count_vect, training_matrix, train_labels = setup_data(train_corpus, query, vocabulary=None)
test_count_vect, test_matrix, test_labels = setup_data(test_corpus, query, vocabulary=train_count_vect.get_feature_names())

print(len(train_count_vect.get_feature_names()))
print(len(test_count_vect.get_feature_names()))

len(train_count_vect.get_feature_names()) saídas89967 len(test_count_vect.get_feature_names()) saídas9833

Dentro desetup_data() função, estou apenas inicializandoCountVectorizer. Para dados de treinamento, estou inicializando-os sem um vocabulário predefinido. Então, para dados de teste, estou inicializando o CountVectorizer com o vocabulário que recuperei dos meus dados de treinamento.

Como faço para obter os vocabulários do mesmo tamanho? Acho que o sklearn está excluindo recursos, porque eles aparecem apenas uma vez ou não aparecem no meu corpus de teste. Eu preciso ter o mesmo vocabulário porque, caso contrário, meu classificador terá um comprimento diferente dos meus pontos de dados de teste.

questionAnswers(1)

yourAnswerToTheQuestion