python - 参数 (n_neighbors) 的参数值需要是一个序列

标签 python python-3.x

我正在尝试使用 Skleanr 模块。但是,我的代码在下面

n_range = {'n_neighbors': range(1,100)}
knn_search = GridSearchCV(estimator = KNeighborsClassifier(), param_grid=n_range, scoring='f1_micro')
knn_search.fit(features_vector, train_labels)

导致错误:

Parameter values for parameter (n_neighbors) need to be a sequence.

我做错了什么?

最佳答案

在 Python 3.x 中,函数 range 返回一个 range 对象(不是序列),而不是列表。您必须自己将其转换为列表:

n_range = {'n_neighbors': list(range(1,100))}

关于python - 参数 (n_neighbors) 的参数值需要是一个序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51005431/

相关文章:

python - 如何在 py.test 中使用多核?

sql - 如何在 SQLAlchemy > Presto 连接中指定 https 协议(protocol)?

python - 如何在pandas中使用country_converter将国家/地区代码转换为名称

python - 读取 Python 的 memory_profiler 的输出

excel - Python Openpyxl sheet.dimensions

python - Docker 镜像未使用指定的 Python 版本运行

python - 在pygame中获取图像单个像素的颜色

python - 如何在python中算术时检测溢出?

python - Pandas 提取多字符正则表达式

python - Cython C++ 模板