Как читать нечисловые данные при классификации SVM?

Я хочу реализовать простую SVM ядра с помощью Scikit-Learn. Вот код, который я написал.

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

# Assign column names to the dataset
colnames = ['Timestamp', 'ID', 'DLC', 'D0', 'D1', 'D2', 'D3', 'D4', 'D5', 'D6', 'D7', 'Class']

# Read dataset to pandas dataframe
data = pd.read_csv("dos-attack.csv", names=colnames)

X = data.drop('Class', axis=1)
y = data['Class']

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.20)

from sklearn.svm import SVC
svclassifier = SVC(kernel='poly', degree=8)
svclassifier.fit(X_train, y_train)

y_pred = svclassifier.predict(X_test)

from sklearn.metrics import classification_report, confusion_matrix
print(confusion_matrix(y_test, y_pred))
print(classification_report(y_test, y_pred))

Формат набора данных приведен ниже.

Результат ошибки отображается как:

Буду благодарен за вашу помощь.

0 ответов

Другие вопросы по тегам