Python “行动”@&引用;在乘法向量中给出语法错误
当我尝试在Google Colab中使用此部件代码时:Python “行动”@&引用;在乘法向量中给出语法错误,python,Python,当我尝试在Google Colab中使用此部件代码时: def costFunction(X, Y, theta): scalar=1; ''' Calcular la Least Square Cost Function. Devolver la funcion calculada. ''' X=np.insert(X.T, 0, np.ones(X.shape[1]), 1) theta=theta.T cost = 0.5 @
def costFunction(X, Y, theta):
scalar=1;
'''
Calcular la Least Square Cost Function.
Devolver la funcion calculada.
'''
X=np.insert(X.T, 0, np.ones(X.shape[1]), 1)
theta=theta.T
cost = 0.5 @ (X @ theta-Y.T).T@(X@theta-Y.T)+theta.T@scalar@theta
return cost
给出了错误:
> File "<ipython-input-8-c78bf44930a0>", line 9
> cost = 0.5 @ (X @ theta-Y.T).T@(X@theta-Y.T)+theta.T@scalar@theta
^
SyntaxError: invalid syntax
>文件“”,第9行
>成本=0.5@(X@θ-Y.T).T@(X@theta-Y.T)+θ。T@scalar@西塔
^
SyntaxError:无效语法
运算符是矩阵乘法。0.5不是一个矩阵。你刚才是不是想做一个标量乘法?这是常规的*
运算符。无法复制。该代码在cpython 3.8.6上没有语法错误,但是,尝试将矩阵乘法运算符与标量一起使用不会是语法错误-它可能是TypeError或其他类似的运行时错误。这似乎更像是在Python版本上运行的代码太旧,无法使用@
操作符,尽管我不确定您如何在Colab上管理它。@jasonharper-我想知道类似的事情。自2015年发布python 3.5以来,矩阵乘法就一直存在。OP最好检查ipython版本,但它可能比这个版本更新。导入sys
后,请执行打印(sys.version)
,并将其发布在此处。