Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python+;Numpy:TypeError:';int';对象不可调用_Python_Numpy - Fatal编程技术网

Python+;Numpy:TypeError:';int';对象不可调用

Python+;Numpy:TypeError:';int';对象不可调用,python,numpy,Python,Numpy,我正试图找到10倍交叉验证的加法平滑的最佳平滑参数。我编写了以下代码: alphas = list(np.arange(0.0001, 1.5000, 0.0001)) #empty list that stores cv scores cv_scores = [] #perform k fold cross validation for alpha in alphas: naive_bayes = MultinomialNB(alpha=alpha) scores = cr

我正试图找到10倍交叉验证的加法平滑的最佳平滑参数。我编写了以下代码:

alphas = list(np.arange(0.0001, 1.5000, 0.0001))

#empty list that stores cv scores
cv_scores = []

#perform k fold cross validation
for alpha in alphas:
    naive_bayes = MultinomialNB(alpha=alpha)
    scores = cross_val_score(naive_bayes, x_train_counts, y_train, cv=10, scoring='accuracy')
    cv_scores.append(scores.mean())

#changing to misclassification error
MSE = [1 - x for x in cv_scores]  

#determining best alpha
optimal_alpha = alphas[MSE.index(min(MSE))]
我得到以下错误:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-21-9d171ddceb31> in <module>()
     18 
     19 #determining best alpha
---> 20 optimal_alpha = alphas[MSE.index(min(MSE))]
     21 print('\nThe optimal value of alpha is %f' % optimal_alpha)
     22 

TypeError: 'int' object is not callable
---------------------------------------------------------------------------
TypeError回溯(最近一次调用上次)
在()
18
19#确定最佳α
--->20最佳α=α[MSE.指数(最小(MSE))]
21打印('\n alpha的最佳值为%f'%optimal\u alpha)
22
TypeError:“int”对象不可调用

我对arange()和K(交叉验证)的不同参数值运行了相同的代码。这是我第一次遇到这个错误。为什么?

在您的代码中的其他地方,您的代码如下所示:

 min = 10
然后你写下:

optimal_alpha = alphas[MSE.index(min(MSE))]

因此,
min()
被解释为函数调用

我不明白你为什么会遇到这种情况-似乎min是一个整数的引用。是否在ipython工作流的其他地方将min设置为相等?完全正确,只是索引是列表的函数,所以不会发生名称空间冲突。一定是min,你们绝对是对的。我最近在笔记本中添加了一段新代码,其中添加了一行“min=999”。谢谢你们两位。