Python数据分析及可视化实例之基础-交叉验证及预测(波士顿房价)(22)

Python数据分析及可视化实例之基础-交叉验证及预测(波士顿房价)(22)

系列文章总目录:Python数据分析及可视化实例目录



源码分为两部分:一部分是基于matplotlib,一部分基于Bokeh。

# coding: utf-8

# In[1]:

get_ipython().magic('matplotlib inline')


# ###  交叉验证预测

# In[2]:

from sklearn import datasets
from sklearn.model_selection import cross_val_predict
from sklearn import linear_model
import matplotlib.pyplot as plt
lr = linear_model.LinearRegression()
boston = datasets.load_boston()  # 加载SKlearn自带数据集:波士顿房价
y = boston.target
predicted = cross_val_predict(lr, boston.data, y, cv=10)
fig, ax = plt.subplots()
ax.scatter(y, predicted, edgecolors=(0, 0, 0))
ax.plot([y.min(), y.max()], [y.min(), y.max()], 'k--', lw=4)
ax.set_xlabel('Measured')
ax.set_ylabel('Predicted')
plt.show()


# ### 用Bokeh进行可视化

# In[3]:

from bokeh.io import output_notebook, show
from bokeh.plotting import figure
output_notebook()


# In[4]:

p = figure(plot_width=600, plot_height=400)


# In[5]:

p.circle(y, predicted, fill_color="white", line_color="green", legend="预测值",size=8)
p.line([y.min(), y.max()], [y.min(), y.max()],line_color='firebrick', legend="回归线",line_dash=[10,10],line_width=4)
p.legend.location = "top_left"
p.yaxis.axis_label = "预测值"
p.xaxis.axis_label = "测定值"
show(p)




有人问我为什么用Bokeh?

一来这货做出来的图颜值高,

二来可以和Flask搞(交)基(互),

嗯,你也可以用seaborn或者ggplot2




胶水语言博大精深,

本主只得一二为新人带路,

老鸟可去另一专栏:Python中文社区


新手可查阅历史目录:

Python数据分析及可视化实例目录



最后,别只收藏不关注哈

编辑于 2017-10-13

文章被以下专栏收录