如何解决如何使用python计算多项式回归系数的标准误差?
通常来说,对于一般的线性模型,我使用R,但是现在我需要使用python(这是我的第一次)。我尝试了两种替代代码,第一种绘制了数据的回归曲线
import operator
from sklearn.pipeline import make_pipeline
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error,r2_score
from sklearn.preprocessing import PolynomialFeatures
x1=np.log10(s1[0:len(s1)]/mS1)
y1=np.log10(s1[0:len(s1)]**2*Ns1)
x1,y1 = data_cleaner(x1,y1)
# transforming the data to include another axis
x1 = x1[:,np.newaxis]
y1 = y1[:,np.newaxis]
polynomial_features= PolynomialFeatures(degree=3)
x1_poly = polynomial_features.fit_transform(x1)
model = LinearRegression()
model.fit(x1_poly,y1)
y1_poly_pred = model.predict(x1_poly)
rmse = np.sqrt(mean_squared_error(y1,y1_poly_pred))
r2 = r2_score(y1,y1_poly_pred)
print(rmse)
print(r2)
plt.scatter(x1,y1,s=10)
# sort the values of x before line plot
sort_axis = operator.itemgetter(0)
sorted_zip = sorted(zip(x1,y1_poly_pred),key=sort_axis)
x,y_poly_pred = zip(*sorted_zip)
plt.plot(x1,y1_poly_pred,color='m')
plt.xlabel(r'$\log_{10} (s/S(t))$')
plt.ylabel(r'$\log_{10} [s^{2}N_{s}(t)]$')
plt.savefig("polynomial_5min.png")
plt.show()
第二个仅计算我的多项式回归的系数
x1=np.log10(s1[0:len(s1)]/mS1)
y1=np.log10(s1[0:len(s1)]**2*Ns1)
x1,y1)
np.polyfit(x1,3,rcond=False,full=False,w=None,cov=False)
但是我还想找到每个系数的标准误差。你知道我该怎么办吗?
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。