文字列データを使用して DecisionTreeClassifier をトレーニングできますか?
String データを使用しようとすると、ValueError: could not convert string to float が発生します
clf = DecisionTreeClassifier()
clf.fit([['asdf', '1'], ['asdf', '0']], ['2', '3'])
文字列データを使用して DecisionTreeClassifier をトレーニングできますか?
String データを使用しようとすると、ValueError: could not convert string to float が発生します
clf = DecisionTreeClassifier()
clf.fit([['asdf', '1'], ['asdf', '0']], ['2', '3'])
文字列値の特徴をNumPy配列の数値の特徴に変換する必要があります。DictVectorizer
あなたのためにそれをします。
samples = [['asdf', '1'], ['asdf', '0']]
# turn the samples into dicts
samples = [dict(enumerate(sample)) for sample in samples]
# turn list of dicts into a numpy array
vect = DictVectorizer(sparse=False)
X = vect.fit_transform(samples)
clf = DecisionTreeClassifier()
clf.fit(X, ['2', '3'])
vect.transform
それらをdictに変換した後、テストサンプルで使用することを忘れないでください。