m個節點的三次樣條函數需要n+4個參數, 因為每段需要4個參數, m+1段需要4m+4個參數, 而在個節點上連續、一階導數連續、二階導數連續構成三個約束條件, 所以參數個數為m+4個。自然樣條函數假定函數在最左邊一段和最右邊一段為線性函數, 這樣m個節點需要m+2個參數。 R的lm()函數中對自變量x指定ns(x) 可以對輸入的x指定作自然樣條變換, ns()可以用df=指定自由度作為曲線複雜度的度量。 如
在多元回歸中也可以用ns(x)對單個自變量引入非線性。
雖然在用lm()作多元回歸時可以用ns()、poly()等函數引入非線性成分, 但需要指定複雜度參數。 對可加模型
最好能從數據中自動確定fj(·)的複雜度(光滑度)參數。R擴展包mgcv的gam()函數可以執行這樣的可加模型的非參數回歸擬合。 模型中可以用s(x)指定x的樣條平滑, 用lo(x)指定x的局部多項式平滑。 具體的計算是迭代地對每個自變量xj進行, 估計的平滑函數fj(·)時, 採用數據
迭代估計到結果基本不變為止。例如,MASS包的rock數據框是石油勘探中12塊巖石樣本分別產生4個切片得到的測量數據, 共48個觀測, 因變量是滲透率(permeability), 自變量為area, peri, shape。先作線性回歸:
lm.rock <- lm(log(perm) ~ area + peri + shape, data=rock)summary(lm.rock)## Call:## lm(formula = log(perm) ~ area + peri + shape, data = rock)## ## Residuals:## Min 1Q Median 3Q Max ## -1.8092 -0.5413 0.1734 0.6493 1.4788 ## ## Coefficients:## Estimate Std. Error t value Pr(>|t|) ## (Intercept) 5.333e+00 5.487e-01 9.720 1.59e-12 ***## area 4.850e-04 8.657e-05 5.602 1.29e-06 ***## peri -1.527e-03 1.770e-04 -8.623 5.24e-11 ***## shape 1.757e+00 1.756e+00 1.000 0.323 ## ---## Signif. codes: 0 『***』 0.001 『**』 0.01 『*』 0.05 『.』 0.1 『 』 1## ## Residual standard error: 0.8521 on 44 degrees of freedom## Multiple R-squared: 0.7483, Adjusted R-squared: 0.7311 ## F-statistic: 43.6 on 3 and 44 DF, p-value: 3.094e-13
往期回顧
R相關與回歸學習筆記(一)——相關分析
R相關與回歸學習筆記(二)——相關與因果、相關係數大小、相關係數的檢驗
R相關與回歸學習筆記(三)——相關陣、一元回歸分析
R相關與回歸學習筆記(五)——回歸有效性
R相關與回歸學習筆記(六)——R程序
R相關與回歸學習筆記(七)——回歸診斷(一)
R相關與回歸學習筆記(七)——回歸診斷(二)
R相關與回歸學習筆記(八)——回歸診斷(三)
R相關與回歸學習筆記(九)——預測區間、控制、多元線性回歸模型
R相關與回歸學習筆記(十)——參數估計、R的多元回歸程序(一)
R相關與回歸學習筆記(十一)——模型的檢驗
R相關與回歸學習筆記(十二)——線性關係檢驗、單個斜率項的顯著性檢驗
R相關與回歸學習筆記(十三)——回歸自變量篩選
R相關與回歸學習筆記(十四)——啞變量與變截距項的模型(一)
R相關與回歸學習筆記(十五)——啞變量與變截距項的模型(二)
R相關與回歸學習筆記(十六)——殘差診斷(一)
R相關與回歸學習筆記(十七)——殘差診斷(二)
R相關與回歸學習筆記(十八)——殘差診斷(三)
R相關與回歸學習筆記(十八)——多重共線性
R相關與回歸學習筆記(十九)——強影響點分析、過度擬合示例(一)
R相關與回歸學習筆記(二十)——強影響點分析、過度擬合示例(二)
R相關與回歸學習筆記(二十一)——過度擬合示例(三)
R相關與回歸學習筆記(二十二)——嵌套模型的比較
R相關與回歸學習筆記(二十三)——擬合、點預測
R相關與回歸學習筆記(二十四)——均值的置信區間、個別值的預測區間
R相關與回歸學習筆記(二十五)——利用線性回歸模型做曲線擬合(一)
R相關與回歸學習筆記(二十六)——利用線性回歸模型做曲線擬合(二)
R相關與回歸學習筆記(二十七)——利用線性回歸模型做曲線擬合(三)
R相關與回歸學習筆記(二十八)——利用線性回歸模型做曲線擬合(四)
R相關與回歸學習筆記(二十九)——利用線性回歸模型做曲線擬合(五)
R相關與回歸學習筆記(三十)——利用線性回歸模型做曲線擬合(六)
R相關與回歸學習筆記(三十一)——分組建立多個模型(一)
R相關與回歸學習筆記(三十二)——分組建立多個模型(二)
R相關與回歸學習筆記(三十三)——非參數回歸模型、樣條平滑
R相關與回歸學習筆記(三十四)——局部多項式曲線平滑