import pandas as pd from sklearn.tree import DecisionTreeClassifier from sklearn.metrics import accuracy_score from sklearn.model_selection import train_test_split # Загрузка данных data = pd.read_csv('ufo_sighting_data.csv') # Выбор признаков features = [ 'length_of_encounter_seconds', 'latitude', 'longitude'] target = 'UFO_shape' # Удаление строк содержащих NaN data.dropna(inplace=True) # Удаление столбцов содержащих NaN data.dropna(axis='columns', inplace=True) # Разделение данных на обучающую и тестовую выборки train_data, test_data, train_labels, test_labels = train_test_split(data[features], data[target], test_size=0.2, random_state=42) # Создание и обучение модели дерева решений model = DecisionTreeClassifier() model.fit(train_data, train_labels) # Прогнозирование на тестовой выборке predictions = model.predict(test_data) # Оценка точности модели accuracy = accuracy_score(test_labels, predictions) print('Точность модели на тестовой выборке:', accuracy) # Прогнозирование на оставшемся проценте данных remaining_data = data.drop(test_data.index) remaining_predictions = model.predict(remaining_data[features]) # Вывод результатов print('Прогнозы по оставшемуся проценту данных:', remaining_predictions) # Сделайте необходимые выводы