a0
是一个整数。
a1
是整数。
x1_list
是一个系列。
y1 list
是系列。
第一个代码运行没有错误,但是第二个代码没有错误,
1。
def a0_derivative(a0, a1, xi_list, yi_list):
len_data = len(xi_list)
error = 0
for i in range(0, len_data):
error += (a0 + a1*xi_list[i] - yi_list[i])
deriv = 2*error/len_data
return deriv
2。
def a0_derivative(a0, a1, xi_list, yi_list):
item= []
n = len(xi_list)
for i in range(n):
div = 2(a0 + a1*xi_list[i]-yi_list[i])
item.append(div)
deriv = np.mean(item)
return deriv
答案 0 :(得分:1)
这很简单。在Python中,要进行乘法运算,请使用*
。只需将其更改为:
def a0_derivative(a0, a1, xi_list, yi_list):
item= []
n = len(xi_list)
for i in range(n):
div = 2 * (a0 + a1*xi_list[i]-yi_list[i])
item.append(div)
deriv = np.mean(item)
return deriv
如果将其用作2(a0 + a1*xi_list[i]-yi_list[i])
,Python会认为您正在尝试使用一个函数,但是整数在Python中不能成为函数,因此会出错。