warleagle commited on
Commit
d5175dd
·
verified ·
1 Parent(s): 0ff28c9

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -6
app.py CHANGED
@@ -19,7 +19,7 @@ with open("embeddings.npy", 'rb') as f:
19
 
20
  def get_recommend(user_input,
21
  top_k_spec = 3,
22
- top_k_services = 5,
23
  treshold = 0.8):
24
 
25
  cols_for_top_k = ["Специальность врача",
@@ -41,15 +41,33 @@ def get_recommend(user_input,
41
  for col in cols_for_top_k:
42
  result[col] = sorted_df[col].value_counts()[:top_k_spec].index.tolist()
43
  result['Жалобы'] = sorted_df['Жалобы'].value_counts()[:top_k_services].index.tolist()
44
- result['Диагноз МКБ'] = sorted_df['Диагноз МКБ'].value_counts()[:top_k_services].index.tolist()
45
 
46
- lst = []
 
 
47
  categories = ['Инструментальная диагностика', 'Лабораторная диагностика']
 
 
 
 
 
 
 
 
 
 
 
 
 
48
  for category in categories:
49
- list_top_k_services = sorted_df[sorted_df['service_name_category'] == category]['Рекомендации по обследованию'].value_counts()[:top_k_services].index.tolist()
50
- lst.append({category:list_top_k_services})
 
 
 
51
 
52
- result['Рекомендации по обследованию'] = lst
 
53
 
54
  return result
55
  #%%
 
19
 
20
  def get_recommend(user_input,
21
  top_k_spec = 3,
22
+ top_k_services = 10,
23
  treshold = 0.8):
24
 
25
  cols_for_top_k = ["Специальность врача",
 
41
  for col in cols_for_top_k:
42
  result[col] = sorted_df[col].value_counts()[:top_k_spec].index.tolist()
43
  result['Жалобы'] = sorted_df['Жалобы'].value_counts()[:top_k_services].index.tolist()
 
44
 
45
+ top_k_mkb = sorted_df['Диагноз МКБ'].value_counts()[:top_k_services].index.tolist()
46
+ result['Диагноз МКБ'] = top_k_mkb
47
+
48
  categories = ['Инструментальная диагностика', 'Лабораторная диагностика']
49
+
50
+ top_k_services_lst_by_mkb = []
51
+ for mkb in top_k_mkb:
52
+ temp_lst = []
53
+ slice_df = sorted_df[sorted_df['Диагноз МКБ'] == mkb]
54
+ for category in categories:
55
+ top_k_services_in_cat_mkb = slice_df[slice_df['service_name_category'] == category]['Рекомендации по обследованию'].value_counts()[:top_k_services].index.tolist()
56
+ temp_lst.append({category:top_k_services_in_cat_mkb})
57
+
58
+ top_k_services_lst_by_mkb.append({mkb:temp_lst})
59
+
60
+ top_k_services_lst = []
61
+
62
  for category in categories:
63
+ slice_df = sorted_df[sorted_df['service_name_category'] == category]
64
+ list_top_k_services = slice_df['Рекомендации по обследованию'].value_counts()[:top_k_services].index.tolist()
65
+ top_k_services_lst.append({category:list_top_k_services})
66
+
67
+
68
 
69
+ result['Рекомендации по обследованию'] = top_k_services_lst
70
+ result['Рекомендации по обследованию по МКБ'] = top_k_services_lst_by_mkb
71
 
72
  return result
73
  #%%