大数据分析项目实践对北京朝阳区出租房房价的分析_第1页
大数据分析项目实践对北京朝阳区出租房房价的分析_第2页
大数据分析项目实践对北京朝阳区出租房房价的分析_第3页
大数据分析项目实践对北京朝阳区出租房房价的分析_第4页
大数据分析项目实践对北京朝阳区出租房房价的分析_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

成果形式:实践报告成果名称:对北京朝阳区出租房房价的分析大数据分析项目实践对北京朝阳区出租房房价的分析一、实践目的1.素养提升(1)知识的运用本次大数据分析项目的实践,不仅是对大二学习的数据库的一次复习,也是对我们自身使用统计学相关知识的考验。通过这次实践,我们能更加熟练地掌握数据库相关知识,并且对统计学也能有更加深入的了解和体悟。(2)相关软件的学习本次实践的目的是让我们体验并学会数据分析方面的小项目的实施。以此为目标,我们主要学习了三个软件Mysql、FineReport和Python,并附带学习了Mysql的可视化工具Navicat,Python的编辑软件Pycharm以及简易数据爬取工具八爪鱼采集器。(3)增强自身对社会的认识对于大部分学生,本次实践的实习单位,光环北京光环致成国际管理咨询有限公司,是学生第一次接触的正式岗位。负责教学我们的老师也是企业的正式员工,根据员工的精神面貌和行为特点可以让我们对社会有一个更加直接和清醒的认识。2.提供资本(1)面试资本通过本次实践,我们学习了数据分析方向小项目的实施方式以及相关软件在数据分析方面的应用,这个项目也确实是初级数据分析,此次的经历可以作为实习经历填入简历中以丰富自己的面试资本,并由此提高自己的社会竞争力。(2)调整自身在经过本次实践,对社会和职场有了模糊的印象后,可以对自己的生活方式做一个批判和改进,自己现在的生活方式是否正确以及是否做好了进入社会的准备。通过调整来使自己更加适应社会。3.自我认识增强(1)确定就业方向本次实践提供的是数据分析方向的实习,从这次实习我们可以大致联想出从事数据分析行业的工作方式和生活方式,这有利于我们排除不适合我们的就业方向,尽量在就业前选出我们适合并且舒适的职业。(2)调整未来规划通过本次实践,我们对数据分析领域的工作有了更加具体的认识,同时我们也认识到工作本身也伴随着工具的使用,因此在未来规划中加入对应工具的学习将会大大提升我们的社会竞争力,去争取更好的岗位。二、实践内容1.Mysql的学习以及应用首先,我们学习了Mysql软件的安装以及跳过Mysql验证的代码编写;因为Mysql直接运行很麻烦,于是我们继续安装了Mysql的可视化软件NavicatPremium,并且后续操作都会在该软件中进行;接下来我们开始学习各项数据库相关的代码如查看、创建、删除数据库等,并简单复习了数据库的相关知识;再之后我们学习了Navicat这一可视化工具在非编程时如何使用以及数据如何导入;最后我们学习了查询相关语句,该语句会在下一个学习的软件FineReport当中用到。2.FineReport的学习以及应用我们先学习了FineReport的安装,安装并不复杂;接下来我们学习了如何将FineReport与Mysql数据库相连接并且学习了简单的操作界面的使用;之后我们正式开始学习报表,首先是行式报表,过程很简单,是基础报表;然后我们进阶学习了交叉报表并了解了父子格和拓展方向的概念;最后我们学习了决策报表,通过决策报表我们可以制作包括折线图、和流向地图等一系列图表,同时我们也可以通过制作混合型决策报表把上述图形汇合在一个报表内。3.Python的学习以及应用我们首先学习了Python的安装,Python本身是一门编程的语言,因此我们又安装了JetBrainsPyCharm来对Python进行编辑操作。对于Python的学习其实就是对一串从网页爬取数据的代码的学习,在为期四天的Python学习中,这串代码被分到三天的课程中。在这之后,老师带我们从网页源代码中提取需要信息并设置Python的伪装。最后,以电影网站为例,我们学习了如何从网上爬取相应的字段信息。4.数据分析小项目的实践在完成数据爬取、数据收集和数据处理的课程后,下一步要做的是具体项目的实践,按照要求,我们需要使用上述三种软件或者给出的数据去完成一份最终报表。三、实践过程1.Mysql(1)安装我们通过老师下发的文件获得安装包,安装时语言选择utf8。在安装过程中我们要设置密码,但由于部分同学的电脑由于版本问题导致密码无法编辑,于是我们学习了如何通过修改Mysql的配置文件my.ini来实现跳过密码验证的功能。(2)数据库命令语句在安装完成后,我们就开始了对Mysql的数据库的命令语句的学习。数据库的命令语句主要包括对数据库、表和数据的直接处理三类。对数据库的处理有查看数据库、切换数据库创建和删除数据库,主要用到了show,use,create,drop。对表的处理有查看表、查看表结构、创建数据表、删除表内数据、删除全部数据保留表等,比如查看表结构使用的查询是:showtables;。最后是对数据的处理,有插入数据、查看数据、修改数据(有/无关联条件)、查询所有数据,比如查询所有数据:select*from表名;。(3)Navicat非编程语句的使用Navicat非编程语言除了可以实现简单的表的创建与删除之类的操作,最重要的就是与Mysql建立连接,使得可以对Mysql中的数据库进行可视化操作。如果无法建立连接,一般是用户名和密码的问题,可以通过修改配置文件来跳过验证。(4)Navicat内编程语句的使用Navicat非编程语句可以更加快捷地实现简单的Mysql语句,比如表格数据库的建立删除等,但更加复杂的数据处理则必须用编程来实现。比如,插入数据:insertinto表名(字段1,字段2,字段3)value(1,2,3);修改数据(关联条件):updateempsetempnc=123whereempnc=1;单行数据查询:select*fromempwheresal=5000;运算符查询:select*fromempwheresal>5000;别名的使用:selectempnoas编号,enameas姓名fromemp;and关键字的使用:select*fromempwheresal=5000andsal=3000。(5)函数的学习在Mysql的学习时间中,最后学习的是函数。一共介绍了五种函数,分别是count函数、max函数、min函数、avg函数和加密函数。前四种函数很简单,分别是用来计数、求最大、求最小、求平均的。值得一提的是加密函数,老师一共介绍了两种加密方式:selectpassword(‘root’);输出后会得到一个32位的字符串,另一种也就是换了个算法:selectMD5(‘root’);。2.FineReport(1)安装FineReport的安装包较Mysql的要大,因此不使用网上下载的形式,安装包通过U盘拷贝的方式在学生中传递。(2)与数据库的连接在服务器选项中选择定义数据库连接,选择JDBC模式,然后在数据库类型中选择Mysql的数据库类型。之后要对URL进行修改,在localhost后要加上”:3306”并在最后加上要连接的数据库名字。(3)行式报表的学习行式报表在报表制作中是非常简单的基础报表。在新建报表后,导入数据库,将选中的变量拖拽至同一行就完成了行式报表的制作,为了美观可以继续编辑行标题以及自定义边框。在教学中还有分界线的概念,文本中的数据长度超过分界线的部分会被强制分页。分界线无法通过直接拖拽来进行操作,必须选定模板中的页面设置,通过自定义纸张大小类型来改变。(4)交叉报表的学习交叉报表比起行式报表多出了列变量。在制作交叉报表前,我们先学习了单元格拓展方向和父子格这两个概念。单元格拓展方向是指变量所附带的数据排列方向,有横向和纵向两种,根据交叉表的最终表现要求的不同会需要使用不同的拓展方向。父子格是指两个单元格的从属关系,子格根据父格来进行数据排列,但父格不受子格的影响。父子格也分为左父格和上父格,分别是对应父格相对于子格的位置。(5)决策报表决策报表主要是把数据制作成各种图表,比如饼图、地图、雷达图和词云等。在课时中,我们主要学习了地图(新特性)、点地图、柱状图、饼图和混合型报表,我主要介绍混合型报表。混合型报表本身是一个空模板,需要你将你想要制作的图形拖入相应位置中。在制作混合型报表时,常常会遇到数据无法直接使用的情况,这时就需要在左下角的数据库查询中手动输入代码来对数据做一些处理。在这一过程中,我们新学到了oederby语句、desclimit以及unionall语句。3.Python(1)安装Python的安装相对简单,要注意的只有如果曾经安装过旧版本,那在安装新版本前必须清除注册表。(2)数据类型的介绍对于我们将要实现的项目,我们只用接触到Python中相对简单的数据类型,即int整数、float小数类型、str字符串类型、字典类型,相应也有语句,如b=int(a),意思是把字符串b转化为int类型并赋值给a。字典类型是一个字段a={””,””}。(3)在网页获取数据的方式在网页中获取数据需要用到网页的代码,我们直接看到的数据图片都会在代码中显示,而如何在复杂的代码中把需要的数据爬取出来就是我们学习Python的原因。一般除了IE浏览器,普通浏览器都会有审查元素的功能,如果没有找到也可以通过按F12唤出。在网页中我们进行的操作不多,主要把用户名和相应的代码复制了,剩下的大部分还是在Pycharm中通过编程进行。(4)爬取数据的数据代码#发送请求

#引入导入使用urllib的包

#request的模块(request.py)

fromurllibimportrequest

frombs4importBeautifulSoup

foriinrange(10):

page=str(i*10)

url="/board/4?offset="+page

header={"User-Agent":"Mozilla/5.0(WindowsNT10.0;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/49.0.2623.221Safari/537.36SE2.XMetaSr1.0"}

#在request模块中,有个大写的Request,可以封装headers信息

r=request.Request(url,headers=header)

#request中的urlopen模块,可以打开网页

#把封装好的信息放到urlopen中

#urlopen发送请求接受响应

response=request.urlopen(r)

#读取响应信息

html=response.read().decode()

#print(html)

#解析响应解析源代码

#创建soup对象参数1等待被解析的对象参数2解析器

soup=BeautifulSoup(html,"html.parser")#lxml

index=soup.select("i.board-index")

name=soup.select("a")

star=soup.select("p.star")

releasetime=soup.select("p.releasetime")

img=soup.select("img.board-img")

foriinrange(10):

print(index[i].text,name[i].text,star[i].text.strip(),releasetime[i].text,img[i].get("data-src"))四、实践体会经过十天的校内短学期企业项目实习实践,前三天通过对mysql的学习对数据库做了初步的了解,了解了数据库的重要性,以及数据库在数据统计中所占的重要地位。对数据库做了一定的了解之后的三天我们开始了帆软的学习,FineReport报表软件是一款纯Java编写的、集数据展示(报表)和数据录入(表单)功能于一身的企业级web报表工具,它“专业、简捷、灵活”的特点和无码理念,仅需简单的拖拽操作便可以设计复杂的中国式报表,搭建数据决策分析系统。我们通过对帆软的学习,知道了如何使我们的数据库中的数据具体的表现出来,以及如何让数据能过更好的表达于人。然后,只会数据的表达是远远不够的,我们还需要收集数据,学会更快的收集我们所需要的数据。所以最后四天,我们学习了使用python,学习如何使用python爬取数据。Python爬虫即使用Python程序开发的网络爬虫(网页蜘蛛,网络机器人),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。其实通俗的讲就是通过程序去获取web页面上自己想要的数据,也就是自动抓取数据。通过对python的学习,我们能够加快对数据的收集,以及对数据的处理,加强我们得统计数据的效率。Python就是对数据的爬取,可以让我们直接在网页上高效地获取数据,恭喜我终于获得了除了统计年鉴之外的数据整理方式。主要是python能主动翻页,这样之前繁杂的数据也有了短暂收集完毕的可能。Mysql是一个数据库,通过对它的学习,我多少回忆起了一些大二学习的数据库的知识。Mysql和python一样,主要靠的是编码

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论