I was trying to better understand how the CountVectorizer class works.
I'm quite confused about the differences between the preprocessor, tokenizer and analyzer parameters.
In the documentation it is stated that all of this parameters can be callable, my guess is that you can produce your own function to customize the various processes.
That said, I'm not sure why they are mutually exclusive (i.e. preprocessor can be callable if and only if analyzer is None, similarly tokenizer can be a callable if and only if analyzer='word' - from the doc).
I'd much appreciate if someone could elucidate over the different usage of the parameters and what the relative step is supposed to accomplish.
Thanks in advance, let me know if the question is not problem specific enough for stackoverflow!