Python如何实现对某地区二手房房价进行数据分析
发表于:2025-01-17 作者:千家信息网编辑
千家信息网最后更新 2025年01月17日,这篇文章主要介绍了Python如何实现对某地区二手房房价进行数据分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。房价数据分析数据简单
千家信息网最后更新 2025年01月17日Python如何实现对某地区二手房房价进行数据分析
这篇文章主要介绍了Python如何实现对某地区二手房房价进行数据分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
房价数据分析
数据简单清洗
data.csv
数据显示
# 导入模块import pandas as pd # 导入数据统计模块import matplotlib # 导入图表模块import matplotlib.pyplot as plt # 导入绘图模块# 避免中文乱码matplotlib.rcParams['font.sans-serif'] = ['SimHei'] # 设置字体为SimHei显示中文matplotlib.rcParams['axes.unicode_minus'] = False # 设置正常显示字符,使用rc配置文件来自定义# 简单清洗data = pd.read_csv('data.csv') # 读取csv数据del data['Unnamed: 0'] # 将索引列删除data.dropna(axis=0, how='any', inplace=True) # 删除data数据中的所有空值data['单价'] = data['单价'].map(lambda d: d.replace('元/平米', '')) # 将单价"元/平米"去掉data['单价'] = data['单价'].astype(float) # 将房子单价转换为浮点类型,float(data['',单价])data['总价'] = data['总价'].map(lambda d: d.replace('万', '')) # 将总价"万"去掉data['总价'] = data['总价'].astype(float) # 将房子总价转换为浮点类型,float(data['',单价])data['建筑面积'] = data['建筑面积'].map(lambda p: p.replace('平米', '')) # 将建筑面积"平米去掉"data['建筑面积'] = data['建筑面积'].astype(float) # 将将建筑面积转换为浮点类型
各区均价分析
# 获取各区二手房均价分析,根据需求,,进一步处理数据,如果要写相应算法,需要根据算法所需求的数据处理def get_average_price(): group = data.groupby('区域') # 将房子区域分组 average_price_group = group['单价'].mean() # 计算每个区域的均价,average_price_group字典 x = average_price_group.index # 区域 y = average_price_group.values.astype(int) # 区域对应的均价a =['t':'123'] a.keys() return x, y # 返回区域与对应的均价,region二关 average_price均价# 显示均价条形图def average_price_bar(x, y, title): plt.figure() # 图形画布 plt.bar(x, y, alpha=0.8) # 绘制条形图 plt.xlabel("区域") # 区域文字 plt.ylabel("均价") # 均价文字 plt.title(title) # 表标题文字 # 为每一个图形加数值标签 for x, y in enumerate(y): plt.text(x, y + 100, y, ha='center') plt.show()if __name__ == '__main__': x, y = get_average_price() title = '各区均价分析' average_price_bar(x, y, title)
运行如图
全市二手房装修程度分析
# 获取各区二手房均价分析,根据需求,,进一步处理数据,如果要写相应算法,需要根据算法所需求的数据处理def get_decorate_sum(): group = data.groupby('装修') # 将房子区域分组 # decorate_sum_group = group['装修'].count() # 计算每个区域的均价,average_price_group字典 decorate_sum_group = group.size() # 计算每个区域的均价,average_price_group字典 x = decorate_sum_group.index # 区域 y = decorate_sum_group.values.astype(int) # 区域对应的均价a =['t':'123'] a.keys() return x, y # 返回区域与对应的均价,region二关 average_price均价# 显示均价条形图def average_price_bar(x, y, title): plt.figure() # 图形画布 plt.bar(x, y, alpha=0.8) # 绘制条形图 plt.xlabel("装修类型") # 区域文字 plt.ylabel("数量") # 均价文字 plt.title(title) # 表标题文字 # 为每一个图形加数值标签 for x, y in enumerate(y): plt.text(x, y + 100, y, ha='center') plt.show()if __name__ == '__main__': x, y = get_decorate_sum() title = '全市二手房装修程度分析' average_price_bar(x, y, title)
各区二手房数量所占比比例
# 获取各区二手房各区比例数量,进一步处理数据,如果要写相应算法,需要根据算法所需求的数据处理def get_proportional_quantity(): area = data['区域'].groupby(data['区域']).count() # 将房子区域分组比例数量 areaName = (area).index.values # 将房子区域分组比例取名 return area, areaName# 显示均价条形图def proportional_quantity_pie(area, areaName, title): plt.figure() # 图形画布 plt.pie(area, labels=areaName, labeldistance=1.1, autopct='%.1f%%', shadow=True, startangle=90, pctdistance=0.7) plt.title(title, fontsize=24) # 表标题文字 plt.legend(bbox_to_anchor=(-0.1, 1)) # 作者标题 plt.show()if __name__ == '__main__': # 对应x,y area, areaName = get_proportional_quantity() title = '各区二手房数量所占比比例' proportional_quantity_pie(area, areaName, title)
热门户型均价分析
# 获取各区热门户型分析,根据需求,,进一步处理数据,如果要写相应算法,需要根据算法所需求的数据处理def get_hot_portal(): # 另外一种方法获取并取值 """ group = data.groupby('户型').size # 将房子区域分组 sort_data = group.sort_values(ascending=False) # 将户型分组数量进行降序 five_data = sort_data.head() # 提取前5组户型数据 house_type_mean = data.groupby('户型')['单价'].mean().astype(int) # 计算每个户型的均价 x = house_type_mean[five_data.index].index # 户型 y = house_type_mean[five_data.index].value # 户型对应的均价 """ group = data.groupby('户型') # 将房子区域分组 a = group['户型'].count().sort_values(ascending=False).head() # 计算每个户型的均价 字典 b = group['单价'].mean()[a.index] # 区域对应的均价a =['t':'123'] a.keys() x = b.index y = b.values.astype(int) return x, y # 返回区域与对应的均价,region二关 average_price均价# 显示均价横条形图def hot_portal_barh(x, y, title): plt.figure() # 图形画布 plt.barh(x, y, alpha=0.9, color='red') # 绘制条形图 plt.xlabel("均价") # 区域文字 plt.ylabel("户型") # 均价文字 plt.title(title) # 表标题文字 plt.xlim(0, 15000) # X轴的大小 # 为每一个图形加数值标签 for y, x in enumerate(y): plt.text(x + 100, y, str(x) + '元', ha='left') plt.show()if __name__ == '__main__': x, y = get_hot_portal() title = '热门户型均价分析' hot_portal_barh(x, y, title)
前面三个图较简单,最后相对于前面三个较为麻烦
先获取得到热门户型前五名,通过户型得到对应的户型的平均值
感谢你能够认真阅读完这篇文章,希望小编分享的"Python如何实现对某地区二手房房价进行数据分析"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
区域
数据
户型
分析
单价
文字
二手房
房子
算法
处理
图形
条形
需求
分组
建筑面积
总价
数量
面积
标题
比例
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
帮助网络安全罪图解
字典数据怎么存进数据库
数据库管理系统英语缩写
图书数据库是否入无形资产
网络安全问题表现形式
通信弱电网络技术员做什么
网络安全主题微网文
光遇进不去服务器繁忙ios
access数据库写入
软件开发后端 软件测试
java从数据库取数据
城市数据库设计
数据库怎么让like走索引
h3c 虚拟服务器
网络安全教育工具介绍
儿童网络安全拍手歌主要内容
adsl服务器建网站
全文翻译软件开发
大创网络安全项目
thread存入数据库
互联网领先科技排名
cache数据库 查询
运营 适用网络网络安全法
网络技术核心论
如何隐藏管理中的服务器
软件开发排版模板
在数据库中怎样将带有外键的删除
电脑服务器最常见的问题
坦荡网络技术
w7服务器管理在哪里设置