2009-12-07 151 views
2

我有一張表格,其中特別是在一列中遍佈整個地方的「NA」。我想用其他東西替換「NA」的每個實例 - 例如,數字1.更改R中的特定列值

我該怎麼做?

+0

對不起編輯前的人,但這是一個R問題。我不知道爲什麼標籤是sql和數據庫,因爲我沒有將它們輸入到標籤字段中。 – user5243421 2009-12-07 07:38:55

+0

檢查修訂版本(stackoverflow.com/revisions/1858280/list)。艾蒂安改變你的標籤。 – Marek 2009-12-07 09:27:14

+0

啊,我忘了檢查修訂。 無論如何,這是一個奇怪的修訂。 > _> – user5243421 2009-12-07 22:08:31

回答

5

喬納森具有用於載體,其可以使用適用於列中的數據幀的DAT正確的答案:

> dat<-data.frame(a=c(11,2,11,NA),b=c(1,1,1,1)) 
> dat$a[is.na(dat$a)] <- 1 

爲了完整性,使用Deducer的'重新編碼變量'對話框,可以做更復雜的重新編碼,產生以下代碼。

> library(Deducer) 
> dat[c("a")] <- recode.variables(dat[c("a")] , "NA -> 1;") 
+0

酷,不知道'Deducer'。我認爲你仍然可以使用簡潔的語法'dat $ a < - recode.variables(dat $ a,「NA - > 1;」)''。 – 2009-12-07 15:11:46

+0

Deducer是一個偉大的提示。謝謝! – user5243421 2009-12-07 22:09:40

0

更新TABLENAME集列=「1」,其中塔=「NA」

4
x[is.na(x)] <- 1