R 缺失值處理

2021-08-20 19:52:53 字數 704 閱讀 2174

假設有一組資料集如下:

data=data.frame(y=c(1,2,3,na,5,6),x1=c(6,na,4,3,2,1),x2=c(1,3,6,9,12,na))

「na」即表示缺失值。

在r中輸入該資料。

#判斷缺失資料

is.na(data)

#統計缺失值個數

sum(is.na(data))

#檢視每個樣本資料是否完整,其值與is.na()相反

complete.cases(data)

這裡介紹處理缺失值的3種方法。

1、選擇無缺失值的記錄,**如下:

data1=data[complete.cases(data),]

2、刪除所有有缺失值的記錄,這種方法在資料處理中是最常用的。

data2=na.omit(data)

3、替換缺失值。通過一定的統計方法計算出相應值來替換缺失值。一般的方法有:平均值法(最常用)、多重插補法、隨機模擬法回歸**(較複雜)。

平均值法如下:

#使用已有值的平均值來代替缺失資料

attach(data)

y[is.na(y)]=mean(y,na.rm=t)

x1[is.na(x1)]=mean(x1,na.rm=t)

x2[is.na(x2)]=mean(x2,na.rm=t)

data=data.frame(y,x1,x2)

R語言處理缺失值

在處理資料過程中,避免不了會產生一些缺失值,如未填寫資料或者編碼錯誤等原因,用na表示缺失值。在r語言中,is.na 函式可以判斷元素是否是缺失值,從而返回邏輯值 true false 所以該函式將會返回和元資料集一樣大小的資料集。在判斷缺失值的過程中,需要注意以下兩點 既然缺失值可能無處不在,那麼...

R語言矩陣 缺失值處理

缺失值處理一般包括三步 1.識別缺失資料 2.檢查導致資料缺失的原因 3.刪除包含缺失值的例項或用合理的數值代替 插補 缺失值。x is.na x 1 true is.nan x 1 false is.infinite x 1 false 函式complete.cases 可用來識別矩陣或資料框中沒...

R語言的缺失值處理 1

一定要先了解缺失機制,即為什麼會產生缺失值。對於隨機產生的缺失值,可以刪除,刪除的物件分為兩類,變數的刪除,以及觀測值的刪除。當某一變數的缺失值比例很高的時候,可以直接刪除,也可以用啞變數進行標誌。但缺失值的產生不是隨機的,要根據它產生原因用不同的方法填補 主要介紹三個包的常用於填補缺失值的函式。思...