預(yù)測海藻數(shù)量_第1頁
預(yù)測海藻數(shù)量_第2頁
預(yù)測海藻數(shù)量_第3頁
預(yù)測海藻數(shù)量_第4頁
預(yù)測海藻數(shù)量_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、R語言實驗設(shè)計題目:海藻數(shù)量數(shù)據(jù)預(yù)處理與數(shù)據(jù)探索性分析姓名:樊海濤班級:12-1學(xué)號:1207060106專業(yè):統(tǒng)計學(xué)預(yù)測海藻數(shù)量基本任務(wù):數(shù)據(jù)預(yù)處理、探索性數(shù)據(jù)分析和預(yù)測模型的構(gòu)建問題描述與目標某些高濃度的有害海藻對河流生態(tài)環(huán)境的強大破壞是一個嚴重問題,她們不僅僅破壞 河流的生物,也破壞水質(zhì)。能夠檢測并在早期對海藻的繁殖進行預(yù)測對提高河流質(zhì)量是很有 必要的。針對這一問題的預(yù)測目標,在大約一年的時間里,在不同時間內(nèi)收集了歐洲多條不同河流的水樣。對于每個水樣,測定了它們的不同化學(xué)性質(zhì)以及 7種有害藻類的存在頻率,在水樣的收集過程中,也記錄了一些其他特征,如收集的季節(jié)、河流的大小和水流的速度。本案

2、例研究的動機之一是化學(xué)檢測價格便宜,并且易于自動化。而通過分析生物樣品來識別水中的藻類要涉及顯微鏡檢驗,需要訓(xùn)練有素的工作人員, 因此即昂貴又緩慢,因此,構(gòu)建一個可以基于化學(xué)性質(zhì)來準確預(yù)測藻類的模型將有助于建立監(jiān)測有害藻類的廉價的自 動化系統(tǒng)。另一個目的是更好地了解影響藻類頻率的因素。也就是說,我們要了解藻類的頻率和 水樣的某些化學(xué)性質(zhì)以及其他性質(zhì)(季節(jié)、河流類型等)是如何相關(guān)的。數(shù)據(jù)說明來自于ERUDIT研究網(wǎng)絡(luò),并被用于 1999年的COIL國際數(shù)據(jù)分析競賽。在 R軟件中可 以直接獲得。本案例有兩個數(shù)據(jù)集,第一個數(shù)據(jù)集有200個水樣。名為:algae,更精確的說,該數(shù)據(jù)集的每一條記錄是同一

3、河流在該年的同一個季節(jié)的三個月內(nèi)收集的水樣的平均值。每條記錄由11個變量構(gòu)成。其中3個變量是名義變量,它們分別描述水樣收集的季節(jié)、收集樣品的河流大小和河水速度。余下的8個變量是所觀測水樣的不同化學(xué)參數(shù),即最大PH值最小含氧量O2平均氯化物含量CI平均硝酸鹽含量NO3-平均氨含量NH4+平均正磷酸鹽含量 PO43-平均磷酸鹽含量PO4平均葉綠素含量與這些參數(shù)相關(guān)的是7種不同有害藻類在相應(yīng)水樣中的頻率數(shù)目。并未提供所觀察藻類的名稱的相關(guān)信息。第二個數(shù)據(jù)集由140個額外觀測值構(gòu)成。名為:,它們的基本結(jié)構(gòu)和第一個數(shù)據(jù)集一樣,但是它不包含7種藻類的頻率數(shù)目??梢暈闇y試集。本案例的主要目標是預(yù)測140個水

4、樣中7種海藻的頻率。在這種問題中,任務(wù)是建立預(yù)測模型,并預(yù)測在給定預(yù)測變量的取值時相應(yīng)的目標變量的值。說明哪一個預(yù)測變量對目標變量有較大的影響。加載數(shù)據(jù)利用R軟件載入DMwR添加包,里面有我們需要的名為algae的數(shù)據(jù)框。這個數(shù)據(jù)框里含有前面提到的200個觀測值:library(DMwR)head(algae) season size speed mxPH mnO2 Cl NO3 NH4 oPO4winter small mediumspring small mediumautumn small mediumspring small mediumautumn small mediumwinte

5、r small highPO4 Chla a1 a2 a3 a4 a5 a6 a7函數(shù)head()將顯示數(shù)據(jù)框的前 6行。數(shù)據(jù)框的每一行代表一個觀測值。數(shù)據(jù)可視化和摘要為后面的數(shù)據(jù)鑒于開始我們對該領(lǐng)域一無所知,首先我們要了解一些數(shù)據(jù)的統(tǒng)計特性,為后面的數(shù)據(jù)處理與建模提供更多的信息。獲取數(shù)據(jù)統(tǒng)計特性的一個方法是獲取數(shù)據(jù)的描述性統(tǒng)計摘要。 summary(algae)seasonsizespeedmxPHautumn:40large :45high :84Min. :spring:53medium:84low :331st Qu.:summer:45small :71medium:83Median

6、 :winter:62Mean :3rd Qu.:Max. :NAs :1mnO2ClNO3Min.Min. :Min. :1st Qu.:1st Qu.:1st Qu.:Median :Median :Median :Mean :MeanMean3rd Qu.:3rd Qu.:3rd Qu.:Max. :Max. :Max. :NAs :2NAs:10NAs :2NH4oPO4PO4Min.Min.Min.1st Qu.:1st Qu.:1st Qu.:Median :Median :Median :MeanMeanMean3rd Qu.:3rd Qu.:3rd Qu.:Max. :Max.

7、 :Max. :NAs :2NAs :2NAs :2Chlaa1a2Min. :Min.Min. :1st Qu.:1st Qu.:1st Qu.:Median :MedianMedian :Mean :MeanMean :3rd Qu.:3rd Qu.:3rd Qu.:Max. :Max. :Max. :NAs :12a3a4a5Min. :Min.Min. :1st Qu.:1st Qu.:1st Qu.:Median :Median :Median :Mean :MeanMean3rd Qu.:3rd Qu.:3rd Qu.:Max. :Max. :Max. :a6a7Min. :Min

8、.1st Qu.:1st Qu.:Median :Median :Mean :Mean3rd Qu.:3rd Qu.:Max. :Max. :這個簡單函數(shù)立即給出了數(shù)據(jù)的的統(tǒng)計特征概括, 對于名義變量,他給出了每個取值的變量的頻數(shù)。例如,從結(jié)果中可知冬季采集的水樣比其他季節(jié)更多,河流size為最大的有45個,河流的流速low比較少。對于數(shù)值型變量,R為我 們提供了四分之一位數(shù),中位數(shù),均值,四分之三位數(shù),極值等一系列信息。這 些統(tǒng)計信息提供了變量值分布的初步信息,在變量有缺失值的情況下,字符串NA后面的數(shù)值即為缺失值的個數(shù),通過中位數(shù),均值,四分位數(shù)的信息,我們可以了解數(shù)據(jù)分布的偏度和分散情況

9、。且這些信息大多數(shù)都可以通過圖形來表達出來。我們看一個例子。hist(algae$mxPH,probability = T)上面程序繪制變量 mxPH的直方圖。如下圖,變量mxPH的分布非常接近正 態(tài)分布,它的值大多數(shù)都集中在變量的均值附近,我們做 Q-Q來檢驗該變量是 否是正態(tài)分布,加載包car,使用里面的()繪制Q-Q圖Histogram ofalgae$mxPHooaaeSmxPHlibrary(car)par(mfrow=c(1,2)hist(algae$mxPH,prob=T,xlab = ,ylim = 0:1,main = Histogram of maximum pH valu

10、e) lines(density(algae$mxPH,=T) rug(jitter(algae$mxPH) (algae$mxPH,main=Normal QQ plot of maximum pH)istogram of maximum pH Jormal QQ plot of maxi工Q.x后售co工Q.x后售co311 3 norm quantiles上圖的左邊是添加核密度曲線的直方圖,而在 X軸附近繪制變量的實際值, 從而容易辨別離群點,例如我們可以發(fā)現(xiàn)有兩個字顯著低于其它所有值。這種數(shù) 據(jù)檢查是很重要的,因為它能確定數(shù)據(jù)樣本中可能出現(xiàn)的錯誤。右邊的 Q-Q圖, 他繪制了變量值與正

11、態(tài)分布的理論分位數(shù)的散點圖,同時他給出正態(tài)分布的95%的置信區(qū)間的帶狀圖,從右上圖知,變量有幾個小的值明顯在95%置信區(qū)間之外, 它們不服從正態(tài)分布。卜面給出另一個數(shù)據(jù)檢驗的例子,用它來檢驗變量OP04: boxplot(algae$oPO4,ylab=Orthophosphate)rug(jitter(algae$oPO4),side = 2)abline(h=mean(algae$oPO4, = T),lty=2)寸 OOM 寸 OOM 0 力方 dsord。工to箱圖上方小橫線上面的小圓圈表示與其他值比較特別大的值,通常認為是離群值,這意味著箱線圖給出大量的信息, 它不僅給出變量的中心趨

12、勢,也給出了 變量的發(fā)散情況和離群值。上圖中與X軸平行的直線,是變量的均值所在的位置,將均值線與中位數(shù)線 進行比較,就可以知道變量的多個離群值使得作為變量中心的均值產(chǎn)生了扭曲。變量oPO4的分布集中在較小的觀測值范圍,因此分布為正偏。大多數(shù)水樣的oPO4值都比較低,也有幾個水樣的觀測值較高,甚至特別高。有時,當(dāng)有離群值時,需要確定哪些有離群值的觀測,可以使用圖形法,例 如繪制NH4的值,將會注意到一個特別大的值,我們可以使用一下方法識別特 大值相應(yīng)的水樣:plot(algae$NH4,xlab =)abline(h=mean(algae$NH4, = T),lty=1)abline(h=mea

13、n(algae$NH4, = T)+sd(algae$NH4, = T),lty=2)abline(h=median(algae$NH4, = T),lty=3)identify(algae$NH4)上面函數(shù)第一條繪制變量的所有值,調(diào)用函數(shù) abline繪制三條有用的直線, 第一條為均值,第二條為均值加一個標準差,第三條為中位數(shù),對于離群值的識 別盡管這三條不是必須的,但它們能提供有用的信息。sszS00L 0II150100200sszS00L 0II150100200從上圖中知道,水樣153的NH4值是一個極大異常值,20, 34,35,88,89,153等 水樣中NH4值都異常高,可以把

14、這些水樣選擇出來,看看他們與別的水樣中海 藻有什么種類有什么差異。下面給出幾種其他類型的數(shù)據(jù)檢驗的例子, 這些例子應(yīng)用R的添加包lattice , 做Trellis圖形。假設(shè)需要研究海藻變量al的值得分布,然而,這里需要分布如何依賴于其 他變量,就需要新的變量,新的工具。條件繪圖是依賴于某個特定因子的圖形表示,因子是一個為一個取值為有限 集合的名義變量。例如,對于 size的不同取值,可以繪制變量 al的一組箱圖。 每個箱圖是對應(yīng)于變量size的某個特定值的水樣子集。通過這些箱線圖可以研究 名義變量size如何影響變量a1值得分布。bwplot(sizea1,data=algae,ylab =

15、 River Size,xlab = Algal A1)smallfTtediurnsmallfTtediurn0204060SOAlgal A1從圖知,在規(guī)模較小的河流中,海藻 al的頻率越高。這種箱圖的另外一個類型是分為箱圖,它可以給出繪制變量的更多信息,R添加包Hmisc可以繪制分位箱圖,下面繪制上面例子中al變量的條件分位箱圖: library(Hmisc) bwplot(sizea1,data=algae,panel = ,probs=seq(.01,.49,by=.01),datadensity=T,ylab=RiverSize,xlab = Algal A1)23S323S3Al

16、gal Ai上圖中的點代表代表不同大小的河流中海藻頻數(shù)的均值,而圖中的豎線分別代表變量的第一份位數(shù),中位數(shù)和第三分位數(shù)。圖中的小豎線代表數(shù)據(jù)的真實取 值,這些值分布信息由分位數(shù)圖來體現(xiàn)。分位數(shù)箱圖提供的信息要多于傳統(tǒng)的箱 圖。例如我們可以確認上面的觀測結(jié)論, 小型河流有更高頻率的海藻,但我們也 觀察到小型河流的海藻頻率的分布比其他類型的河流的海藻頻率的分布分散。這種類型的條件繪圖不局限于名義變量,也不局限于單個因子。只需把連續(xù) 變量離散化,也同樣可以進行條件繪圖,下面給出兩因子條件繪圖的例子。 考慮 變量a3在給定變量season和變量mnO2下的條件繪圖,變量mnO2是一個連續(xù) 變量,代碼如

17、下: m1 stripplot(seasona3|m1,data = algae!(algae$mnO2),)得到的圖形如下,上面的代碼第一行是調(diào)用函數(shù)()對連續(xù)變量mnO2離散化,把該變量轉(zhuǎn)化為因子類型。參數(shù) number設(shè)置需要的區(qū)間的個數(shù)。每個區(qū)間的觀測 值的個數(shù)相等。第二個調(diào)用函數(shù)stripplot(),該函數(shù)是lattice包中的一個繪圖函數(shù),他根據(jù) 另一個變量season把變量的實際值繪制到不同的圖形中。然后對變量mnO2的每個不同的區(qū)間繪制不同的圖形。這些區(qū)間按照從左到右,從上到下的順序來排列。左下方對應(yīng)的是較小的mnO2值。IlliI0102DM4Clll11mlmlIwint

18、er口E0皿summeriid 皿ocooo ospfingom 0 O 000 O 08autumn匚cmoomlT1 winterrm coo oo0mUDCCMD 0000sumrrwon o ooo asptinyMMOOO OD口皿 O 8 口 0oocmci ooo &oautumn口口 o oIlliIIIII101020304033數(shù)據(jù)缺失處理在許多水樣中,一些變量含有缺失值。這種情形在現(xiàn)實問題中非常普遍,這會導(dǎo)致一些不能處理缺失值的分析方法無法應(yīng)用。當(dāng)我們處理含有缺失值的數(shù)據(jù)時,可以運用以下幾種最常見的策略:將含有缺失值得案例剔除根據(jù)變量之間的相關(guān)關(guān)系填補缺失值根據(jù)案例之間的

19、相似性填補缺失值使用能夠處理缺失值數(shù)據(jù)的工具最后一種方式是最嚴格的,因為它限定可我們可以使用的工具。然而,當(dāng)對這些可以處理缺失值的數(shù)據(jù)挖掘工具有信心時,它們可能是一個好的選擇。在下面的章節(jié)中我們將通過舉例來演示如何在 R中實現(xiàn)上述處理缺失值的方法。如果你決定試一試本書中的代碼,你需要了解它們不是互相補充的,由于每節(jié)都用不同的方法來處理這些數(shù)據(jù),這意味著當(dāng)你選擇其他方式來處理這些缺失時,需要重新讀取含有所有缺失值的原始數(shù)據(jù)。重新讀取數(shù)據(jù)的代碼如下:library(DMwR)data(algae).將缺失部分剔除剔除含有缺失數(shù)據(jù)的記錄非常容易實現(xiàn),尤其是當(dāng)這些記錄所占的比例在可用數(shù)據(jù)集中非常小的時

20、候,這個選擇就比較合理。在剔除某些變量中至少含有一個缺失數(shù)據(jù)的所有觀測值時,最好先檢查觀測值,或者至少得到這些觀測值的個數(shù),例如:algae!(algae),nrow(algae!(algae),)1616個含缺失的樣本函數(shù)()產(chǎn)生一個布爾值向量,該向量的元素個數(shù)與algae數(shù)據(jù)框中的行數(shù)相同,如果數(shù)據(jù)框的相應(yīng)行中不含 NA值(即為一個完整的觀測值),函數(shù)返回值就是 TRUE前面提到過 的“ !”運算符,它是取邏輯否,因此上述指令顯示了含有缺失值得水樣記錄。為了從數(shù)據(jù)框中剔除16個樣本,我們可以簡單的輸入:algae - (algae)即使我們決定不使用剔除所有包含缺失值記錄的極端方法,我們也

21、可以剔除某些觀測值。因為這些樣本的缺失值太多,所以它們幾乎是無用的樣本,如果采用復(fù)雜的方法來填補缺失值,就會導(dǎo)致較大偏差。需要注意的是,如果執(zhí)行了前面的命令, 你需要重新讀取數(shù)據(jù), 因為這個指令已經(jīng)剔除了所有缺失數(shù)據(jù),所以接下來的命令就沒有意義!觀察這個樣本中的數(shù)據(jù),我們可以看到第 62條和第199條記錄中的11個解釋變量有6個是缺失值。這種情 況下,最好是剔除它們:algae - algae-c(62,199),在有些問題中,由于大量記錄中含有缺失值,用上面的觀察方法來檢查數(shù)據(jù)的缺失值是 不可行的,所以需要找到缺失值較多的樣本所在的行。下面的代碼可以找到海藻數(shù)據(jù)集中每行數(shù)據(jù)的缺失值個數(shù):ap

22、ply(algae,1,function(x) sum(x)函數(shù)apply ()屬于R中功能非常強大的一類函數(shù)。這類函數(shù)又稱為元函數(shù),它們可以在某些條件下對對象應(yīng)用其他函數(shù)。對函數(shù)apply ()而言,它把一個函數(shù)應(yīng)用到數(shù)據(jù)框的每一行。這個被應(yīng)用的函數(shù)在apply ()函數(shù)的第三個參數(shù)中給出,對數(shù)據(jù)框的每一行都分別調(diào)用該函數(shù)。在這個案例中我們使用一個臨時函數(shù)。它只有在調(diào)用apply ()函數(shù)時才存在。另外,函數(shù) apply ()的第三個參數(shù)也可以是一個正常的函數(shù)的函數(shù)名。臨時函數(shù)的功能是計算對象X中NA的數(shù)量。在R中邏輯值TRUE等于數(shù)值1,邏輯值FALSE等于數(shù)值0, 這意味著當(dāng)加一個布爾值

23、向量時,得到向量中取值為TRUE的元素的個數(shù)。根據(jù)以上代碼,可以編寫一個程序找到algae中含有給定數(shù)目缺失值的行??梢匀缦聭?yīng)用該函數(shù):data(algae)manyNAs(algae,1 62 199只有在前面操作中剔除了缺失值較多的幾行數(shù)據(jù)后才需要調(diào)用函數(shù)data ()。函數(shù)manyNA是()的功能是找到缺失值個數(shù)大于列數(shù)20%的行。在第二個參數(shù)中可以設(shè)置一個精確的列數(shù)作為界限。因此,用下面的代碼就無須知道含有缺失值較多的行的具體數(shù)量。algae - algae-manyNAs(algae),以上操作可以把樣本中 62, 199號水樣數(shù)據(jù)剔除。用高頻率值來填補缺失值填補含有缺失值記錄的另一

24、種方法是嘗試找到這些缺失值最可能的值,同樣,這里有多種策略可供選擇,不同策略對逼近程度和算法復(fù)雜度的權(quán)衡不同,填補缺失數(shù)據(jù)最簡單和快捷的方法是使用一些代表中心趨勢的值,代表中心趨勢的值反映了變量分布的最常見的值,因此中心趨勢值是最自然的選擇。有多個代表數(shù)據(jù)中心趨勢的指標,例如平均值,中位數(shù),眾數(shù)等。最合適的選擇由變量的分布決定。對于接近正態(tài)的分 布來說,所有的觀測值都較好地聚集在平均值周圍,平均值數(shù)就是最佳選擇。然而,對于偏 態(tài)分布,或者離群值的變量來說, 選擇平均值就不好。偏態(tài)分布的大部分值都聚集在變量分布的一側(cè),因此平均值不能作為最常見的代表。另一方面,離群值(極值)的存在會扭曲平 均值,

25、這就導(dǎo)致了平均值不具有代表性的問題。因此,在對變量分布進行檢查之前選擇平均值作為中心趨勢的代表是不明智的,例如某些R的繪制工具。對偏態(tài)分布或者有離群值的分布而言,中位數(shù)是更好的代表數(shù)據(jù)中心趨勢的指標。比如,樣本algae48,中變量mxPH有缺失值。由于該變量分布近似正態(tài)分布我們可以選用平均值來填補這個“洞”,計算方法如下:algae48,mxPH - mean(algae$mxPH,=T)這里,函數(shù)mean ()計算數(shù)值向量的平均值,參數(shù) =T使計算時忽略缺失數(shù)據(jù)。大多數(shù)時候采用一次填補一列中的所有缺失值而不是像上面那樣一行一行地逐個填補。以變量Chla為例,這個變量在第12行上有缺失值。另

26、外,這也是平均值不能代表大多數(shù)變 量值的一種情況。事實上,Chla的分布偏向于較低的數(shù)值,并且它有幾個極端值,這些都使 得平均值不能代表大多數(shù)的變量值。因此,我們使用中位數(shù)來填補這一類的缺失值:algae(algae$Chla),Chla options(digits = 1) cor(algae,4:18,use=)mxPH mnO2 Cl NO3 NH4 oPO4 PO4 Chla a1 mxPH mnO2 Cl NO3 NH4 oPO4 PO4 Chla a1 a2 a3 a4 a5 a6 a7a2 a3 a4 a5 a6 a7 mxPH mnO2 Cl NO3 NH4 oPO4 PO4

27、 Chla al a2 a3 a4 a5 a6 a7函數(shù)cor 0的功能是產(chǎn)生變量之間的相關(guān)值矩陣(因為前3個變量時名義變量,所以計算相關(guān)值時不考慮它們)。設(shè)定參數(shù)use= 時,R在計算相關(guān)值日忽略含有NA的記錄。相關(guān)值在1 (或-1)周圍表示相應(yīng)的兩個變量之間有強正(或負)線性相關(guān)關(guān)系。然后其他R函數(shù)可以得到變量間線性相關(guān)的近似函數(shù)形式,它可以讓我們通過一個變量的值計算出另一個變量的值。函數(shù)cor 0的輸出結(jié)果并不是很清晰,可用 symnum來改善結(jié)果的輸出形式. symnum(cor(algae,4:18,use=)mP mO Cl NO NH o P Ch a1 a2 a3 a4 a5

28、a6 a7 mxPH 1 mnO2 1 Cl1 TOC o 1-5 h z NO31NH4, 1oPO4. .1PO4. .* 1Chlaal TOC o 1-5 h z a2 .1a31a4 . .1a51a6. . 1a71 attr(,legend)1 0 ,一 +,* 一 b1這種用符號表示相關(guān)值得方法更為清晰,特別是對于大的相關(guān)矩陣。在本案例的數(shù)據(jù)中,大多數(shù)變量之間是不相關(guān)的,然而,有兩個例外:變量NH4和NO3之間,變量PO4和oPO4之間。后兩個變量之間的相關(guān)值很高 (大于)。變量NH4和NO3之間 的相關(guān)性不是特別明顯(為),因此,根據(jù)它們來確定缺失數(shù)據(jù)是危險的。此外,因為樣本

29、62和樣本199有太多的變量含有缺失值,所以如果剔除它們,樣本中的變量 NH4和NO3就沒有缺失值了。至于變量PO4和oPO4,它們之間相關(guān)性可以幫助填補這兩個變量的缺失值。為了達到這個目標,我們需要找到這兩個變量之間的線性關(guān)系,方法如下: data(algae) algae lm(PO4oPO4,data = algae)Call:lm(formula = PO4 oPO4, data = algae)Coefficients:(Intercept)oPO4述該函數(shù)。線性模型是|P04 = 1 290Po4 + 42 9。如果這兩個變量不是同時有缺失值,那 么可以用這個公式計算這些變量的缺失

30、值。在剔除樣本62和樣本199后,還剩下一個樣本28在PO4上有缺失值,可以簡單地使用上面的線性關(guān)系計算缺失值的填補值: algae28,PO4 algae28,PO41 48通過變量之間的相關(guān)關(guān)系求出水樣28, PO4的缺失值填補為 48。對線性關(guān)系的研究使我們能夠填充一些新的缺失值。然而還有幾個觀測值含有缺失值??梢栽囍剿靼咐龜?shù)據(jù)中含有缺失值的變量和名義變量之間的關(guān)系,這可以通過R添加包lattice中的函數(shù)來繪制條件直方圖來進行。繪圖代碼如下:histogram(mxPH|season,data=algae)summerwintersummerwinterSDnriilSDnriil6

31、7 B 910mxPH上圖是繪制在不同的季節(jié)變量mxPH的直方圖。mxPH直方圖在不同季節(jié)沒有顯著的不同,下面對河流的大小size進行上面類似的分析,執(zhí)行命令:histogram(mxPH|season,data=algae)B 73910laraemediumsnialle 7&9 ke t s & idmsPH那么從得到的直方圖知,較小的河流有較小的mxPH值。對這種相關(guān)性研究,可以擴展到多個名義變量: stripplot(sizemxPH|speed,data=algae,jitter=T)上面的指令結(jié)果如下圖,參數(shù)jitter=T說明丫的變量值進行小范圍的隨機排列,這些可以避免相同值之

32、間的互相重疊而導(dǎo)致導(dǎo)致失去具有某些特定值的觀察值集中度的信息。這種類型的分析可以應(yīng)用到其它含有缺失值的變量中,然而這種分析是一種繁瑣的過 程,有大量的變量組合需要分析。適合名義變量較少的數(shù)據(jù)集的分析。通過探索案例之間的相似性來填補缺失值不同于探索數(shù)據(jù)集列之間的相關(guān)性,嘗試使用行之間的相似性來填充缺失值。我們可以使用這種方法來填補剔除了那兩個含有太多的NA值得樣本外的其它缺失數(shù)據(jù)。如上所描述的方法假如兩個水樣是相似的,其中某些變量有缺失值,那么該缺失值很可能與另一個水樣的值是相似的。為了使用這種直觀的方法, 首先定義相似性的概念。 相似性經(jīng)常由描述觀察值的多元度量空間的變量所定義。在文獻中有許多

33、度量相似性的指標,常用的是歐式距離。這個距離可以非正式的定義為任何兩個案例的觀察值之差的平方和,計算公式如下:下面要描述的方法是使用這種度量來尋找與任何含有缺失值的案例最相似的10個水樣,并用它們來填充缺失值。我們考慮兩種應(yīng)用這些值的方法。第一種方法簡單地計算這10個最相近的案例的中位數(shù)并用這個中位數(shù)來填充這些缺失值。第二種方法是采用這些相似數(shù)據(jù)的加權(quán)均值。權(quán)重的大小隨著距待填補缺失值的個案的距離為d,則它的值在加權(quán)平均中的權(quán)重為:上面的方法可以通過添加包函數(shù)knnImputation()來實現(xiàn),這個函數(shù)用一個歐式距離的變種來找到距離任何個案最近的k個鄰居。在計算距離時都要對數(shù)據(jù)進行標準化。下

34、面介紹如何使用 knnImputation()函數(shù) algae-algae-manyNAs(algae),algae-knnImputation(algae,k=10)algae如果使用中位數(shù)來填補缺失值,可以使用下面的代碼algae algae 在運行以上的代碼后,得到的數(shù)據(jù)框?qū)⒉缓笔е?。接下來,將建立一個用于預(yù)測海藻頻率的線性回歸模型: summaryCall:lm(formula = a1 ., data = , 1:12)Residuals:Min 1Q Median 3Q MaxCoefficients:Estimate Std. Error t value Pr(|t|) (In

35、tercept).seasonspring seasonsummer seasonwinter sizemedium sizesmall*speedlow speedmedium mxPH mnO2 Cl NO3*NH4oPO4PO4Chla Signif. codes: 0 *. 0 1Residual standard error: 18 on 182 degrees of freedomMultiple R-squared: ,Adjusted R-squared:F-statistic: on 15 and 182 DF, p-value:在解釋函數(shù)summary。應(yīng)用到線性模型對象所

36、得到的信息之前,先介紹 R處 理3個名義變量。當(dāng)像上面一樣進行模型構(gòu)建時 R會生成一組鋪助變量,即對每 個有k個水平的因子變量,R會生成k-1個鋪助變量。這些鋪助變量的值為 0或 者為1,當(dāng)鋪助變量為1表明該因子值出現(xiàn),同時表明其他鋪助變量的值為 0. 如果所有這k-1個鋪助變量的取值都為0,則表明因子變量的取值為第 k個剩余 的值。對得到的線性模型對象應(yīng)用函數(shù) summary。,將給出所建模型的一些診斷信 息。首先是有關(guān)線性模型中數(shù)據(jù)擬合殘差的。 殘差應(yīng)該是均值為0并且為這個態(tài) 分布??梢允褂胮lot的命令來得到一系列的線性模型圖,它們有助于了解模型的性 能,其中的一幅圖形繪制擬合的目標變量

37、值和模型殘差的散點圖。R給出的另一圖形是誤差正態(tài)的Q-Q圖,通過它可以檢驗是否符合應(yīng)有的正態(tài)分布。Q 守 _Resi duals vs l-ittediriQ 守 _Resi duals vs l-ittedirifiI-10010203040fitted valuesIm(a1、.)norm quantites該模型解釋的方差比例還是不太理想,大約為 32%,還可以拒絕目標變量不依賴預(yù)測變量的假設(shè)。檢驗?zāi)承┫禂?shù)的顯著性,可能要考慮某些變量是否應(yīng)該進 入模型中,下面將使用向后消元法。首先用函數(shù)anova()來精簡線性,g型。當(dāng)將 anova()應(yīng)用到簡單線性模型時, 這個函數(shù)提供一個模型擬合的

38、方差序貫分析, 也就是說,隨著公式的項數(shù)的增加, 模型的殘差平方和減少。對前面建立的模型進行方差分析。 anovaAnalysis of Variance TableResponse:a1Df Sum Sq Mean Sq F valuePr(F)season385size2 11401*speed23934*mxPH11329*mnO212287*Cl14304*NO313418*NH41404oPO414788*PO411406*Chla1377Residuals 182 56668 Signif. codes: 0 * *,.,1上面的結(jié)果表明season對減小模型擬合誤差的貢獻最小,下

39、面將它從模型中 剔除: summaryCall:lm(formulaa1size lm(formulaa1size + speed + mxPH + mnO2 + Cl + NO3 + NH4 +oPO4 + PO4 + Chla, data = , 1:12)Residuals: Min 1Q Median 3Q MaxCoefficients:Estimate Std. Error t value Pr(|t|)(Intercept).sizemedium sizesmall*speedlow speedmedium mxPH mnO2 Cl NO3*NH4 oPO4 PO4.Chla S

40、ignif. codes: 0 *. 0 1Residual standard error: on 185 degrees of freedomMultiple R-squared: ,Adjusted R-squared:F-statistic: on 12 and 185 DF, p-value:新模型的擬合指標提高到了 ,仍然不是太理想。下面使用anova()函數(shù)對兩個模型進行比較正式的比較,但這次使用兩個模型作為參數(shù): anova,Analysis of Variance TableModel 1: a1 season + size + speed + mxPH + mnO2 + Cl

41、 + NO3 + NH4 + oPO4 + PO4 + ChlaModel 2: a1 size + speed + mxPH + mnO2 + Cl + NO3 + NH4 + oPO4 + PO4 +ChlaRSS Df Sum of Sq F Pr(F)1182 566682185 57116 -3上面的函數(shù)通過F檢驗對兩個模型進行方差分析,據(jù)此評價兩個模型是否有 顯著差異。這種情況下,盡管誤差平法和減少了-448,但比較的結(jié)果表示兩者的差距并不顯著。為了檢驗是否能移除更多的系數(shù)。為了簡化向后消元過程, R有 一個函數(shù)來執(zhí)行上面的所有過程。下面的代碼對初始模型用向后消元法得到一個新的線性

42、模型。56668mnO2157363NH4157494PO4157567size 258526NO3 159008Step: AIC=a1 size + speed + mxPH + mnO2 + Cl + NO3 + NH4 + oPO4 + PO4 + ChlaDf Sum of Sq RSS AICspeed 257327-Chla157462-Cl157520-mnO2157572-mxPNH4157892-PO4157977-size259292-NO3159537-oPO4 157124Step: AIC=alsize +mxPH + mnO2 + Cla

43、lsize +mxPH + mnO2 + Cl+ NO3 + NH4 + oPO4 + PO4 +ChlaDf Sum of Sq RSS AICoPO4 157343Df Sum of Sq RSS AICoPO4 157343Chla 157550mnO2 157740Cl157799mxPH157810none57327NH4158047PO4158136size 259388NO3 159706Step: AIC=a1 size + mxPH + mnO2 + Cl + NO3 + NH4 + PO4 + ChlaDf Sum of Sq RSS AICChla 157551mnO2

44、157746Cl157814mxPHH4158047size 259393-PO4 163161Step: AIC=a1 size + mxPH + mnO2 + Cl+ NO3 + NH4 +Df Sum of Sq RSSmnO2 157986CH4158298mxPH 158384size 259768NO3160218PO4163860Step: AIC=AICa1 size + mxPH + Cl + NO3 +NH4 + PO4Df Sum of Sq RSSNH4 158517CxPH 158805si

45、ze 260464NO3160237PO4167084AICStep: AIC=a1 size + mxPH + Cl + NO3 +PO4-NO3 159713PO4Df Sum of Sq RSS AIC58517-mxPH159301-Cl159353-NO3160505-size261181-PO4167093可以通過下面的代碼來獲得最后模型的信息: summaryCall:lm(formula = al size + mxPH + Cl + NO3 + PO4, data =,1:12)Residuals:Min 1Q Median 3Q MaxCoefficients:Estima

46、te Std. Error t value Pr(|t|)(Intercept) sizemedium sizesmall mxPH ClNO3PO4*(Intercept) sizemedium sizesmall mxPH ClNO3PO4*Signif. codes: 0 *. 0 1Residual standard error:Multiple R-squared:,Residual standard error:Multiple R-squared:,Adjusted R-squared:這樣的R這樣的R2表明對海藻案例應(yīng)用這個模型的解釋的方差比例任然不是很樂觀, 線性模型是不合適的回歸樹給出R的另一種回歸模型,通過建立回歸樹來預(yù)測海藻a1出現(xiàn)的頻率。由于這類模型可以處理缺

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論