import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.read_csv('二手房数据.csv',encoding='gb18030')
df.head()
|
市区 |
小区 |
户型 |
朝向 |
楼层 |
装修情况 |
电梯 |
面积(㎡) |
价格(万元) |
年份 |
0 |
朝阳 |
育慧里一区 |
1室0厅 |
西 |
7 |
精装 |
有电梯 |
52.0 |
343.0 |
2001 |
1 |
朝阳 |
大西洋新城A区 |
2室2厅 |
南北 |
10 |
精装 |
有电梯 |
86.0 |
835.0 |
1999 |
2 |
朝阳 |
团结湖路 |
2室1厅 |
东西 |
6 |
精装 |
无电梯 |
65.0 |
430.0 |
1980 |
3 |
朝阳 |
尚家楼48号院 |
2室1厅 |
南北 |
12 |
精装 |
有电梯 |
75.0 |
610.0 |
1998 |
4 |
朝阳 |
望京西园一区 |
3室2厅 |
南北 |
6 |
精装 |
无电梯 |
115.0 |
710.0 |
1997 |
df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 23677 entries, 0 to 23676
Data columns (total 10 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 市区 23677 non-null object
1 小区 23677 non-null object
2 户型 23677 non-null object
3 朝向 23677 non-null object
4 楼层 23677 non-null int64
5 装修情况 23677 non-null object
6 电梯 15420 non-null object
7 面积(㎡) 23677 non-null float64
8 价格(万元) 23677 non-null float64
9 年份 23677 non-null int64
dtypes: float64(2), int64(2), object(6)
memory usage: 1.8+ MB
df.describe()
|
楼层 |
面积(㎡) |
价格(万元) |
年份 |
count |
23677.000000 |
23677.000000 |
23677.000000 |
23677.000000 |
mean |
12.764877 |
99.388616 |
610.668319 |
2001.326519 |
std |
7.644138 |
51.270606 |
411.452107 |
9.001996 |
min |
1.000000 |
15.000000 |
60.000000 |
1950.000000 |
25% |
6.000000 |
66.000000 |
365.000000 |
1997.000000 |
50% |
11.000000 |
88.000000 |
499.000000 |
2003.000000 |
75% |
18.000000 |
118.000000 |
717.000000 |
2007.000000 |
max |
57.000000 |
1019.000000 |
6000.000000 |
2017.000000 |
缺失值处理
df.isnull().any()
市区 False
小区 False
户型 False
朝向 False
楼层 False
装修情况 False
电梯 True
面积(㎡) False
价格(万元) False
年份 False
dtype: bool
df['电梯'].isnull().sum()
8257
df['电梯'].unique()
array(['有电梯', '无电梯', nan], dtype=object)
df['电梯'].fillna('不清楚',inplace=True)
df['电梯'].unique()
array(['有电梯', '无电梯', '不清楚'], dtype=object)
查看朝房屋朝向数据
df['朝向'].unique()
array(['西', '南北', '东西', '南西', '西南', '东南', '南', '东北', '东', '西北', '北'],
dtype=object)