0
点赞
收藏
分享

微信扫一扫

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析

作者:Guojiang Zhao

数据量大,数据要进行清洗以及预处理,同时要多方面可视化,要探索多变量对因变量的影响。

解决方案

用R语言读取数据,对数据进行清洗合并以及预处理,数据可视化,特征工程以及变量选择,建模,交叉验证,模型评价。

任务/目标

对价格进行预测并且比较

特征转换

处理缺失值(对缺失值进行插值以及取均值进行处理,同时去掉一些缺失较少的数据行)

将因子变量变为数值型变量好做best subset selection来进行特征选择等等

可视化

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据_02

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据挖掘_03

 

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据挖掘_04

运用nlp以及词云可视化

构造

以上说明了如何抽取相关特征,我们大致有如下训练样本(只列举部分特征)。

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_决策树_05

划分训练集和测试集

训练集70%和测试集30%

变量选择:best subset selection

 

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_r语言_06

选取5个最佳的变量

建模

预测价格

  1. 多元回归分析
  2. GAM模型(平滑样条,多项式回归,三次样条)
  3. 不同变量通过cross-validation来选择哪一种模型是cv.error最小的

如图:

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据_07

最后得到最终的一个模型

 

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据分析_08

回归决策树

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据_09

剪枝后

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据_10

预测

三个模型中分别对price预测

模型比较:

比较预测值和实际值的RMSE,选取最优模型

三个模型price预测值与实际值

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据_11

比较:

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_r语言_12

可以看出,GAM模型是三个模型中最适合的,然后可以依据该模型对price进行预测。

关于作者

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据_13

在此对Guojiang Zhao对本文所作的贡献表示诚挚感谢,他在卡耐基梅隆大学完成了硕士学位,擅长机器学习,数据挖掘,数理统计,数据分析。

R语言对airbnb数据nlp文本挖掘、地理、词云可视化、回归GAM模型、交叉验证分析_数据_14


举报

相关推荐

0 条评论