二手房数据处理

import pandas as pd
import numpy as np
df=pd.read_table('D:/data/lianjiahouselist.txt',sep=';')
df.columns=['编号','省','市','区县','位置','详细地址','单价','总价','户型','楼层','面积','户型结构','套内面积','建筑类型','朝向','建筑结构','装修类型','梯户比','有无电梯','上传时间','房屋类型','住宅类型','抵押情况']
df.reindex(columns=df.columns)
df.head(2)

df.describe()

df.info()

data=df[['省','市','区县','位置','详细地址','单价','户型','楼层','面积']]
data

data.isnull().sum()

data.isnull().any()

data['区县'].isna()

data[data['区县'].isna()]

data[data['区县'].isnull()]=data[data['区县'].isnull()].fillna(method='ffill',axis=1)

data.isnull().any()

data[data['户型'].isnull()]

data[data['户型'].isnull()]=data[data['户型'].isnull()].fillna('#')

data.isnull().any()

data[data['区县'].isnull()]

data.duplicated().sum()

data=data.drop_duplicates()

data

data.info()

sum(~(data['单价'].str.contains('元/平米')))

np.round(data.单价.str.replace('元/平米','').astype(np.float32).map(lambda x:x/10000),2)

data=data.assign(单价=np.round(data.单价.str.replace('元/平米','').astype(np.float32).map(lambda x:x/10000),2))
data

data.单价.min()

data.单价.max()

data=data[data.单价>0]

data

data.单价.min()

c=[0,1,2,3,4,5,7,10,15,20]
pd.cut(data.单价,c)

pd.cut(data.单价,c).value_counts().plot.bar(rot=20)

beijing=data[data.省=='北京']
beijing

pd.cut(beijing.单价,c).value_counts().plot.bar(rot=20)

data=data.assign(面积=np.round(data.面积.str.replace('㎡','').astype(np.float32)))
data

data.面积.max()

data.面积.mean()

data=data[data.面积<300]
data

data.to_csv("data/house.csv")

c=[0,50,100,150,200,250,300]
pd.cut(data.面积,c).value_counts().plot.bar(rot=20)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值