用R中的"no"替换空白单元格

Hug*_*ugo 1 replace r na

我喜欢用"否"替换列中的空白单元格("").缺少的条目确实对我有意义(尚未确定分数),我喜欢稍后在回归树中使用因子变量.

我在这里找到了一个类似的问题(用空格替换空白单元格)并尝试以下方法,但随后将空白单元格转换为NA而不是文本:

> Test$SCORE[Test$SCORE==" "]<- "no"

Warning message:
In `[<-.factor`(`*tmp*`, Test$SCORE == " ", value = c(NA, NA, 8L,  :
  invalid factor level, NA generated
Run Code Online (Sandbox Code Playgroud)

有没有办法避免NA并使用我自己的文本?

请参见示例数据"测试":

ID  Score  
 1. A
 2. " "
 3. B
 4. " "
 5. C
Run Code Online (Sandbox Code Playgroud)

有没有办法避免NA并使用我自己的文本?这是我想要实现的结果:

ID  Score
1   A
2   "no"
3   B 
4   "no"
5   C
Run Code Online (Sandbox Code Playgroud)

数据集非常大,因此通过索引特定行的手动解决方案非常耗时.我感谢你的帮助,因为R对我来说很新鲜.

非常感谢你提前.

附加信息:

str(Test $ SCORE)因子w/13级"","A","B","C",..

请原谅示例表的格式,但这是我的第一个问题.

Rol*_*and 7

关于要素水平的工作:

DF <- read.table(text = 'ID  Score  
                 1. A
                 2. " "
                 3. B
                 4. " "
                 5. C', header = TRUE)
levels(DF$Score)[levels(DF$Score) == " "] <- "no"
#  ID Score
#1  1     A
#2  2    no
#3  3     B
#4  4    no
#5  5     C
Run Code Online (Sandbox Code Playgroud)

这非常有效,因为通常比矢量中的元素要少得多.