基于python的二手房数据分析,python二手房价分析
第一篇、实验简介2、模块设计1、数据准备2、绘图3、第三方库简介1、熊猫库2、Pye Charts库(敲黑板)3、Matplotlib库4、XLRD库4、代码实现5、效果和结论参考一、实验简介李华(化名)被逼买新房,决定抄底二手房。下面我们用python数据来分析一下全国二手房市场。康康哪个省的二手房建筑面积最大?
2.模块设计1。数据准备数据来源于房天下网站爬虫获取的数据。
这个程序使用了pandas、matplotlib、Pyecharts等第三方库。通过这些库的使用,我们对python的计算生态和基本语法的应用有了初步的了解。
我们先来看数据:
# -*-编码=utf-8 -*-
进口熊猫作为pd
#将pyecharts导入为pye
df=pd.read_excel(二手_房子. xls )
ans=df.head()
以下是excel表格中的前几行:
0芳香的花城楠楠117.5100 1.90 1000000001
安徽省长丰县双墩镇魏明翰林花园,南南0.4366 1.80,2007 . 5466666666867
安徽省长丰县双墩镇军港新村南区南南,0.3300 0.76 5676766736
新疆阿克苏市阿克苏左岸,明珠,香榭楠楠28360.888686886616
在新疆阿克苏市的左岸,4号,珍珠的住所和芬芳的大厦,36460.88648686461
纬度价格完成年份
0 32.491436南京2017
1 32.479336南京2015
2 32.013783南2019
3 41.184479南2016
41.183842 Nan20192。地图的绘图可视化主要通过Pyecharts包实现,Pyecharts主要通过两个类实现:
地图可视化以行政区块为数据的映射对象,即行政区块整个区域的颜色和值形成映射关系;Geo类的可视化方法是使用经纬度坐标作为数据映射对象。与地图相比,Geo相对灵活,可以导入不同的绘图对象。Map传入的数据类型是二维列表,列表的每个元素都是[name,data]。请注意,该名称必须对应于maptype级别。
例如,如果maptype的默认级别是中国,则名称级别应该是省(或省、市)级;如果maptype设置为广东,名称级别应该是市级,比如中山。
三。第三方库介绍1。熊猫图书馆可以在anaconda创建虚拟环境后直接pip。
Pandas是一个开源的、BSD许可的库,提供高性能、易于使用的数据结构和数据分析工具。
熊猫这个名字来源于术语“面板数据”和“python数据分析”。
Pandas是一个分析结构化数据的强大工具集,基于Numpy(提供高性能矩阵运算)。
熊猫可以从CSV、JSON、SQL、Microsoft Excel等各种文件格式导入数据。
Pandas可以对各种数据执行操作,如合并、整形、选择以及数据清理和数据处理功能。
2.Pyecharts库(敲黑板)anaconda没有这个库,需要手动下载(https://pypi.org/project/pyecharts35/#modal-close)放在anaconda 1 \ lib \ site-packages \ scripts文件夹,然后在Anaconda的提示下切换虚拟环境,再通过pip install下载。
地图可视化主要通过Pyecharts包实现,Pyecharts主要包括两个类:
地图可视化以行政区块为数据的映射对象,即行政区块整个区域的颜色和值形成映射关系;类可视化的方式是用经纬度坐标作为数据的映射对象。与地图相比,Geo相对灵活,可以导入不同的绘图对象。Map传入的数据类型是二维列表,列表的每个元素都是[name,data]。
请注意,该名称必须对应于maptype级别。
例如,如果maptype的默认级别是中国,则名称级别应该是省(或省、市)级;如果maptype设置为广东,名称级别应该是市级,比如中山。
3.Matplotlib库matplotlib是Python的绘图库。它可以与NumPy一起使用,为MatLab提供了一个有效的开源替代方案。它还可以与图形工具包一起使用,比如PyQt和wxPython。
4.xlrd库为了从中读取Excel电子表格中的数据,我们还需要使用xlrd库。当然,可以安装pip:
pip安装xlrd
四。代码实现#!/usr/bin/python3
# -*-编码=utf-8 -*-
进口熊猫作为pd
#将pyecharts导入为pye
从pyecharts将选项作为选项导入
从pyecharts.charts导入地图
将matplotlib.colors作为cs导入
df=pd.read_excel(二手_房子. xls )
ans=df.head()
#打印(ans)
数据=df
Data=data.groupby([省]) [建筑面积]]。sum()。sort _ values(升序=false)
data _ pair=[[省,地区]为省,地区为邮政编码(data.index,data)]
数据对[:5]
数据=df
Data=data.groupby([省]) [建筑面积]]。sum()。sort _ values(升序=false)
data _ pair=[[省,地区]为省,地区为邮政编码(data.index,data)]
m=地图()
#添加省级数据以在地图中添加聚合
m.add(
series_name=“”,
数据对=数据对,
maptype=中国,
label_opts=opts。LabelOpts(is_show=False),
is_map_symbol_show=False,
)
m.set_global_opts(
title_opts=opts。标题选项(
Title=全国各省二手房总建筑面积分布图,
副标题=数据来源:房天下单位:m2 ,
pos_left=center ,
pos_top=top ,
title_textstyle_opts=opts。TextStyleOpts(
font_size=25
),
),
#颜色设置
visualmap_opts=opts。VisualMapOpts(
is _ calculatable=True,
Pos_left=10 ,#颜色条和左侧之间的间距
Min_=100000,#颜色条映射值的最小值
Max _=1000000,#颜色条映射值的最大值
Range_text=[High , Low],颜色条两端的# Text
range _ color=[cs . tableau _ colors[ tab:blue ],#颜色渐变范围最小值为蓝色,其次为橙色,最大值为红色。
cs。TABLEAU_COLORS[tab:orange],
cs。TABLEAU_COLORS[tab:red]],
textstyle_opts=opts。TextStyleOpts(color=black ),
),
)
M.render_notebook()五、效果图和结论输出支持交互性,具体体现在:
(1)将鼠标悬停在任一省份的面积块上,会弹出对应省份的总建筑面积数值;
(2)颜色栏上方和下方的三角形按钮支持鼠标拖动。当数据被拖动时,地图中相应值的色块也会发生变化;
(3)当鼠标悬停在地图上时,可以通过滑动鼠标中轮来缩放地图的大小;
(4)用鼠标点击任意一个省份位置,不释放鼠标,即可移动整个地图位置。
在jupyter笔记本上运行上面的代码,得到下图:
如果鼠标点击进入“甘肃”,就会显示甘肃相应的数据。
从输出图可以看出:样本数据中,二手房建筑面积最大的省份是江苏省(颜色最红最深)。
参考文献(1)通过对熊猫的解释进行分组
(2)用xlrd和xlwt读写excel
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。