python绘制拟合回归散点图_用python做多元线性回归后,如何画出回归线和预测图?...

看来楼主需要先补补统计学,二元回归(x1,x2,y)已经要三维散点图,超过二元不知道楼主想怎么制图?

一元太简单了,网上都有,我不答。二元的话网上确实很少,最简单的办法是得到回归方程,利用回归方程来模拟点的坐标建立回归曲面。代码如下,我只是截取原来项目的一部分,懒得修改,给你了解思路,大概需要用到numpy(np),matplotlib.pyplot(plt),statsmodels.api(sm),pandas(pd)这么几个包。

from mpl_toolkits.mplot3d import Axes3D

r4=pd.concat([b2,c2,d2],axis=1)[1:] /b2,c2,d2是三个变量,b2是应变量

r4.columns=['MSFT','GOOGL','IBM']

r4.fillna(0,inplace=True)

r4['2016-06-23':'2017-06-21']

x4=sm.add_constant(r4[['GOOGL','IBM']]) /加上常数项

m4=sm.OLS(r4['MSFT'],x4).fit() /这里在做线性回归

print(m4.summary())

fig1=plt.figure()

ax=fig1.add_subplot(413,projection='3d')

ax.scatter(r4['GOOGL'],r4['IBM'],r4['MSFT'],c='y') /这里制作散点图,略过不看

fig2=plt.figure()

bx=fig2.add_subplot(414,projection='3d')

x=y=np.arange(-0.05, 0.05, 0.001) /对x和y坐标取等差数列,其实xy数值随机即可

def f(x,y):

return m4.params[0]+ x*m4.params[1]+y*m4.params[2] /定义求z坐标的函数,利用回归方程计算z坐标的取值

x,y= np.meshgrid(x, y)

zs = np.array([f(x,y) for x,y in zip(np.ravel(x), np.ravel(y))])

z=zs.reshape(x.shape)

bx.plot_surface(x,y,z,alpha=0.5) /利用回归方程计算的z坐标来画出回归曲面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值