Python错误-TypeError:一元操作数的操作数类型错误-:';非类型';
我有一个函数中的下一个for循环Python错误-TypeError:一元操作数的操作数类型错误-:';非类型';,python,numpy,typeerror,Python,Numpy,Typeerror,我有一个函数中的下一个for循环 def Cost_F(Y, Ypred, m): for i in range(0,m): # Y and Ypred X = np.matmul(-Y, np.log10(Ypred)) Y和Ypred的尺寸均(10,1) Y和Ypred的类型=>类'numpy.matrixlib.defmatrix.matrix' cmd=>类型错误:一元操作数的操作数类型错误-:“非类型” -Y 当您试图使用它时,它不起作用。
def Cost_F(Y, Ypred, m):
for i in range(0,m):
# Y and Ypred
X = np.matmul(-Y, np.log10(Ypred))
Y和Ypred的尺寸均(10,1)
Y和Ypred的类型=>类'numpy.matrixlib.defmatrix.matrix'
cmd=>类型错误:一元操作数的操作数类型错误-:“非类型”
-Y
当您试图使用它时,它不起作用。你的意思是:
-1*Y
python在您的案例中尝试做的是:
None - Y
这显然是行不通的。也就是说,因为它将-
解释为具有左侧和右侧的操作数。在您的例子中,您没有提供左侧,因此它假定None
,然后找不到-
的任何实现,其中左侧是None
,右侧是一个矩阵im,使用print(type(Y))和print(type(Ypred)),我从cmd类“numpy.matrixlib.defmatrix.matrix”得到了这个输出