【问题标题】:Failing test for predict k nearest Neighbors function?预测 k 最近邻函数的测试失败?
【发布时间】:2023-01-24 00:15:17
【问题描述】:
显然,函数预测本身运行良好,整个模型获得了 75% 的成功。但是当我尝试为该函数做一个测试用例以检查它是否会返回正确的结果 (1) 时,我得到错误 outcomes = np.append(outcomes, y_train[n]) IndexError: index 160 is out of bounds for axis 0 with size 3。关于可能是什么错误的任何建议?
【问题讨论】:
标签:
python
unit-testing
machine-learning
【解决方案1】:
仅根据您的屏幕截图无法调试。请在未来提供一个最小的工作示例。
在这种特殊情况下,我认为y_train[n] 试图访问 y_train[160],但你的 y_train 只有三个元素 [1, 1, 0]。所以我假设 get_neighbors 不会返回您期望的数据类型。
看来您正在使用 PyCharm。尝试使用内置调试器执行完全相同的代码(跑步图标),等待异常出现(此时将暂停代码),并在调试器菜单中检查 neighbors 变量的内容。它应该给你更多的提示。