deppfellow commited on
Commit
99c7f3b
·
1 Parent(s): 9cb4620

Changing data from 2k titles to 26k titles. Workaround for ease and cbf

Browse files
app.py CHANGED
@@ -5,13 +5,20 @@ from easeBased_model import *
5
  from contentBased_model import *
6
 
7
 
 
8
  if "user_preferences" not in st.session_state:
9
  st.session_state["user_preferences"] = {}
10
 
11
  # if "user_titles" not in st.session_state:
12
  # st.session_state["user_titles"] = []
13
 
14
- data = pd.read_pickle("data/2k_titles.pkl")
 
 
 
 
 
 
15
 
16
  def games_recomm(preferences_id):
17
  if "rs" in st.session_state:
@@ -30,12 +37,25 @@ def games_recomm(preferences_id):
30
  'app_id': preferences_id,
31
  'is_recommended': pref_value
32
  })
 
33
 
34
- res_ease = ease_model(pred_df=pred_df, k=100)
35
  res_cbf = cbf_model(pred_df=pred_df, k=100)
 
 
36
  res = combine_hybrid_result(res_ease, res_cbf)
 
37
 
38
  # st.write(res)
 
 
 
 
 
 
 
 
 
 
39
 
40
  if type(res) == ValueError:
41
  st.error("Recommendation failed. Please select with at least 3 games title.")
@@ -43,6 +63,8 @@ def games_recomm(preferences_id):
43
  return
44
  else:
45
  st.session_state['rs'] = res
 
 
46
 
47
  if len(st.session_state['rs']) >= 1:
48
  st.success(f"Go to result page to view top {len(st.session_state['rs'])} recommendations.")
 
5
  from contentBased_model import *
6
 
7
 
8
+
9
  if "user_preferences" not in st.session_state:
10
  st.session_state["user_preferences"] = {}
11
 
12
  # if "user_titles" not in st.session_state:
13
  # st.session_state["user_titles"] = []
14
 
15
+ # if "26k_titles" not in st.session_state:
16
+ # st.session_state['26k_titles'] = data
17
+
18
+ data = pd.read_pickle("data/list_of_all_titles.pkl")
19
+ ease_ids = list(
20
+ pd.read_pickle("data/dict_of_ease_ids.pkl").keys())
21
+
22
 
23
  def games_recomm(preferences_id):
24
  if "rs" in st.session_state:
 
37
  'app_id': preferences_id,
38
  'is_recommended': pref_value
39
  })
40
+ ease_df = pred_df[pred_df['app_id'].isin(ease_ids)]
41
 
 
42
  res_cbf = cbf_model(pred_df=pred_df, k=100)
43
+ res_ease = ease_model(pred_df=ease_df, k=100)
44
+
45
  res = combine_hybrid_result(res_ease, res_cbf)
46
+ # res = cbf_model(pred_df=pred_df, k=100)
47
 
48
  # st.write(res)
49
+ st.write("Result of EASE:")
50
+ st.write(res_ease)
51
+ st.markdown("<br>", unsafe_allow_html=True)
52
+
53
+ st.write("Result of CBF:")
54
+ st.write(res_cbf)
55
+ st.markdown("<br>", unsafe_allow_html=True)
56
+
57
+ st.write("Result of Hybrid:")
58
+ st.write(res)
59
 
60
  if type(res) == ValueError:
61
  st.error("Recommendation failed. Please select with at least 3 games title.")
 
63
  return
64
  else:
65
  st.session_state['rs'] = res
66
+ # st.session_state['rs'] = res
67
+ st.session_state
68
 
69
  if len(st.session_state['rs']) >= 1:
70
  st.success(f"Go to result page to view top {len(st.session_state['rs'])} recommendations.")
contentBased_model.py CHANGED
@@ -118,7 +118,8 @@ class KnnCBF:
118
  return pred_result
119
 
120
  def cbf_model(pred_df, k=10):
121
- items = pd.read_csv("data/games_attributes.csv")
 
122
 
123
  cbf = KnnCBF(items)
124
  res = cbf.predict_active(pred_df=pred_df, k=k)
 
118
  return pred_result
119
 
120
  def cbf_model(pred_df, k=10):
121
+ # items = pd.read_csv("data/games_attributes.csv")
122
+ items = pd.read_csv("data/all_games_attributes.csv")
123
 
124
  cbf = KnnCBF(items)
125
  res = cbf.predict_active(pred_df=pred_df, k=k)
data/all_games_attributes.csv ADDED
The diff for this file is too large to render. See raw diff
 
data/dict_of_all_ids.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3eb6d11b622023bcdaa5a7130886f2d5e5304b0d3764a9a896744b9d34812ae8
3
+ size 820978
data/dict_of_all_titles.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2867960e313b95dae1d80261560df9c8dd63801d49c26fb23fef075b0ee0679c
3
+ size 820978
data/dict_of_ease_ids.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dd9e84631b0dd97fe7d0fe982a28a03c9c65a4d1042437385137d05c92f829b3
3
+ size 60873
data/dict_of_ease_titles.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2689a911254553451cdd573c751192f098d12b3b1cc9d872f7ac2e7b0d840018
3
+ size 60873
data/{games_attributes.csv → ease_games_attributes.csv} RENAMED
File without changes
data/list_of_all_titles.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4536a375d8a42380eb9501eebab0cbf1a4c17d93c0a88093cba3bb2ab27e3db5
3
+ size 687996
data/list_of_ease_titles.pkl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c99d13e858bb785686cbaeab014d6bb39608627316a6b6b69d5517f21b3fc5ee
3
+ size 50223
func.py CHANGED
@@ -5,8 +5,8 @@ import requests
5
  from io import BytesIO
6
  from PIL import Image
7
 
8
- data_titles = pd.read_pickle("data/2k_titles.pkl")
9
- data_ids = pd.read_pickle("data/2k_ids.pkl")
10
 
11
  def ids_to_titles(ids_list):
12
  return [data_ids[title] for title in ids_list]
 
5
  from io import BytesIO
6
  from PIL import Image
7
 
8
+ data_titles = pd.read_pickle("data/dict_of_all_titles.pkl")
9
+ data_ids = pd.read_pickle("data/dict_of_all_ids.pkl")
10
 
11
  def ids_to_titles(ids_list):
12
  return [data_ids[title] for title in ids_list]