没有合适的资源?快使用搜索试试~ 我知道了~
毕业论文-基于python对“中国新一线城市”2017年新建商品房房价数据挖掘.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 186 浏览量
2024-03-29
19:53:28
上传
评论
收藏 791KB DOCX 举报
温馨提示
试读
21页
毕业论文-基于python对“中国新一线城市”2017年新建商品房房价数据挖掘.docx
资源推荐
资源详情
资源评论
I
基于 Python 对“中国新一线城市”2017 年新建商品房房价
数据的挖掘分析
摘要:在大数据的背景下,各行各业的发展对数据的依赖度越来越高。利用数据
分析,为决策者提供决策依据,更是成为当前商业形式的一大趋势。同时房价信
息牵动着,反映着很多经济、民生、就业的信息。所以房价信息是极有价值的一
种数据信息。在对房价数据分析的难题有二,一是大量数据的获取,二是对数据
的分析和挖掘价值。本文将介绍 python 抓取数据和分析数据,同时提取出具有
商业价值的数据。本文将分为两大模块,一是利用 python 获取数据,二则是利
用 python 分析数据。
关键词:python;数据分析;网络爬虫;python 数据分析
Abstract: In the context of big data, the development of all walks of life
increasingly depends on data. Using data analysis to provide decision-making basis
for decision makers has become a major trend in the current business model. At the
same time, the price information reflects, reflecting many economic, livelihood and
employment information. So house price information is a very valuable kind of data
information. There are two problems in the analysis of house price data. One is the
acquisition of large amounts of data, and the other is the analysis and excavation of
data. This article will introduce python to grab data and analyze data while extracting
commercially valuable data. This article will be divided into two major modules, one
is to use python to obtain data, and the other is to use python to analyze data.
Key words: python; data analysis; web crawler; python data analysis;
II
目 录
摘 要 ............................................................I
Abstract .............................................................I
目 录 ...........................................................Ⅱ
1 利用爬虫获取数据..................................................1
1.1 爬虫原理 ......................................................1
1.2 爬虫程序编写 ..................................................1
1.2.1 框架还是原生 ..............................................1
1.2.2 创建项目 ..................................................2
1.2.3 定义 Item .................................................3
1.2.4 爬虫编写 .................................................4
1.3 数据存储 ......................................................6
1.3.1 编写 item pipeline ...........................................6
1.3.2 启动 item pipeline ...........................................6
1.3.3 开始运行爬虫 ..............................................7
2 数据预处理........................................................7
2.1 数据清洗 ......................................................8
2.2 数据集成 ......................................................8
2.3 数据变换 ......................................................9
3 数据可视化........................................................9
3.1 各城市新房信息可视化 .........................................10
3.2 各城市房价信息可视化 .........................................11
3.3 各城市房价中位数和平均数可视化 ...............................14
4 数据挖掘.........................................................15
4.1 可行性分析 ...................................................15
4.2 线性回归 .....................................................16
4.3 训练数据,建立回归方程 .......................................16
参考文献 ..........................................................18
致 谢...........................................................19
第 1 页(共 19 页)
1 利用爬虫获取数据
随着互联网和大数据时代的到来,互联网和大数据的发展相当的迅速和空前,
正改变着各行各业的生活和工作方式,这也是为什么在我们身边有这么多互联网
+的项目或以此为名号的产品的原因。而网络数据爆炸性的增长,对数据分析提
出了新的挑战。即使现在的搜索引擎有了很大的进步,但在浩瀚如宇宙的网络数
据中提取满足数据需求的数据,仍然是一件困难和费时的事情。尤其是一些特殊
的数据,单单利用搜索引擎是不能满足数据需求的。而利用网络爬虫自定义的,
有目的性的爬取数据,能够将数据批量获取汇总,格式化为满足数据分析需求的
数据。这将极大的提升工作效率。
1.1 爬虫原理
网络爬虫又被叫做网络蜘蛛,网络机器人,简称爬虫,简单的解释就是,一
种按照事先指定好的策略,按照一定规则和目的自动浏览互联网,保存互联网信
息和数据的程序。对爬虫程序应用的最为普遍的就是搜索引擎这一类的网站,这
一类的网站通常会通过爬虫程序更新自身的网站内容。并且近年火热的大数据,
其中绝大部分的大数据初创公司依然会依靠爬虫程序来获取各种维度的数据集。
这两类的爬虫程序一般比较复杂和高难度,用以达到高可用的爬虫程序,使其能
持续性的运行,源源不断的获取数据。当然本文的爬虫类型和形态还不能达到大
型的网络爬虫项目。但已经足以满足本文需要的数据分析需求。
爬虫的工作流程大致分为五个步骤,发起网络请求,保存网页内容,解析网
页内容提取数据,格式化数据内容,保存数据。
1.2 爬虫程序编写
在本节,笔者会完成本文获取数据的爬虫程序的编写,本次获取数据的爬虫
会基于著名的爬虫框架 scrapy 进行开发编写。
1.2.1 框架还是原生
第 2 页(共 19 页)
大部分程序可以分为,计算密集型和 IO 密集型任务程序,爬虫属于 IO 密集
型任务。也就是说,影响爬虫性能以及速度的因素通常不是 CPU 的计算能力,相
比较计算量巨大的程序来说,爬虫程序更多的时间花费在了 I/O 操作当中。所以
在解决爬虫效率瓶颈上,需要从如何充分利用 I/O 等待的时间的角度解决问题。
并且由于 python 的特性,有全局锁的限制,使用多进程来说往往会是更好的选
择。
业界著名的开源爬虫框架 scrapy,自身的设计实现拥有一个默认 10 个线程
的 twisted 线程集,这是一个可以极大提升爬虫抓取效率的解决方案。而 scrapy
是高效率的爬虫框架,就算是单机运行,一个小时也可以处理几十万条数据。省
去了自己编写爬虫的效率问题和线程安全问题。
同时,scrapy 对网络请求,网页解析,数据存储,都有很好的封装。让编写
爬虫更简单快捷。
开发网络爬虫的大体思路几乎大小爬虫都是一致的,从而很多开发团队都会
有自己的一套爬虫框架,或则是使用开源的 python 爬虫框架。如此做可以极大
减少“重复造轮子”,将效率提升的同时,还可以使项目更加规范化,大大方便
日后对项目的维护和管理。鉴于以上原因,本文爬虫部分项目将使用 python 著
名的爬虫框架 scrapy 进行开发。
1.2.2 创建项目
首先进到将要用做项目路径的目录,使用 scrapy 命令创建一个爬虫项目,用
到的命令是 scrapy startproject HousePrice,创建完毕后,会在项目目录下发
现如下图所示几个文件:
第 3 页(共 19 页)
图 1-1 项目列表
这些文件分别代表的含义是:
Items.py:项目中的变量文件集合,初始化抓取的数据字段;
Settings: 项目中的配置文件,定义了爬虫程序运行的规则,以及依赖的相
应服务和配置参数;
Pipelines: 项目中管理存储数据的文件,管理程序运行最后阶段存取的设置;
Spiders:该目录是存放爬虫文件的地方。
1.2.3 定义 Item
编辑 Items.py 这个文件,添加变量名,确认我们需要爬取的字段有哪些,
并且作为爬取到的数据的容器。在 scrapy 中将所要提取的字段名全部定义到
items 文件当中,这个文件需要继承自 scrapy.Item 这个类,并且需要将字段名
定义为 scrapy.Field()类型。编写起来也很简单,只是相对于以往开发爬虫多
了对字段的类型定义和类的继承与封装。
接下来去到有房价信息的网站,将需要抓取下来的字段定义好,就可完成
Item 的定义。经过对房价信息网站的调研,我们抓取以下字段,楼盘名,地理
位置,房型,区域空间,销售情况做数据分析。
剩余20页未读,继续阅读
资源评论
ohmygodvv
- 粉丝: 506
- 资源: 2319
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功