2015-10-05 87 views
0

我是新至R刪除丟失的數據,所以請原諒我很基本的問題:麻煩從數據幀

我有,有很多缺失數據的數據幀。我用na.omit刪除丟失的數據,如:

data2 <- na.omit(data1) 

Howevever,一些變量是似乎仍然有「」作爲羣歸類之一,如因素:

> str(data2$smoker) 
Factor w/ 3 levels "","No","Yes": 2 2 2 2 2 2 2 3 3 2 ... 

當我看「data2」時,它仍然有缺失的值。我做錯了什麼?

幫助和建議非常感謝。

格雷格

+0

除非你讓R這樣做在你的文件中讀取時,'「」'不被認爲丟失。你是如何讀取數據的? – Heroka

+0

默認情況下''「'不是缺失值。缺少的值由邏輯常量「NA」(請參閱​​幫助文件NA?)聲明,或者在字符值的情況下由「NA_character_」聲明。你可以例如試試'na.omit(factor(data2 $ smoker,levels = c(「No」,「Yes」)))'。 – lukeA

+0

@Heroka - 謝謝 - 我只是做了一個read.csv – drgregmartin

回答

0

NA是不一樣的""

有什麼區別?

  • NA表示缺失值
  • ""是一個空字符串,它是一種類型的值

na.omit將刪除NA值,但它不會刪除空字符串。

我建議把""NA使用na.omit前:

data1[data1$smoker == "", "smoker"] <- NA 
+0

我認爲像'is.na(data1 $ smoker)< - data1 $ smoker ==「」'''的語法也應該可以工作。 – Frank