美文网首页
R--小技巧--字符串一一替换

R--小技巧--字符串一一替换

作者: 小贝学生信 | 来源:发表于2021-11-17 21:41 被阅读0次

    引用场景:比如需要将一个字符串中的所有1变为A2变为B3变为C......

    test = c(1,2,2,6,5,3,4,4,1)
    
    • 方法一:ifelse()
    ifelse(test==1,"A",
           ifelse(test==2,"B",
                  ifelse(test==3,"C",
                         ifelse(test==4,"D",
                                ifelse(test==5,"E","F")))))
    # [1] "A" "B" "B" "F" "E" "C" "D" "D" "A"
    
    • 方法二:factor()的label
    factor(test, levels=1:6, labels=LETTERS[1:6]) %>% as.character()
    # [1] "A" "B" "B" "F" "E" "C" "D" "D" "A"
    

    注意:由于字符串的内容与levels参数值一致;levellabels参数为一一对应的关系。

    • 方法三:dplyr::case_when
    dplyr::case_when(
      test==1 ~ "A",
      test==2 ~ "B",
      test==3 ~ "C",
      test==4 ~ "D",
      test==5 ~ "E",
      test==6 ~ "F")
    # [1] "A" "B" "B" "F" "E" "C" "D" "D" "A"
    

    相关文章

      网友评论

          本文标题:R--小技巧--字符串一一替换

          本文链接:https://www.haomeiwen.com/subject/gbihgltx.html