快捷搜索:  汽车  科技

python用线性回归预测房价:python爬虫实战爬取某城市房价并分析各区县房价均值

python用线性回归预测房价:python爬虫实战爬取某城市房价并分析各区县房价均值关键代码:爬取了近400个有售价的楼盘,并存到data.cvs文件中。matplotlib:绘图包数据源:爬取的是安居*网站合肥市新房售价数据,如下图所示,可以爬取楼盘所在小区和售价。

本文介绍python爬虫实例使用urllib爬取数据,使用BeautifulSoup提取信息,使用pandas分析数据,使用matplotlib绘图,完整代码获取方式见文章末尾。

1. 使用技术

urllib:网络请求包

BeautifulSoup:html分析包

pandas:数据分析包

matplotlib:绘图包

2.爬取数据

数据源:

爬取的是安居*网站合肥市新房售价数据,如下图所示,可以爬取楼盘所在小区和售价。

python用线性回归预测房价:python爬虫实战爬取某城市房价并分析各区县房价均值(1)

爬取了近400个有售价的楼盘,并存到data.cvs文件中。

关键代码:

req = request.Request(url headers=headers) page = request.urlopen(req) #爬取的文本 contents = page.read() #获取class为“pl-name”第一个元素的文本 name = item.select(".lp-name")[0].get_text()

抓取的数据具体如下图所示:

python用线性回归预测房价:python爬虫实战爬取某城市房价并分析各区县房价均值(2)

爬取的数据

3.分析数据

关键代码:

#读取数据 datas = pd.read_csv("./datas.cvs") #根据area分组求均值 ave = datas.groupby("area")[["price"]].mean() #防止中文乱码问题 mpl.rcParams['font.sans-serif']=[u'SimHei'] mpl.rcParams['axes.unicode_minus']=False #设置为柱状图 ave.plot(kind='bar') #设置x轴距底部边距,完整显示x轴label plt.subplots_adjust(left=0.1 right=0.9 top=0.9 bottom=0.25) plt.show()

分析结果:

各区域楼盘平均值如下图所示:

python用线性回归预测房价:python爬虫实战爬取某城市房价并分析各区县房价均值(3)

各区域楼盘均价

4.图表中文显示问题

Mac需要先下载simhei.ttf字体并安装,将simhei.ttf拷贝到~python安装路径/site-packages/matplotlib/mpl-data/fonts/ttf目录中;

修改~python安装路径/site-packages/matplotlib/mpl-data/matplotlibrc文件。找到如下两项,去掉注释。

font.family : sans-serif font.sans-serif : SimHei Bitstream Vera Sans Lucida Grande Verdana Geneva Lucid Arial Helvetica Avant Garde sans-serif

将找到axes.unicode_minus,将True改为False,并去掉注释;

mpl.rcParams['font.sans-serif']=[u'SimHei'] mpl.rcParams['axes.unicode_minus']=False

源码获取:关注后私信“python爬虫”即可获取

猜您喜欢: