0
我有一個6列1800行的數據幀。數據從軟件導出,結果爲「是」,「否」和「 - 」(對於未記錄的數據)。我想改變 - 對於NA,是到1,否爲0.是否有一種好方法可以一次完成這一切?替換R數據幀中的值
我試過datap[datap=="-"] <- NA
,它將「 - 」的所有值改爲<NA>
。我認爲這是我想要的?然後,當我試圖datap[datap=="No"] <- 0
,我得到了一個錯誤:
> 1: In `[<-.factor`(`*tmp*`, thisvar, value = "0") :
invalid factor level, NA generated
而所有的「不」的價值觀成爲NA。我在這裏做錯了什麼?
當你在數據讀取方面嘗試添加兩個參數'從datap < - 函數read.table(my_file,stringsAsFactors = FALSE,na.strings =「 - 」)'。然後你可以替換列值。 –
使用'as.character'將列更改爲'character',然後在替換之前用替換值替換或創建新級別。 – akrun
謝謝!皮埃爾的答案奏效了,但是當我將「是/否」更改爲1/0時,他們是字符。如何將多列更改爲數字,而不更改日期列?我一直在用'datap $ taskked < - as.numeric(datap $ taskked)'來單獨更改它們,但是有沒有辦法同時更改多個? – Madison