开始使用免费开始使用

提取聚类标签

在上一个练习中,您看到高度为 6 时谷物样本的中间聚类有 3 个簇。现在,请使用 fcluster() 提取该中间聚类的标签,并使用交叉列联表将这些标签与谷物品种进行比较。

层次聚类已完成,mergingslinkage() 函数的结果。列表 varieties 给出了每个谷物样本的品种。

本练习是课程的一部分

Python 中的无监督学习

查看课程

练习说明

  • 导入:
    • pandas 导入为 pd
    • scipy.cluster.hierarchy 导入 fcluster
  • mergings 使用 fcluster() 执行平坦的层次聚类。指定最大高度为 6,并使用关键字参数 criterion='distance'
  • 创建一个名为 df 的 DataFrame,包含 'labels''varieties' 两列,分别使用 labelsvarieties 作为列值。此步骤已为您完成。
  • 创建 df['labels']df['varieties'] 之间的交叉列联表 ct,以统计每种谷物品种在各个聚类标签中的出现次数。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Perform the necessary imports
import ____ as ____
from ____ import ____

# Use fcluster to extract labels: labels
labels = ____

# Create a DataFrame with labels and varieties as columns: df
df = pd.DataFrame({'labels': labels, 'varieties': varieties})

# Create crosstab: ct
ct = ____

# Display ct
print(ct)
编辑并运行代码