“这篇博客主要分享一个数据分析初级项目,基本概括了一个完整项目的各个分析阶段,但是数据获取是直接在链家官网爬取的,这部分先不分享了。过程中还有很多不足的地方,希望各位大佬多多指点。”
1.数据预处理
首先导入科学计算包
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib
import matplotlib.pyplot as plt
from IPython.display import display
plt.style.use('fivethirtyeight')
sns.set_style({
'font.sans-serif':['simhei','Arial']})
%matplotlib inline
读取数据,对数据进行初步观察,查看缺失值和异常值,并进行描述性统计
#导入数据,查看前三行
lianjia_df = pd.read_csv("C:\Jupyter_working_path\Projects\lianjia.csv")
display(lianjia_df.head(3))
初步观察到有11个特征变量,Price为目标变量
#检查缺失值情况
#检查缺失值情况
lianjia_df.info()
很明显Elevator特征有缺失值
#描述性统计
lianjia_df.describe()
可见,size特征最大值1019平米,最小值2平米
#添加房屋特征均价
df = lianjia_df.copy()
df['PerPrice'] = lianjia_df['Price']/lianjia_df['Size']
#重新摆放列位置
columns = ['Region','District','Garden','Layout','Floor','Year','Size','Elevator','Direction','Renovation','PerPrice','Price']
df = pd.DataFrame(df, columns = columns)
#重新审视数据集
display(df.head(3))
2.特征分析
接下来对特征变量进行逐一分析
(1)Region特征分析
#对二手房区域分组对比二手房数量和每平方米房价
df_house_count = df.groupby('Region')['Price'].count().sort_values(ascending