2024-05-12 21:10:52 +02:00
|
|
|
from sklearn.model_selection import train_test_split
|
|
|
|
from sklearn.tree import DecisionTreeClassifier, plot_tree
|
|
|
|
import matplotlib.pyplot as plt
|
|
|
|
import pandas as pd
|
|
|
|
|
|
|
|
|
|
|
|
data = pd.read_csv("dane.csv")
|
|
|
|
|
|
|
|
|
|
|
|
# Wczytanie danych
|
|
|
|
X = data.drop(columns=["podlac"])
|
|
|
|
X = pd.get_dummies(X)
|
|
|
|
y = data["podlac"]
|
|
|
|
# Podział danych na zbiór treningowy i testowy
|
|
|
|
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
|
|
|
|
|
|
|
|
# Inicjalizacja i dopasowanie modelu drzewa decyzyjnego
|
|
|
|
clf = DecisionTreeClassifier()
|
|
|
|
clf.fit(X_train, y_train)
|
|
|
|
|
|
|
|
|
|
|
|
accuracy = clf.score(X_test, y_test)
|
|
|
|
print("Accuracy:", accuracy)
|
|
|
|
|
|
|
|
# Wyświetlenie drzewa decyzyjnego
|
|
|
|
plt.figure(figsize=(8, 5))
|
|
|
|
plot_tree(clf, feature_names=X.columns, class_names=["Nie podlać", "Podlać"], filled=True)
|
|
|
|
plt.show()
|