Pandas本身并沒有提供層次聚類算法的實現,但可以使用scikit-learn庫中的AgglomerativeClustering來實現層次聚類算法。下面是一個使用Pandas和scikit-learn來進行層次聚類的示例代碼:
import pandas as pd
from sklearn.cluster import AgglomerativeClustering
# 創建一個示例數據集
data = {
'X': [1, 2, 3, 4, 5],
'Y': [6, 7, 8, 9, 10]
}
df = pd.DataFrame(data)
# 使用AgglomerativeClustering進行層次聚類
clustering = AgglomerativeClustering(n_clusters=2)
df['cluster'] = clustering.fit_predict(df)
# 打印聚類結果
print(df)
在上面的示例中,我們首先創建了一個示例數據集,然后使用AgglomerativeClustering來進行層次聚類,最后將聚類結果添加到數據集中并打印出來。
需要注意的是,層次聚類是一種無監督學習方法,需要根據具體的數據集和問題來選擇合適的參數(如n_clusters)來進行聚類。在實際使用中,可以根據需要對層次聚類進行調參來獲得更好的聚類效果。