Phát hiện Pokémon: phân cụm k-means
Chúng ta sẽ tiếp tục điều tra các lần phát hiện Pokémon huyền thoại từ bài tập trước. Tương tự bài trước, ta sẽ dùng cùng ví dụ về các lần phát hiện Pokémon. Trong bài này, bạn sẽ tạo các cụm từ dữ liệu phát hiện bằng thuật toán k-means.
x và y là các cột tọa độ X và Y của vị trí phát hiện, được lưu trong một pandas DataFrame, df. Bạn có sẵn các thư viện sau để dùng: matplotlib.pyplot là plt, seaborn là sns, và pandas là pd.
Bài tập này là một phần của khóa học
Phân cụm trong Python
Hướng dẫn bài tập
- Import các hàm
kmeansvàvq. - Dùng hàm
kmeans()để tính các tâm cụm với số cụm bằng hai. - Gán nhãn cụm cho từng điểm dữ liệu bằng hàm
vq(). - Vẽ các điểm với seaborn và gán màu khác nhau cho mỗi cụm
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Import kmeans and vq functions
from scipy.cluster.vq import ____, ____
# Compute cluster centers
centroids,_ = ____(____, ____)
# Assign cluster labels
df['cluster_labels'], _ = ____(____, ____)
# Plot the points with seaborn
sns.scatterplot(x=____, y=____, hue=____, data=df)
plt.show()