Mathieu,
I'm well aware I can pickle it, but I would like to avoid having to write 2
files - otherwise I would just write the classes to a text file.

Lars,
Well, I'm confused now, sklearn.__version__ says "0.14-git". Did I download
the development branch?

Your code works, so you're right, they do take string classifiers. My
problem appears to arise when trying to use the scorers:
If I try:
metrics.classification_report(ytest, ypred)
My error is:
  File
"/usr/local/lib64/python2.7/site-packages/sklearn/metrics/metrics.py", line
2083, in classification_report
    target_names = ['%d' % l for l in labels]
TypeError: %d format: a number is required, not numpy.string_

Can I not use just the scorers with string classes?

On Thu, Jul 18, 2013 at 1:02 AM, <
[email protected]> wrote:

>
>
> ------------------------------
>
> Message: 2
> Date: Thu, 18 Jul 2013 09:01:57 +0200
> From: Lars Buitinck <[email protected]>
> Subject: Re: [Scikit-learn-general] Associating a LabelEncoder with a
>         Classifier?
> To: [email protected]
> Message-ID:
>         <CAKz-xUdB=
> [email protected]>
> Content-Type: text/plain; charset=UTF-8
>
> 2013/7/18 Wifi Gi <[email protected]>:
> > I am using Gaussian Bayes, Bernoulli Bayes, k-Nearest Neighbors, and the
> > Decision Tree. None of them are taking string classes, hence why I was
> using
> > the LabelEncoder. Maybe I have an old/broken version? I have scikit-learn
> > version 0.14.
>
> The Naive Bayes classes support string labels all right:
>
> In [1]: from sklearn.naive_bayes import BernoulliNB
>
> In [2]: clf = BernoulliNB().fit([[1,0,0],[0,1,1]], ["no", "yes"])
>
> In [3]: clf.predict([1,1,1])
> Out[3]:
> array(['yes'],
>       dtype='|S3')
>
> In [4]: from sklearn.naive_bayes import GaussianNB
>
> In [5]: clf = GaussianNB().fit([[1,0,0],[0,1,1]], ["no", "yes"])
>
> In [6]: clf.predict([1,1,1])
> Out[6]:
> array(['yes'],
>       dtype='|S3')
>
> In [7]: clf.classes_
> Out[7]:
> array(['no', 'yes'],
>       dtype='|S3')
>
> And no, 0.14 isn't old, it's not even released yet.
>
> --
> Lars Buitinck
> Scientific programmer, ILPS
> University of Amsterdam
>
>
>
>
> End of Scikit-learn-general Digest, Vol 42, Issue 62
> ****************************************************
>
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
Scikit-learn-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/scikit-learn-general

Reply via email to