Posts
Q&A
CF_knn_bias ์ค์ต์์ not in index error ๋ฐ์ํฉ๋๋ค.
# ์ฌ์ฉ์ ํ๊ฐ ๊ฒฝํฅ์ ๊ณ ๋ คํ ํจ์ ## full matrix ์์ ์ฌ์ฉ์์ ํ์ ํ๊ท ์ ๊ตฌํ๋ค.rating_mean = rating_matrix.mean(axis=1)# ์ํ ํ์ ๊ณผ ๊ฐ ์ฌ์ฉ์์ํ๊ท ๊ณผ์ ์ฐจ์ด (ํ์ ํธ์ฐจ)๋ฅผ ๊ตฌํ๋ค.rating_bias = (rating_matrix.T - rating_mean).T# ์ฌ์ฉ์ ํ๊ฐ ๊ฒฝํฅ์ ๊ณ ๋ คํ ํจ์def CF_knn_bias(user_id, movie_id, neighbor_size=0):if movie_id in rating_bias.columns:sim_scores = user_similarity[user_id].copy()movie_ratings = rating_bias[movie_id].copy()none_rating_idx = movie_ratings[movie_ratings.isnull()].indexmovie_ratings = movie_ratings.drop(none_rating_idx) # CF_knn์์๋ dropna() ์ฌ์ฉํ์์sim_scores = sim_scores.drop(none_rating_idx)if neighbor_size==0:prediction = np.dot(sim_scores, movie_ratings) / sim_scores.sum()prediction = prediction + rating_mean[user_id]else:if len(sim_scores) > 1:neighbor_size = min(neighbor_size, len(sim_scores))sim_scores = np.array(sim_scores)movie_raitngs = np.array(movie_ratings)user_idx = np.argsort(sim_scores)sim_scores = sim_scores[user_idx][-neighbor_size:]movie_ratings = movie_ratings[user_idx][-neighbor_size:]prediction = np.dot(sim_scores, movie_ratings) / sim_scores.sum()prediction = prediction + rating_mean[user_id]else:prediction = rating_mean[user_id]else:prediction = rating_mean[user_id]return predictionscore(CF_knn_bias, 30) CF_knn์ ์ ์ ๋์ํฉ๋๋ค!์ฝ๋ ์ฒจ๋ถ๋๋ฆฌ๋ ํ๋ฒ ํ์ธ ๋ถํ๋๋ฆฝ๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
- Likes
- 0
- Comments
- 3
- Viewcount
- 737
Q&A
MergeError๊ฐ ๋ฉ๋๋ค
set index๊ฐ ๋์ด์๋ ์ํ์๋ค์. ํด๊ฒฐํ์ต๋๋ค.
- Likes
- 0
- Comments
- 2
- Viewcount
- 587




