其他分享
首页 > 其他分享> > 二手房数据预处理与分析

二手房数据预处理与分析

作者:互联网

import pandas as pd
import numpy as np
df=pd.read_table('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[data['区县'].isnull()]

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.duplicated().sum()

data=data.drop_duplicates()
data

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

data.单价.str.replace('元/平米','').astype(np.float32)

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()

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

pd.cut(data.单价,bins).value_counts()

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

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

pd.cut(dataBeijing.单价,bins).value_counts().plot.bar(rot=20)

标签:分析,isnull,df,单价,二手房,pd,np,data,预处理
来源: https://blog.csdn.net/m0_66151160/article/details/122331395