目录
一、需求说明
深圳二手房数据分析及价格预测的总体目标:基于Python数据科学基础,利用所学Python语言和数据分析的相关知识,对深圳二手房价数据进行分析和建立房价预测模型进行预测,实现数据合并对数据质量进行检测和自变量与因变量进行可视化分析建立预测模型,并能使用户通过其显示结果和可视化对每种特征的变化有一个直观的了解,从而达到二手房价预测的目的。
1.1基本任务
- 数据质量检验,筛选出有价值的数据。
- 因变量分析:对单位房价进行分析。
- 自变量分析和可视化:实现对深圳二手房价各种特征的分析。包括分类变量和连续变量。
- 对数据集进行抽样。分训练数据和测试数据作测试。对数据进行二分类处理,分类变量生产哑变量。
- 线性回归模型,对房价进行预测。
1.2 任务目的
1.数据检测模块
本模块的主要目的是导入数据集对数据进行合并,数据检测,数据预处理,使数据更加有合理性。
2.因变量分析模块
本模块的主要目的是对单位面积房价分析,显示直方图单位面积房价各区变化,防止出现异常值的错误。
3.自变量分析模块
本模块的主要目的是对自变量分析,查看整体数据有没有异常值,分为分类变量和连续变量,更好的查看。
4.自变量对因变量可视化模块
本模块的主要目的是利用可视化,可以更直观的展现这些自变量是否对因变量有影响,相关度大不大,为下面的预测提供更好的数据。
5.建立预测模型模块
本模块的主要目的是划分数据集,对数据进行更一步的处理,对模型进行训练,为下一个模块更好的预测。
6. 预测模块
本模块的主要目的是预测一个客户所需求的房子的房价
1.3测试数据
- 找一个条件为南山区、有3个房间、面积大概再80㎡、有地铁、学区房的房子的大概花费
二、概要设计说明
数据检测模块 |
自变量分析模块 |
因变量分析模块 |
可视化模块 |
建立预测模型模块 |
预测模块 |
三、详细设计
3.1 数据检测模块
导入库读取数据
import pandas as pd
import os
file_path="D:\jupyter\data"
#读取file_path目录下的所有文件
file_name=os.listdir(file_path)
df=pd.DataFrame()
#读取数据
for i in file_name:
file=pd.read_excel(os.path.join(file_path,i))
df=df.append(file)
df.head()
print(df.describe()) #查看数据描述
数据的处理(异常值,重复值,缺失值)
df=df.drop(columns='Unnamed: 0')
#缺失值
df.isna().sum() #是否有缺失值总数
#重复值
df.duplicated().sum()
#删除重复值
df=df.drop_duplicates()
area_map={'baoan':'宝安','dapengxinqu':'大鹏新区','futian':'福田','guangming':'光明',
'longhua':'龙华','luohu':'罗湖','nanshan':'南山','pingshan':'坪山','yantian':'盐田'
,'longgang':'龙岗'}
df['district']=df['district'].apply(lambda x : area_m