尝试使用sklearn进行线性回归,并创建一个系数和p值表
这是我正在使用的代码
y = df['Result']
x = df['Pts actual']
y = y.values.reshape(-1,1)
x = x.values.reshape(-1,1)
reg = LinearRegression()
reg.fit(x,y)
reg.coef_
reg.intercept_
f_reg_p_val = f_regression(x,y)[1]
reg_summary = pd.DataFrame(data = x.columns.values, columns=['Features'])
reg_summary['p-values'] = f_reg_p_val
reg_summary
然而,我只从原始数据帧中选择了一列作为x中的特征
排队
reg_summary = pd.DataFrame(data = x.columns.values, columns=['Features'])
我得到这个错误
AttributeError Traceback (most recent call last)
<ipython-input-276-786cf89afda3> in <module>
----> 1 reg_summary = pd.DataFrame(data = x.columns.values, columns=['Features'])
2 #reg_summary['coefficients'] = reg.coef_
3 reg_summary['p-values'] = f_reg_p_val
4 reg_summary
AttributeError: 'numpy.ndarray' object has no attribute 'columns'
我错在哪里
您在此行将数据帧转换为
numpy
数组:x.values
部分返回一个numpy
数组,该数组没有columns
属性。这就是为什么代码稍后在您尝试访问AttributeError
时抛出一个x.columns
-它不再存在了相关问题 更多 >
编程相关推荐