数据清洗
- data<-read.csv("E://Data For R/RData/data.csv")
- DATA<-data[,-c(1,7)]#将Name和Address两列去掉
- DATA[sample(1:nrow(DATA),size=10),]

- #在爬取的时候加入了判断,所以不知道爬取的数据中是否存在缺失值,这里检查一下
- colSums(is.na(DATA))

- #这里将Type的卧室客厅和卫生间分为三个不同的列
- ##这里需要注意,有一些房屋没有客厅如:1室1卫这时候需要单独处理,还有一些没有厕所信息。
- library(tidyr)
- library(stringr)
- DATA=separate(data=DATA,col=Type,into = c("Bedrooms","Halls"),sep="室")
- DATA=separate(data=DATA,col=Halls,into = c("Halls","Toilet"),sep="厅")
- ##将卫生间后面的汉字去掉
- DATA$Toilet<-str_replace(DATA$Toilet,"卫","")
- ###如图六,将Halls中带有汉字去掉,因为有一些房屋信息没有客厅,如:1室1厅,在分成卧室和客厅时,会将卫生间分到客厅一列。
- DATA$Halls<-str_replace(DATA$Halls,"卫","")
- ##取出没有客厅信息的数据,这些数据被separate到Halls列
- newdata<-DATA[which(DATA$Toilet %in% NA),2]
- newdata
- ##将没有客厅的房屋信息Halls列填充为0
- DATA[which(DATA$Toilet %in% NA),2]<-0
- DATA[which(DATA$Toilet %in% NA),3]<-newdata
- colSums(DATA=="")
- Bedrooms Halls Toilet Area Towards Floor Decorate
- 0 0 2 0 0 0 0
- TotalPrice Price
- 0 0
-
- ##发现有2个厕所没有信息,将其填写为0。
- DATA$Toilet[DATA$Toilet == ""]<-0

- ##这里将Area后的㎡去掉
- DATA$Area<-str_replace(DATA$Area,"㎡","")
-
- ##查看Towards的类型
- table(DATA$Towards)
-
- Towards 北向 东北向 东南向 东西向 东向 南北向 南向 西北向
- 51 25 23 50 65 32 1901 678 38
- 西南向 西向
- 28 26
- ##将Floor信息带括号的全部去除
- DATA$Floor<-str_replace(DATA$Floor,"[(].*[)]","")##正则表达式
- #查看Floor的类别信息
- 低层 地下 高层 共1层 共2层 共3层 共4层 共5层 中层
- 632 32 790 36 61 101 68 130 1016
-
- #分别将TotalPrice和Price后面的万元、元/㎡去掉
-
- DATA$TotalPrice<-str_replace(DATA$TotalPrice,"万元","")
- DATA$Price<-str_replace(DATA$Price,"元/㎡","")
-
- head(DATA)

- ##将数据转换格式
- DATA$Bedrooms<-as.factor(DATA$Bedrooms)
- DATA$Halls<-as.factor(DATA$Halls)
- DATA$Toilet<-as.factor(DATA$Toilet)
- DATA$Area<-as.numeric(DATA$Area)
- DATA$TotalPrice<-as.numeric(DATA$TotalPrice)
- DATA$Price<-as.numeric(DATA$Price)
- DATA$Towards<-as.factor(DATA$Towards)
- DATA$Decorate<-as.factor(DATA$Decorate)
- str(DATA)

以上数据清洗完毕。
03、描述性分析
这部分的主要思路是探究单个自变量对因变量的影响,对房价的影响因素进行模拟探究之前,首先对各变量进行描述性分析,以初步判断房价的影响因素。这里探究各个因素对总价影响。 (编辑:武汉站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|