为什么MARS(地球包)会产生如此多的预测因子?

时间:2016-07-05 16:26:54

标签: r splines mars

我正在研究使用R中的地球包的MARS模型。我的数据集(CE.Rda)由一个因变量( D9_RTO_avg )和10个潜在预测变量(< em> NDVI_l1 NDVI_f0 NDVI_f1 NDVI_f2 NDVI_f3 LST_l1 LST_f0 LST_f1 NDVI_f2 NDVI_f3 )。接下来,我向您展示我的数据集的头部

   D9_RTO_avg NDVI_l1 NDVI_f0 NDVI_f1 NDVI_f2 NDVI_f3 LST_l1 LST_f0 LST_f1 LST_f2 LST_f3
2   1.866667  0.3082  0.3290  0.4785  0.4330  0.5844  38.25  30.87     31  21.23  17.92
3   2.000000  0.2164  0.2119  0.2334  0.2539  0.4686   35.7   29.7  28.35  21.67  17.71
4   1.200000  0.2324  0.2503  0.2640  0.2697  0.4726  40.13   33.3  28.95  22.81  16.29
5   1.600000  0.1865  0.2070  0.2104  0.2164  0.3911  43.26  35.79  30.22  23.07  17.88
6   1.800000  0.2757  0.3123  0.3462  0.3778  0.5482  43.99  36.06  30.26  21.36  17.93
7   2.700000  0.2265  0.2654  0.3174  0.2741  0.3590  41.61   35.4  27.51  23.55  18.88_

按如下方式创建地球模型后

mymodel.mod <- earth(D9_RTO_avg ~ ., data=CE, nk=10)

我通过输入

打印结果模型的摘要
print(summary(mymodel.mod, digits=2, style="pmax"))

我获得以下输出

D9_RTO_avg =
4.1
+   38 * LST_f128.68                        
+  6.3 * LST_f216.41                        
-  2.9 * pmax(0,        0.66 -     NDVI_l1) 
-  2.3 * pmax(0,     NDVI_f3 -        0.23) 

Selected 5 of 7 terms, and 4 of 13169 predictors
Termination condition: Reached nk 10
Importance: LST_f128.68, NDVI_l1, NDVI_f3, LST_f216.41, NDVI_f0-unused,   NDVI_f1-unused, NDVI_f2-unused, ...
Number of terms at each degree of interaction: 1 4 (additive model)
GCV 2    RSS 4046    GRSq 0.29    RSq 0.29

我的问题是为什么当地球实际上是10时,地球正在识别13169个预测因子!?似乎MARS正在考虑候选预测因子的单一观察作为预测因子本身。我怎样才能避免MARS这样做?

感谢您的帮助

0 个答案:

没有答案