Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -21,18 +21,29 @@ st.title("Прогнозирование цены автомобиля")
|
|
| 21 |
inputs = {}
|
| 22 |
|
| 23 |
# Выбор бренда
|
|
|
|
| 24 |
selected_brand = st.selectbox("Выберите бренд авто", unique_brands)
|
| 25 |
|
| 26 |
# Выбор модели в зависимости от бренда
|
| 27 |
-
selected_model = st.selectbox("Выберите модель авто",
|
| 28 |
|
| 29 |
inputs['brand'] = selected_brand
|
| 30 |
inputs['model'] = selected_model
|
| 31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
# Остальные окошки для ввода параметров
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
|
|
|
|
|
|
|
|
|
| 36 |
|
| 37 |
# Кнопка для запуска предсказания
|
| 38 |
if st.button("Предсказать цену"):
|
|
@@ -45,6 +56,7 @@ if st.button("Предсказать цену"):
|
|
| 45 |
# Вывод результатов
|
| 46 |
st.write(f"Прогнозируемая цена авто: {predicted_price} руб.")
|
| 47 |
|
|
|
|
| 48 |
# # Расчет важности фичей с использованием SHAP
|
| 49 |
# explainer = shap.TreeExplainer(final_model)
|
| 50 |
# shap_values = explainer.shap_values(input_data)
|
|
|
|
| 21 |
inputs = {}
|
| 22 |
|
| 23 |
# Выбор бренда
|
| 24 |
+
unique_brands = df['brand'].unique()
|
| 25 |
selected_brand = st.selectbox("Выберите бренд авто", unique_brands)
|
| 26 |
|
| 27 |
# Выбор модели в зависимости от бренда
|
| 28 |
+
selected_model = st.selectbox("Выберите модель авто", df[df['brand'] == selected_brand]['model'].unique())
|
| 29 |
|
| 30 |
inputs['brand'] = selected_brand
|
| 31 |
inputs['model'] = selected_model
|
| 32 |
|
| 33 |
+
# Получаем числовые и категориальные столбцы из вашего DataFrame
|
| 34 |
+
categorical_columns = ['brand', 'model', 'поколение', 'тип продавца', 'состояние',
|
| 35 |
+
'модификация', 'тип двигателя', 'коробка передач', 'привод',
|
| 36 |
+
'комплектация', 'тип кузова', 'цвет', 'авито оценка']
|
| 37 |
+
|
| 38 |
+
numerical_columns = ['год выпуска', 'пробег', 'объем двигателя']
|
| 39 |
+
|
| 40 |
# Остальные окошки для ввода параметров
|
| 41 |
+
for column in df.columns:
|
| 42 |
+
if column not in ['brand', 'model']:
|
| 43 |
+
if column in numerical_columns:
|
| 44 |
+
inputs[column] = st.number_input(f"Введите значение для {column}")
|
| 45 |
+
elif column in categorical_columns:
|
| 46 |
+
inputs[column] = st.selectbox(f"Выберите значение для {column}", df[column].unique())
|
| 47 |
|
| 48 |
# Кнопка для запуска предсказания
|
| 49 |
if st.button("Предсказать цену"):
|
|
|
|
| 56 |
# Вывод результатов
|
| 57 |
st.write(f"Прогнозируемая цена авто: {predicted_price} руб.")
|
| 58 |
|
| 59 |
+
|
| 60 |
# # Расчет важности фичей с использованием SHAP
|
| 61 |
# explainer = shap.TreeExplainer(final_model)
|
| 62 |
# shap_values = explainer.shap_values(input_data)
|