- import pandas as pd
- from sklearn.tree import DecisionTreeClassifier
- data = pd.read_csv('/datasets/heart.csv')
- features = data.drop(['target'], axis=1)
- target = data['target']
- scores = []
- sample_size = int(len(data)/3)
- for i in range(0, len(data), sample_size):
- valid_indexes = data.iloc[i: i + sample_size].index
- train_indexes = (data.iloc[:i] + data.iloc[i + sample_size:]).index
- features_train = features.iloc[train_indexes]
- features_valid = features.iloc[valid_indexes]
- target_train = target.iloc[train_indexes]
- target_valid = target.iloc[valid_indexes]
- model = DecisionTreeClassifier(random_state=0)
- model = model.fit(features_train, target_train)
- score = model.score(features_valid,target_valid)
- scores.append(score)
- final_score = sum(scores) / len(scores)
- print('Средняя оценка качества модели:', final_score)