所以,我正在研究一个管道,在安装它时我偶然发现了这个错误:
Traceback (most recent call last):
File "C:/Users/Shawn/Documents/temp/bool_issue.py", line 7, in <module>
_assert_all_finite(array, False)
File "C:\Users\Shawn\AppData\Local\Programs\Python\Python38\lib\site-packages\sklearn\utils\validation.py", line 103, in _assert_all_finite
if _object_dtype_isnan(X).any():
AttributeError: 'bool' object has no attribute 'any'
Run Code Online (Sandbox Code Playgroud)
这实际上是一些测试问题的自定义代码,见下文
在回溯之后,我看到它_object_dtype_isnan()采用一个 numpy 数组,并以布尔掩码(布尔数组)的形式返回另一个 numpy 数组。
但是,由于某种原因,它有时会直接返回布尔值。
重现错误的代码:
Traceback (most recent call last):
File "C:/Users/Shawn/Documents/temp/bool_issue.py", line 7, in <module>
_assert_all_finite(array, False)
File "C:\Users\Shawn\AppData\Local\Programs\Python\Python38\lib\site-packages\sklearn\utils\validation.py", line 103, in _assert_all_finite
if _object_dtype_isnan(X).any():
AttributeError: 'bool' object has no attribute 'any'
Run Code Online (Sandbox Code Playgroud)