在数组括号内使用python非零函数

2024-10-02 22:27:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在查看链接的GitHub存储库并阅读MLA机器学习书籍,偶然发现了这段代码,不明白这里发生了什么。这里发生了什么?有没有更好、更明确的方法来编写这段python代码

https://github.com/KUpypy/Past/blob/fd981bfcc3599914be71d38f0412ef2edbcf6046/MLA/(MLA)%20Chp10/(MLA)%20Chp10_Grouping%20unlabeled%20items%20using%20k-means%20clustering.ipynb

bestClustAss[nonzero(bestClustAss[:,0].A == 1)[0], 0] = len(centList) 
bestClustAss[nonzero(bestClustAss[:,0].A == 0)[0], 0] = bestCentToSplit

此函数引发以下错误:

local variable 'bestClustAss' referenced before assignment

我的想法是这样的:

if(nonzero(bestClustAss[:,0].A == 1)
     bestClustAss ....... = len(cenList)
if(nonzero(bestClustAss[:,0].A == 0)
     bestClustAss ....... = bestCentToSplit

但我对python还是太陌生了,无法独自解决这个问题


Tags: 方法代码httpsgithubcom机器lenif