2016-01-19 DictVectorizer en un peu plus simple#
La classe DictVectorizer n’accepte pas de DataFrame. Le code suivant n’est pas correct :
import pandas
from sklearn.feature_extraction import DictVectorizer
vec = DictVectorizer()
df = pandas.DataFrame( [{"cat": "a"}, {"cat": "b"}] )
vec.fit_transform(df) # plante ici
Et on veut juste transformer le text en catégorie sans avoir besoin de transformer le DataFrame :
<<<
import pandas
from mlinsights.mlmodel import CategoriesToIntegers
df = pandas.DataFrame([{"cat": "a"}, {"cat": "b"}])
trans = CategoriesToIntegers()
trans.fit(df)
newdf = trans.transform(df)
print(newdf)
>>>
cat=a cat=b
0 1.0 NaN
1 NaN 1.0
Voir CategoriesToIntegers <http://www.xavierdupre.fr/app/mlinsights/helpsphinx/mlinsights/mlmodel/categories_to_integers.html>.