configurando un elemento de matriz con un error de secuencia en scikit learn GradientBoostingClassifier

Aquí está mi código, ¿alguien tiene alguna idea de lo que está mal? El error ocurre cuando lo llamo en fit ,

 import pandas as pd import numpy as np from sklearn.ensemble import (RandomTreesEmbedding, RandomForestClassifier, GradientBoostingClassifier) from sklearn.model_selection import train_test_split from sklearn.feature_extraction.text import CountVectorizer n_estimators = 10 d = {'f1': [1, 2], 'f2': ['foo goo', 'goo zoo'], 'target':[0, 1]} df = pd.DataFrame(data=d) X_train, X_test, y_train, y_test = train_test_split(df, df['target'], test_size=0.1) X_train['f2'] = CountVectorizer().fit_transform(X_train['f2']) X_test['f2'] = CountVectorizer().fit_transform(X_test['f2']) grd = GradientBoostingClassifier(n_estimators=n_estimator, max_depth=10) grd.fit(X_train.values, y_train.values) 

El problema es con CountVectorizer :

 import pandas as pd from sklearn.feature_extraction.text import CountVectorizer d = {'f1': [1, 2], 'f2': ['foo goo', 'goo zoo'], 'target':[0, 1]} df = pd.DataFrame(data=d) df['f2'] = CountVectorizer().fit_transform(df['f2']) 

df.values es:

 array([[1, <2x3 sparse matrix of type '' with 4 stored elements in Compressed Sparse Row format>, 0], [2, <2x3 sparse matrix of type '' with 4 stored elements in Compressed Sparse Row format>, 1]], dtype=object) 

Podemos ver que estamos mezclando matriz dispersa con matriz densa. Puedes transformarlo en denso con: todense() :

 dense_count = CountVectorizer().fit_transform(df['f2']).todense() 

donde dense_count es algo como:

 matrix([[1, 1, 0], [0, 1, 1]], dtype=int64)