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)来进行聚类。在实际使用中,可以根据需要对层次聚类进行调参来获得更好的聚类效果。