IIS_2023_1/verina_daria_lab_3/laba3_titanic.py

32 lines
1.2 KiB
Python
Raw Permalink Normal View History

2023-11-23 00:35:34 +04:00
import pandas as pd
from sklearn.tree import DecisionTreeClassifier
# Загрузка данных
data = pd.read_csv('titanic_data.csv', index_col='PassengerId')
# Фильтрация данных
data = data.dropna(subset=['Ticket', 'Fare', 'Cabin', 'Survived'])
# Преобразование категориальных признаков в числовые
data['Ticket'], _ = pd.factorize(data['Ticket'])
data['Cabin'], _ = pd.factorize(data['Cabin'])
# Выделение признаков и целевой переменной
X = data[['Ticket', 'Fare', 'Cabin']]
y = data['Survived']
# Создание и обучение дерева решений
clf = DecisionTreeClassifier(random_state=241)
clf.fit(X, y)
# Получение и распечатка важностей признаков
importances = clf.feature_importances_
# Связываем важности с именами признаков
feature_importance = dict(zip(X.columns, importances))
# Выводим важности признаков
print("Важности признаков:")
for feature, importance in feature_importance.items():
print(f"{feature}: {importance}")