數據和思路來源于 大數據學習群高立信同學的文章,我覺得比較有意思,探討一下。
R下“Hello World級”數據分析--由“醫院病床數”可以預測社會經濟水平嘛?
首先從高同學處要來了他整理過的深圳2003-2013年部分統計指標的excel表,然后輸入R程序。
library(openxlsx)
readFilePath<-"E:/shenzhen.xlsx"
mydata<-read.xlsx(readFilePath,"Sheet1")
表格中包括出生人數,人均年收入,小學生入學數,醫院病床數,總人口,以及出生率。因為出生率已經與出生人數和總人數相關,所以在后面的分析中這列沒有考慮進去。
數據表:
以前根據類似數據,寫過一篇利用R語言做菜鳥級表格分析,還是繼續用pair函數比較各個因素間的關系:
pairs(mydata[,2:6]);plot
得圖如下,可以看出,初步呈線性相關的是:收入,醫院,小學生數,人口之間的幾個關聯。
類似的圖還可以用car包里的scatterplotMatrix做出來,不過那個不能挑選列,所以是7x7的圖形,我個人覺得還不如pairs清楚。
因為高同學的問題是病床數是否可以預測經濟增長,那首先就要求出:與病床數相關的因素。這點我利用了car包的crPlots函數(R語言實戰,P179)
fit<-lm(hospital~income+population+student+birth,data=mydata)
crPlots(fit)
以病床數為響應變量,其他幾個因素為預測變量,進行分析。可以看出,病床數與收入沒有線性回歸關系,與人口,小學生數,出生數存在關系。
那么個人的答案是:病床數與經濟預測沒有關聯。
自設問題二,在影響病床數這幾個因素中,哪個變量對預測更為重要?
根據《R語言實戰》P195所述,可以采用coef函數檢驗
從計算看來,人口,學生數,出生人數這三個影響指數都是差不多的。
自設問題三,個人覺得出生,小學生數,人口數這幾個因素本身就是有相關性的,是否確實如此?
這里我用多重共線性進行檢驗(P181)(后面還做了個離群值outlier檢驗,一起附圖)
根據原則,vif的開方>2就表明存在多重共線性,所以這兒是存在的。但是與前面的多元回歸結果有什么影響,本小白就搞不清楚了。需要繼續學習研究。也歡迎大神解惑。
日后加上深圳房價,再做比較。