[MRG] Sparse Target Dummy Classifier

- [x] Test sparse with all four strategies 
- [x] Fit with sparse target
- [x] Predict sparse target
- [x] ~~Simplify (skip steps) when constant strategy is used~~
- [x] Clean up redundancies of indicies, data, indptr in predict
- [x] Clean up conditional redundancies in fit 
- [x] Random sampling function outputs sparse column
- [x] Test random sampling function ~~with simulation~~
- [x] Uniques/class distribution function for multilabel-multioutput (share with sprs knn)
- [x] Always use dense predict with uniform case, and throw a sparse efficiency warning.
In this case, @arjoly is right :) It just looked odd to me.


On Sat, Aug 9, 2014 at 12:23 AM, hamsal <notifications@github.com> wrote:

> In sklearn/dummy.py:
>
> >
> > -            y.append(classes_[k][ret])
> > +            y = random_choice_csc(n_samples, classes_, class_prob,
> > +                                  self.random_state)
> > +        else:
> > +            if self.strategy == "most_frequent":
> > +                y = np.tile([classes_[k][class_prior_[k].argmax()] for
>
> You and @arjoly <https://github.com/arjoly> have suggested different
> break points, to me this way with breaking after the for make some sense
> because pep8 recommends breaking after 'and' and 'or' when using multiline
> conditionals.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/scikit-learn/scikit-learn/pull/3438/files#r16019749>.
>