I don't understand the need for separate `train` and `partial_train` parameters (and their format would be much clearer if this function had the standard docstring layout rather than a large paragraph of text) to indicate the training slice. Why is `train` needed in the partial case? Can you not just have a parameter `fit_method='fit'`?