Spark学习笔记——房屋价格预测
先翻译了一下给的房屋数据的特征,这里定义了一个case class,方便理解每个特征的含义,
Kaggle的房价数据集使用的是Ames Housing dataset,是美国爱荷华州的艾姆斯镇2006-2010年的房价
case class house(
Id: String,
MSSubClass: String, // 参与销售住宅的类型:有年代新旧等信息
MSZoning: String, // 房屋类型:农用,商用等
LotFrontage: String, // 距离街道的距离
LotArea: String, // 房屋的面积
Street: String, // 通向房屋的Street是用什么铺的
Alley: String, // 通向房屋的Alley是用什么铺的
LotShape: String, // 房屋的户型,规整程度
LandContour: String, // 房屋的平坦程度
Utilities: String, // 设施,通不通水电气
LotConfig: String, // 死路,处于三岔口等
LandSlope: String, // 坡度
Neighborhood: String, // 邻居
Condition1: String,
Condition2: String,
BldgType: String, // 住宅类型,住的家庭数,是否别墅等
HouseStyle: String, // 住宅类型,隔断等
OverallQual: String, // 房屋的质量
OverallCond: String, // 房屋位置的质量
YearBuilt: String, // 建造的时间
YearRemodAdd: String, // 改造的时间
RoofStyle: String, // 屋顶的类型
RoofMatl: String, // 屋顶的材料
Exterior1st: String, // 外观覆盖的材质
Exterior2nd: String, // 如果超过一种,则有第二种材质
MasVnrType: String, // 表层砌体类型
MasVnrArea: String, // 表层砌体面积
ExterQual: String, // 外观材料质量
ExterCond: String, // 外观材料情况
Foundation: String, // 地基类型
BsmtQual: String, // 地下室质量
BsmtCond: String, // 地下室的基本情况
BsmtExposure: String, // 地下室采光
BsmtFinType1: String, // 地下室的完成情况比例
BsmtFinSF1: String, // 地下室的完成面积
BsmtFinType2: String, // 如果有多个地下室的话
BsmtFinSF2: String, // 如果有多个地下室的话
BsmtUnfSF: String, // 未完成的地下室面积
TotalBsmtSF: String, // 地下室面积
Heating: String, // 供暖类型
HeatingQC: String, // 供暖质量
CentralAir: String, // 是否有中央空调
Electrical: String, // 电气系统
_1stFlrSF: String, // 1楼面积
_2ndFlrSF: String, // 2楼面积
LowQualFinSF: String, // 低质量完成的面积(楼梯占用的面积)
GrLivArea: String, // 地面以上居住面积
BsmtFullBath: String, // 地下室都是洗手间
BsmtHalfBath: String, // 地下室一半是洗手间
FullBath: String, // 洗手间都在一层以上
HalfBath: String, // 一半洗手间在一层以上
BedroomAbvGr: String, // 卧室都在一层以上
KitchenAbvGr: String, // 厨房在一层以上
KitchenQual: String, // 厨房质量
TotRmsAbvGrd: String, // 所有房间都在一层以上
Functional: String, // 房屋的功能性等级
Fireplaces: String, // 壁炉位置
FireplaceQu: String, // 壁炉质量
GarageType: String, // 车库类型
GarageYrBlt: String, // 车库建造时间
GarageFinish: String, // 车库的室内装修
GarageCars: String, // 车库的汽车容量
GarageArea: String, // 车库面积
GarageQual: String, // 车库质量
GarageCond: String, // 车库情况
PavedDrive: String, // 铺路的材料
WoodDeckSF: String, // 木地板面积
OpenPorchSF: String, // 露天门廊面积
EnclosedPorch: String, // 独立门廊面积
_3SsnPorch: String, // three season门廊面积
ScreenPorch: String, // 纱门门廊面积
PoolArea: String, // 游泳池面积
PoolQC: String, // 游泳池质量
Fence: String, // 栅栏质量
MiscFeature: String, // 上面不包含其他功能
MiscVal: String, // 上面不包含其他功能的价格
MoSold: String, // 月销量
YrSold: String, // 年销量
SaleType: String, // 销售方式
SaleCondition: String, // 销售情况
SalePrice: String // 最后需要预测的销售价格
)
读取了数据之后先describe一下,查看有无缺失的数据,以及均值,样本标准偏差,最小值和最大值
+-------+-----------------+------------------+--------+-----------------+------------------+------+-----+--------+-----------+---------+---------+---------+------------+----------+----------+--------+----------+------------------+------------------+------------------+------------------+---------+--------+-----------+-----------+----------+------------------+---------+---------+----------+--------+--------+------------+------------+-----------------+------------+-----------------+-----------------+------------------+-------+---------+----------+----------+-----------------+------------------+-----------------+-----------------+-------------------+--------------------+------------------+-------------------+------------------+-------------------+-----------+------------------+----------+------------------+-----------+----------+------------------+------------+------------------+-----------------+----------+----------+----------+------------------+-----------------+------------------+------------------+------------------+-----------------+------+-----+-----------+------------------+------------------+------------------+--------+-------------+------------------+
|summary| Id| MSSubClass|MSZoning| LotFrontage| LotArea|Street|Alley|LotShape|LandContour|Utilities|LotConfig|LandSlope|Neighborhood|Condition1|Condition2|BldgType|HouseStyle| OverallQual| OverallCond| YearBuilt| YearRemodAdd|RoofStyle|RoofMatl|Exterior1st|Exterior2nd|MasVnrType| MasVnrArea|ExterQual|ExterCond|Foundation|BsmtQual|BsmtCond|BsmtExposure|BsmtFinType1| BsmtFinSF1|BsmtFinType2| BsmtFinSF2| BsmtUnfSF| TotalBsmtSF|Heating|HeatingQC|CentralAir|Electrical| _1stFlrSF| _2ndFlrSF| LowQualFinSF| GrLivArea| BsmtFullBath| BsmtHalfBath| FullBath| HalfBath| BedroomAbvGr| KitchenAbvGr|KitchenQual| TotRmsAbvGrd|Functional| Fireplaces|FireplaceQu|GarageType| GarageYrBlt|GarageFinish| GarageCars| GarageArea|GarageQual|GarageCond|PavedDrive| WoodDeckSF| OpenPorchSF| EnclosedPorch| _3SsnPorch| ScreenPorch| PoolArea|PoolQC|Fence|MiscFeature| MiscVal| MoSold| YrSold|SaleType|SaleCondition| SalePrice|
+-------+-----------------+------------------+--------+-----------------+------------------+------+-----+--------+-----------+---------+---------+---------+------------+----------+----------+--------+----------+------------------+------------------+------------------+------------------+---------+--------+-----------+-----------+----------+------------------+---------+---------+----------+--------+--------+------------+------------+-----------------+------------+-----------------+-----------------+------------------+-------+---------+----------+----------+-----------------+------------------+-----------------+-----------------+-------------------+--------------------+------------------+-------------------+------------------+-------------------+-----------+------------------+----------+------------------+-----------+----------+------------------+------------+------------------+-----------------+----------+----------+----------+------------------+-----------------+------------------+------------------+------------------+-----------------+------+-----+-----------+------------------+------------------+------------------+--------+-------------+------------------+
| count| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460| 1460|
| mean| 730.5|56.897260273972606| null|70.04995836802665|10516.828082191782| null| null| null| null| null| null| null| null| null| null| null| null|6.0993150684931505| 5.575342465753424| 1971.267808219178|1984.8657534246574| null| null| null| null| null|103.68526170798899| null| null| null| null| null| null| null|443.6397260273973| null|46.54931506849315|567.2404109589041|1057.4294520547944| null| null| null| null|1162.626712328767|346.99246575342465|5.844520547945206|1515.463698630137|0.42534246575342466|0.057534246575342465|1.5650684931506849|0.38287671232876713|2.8664383561643834| 1.0465753424657533| null| 6.517808219178082| null| 0.613013698630137| null| null|1978.5061638868744| null|1.7671232876712328|472.9801369863014| null| null| null| 94.2445205479452|46.66027397260274|21.954109589041096|3.4095890410958902|15.060958904109588|2.758904109589041| null| null| null|43.489041095890414| 6.321917808219178|2007.8157534246575| null| null|180921.19589041095|
| stddev|421.6100093688479| 42.30057099381045| null|24.28475177448321| 9981.26493237915| null| null| null| null| null| null| null| null| null| null| null| null|1.3829965467415926|1.1127993367127318|30.202904042525294| 20.64540680770938| null| null| null| null| null|181.06620658721647| null| null| null| null| null| null| null|456.0980908409278| null|161.3192728065416|441.8669552924343| 438.7053244594709| null| null| null| null|386.5877380410744| 436.528435886257|48.62308143352024|525.4803834232024| 0.5189106060898061| 0.23875264627921197|0.5509158012954318| 0.5028853810928912|0.8157780441442279|0.22033819838403076| null|1.6253932905840511| null|0.6446663863122297| null| null| 24.68972476859027| null|0.7473150101111095|213.8048414533803| null| null| null|125.33879435172422| 66.2560276766497| 61.11914860172857|29.317330556781872| 55.75741528187416|40.17730694453021| null| null| null| 496.1230244579441|2.7036262083595113|1.3280951205521145| null| null| 79442.50288288663|
| min| 1| 120| C (all)| 100| 10000| Grvl| Grvl| IR1| Bnk| AllPub| Corner| Gtl| Blmngtn| Artery| Artery| 1Fam| 1.5Fin| 1| 1| 1872| 1950| Flat| ClyTile| AsbShng| AsbShng| BrkCmn| 0| Ex| Ex| BrkTil| Ex| Fa| Av| ALQ| 0| ALQ| 0| 0| 0| Floor| Ex| N| FuseA| 1001| 0| 0| 1002| 0| 0| 0| 0| 0| 0| Ex| 10| Maj1| 0| Ex| 2Types| 1900| Fin| 0| 0| Ex| Ex| N| 0| 0| 0| 0| 0| 0| Ex|GdPrv| Gar2| 0| 1| 2006| COD| Abnorml| 100000|
| max| 999| 90| RM| NA| 9991| Pave| Pave| Reg| Lvl| NoSeWa| Inside| Sev| Veenker| RRNn| RRNn| TwnhsE| SLvl| 9| 9| 2010| 2010| Shed| WdShngl| WdShing| Wd Shng| Stone| NA| TA| TA| Wood| TA| TA| No| Unf| 998| Unf| 972| 999| 999| Wall| TA| Y| SBrkr| 999| 998| 80| 999| 3| 2| 3| 2| 8| 3| TA| 9| Typ| 3| TA| NA| NA| Unf| 4| 995| TA| TA| Y| 98| 99| 99| 96| 99| 738| NA| NA| TenC| 8300| 9| 2010| WD| Partial| 99900|
+-------+-----------------+------------------+--------+-----------------+------------------+------+-----+--------+-----------+---------+---------+---------+------------+----------+----------+--------+----------+------------------+------------------+------------------+------------------+---------+--------+-----------+-----------+----------+------------------+---------+---------+----------+--------+--------+------------+------------+-----------------+------------+-----------------+-----------------+------------------+-------+---------+----------+----------+-----------------+------------------+-----------------+-----------------+-------------------+--------------------+------------------+-------------------+------------------+-------------------+-----------+------------------+----------+------------------+-----------+----------+------------------+------------+------------------+-----------------+----------+----------+----------+------------------+-----------------+------------------+------------------+------------------+-----------------+------+-----+-----------+------------------+------------------+------------------+--------+-------------+------------------+
先看一下房价的分布情况,15W刀左右的居多,可以看出这个数据集是很久以前的了

1.先分析数值型的特征,比如LotFrontage(通往房屋的street的距离)和LotArea(房子的建筑面积,包括车库院子啥的)
分析:因为距离有的值为NA的缘故,对其值为NA的处理成了距离为0。
按我们的思路,应该是距离越近价格越高(出行比较方便),可是事实上并不是这样子,可能是私家车在外国家庭的普及率问题,和street的距离同房价之间的关系并不是很明显

接下来分析房屋的建筑面积和房价之间的关系,为了直观些,我把单位从平方英尺转换成了平方米。
可以看到数据集中房屋的面积的峰值在900平方米左右,且房屋的建筑面积和房价是正相关的(废话)

接下来再看看1层和2层面积和房价之间的关系
可以看到,1楼面积和2层面积(如果有的话),同房价之间的关系也很线性,除少数离群的点之外

Spark学习笔记——房屋价格预测的更多相关文章
- Spark学习笔记之SparkRDD
Spark学习笔记之SparkRDD 一. 基本概念 RDD(resilient distributed datasets)弹性分布式数据集. 来自于两方面 ① 内存集合和外部存储系统 ② ...
- spark学习笔记总结-spark入门资料精化
Spark学习笔记 Spark简介 spark 可以很容易和yarn结合,直接调用HDFS.Hbase上面的数据,和hadoop结合.配置很容易. spark发展迅猛,框架比hadoop更加灵活实用. ...
- Spark学习笔记2(spark所需环境配置
Spark学习笔记2 配置spark所需环境 1.首先先把本地的maven的压缩包解压到本地文件夹中,安装好本地的maven客户端程序,版本没有什么要求 不需要最新版的maven客户端. 解压完成之后 ...
- Spark学习笔记3(IDEA编写scala代码并打包上传集群运行)
Spark学习笔记3 IDEA编写scala代码并打包上传集群运行 我们在IDEA上的maven项目已经搭建完成了,现在可以写一个简单的spark代码并且打成jar包 上传至集群,来检验一下我们的sp ...
- Spark学习笔记-GraphX-1
Spark学习笔记-GraphX-1 标签: SparkGraphGraphX图计算 2014-09-29 13:04 2339人阅读 评论(0) 收藏 举报 分类: Spark(8) 版权声明: ...
- Spark学习笔记3——RDD(下)
目录 Spark学习笔记3--RDD(下) 向Spark传递函数 通过匿名内部类 通过具名类传递 通过带参数的 Java 函数类传递 通过 lambda 表达式传递(仅限于 Java 8 及以上) 常 ...
- Spark学习笔记0——简单了解和技术架构
目录 Spark学习笔记0--简单了解和技术架构 什么是Spark 技术架构和软件栈 Spark Core Spark SQL Spark Streaming MLlib GraphX 集群管理器 受 ...
- Spark学习笔记2——RDD(上)
目录 Spark学习笔记2--RDD(上) RDD是什么? 例子 创建 RDD 并行化方式 读取外部数据集方式 RDD 操作 转化操作 行动操作 惰性求值 Spark学习笔记2--RDD(上) 笔记摘 ...
- Spark学习笔记1——第一个Spark程序:单词数统计
Spark学习笔记1--第一个Spark程序:单词数统计 笔记摘抄自 [美] Holden Karau 等著的<Spark快速大数据分析> 添加依赖 通过 Maven 添加 Spark-c ...
随机推荐
- cocosCreator 新版本的动作函数API的应用
利用触摸位置判断,点击的是屏幕的左侧还是右侧,控制主角左右移动: 见代码: InputControl:function () { var self=this; //cc.systemEvent sel ...
- CocosCreator项目结构
1,通过 Dashboard,我们可以创建一个 Hello World 项目作为开始,创建之后的项目有特定的文件夹结构.[参考来源:官方文档] 2,初次创建并打开一个 Cocos Creator 项目 ...
- javascript中break与continue,及return的区别
a).在循环体中, break是跳出整个循环,不执行以后的循环语句: continue是结束本次循环语句,进入下一个循环: b). 在if判断句,结束该函数的执行时,用 return: c). 在函数 ...
- ASP.NET MVC 4 中的JSON数据交互
前台Ajax请求很多时候需要从后台获取JSON格式数据,一般有以下方式: 拼接字符串 return Content("{\"id\":\"1\",\& ...
- Zookeeper学习笔记——2 Shell和Java API的使用
ZooKeeper的使用一般都接触不到,因为平时工作甚少直接使用ZK.但是通过手动操作一下ZK,还是能对其中的门道了解各一二. shell 常用命令 help 查看所有支持的命令 [zk: local ...
- (转)GPU图形绘制管线
摘抄“GPU Programming And Cg Language Primer 1rd Edition” 中文名“GPU编程与CG语言之阳春白雪下里巴人”第二章. 图形绘制管线描述GPU渲染流程, ...
- 微软BI 之SSIS 系列 - 导出数据到 Excel 2013 的实现
开篇介绍 碰到有几个朋友问到这个问题,比较共性,就特意写了这篇小文章说明一下如何实现在 SSIS 中导出数据到 Office Excel 2013 中.通常情况下 2013 以前的版本大多没有问题,但 ...
- 【PMP】合同类型
合同类型与适用场景 图形解读: 总价类 (1)固定总价类合同:货物的采购价格在一开始就已确定,并且不允许改变(除非工作范围发生变更) (2)总价加激励费合同:同会设置价格上限,高于此价格的上限的全部成 ...
- 【Visual Studio】VS发布应用未能创建默认证书的问题解决方法
解决方法:点击你创建的项目 右键> 属性>签名>从存储区选择>选择证书这时候显示无可用证书 ,然后我从文件区选择了一个结果,又出现了第二个问题.提示我“签名时出错: 指定了无效 ...
- Java动态代理实现方法
import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.lang.reflec ...