Я хочу протестировать определенную строку из своего набора данных и увидеть результат, но не знаю, как это сделать. Например, я хочу проверить строку номер 100, а затем проверить точность.
feature_cols = [0,1,2,3,4,5]
X = df[feature_cols] # Features
y = df[6] # Target variable
# Split dataset into training set and test set
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=1,
random_state=1)
#Create Decision Tree classifer object
clf = DecisionTreeClassifier(max_depth=5)
#Train Decision Tree Classifer
clf = clf.fit(X_train,y_train)
#Predict the response for test dataset
y_pred = clf.predict(X_test)
print("Accuracy:", metrics.accuracy_score(y_test, y_pred))
Например, чтобы проверить последнюю строку в наборе данных и все остальные строки для обучения.
В этом случае не используйте train_test_split для разделения данных.
И как сделать? Есть ли у вас какие-либо идеи.
Я рекомендую исключить строку, которую вы хотите протестировать, из набора данных.
test_row=100
train_idx=np.arange(X.shape[0])!=test_row
test_idx=np.arange(X.shape[0])==test_row
X_train=X[train_idx]
y_train=y[train_idx]
X_test=X[test_idx]
y_test=y[test_idx]
Теперь X_test будет содержать одну строку. Однако точность теперь будет либо 0, либо 1, поскольку вы тестируете только один образец.
Знаете ли вы индекс строки, которую хотите протестировать?