R中的strsplit函数用于data.table

时间:2017-08-02 21:05:57

标签: r strsplit

我有一个表格,其中一个我的列(mydata $ Gene)有一些ID,其格式为:

ENSG00000000419.8
ENSG00000000460.12

我希望了解如何使用strsplit函数删除.xx部分

所以我希望我的所有输出都是

ENSG00000000419
ENSG00000000460

到目前为止,我尝试了以下代码:

strsplit(mydata$Gene, ".", fixed=TRUE)

但得到错误:

  

strsplit错误(mydata $ Gene,"。",fixed = TRUE):非字符   参数

以及

strsplit(mydata$Gene, "\.", fixed=TRUE)
  

错误:'。'是字符串开始时无法识别的转义   """

有什么建议吗?

谢谢你的时间。

1 个答案:

答案 0 :(得分:1)

这很有效,因为您的数据看起来像是一个因素:

This only works with a Java VM of version 1.6 or higher

但如果您想要的只是点之前的文字,那么您可以通过替换替代品做得更好:

> strsplit(as.character(mydata$Gene), ".", fixed=TRUE)
[[1]]
[1] "ENSG00000000419" "8"              

[[2]]
[1] "ENSG00000000460" "12"