Mykes commited on
Commit
b0f18fe
·
verified ·
1 Parent(s): 8b2c9a3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +48 -21
app.py CHANGED
@@ -53,6 +53,7 @@ st.markdown("""
53
  .metric-card {
54
  margin: 1rem 0;
55
  padding: 0.5rem;
 
56
  }
57
  /* Колонки: одна под другой */
58
  .stColumns > div {
@@ -290,6 +291,32 @@ with st.sidebar:
290
  }
291
  </style>
292
  """, unsafe_allow_html=True)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
293
  st.header('Ввод данных')
294
 
295
  # Создаем вкладки для разных типов параметров
@@ -358,32 +385,32 @@ with st.sidebar:
358
  help=f"Типичное: {categorical_defaults[feature]}"
359
  )
360
 
361
- # Кнопка классификации
362
- if st.button('Выполнить классификацию', use_container_width=True):
363
- with st.spinner('Выполняется классификация...'):
364
- # Преобразование входных данных
365
- input_df = pd.DataFrame([input_data])
366
 
367
- # One-hot encoding для категориальных признаков
368
- input_df_encoded = pd.get_dummies(input_df, columns=categorical_features)
369
 
370
- # Масштабирование числовых признаков
371
- if numeric_features:
372
- input_df_encoded[numeric_features] = scaler.transform(input_df_encoded[numeric_features])
373
 
374
- # Убедитесь, что все необходимые столбцы присутствуют
375
- for col in feature_list:
376
- if col not in input_df_encoded.columns:
377
- input_df_encoded[col] = 0
378
 
379
- X_pred = input_df_encoded[feature_list]
380
- prediction = model.predict(X_pred)
381
- probabilities = model.predict_proba(X_pred)[0]
382
 
383
- # Сохраняем результаты в session state
384
- st.session_state['prediction'] = prediction[0]
385
- st.session_state['probabilities'] = probabilities
386
- st.session_state['input_data'] = input_df
387
 
388
  # Отображение результатов в основной части
389
  if 'prediction' in st.session_state:
 
53
  .metric-card {
54
  margin: 1rem 0;
55
  padding: 0.5rem;
56
+ background-color: #f0f2f6;
57
  }
58
  /* Колонки: одна под другой */
59
  .stColumns > div {
 
291
  }
292
  </style>
293
  """, unsafe_allow_html=True)
294
+ # Кнопка классификации
295
+ if st.button('Выполнить классификацию', use_container_width=True):
296
+ with st.spinner('Выполняется классификация...'):
297
+ # Преобразование входных данных
298
+ input_df = pd.DataFrame([input_data])
299
+
300
+ # One-hot encoding для категориальных признаков
301
+ input_df_encoded = pd.get_dummies(input_df, columns=categorical_features)
302
+
303
+ # Масштабирование числовых признаков
304
+ if numeric_features:
305
+ input_df_encoded[numeric_features] = scaler.transform(input_df_encoded[numeric_features])
306
+
307
+ # Убедитесь, что все необходимые столбцы присутствуют
308
+ for col in feature_list:
309
+ if col not in input_df_encoded.columns:
310
+ input_df_encoded[col] = 0
311
+
312
+ X_pred = input_df_encoded[feature_list]
313
+ prediction = model.predict(X_pred)
314
+ probabilities = model.predict_proba(X_pred)[0]
315
+
316
+ # Сохраняем результаты в session state
317
+ st.session_state['prediction'] = prediction[0]
318
+ st.session_state['probabilities'] = probabilities
319
+ st.session_state['input_data'] = input_df
320
  st.header('Ввод данных')
321
 
322
  # Создаем вкладки для разных типов параметров
 
385
  help=f"Типичное: {categorical_defaults[feature]}"
386
  )
387
 
388
+ # # Кнопка классификации
389
+ # if st.button('Выполнить классификацию', use_container_width=True):
390
+ # with st.spinner('Выполняется классификация...'):
391
+ # # Преобразование входных данных
392
+ # input_df = pd.DataFrame([input_data])
393
 
394
+ # # One-hot encoding для категориальных признаков
395
+ # input_df_encoded = pd.get_dummies(input_df, columns=categorical_features)
396
 
397
+ # # Масштабирование числовых признаков
398
+ # if numeric_features:
399
+ # input_df_encoded[numeric_features] = scaler.transform(input_df_encoded[numeric_features])
400
 
401
+ # # Убедитесь, что все необходимые столбцы присутствуют
402
+ # for col in feature_list:
403
+ # if col not in input_df_encoded.columns:
404
+ # input_df_encoded[col] = 0
405
 
406
+ # X_pred = input_df_encoded[feature_list]
407
+ # prediction = model.predict(X_pred)
408
+ # probabilities = model.predict_proba(X_pred)[0]
409
 
410
+ # # Сохраняем результаты в session state
411
+ # st.session_state['prediction'] = prediction[0]
412
+ # st.session_state['probabilities'] = probabilities
413
+ # st.session_state['input_data'] = input_df
414
 
415
  # Отображение результатов в основной части
416
  if 'prediction' in st.session_state: