您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關如何理解R語言中的缺失值,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
大部分統計方法都假定處理的是完整向量、矩陣、數據框,但是在大多數情況下,在處理真實數據之前 不得不消除缺失值數據:(1)刪除含有缺失值的實例;(2)用合理的值替代缺失值。缺失值的處理主要用VIM和mice函數
VIM包提供哺乳動物數據(sleep),研究62種動物的睡眠、生物學變量和體質變量是自變量或預測變量。
睡眠變量包含睡眠中做夢時長(Dream)、不做夢的時長(NonD)以及它們的和(Sleep)。體質變量包括體重 (BodyWgt,單位為千 )、腦重 (BrainWgt,單位為 )、壽命 (Span,單位為年)和妊娠期(Gest,單位為天)。生物學變量包含物種被捕食的程度(Pred)、睡眠時暴露的程度 (Exp)和面臨的總危險程度(Danger)
處理缺失值的方法:
R語言中使用NA代表缺失值,NaN(不是一個數)代表不可能的值,符號Inf和-Inf代表正無窮和負無窮,函數is.na、is.nan()和is.infinite()分別識別缺失值、不可能值和無窮值,返回結果是TRUE或FALSE
> install.packages(c("VIM","mice"))
> data(sleep,package="VIM")
> sleep[complete.cases(sleep),]#列出沒有缺失值的行
此處省略一萬字.......
>sleep[complete.cases(sleep),]
BodyWgt BrainWgt NonD Dream Sleep Span Gest Pred Exp Danger
1 6654.000 5712.0 NA NA 3.3 38.6 645 3 5 3
3 3.385 44.5 NA NA 12.5 14.0 60 1 1 1
4 0.920 5.7 NA NA 16.5 NA 25 5 2 3
13 0.550 2.4 7.6 2.7 10.3 NA NA 2 1 2
14 187.100 419.0 NA NA 3.1 40.0 365 5 5 5
19 1.410 17.5 4.8 1.3 6.1 34.0 NA 1 2 1
20 60.000 81.0 12.0 6.1 18.1 7.0 NA 1 1 1
21 529.000 680.0 NA 0.3 NA 28.0 400 5 5 5
24 207.000 406.0 NA NA 12.0 39.3 252 1 4 1
26 36.330 119.5 NA NA 13.0 16.2 63 1 1 1
30 100.000 157.0 NA NA 10.8 22.4 100 1 1 1
31 35.000 56.0 NA NA NA 16.3 33 3 5 4
35 0.122 3.0 8.2 2.4 10.6 NA 30 2 1 1
36 1.350 8.1 8.4 2.8 11.2 NA 45 3 1 3
41 250.000 490.0 NA 1.0 NA 23.6 440 5 5 5
47 4.288 39.2 NA NA 12.5 13.7 63 2 2 2
53 14.830 98.2 NA NA 2.6 17.0 150 5 5 5
55 1.400 12.5 NA NA 11.0 12.7 90 2 2 2
56 0.060 1.0 8.1 2.2 10.3 3.5 NA 3 1 2
62 4.050 17.0 NA NA NA 13.0 38 3 1 1
> sum(is.na(sleep$Dream))#表明變量Dream有12個缺失值
[1] 12
> mean(is.na(sleep$Dream))#表19%比例在此變量上有缺失值[1] 0.1935484
> mean(!complete.cases(sleep))#數據集中32%實例有一個或多個缺失值
[1] 0.3225806
對于缺失值,必須牢記complete.cases()函數僅NA和NAN缺失值識別,Inf和-Inf無窮值唄當作有效值;必須使用缺失值函數來識別數據對象中缺失值,比如mydata==NA的邏輯是無法實現的。
上述就是小編為大家分享的如何理解R語言中的缺失值了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。