计算SSE时获取错误:'数字浮点数64'对象不是iterab

2024-09-28 23:48:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图计算平方误差之和(SSE),代码如下所述


def SSEadver(tv_train,radio_train,newsppr_train,y_train):
 y_train_predct = []
 sse_train = 0
 y_train_predct_srs = 0

# Calculating the predicted sales values on training data
 for i in range(0,len(tv_train)):
    y_train_predct.append(2.8769666223179353 + (0.04656457* tv_train.iloc[i])+ (0.17915812*(radio_train.iloc[i])) + (0.00345046*(newsppr_train.iloc[i])))

# ** Here I Convert  y_train_predct's type List to Series, but still it is showing type as list**
 y_train_predct_srs = pd.Series(y_train_predct)

# *** Due above converting not working here y_train_predct_srs.iloc[j]) is not working***   
# Now calculate SSE (sum of Squared Errors)
 for j in range (len(y_train)):
    sse_train +=  sum((y_train.iloc[j] - y_train_predct_srs.iloc[j])**2) 

return y_train_predct, y_train_predct_srs

sse_train = SSEadver(tv_train,radio_train,newsppr_train, y_train)

运行此代码时,出现错误:


^{pr2}$

为什么我得到这个错误?我使用的是python3.X.X


Tags: 代码inforlenrangetraintvsse