2016-11-05 3 views
0

sklearnの新機能です。私はこのコードラベルタイプsklearnが不明

data = pandas.read_csv('titanic.csv') 
data= data[data['Pclass'].notnull() & data['Sex'].notnull() &   data['Age'].notnull() & data['Fare'].notnull()] 
test = data.loc[:,['Pclass','Sex','Age','Fare']] 
target = data.loc[:,['Survived']] 
test = test.replace(to_replace=['male','female'],value=[1,0]) 
clf=DecisionTreeClassifier(random_state=241) 
clf.fit(target,test) 

を行うしようとしていると私は、このエラー

ValueError: Unknown label type: array([[ 22. , 3. , 7.25 ,  1. ], 
    [ 38. , 1. , 71.2833, 0. ], 
    [ 26. , 3. , 7.925 , 0. ], 
    ..., 
    [ 19. , 1. , 30. , 0. ], 
    [ 26. , 1. , 30. , 1. ], 
    [ 32. , 3. , 7.75 , 1. ]]) 

問題は何であるのを見ましたか?

答えて

1

現在、データフレームを提供していますが、fitメソッドへのトレーニング入力としてnumpy配列表現ではありません。代わりに:

clf.fit(X=test.values, y=target.values) 
# Even .asmatrix() works but is not generally recommended 
+3

お返事ありがとうございます! –

+0

as_matrixが推奨されないのはなぜですか? – ruselli

+2

私の質問、タンクhttps://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.as_matrix.htmlへの回答が見つかりました。 – ruselli