【问题标题】:Wrong replacement of strings with gsub in R在 R 中用 gsub 错误替换字符串
【发布时间】:2014-05-24 10:47:19
【问题描述】:

我试图从我的labelexp 数据框中排除所有".1" 出现。

我的意见

     ID
1 NE001403
2 NE001458.1
3 NE001494.1
4 NE001634.1
5 NE001635.1
6 NE001637.1

我试过了:labelexp$ID <- gsub(".1", "", labelexp$ID),但我的输出是:

    ID
1 NE0403
2 NE0458
3 NE0494
4 NE0634
5 NE0635
6 NE0637

有什么想法吗?谢谢。

【问题讨论】:

    标签: r syntax gsub


    【解决方案1】:

    .”是 R 正则表达式中的一个特殊字符 - 它表示任何字符。你需要在它前面加上“\\”来告诉R你的意思是它是字符“.”。因此,尝试:

    labelexp$ID <- gsub("\\.1", "", labelexp$ID)
    

    这对你有用吗?

    【讨论】:

      【解决方案2】:

      您也可以使用fixed=TRUE 选项:

       sub(".1", "","NE001458.1",fixed=TRUE)
       "NE001458"
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-10-30
        • 2020-05-07
        • 1970-01-01
        • 2013-09-05
        • 2013-08-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多