首页 > 解决方案 > pythonTypeError:不能将序列乘以“列表”类型的非整数

问题描述

我将两个列表相乘,当尝试将两个列表相乘时出现错误。当我通过 y_pred 时,我得到了乘法错误,如代码所示。我该怎么做才能解决这个问题?

def polynomial_features(data, deg):
    data_copy=data.copy()
    #print(data_copy.head())
    for i in range(1,deg):
        data_copy['X'+str(i+1)]=data_copy['X'+str(i)]*data_copy['X1']
    return data_copy

x_pred = pd.Series({'X1':[i/200.0 for i in range(200)]})
y_pred = model.predict(polynomial_features(x_pred,deg))

我在这段代码的列表行中得到了错误。

标签: python-3.xpandas

解决方案


您对该函数的输入必须是 a dataframe,而不是系列 -

改变这个:

x_pred = pd.Series({'X1':[i/200.0 for i in range(200)]})

对此:

x_pred = pd.DataFrame({'X1':[i/200.0 for i in range(200)]})

推荐阅读