租房数据-数据分析


<br

租房数据分析


先导入相关的数据处理库
import numpy as np
import pandas as pd

import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
%matplotlib inline

一、 读取数据,并简单处理数据

df = pd.read_csv("租房信息.csv")
df.head()



1.1 判断是否有重复值
len(df["标题"].unique()) == len(df)
# 根据标题来判断是否有重复值  false

df.drop_duplicates("标题",inplace=True)
# 删除重复值

df.index = range(len(df))
# 删除之后,重排索引,为了之后拼接数据方便

print(len(df))
# 还有2244条数据



1.2 判断是否有缺失值
df.info()
'''
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 2244 entries, 0 to 2243
Data columns (total 10 columns):
 #   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  
 0   标题      2244 non-null   object 
 1   价格      2244 non-null   float64
 2   小区名     2244 non-null   object 
 3   城市      2244 non-null   object 
 4   街道      2244 non-null   object 
 5   室厅数     2244 non-null   object 
 6   面积      2244 non-null   object 
 7   层数      2244 non-null   object 
 8   交接人     2244 non-null   object 
 9   详情链接    2244 non-null   object 
dtypes: float64(1), object(9)
memory usage: 175.4+ KB
'''

可以看到,全部数据没有缺失值,因此也不用处理缺失值。

若需要处理缺失值,可以选择:

  1. 直接删除存在缺失值的列,一般只有在缺失值占比太多的情况,才这样处理。
  2. 删除缺失值对应的数据,既删除对应的行,这种适用于当缺失值占比较小的情况。
  3. 填充缺失值。

下面给出处理确实值的具体方法:

# 查看所有缺失值数量,降序
total = df.isnull().sum().sort_values(ascending=False)

# 计算缺失值占比
percent = (df.isnull().sum()/df.isnull().count()).sort_values(ascending=False)

# 关联数量和占比
missing_data = pd.concat([total, percent], axis=1, keys=['Total', 'Percent'])

# 查看排名前20
missing_data.head(20)

# 根据之前计算的缺失值数据,删除对应的列
df = df.drop(missing_data[missing_data['Total'] > 1].index, 1)

# 删除某列数据缺失值对应的行
df = df.drop(df.loc[df['Electrical'].isnull()].index)

# 查看是否还有缺失值
df.isnull().sum().max()





二、简单分析数据

可以看到,数据中的城市、室厅数、层数、面积,都是文本形式,因此先将数据处理一下,转换成可计算的形式:


2.1 处理数据
# 将城市列分割,和数据拼接一起
df_city = pd.DataFrame(df["城市"].str.split("-").tolist(),columns=["区域","区域2"])
df = pd.concat([df,df_city],axis=1)

# 将室厅数拆解成室数和厅数,拼接在一起
df_st = pd.DataFrame(df["室厅数"].str.replace("厅","").str.split(&#
# 1. 数据说明 这是一份北京的租房数据,总计7000 多 条记录,分为 8 个同样结构的 CSV 数据文件。 # 2. 数据处理 首先通过 pandas 将这些数据文件合并到一起,然后进行数据处理,最后将清洗好的数据写到 sqlite 。 # 3.数据分析可视化 ## 3.1 整体情况 该数据集总共有 6024 个房源信息,平均每平米的租金为 169 元,每套房源的平均出租面积为 15.68 平米。 ## 3.2 地区分析 房源数量分布情况如下,可以看到朝阳和通州这两个地区的房源数量要远大于其它区,说明这两个地方的租赁市场比较活跃,人员流动和人口密度可能也比较大。 房租最贵的小区 TOP 10。半壁街南路 1 号院的房租最高,达到 596 元/平米,是平均值 169 元/平米的 **3** 倍。 从户型的房源数量分布来看,主要集中在 2-4 室的户型。之前也分析了,每套房源的平均出租面积为 15.68 平米,可见大部分房源都是合租,毕竟房租那么贵,生活成本太高了。 国家规定楼层 7 层以上需要装电梯,依据这个规定,我们根据楼层数来判断房源是否有电梯。 从下图可以看到,电梯房的房源数量比较多,毕竟楼层高,建的房子多,此外,电梯房平均每平米的租金也要比非电梯房贵 10 块钱。 在区分出电梯房之后,我们再引入楼层的纬度进行分析。 从租金上看,不管是电梯房还是非电梯房,低楼层的租金都会比较贵一些。因为北京地处北方,天气较干燥,不会有回南天,而且低楼层出行较为方便。电梯房的高楼层,租金也会比较贵,这大概是因为高楼层的风景较好。 > 南方天气潮湿,在春天的时候,有时会出现 回南天 这一气象,导致低楼层会出现地板、墙壁渗水,所以在南方一般都不爱租低层。 从房源数量上看,非电梯房的高层房源最多,低层房源最少。说明非电梯房的高层房源不容易租出去,这点在租金上也有所体现。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力生活的黄先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值