【发布时间】:2019-06-09 19:51:25
【问题描述】:
我在 R 中有一个数据框(“GO”),有 2 列,“term”和“gene”。 "term" 列是字符类型,具有如下条目:
GO_POSITIVE_REGULATION_OF_VIRAL_TRANSCRIPTION
GO_CARGO_RECEPTOR
GO_MATRIX ...
所以每列都以 GO_ 开头,单词之间有 _。我想删除 GO_ 并用空格替换其他 _。
我试图用 gsub 解决这个问题:
GO$term <- gsub('GO', '', GO$term)
GO$term <- gsub('\\_', ' ', GO$term)
问题是,例如 GO_CARGO_RECEPTOR 已成为 CAR RECEPTOR,但我需要它成为 CARGO RECEPTOR。
我不知道怎么可能在R中指定代码,所以在这个例子中只有开头的GO_和字符串中间的_被删除...
感谢您的帮助。
【问题讨论】:
-
您只需要
sub即sub("^GO_", "", GO$term),因为gsub替换了“GO”的多个实例。在这里,因为它只是开始的'GO',你可以添加^来标记字符串的开始 -
所有字符串都以
GO_开头吗?还是仅当字符串以GO_开头时才需要执行这些替换?