在终端中使用numpy.logical_xor是可以的:
>>> numpy.logical_xor(numpy.array([0,2,0,59,1]), numpy.array([0,0,0,0,0]))
array([False, True, False, True, True], dtype=bool)
但是在IDE中:
loan_Y_default = np.logical_xor( loan_Y, np.zeros(loan_Y.shape))
“loan_Y_default”打印为“NotImplemented”。 “loan_Y”的形状为[100,1]
这里发生了什么?
答案 0 :(得分:1)
你可能有一个字符串的ndarray,并且应该返回“NotImplemented”:
In [1001]: a=np.array(['1', '2'])
In [1002]: np.logical_xor(a, np.zeros(a.shape))
Out[1002]: NotImplemented
您需要做的是首先将字符串转换为数字:
In [1005]: a=a.astype(float)
In [1006]: a
Out[1006]: array([ 1., 2.])
In [1007]: np.logical_xor(a, np.zeros(a.shape))
Out[1007]: array([ True, True], dtype=bool)