class GapStatistics
GapStatEucl = GapStatistics(return_params=True)
optimum, params = GapStatEucl.fit_predict(KMedoids, 15, cluster_vars_gap)
错误:
1 GapStatEucl = GapStatistics(return_params=True)
----> 2 optimum, params = GapStatEucl.fit_predict(KMedoids, 15, cluster_vars_gap)
TypeError: cannot unpack non-iterable NoneType object
如何解决这个问题?
我可以在这里查看一些类似的文档:https://pypi.org/project/gapstatistics/ .
它表示 GapStatEucl.fit_predict “返回最佳簇数 (K) 或具有最佳 K 的元组以及用于差距分析的附加统计信息”。
所以我认为,在你的情况下,它可能只返回 K 值,而不是元组。因此,没有什么可以打开的。
要测试它返回的内容,只需执行以下操作:
print(GapStatEucl.fit_predict(KMedoids, 15, cluster_vars_gap))
看看它是否是一个元组。如果有时它返回 K,有时返回一个 Tuple,那么,您应该存储结果并每次测试它:
optimum = None #To ensure these vars are in scope, define them outside the If block
params = None
result = GapStatEucl.fit_predict(KMedoids, 15, cluster_vars_gap)
if isinstance(result, tuple):
(optimum, params) = result
else:
optimum = result
pass #Do whatever you need to do, to deal with this