Я пытаюсь понять machine learning
, я взял DecisionTree
из sklearn
как первый algo
, чтобы попытаться понять.
X dataframe head:
d_t_375 190dt375_std190MA
0 0.224533 0.143279
1 0.542533 0.095203
2 -0.238400 0.221700
3 0.167467 0.143120
4 -0.138533 0.076678
Y dataframe head:
Entry buyorsell pl
0 Y B -0.224533
1 Y B -0.350000
2 Y S 0.950000
3 Y B -0.167467
4 Y S 1.300000
import pandas as pd
import numpy as np
import os
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
X_train,X_test,y_train,y_test= train_test_split(X, y, test_size=0.3)
model = DecisionTreeClassifier()
model.fit(X_train,y_train)
Я получаю ошибку
В model.fit(X_train,y_train)
Traceback (последний последний вызов):
Файл "site-packages / sklearn / tree / tree.py", строка 801, вписывается
X_idx_sorted = X_idx_sorted)
Файл "site-packages / sklearn / tree / tree.py", строка 140, в форме
check_classification_targets (у)
Файл "site-packages / sklearn / utils / multiclass.py", строка 168, в> check_classification_targets
y_type = type_of_target (y)
Файл "site-packages / sklearn / utils / multiclass.py", строка 249, в> type_of_target
if is_multilabel (y):
Файл "/site-packages/sklearn/utils/multiclass.py", строка 151, в> is_multilabel
label = np.unique (y)
Файл "site-packages / numpy / lib / arraysetops.py", строка 223, в уникальном
return _unique1d (ar, return_index, return_inverse, return_counts)
Файл "site-packages / numpy / lib / arraysetops.py", строка 283, в _unique1d
ar.sort ()
Ошибка типа: <<не поддерживается между экземплярами 'float' и 'str' </p>
Может кто-нибудь сказать мне, что я здесь не так делаю?