我正在尝试运行一个python程序,该程序使用Scikit-Learning对曲棍球比赛的“赢”或“输”进行二分类,基于2个数组:每个队玩曲棍球比赛的1个统计数组(如当前伤害和目标反对)。我习惯于java调试,但Python堆栈跟踪比我习惯的要长得多。
我应该查看整个堆栈跟踪,还是只查看最相关的错误并专注于解决它?即)最底部的错误,即:
File "C:\Users\Thomas\Anaconda3\lib\site-packages\sklearn\utils\validation.py", line 181, in check_consistent_length
" samples: %r" % [int(l) for l in lengths])
ValueError: Found input variables with inconsistent numbers of samples: [4, 10]
这是整个堆栈跟踪:
pydev debugger: process 1084 is connecting
C:\Users\Thomas\Anaconda3\lib\site-packages\sklearn\cross_validation.py:44: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed in 0.20.
"This module will be removed in 0.20.", DeprecationWarning)
C:\Users\Thomas\Anaconda3\lib\site-packages\sklearn\lda.py:6: DeprecationWarning: lda.LDA has been moved to discriminant_analysis.LinearDiscriminantAnalysis in 0.17 and will be removed in 0.19
"in 0.17 and will be removed in 0.19", DeprecationWarning)
canucks_stats: [3, 11, 2, 2]
opposing_stats: [1, 4, 4, 15]
Backend Qt5Agg is interactive backend. Turning interactive mode on.
Traceback (most recent call last):
File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 2016.3.2\helpers\pydev\pydevd.py", line 1596, in <module>
globals = debugger.run(setup['file'], None, None, is_module)
File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 2016.3.2\helpers\pydev\pydevd.py", line 974, in run
pydev_imports.execfile(file, globals, locals) # execute the script
File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 2016.3.2\helpers\pydev\_pydev_imps\_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "C:/Users/Thomas/Desktop/!UFV/CIS480/project/NHL-Predictor.py", line 196, in <module>
for name, (X, y) in [('moon', toms_make_moons(noise=0.3, random_state=0))#,
File "C:/Users/Thomas/Desktop/!UFV/CIS480/project/NHL-Predictor.py", line 113, in toms_make_moons
X, y = util_shuffle(X, y, random_state=generator)
File "C:\Users\Thomas\Anaconda3\lib\site-packages\sklearn\utils\__init__.py", line 285, in shuffle
return resample(*arrays, **options)
File "C:\Users\Thomas\Anaconda3\lib\site-packages\sklearn\utils\__init__.py", line 204, in resample
check_consistent_length(*arrays)
File "C:\Users\Thomas\Anaconda3\lib\site-packages\sklearn\utils\validation.py", line 181, in check_consistent_length
" samples: %r" % [int(l) for l in lengths])
ValueError: Found input variables with inconsistent numbers of samples: [4, 10]
Process finished with exit code 1
最底部的错误可以显示错误是什么。整个堆栈跟踪可以帮助您找到错误所在的位置。
当您发布问题时,请始终发布完整的堆栈跟踪(以了解您在哪一行中获取错误)。参考如何提问
关于错误ValueError:发现样本数不一致的输入变量:[4,10]
:
x
应该是一个大小为[number_of_samples,number_of_features]的二维数组。您可以检查它。
并且有一些参考文献:
ref1:ValueError:发现样本数不一致的数组[6 1786]
ref2:将不同大小的jpg加载到numpy. array-ValueError:发现样本数量不一致的输入变量
ref3:模型的特征数量必须与输入匹配
ref4:发现样本数量不一致的输入变量