Scikit程序包似乎无法识别我要使用的距离阈值参数,而不是n-clusters参数,因为我不知道最终将有多少个群集,它取决于数据。
我想知道这是否是因为distance_threshold参数是最近才推出的,但是我将scikit导入文件的顶部,所以我不明白为什么会出现问题。只要我不包含此参数,一切都会正常。
import matplotlib.pyplot as plt
%matplotlib inline
from sklearn.cluster import AgglomerativeClustering
cluster = AgglomerativeClustering(affinity='euclidean', linkage='ward',
distance_threshold = 400.0) #the last bit here is the problem
cluster.fit_predict(Revs)
labels = np.array(cluster.labels_).tolist()
它应该运行群集,相反,我收到此错误消息:
**TypeError**: __init__() got an unexpected keyword argument 'distance_threshold'
答案 0 :(得分:0)
distance_threshold
参数是最新版本的sci-kit Learn中的新增功能。
0.21版中的新功能。
确保将库更新为最新版本。该错误主要是因为您使用的是旧版本。
您可以检查以下版本
import sklearn
# Check version
print(sklearn.__version__)
0.21.
它将显示您的sci-kit学习库的版本。要使用distance_threshold
参数,版本必须为0.21。