简体   繁体   English

查找并替换特定模式

[英]Find and replace a specific pattern

I have a large data.frame in which the first column looks like: 我有一个很大的data.frame,其中第一列看起来像:

"COL" “ COL”
ELOVL6 ELOVL6
ELOVL7 ELOVL7
ELP2 ELP2
EMC1 (includes EG:23065) EMC1(包括EG:23065)
EPT1 (includes EG:28042) EPT1(包括EG:28042)
ZEB1 (includes EG:29009) ZEB1(包括EG:29009)

I would like to remove all the (includes EG:...) to have the following output: 我想删除所有(包括EG:...)以具有以下输出:

"COL" “ COL”
ELOVL6 ELOVL6
ELOVL7 ELOVL7
ELP2 ELP2
EMC1 电磁兼容1
EPT1 EPT1
ZEB1 ZEB1

Any suggestion about? 有什么建议吗?

Thanks a lot in advance 在此先多谢

 I suppose y your column of the data.frame

 sapply(as.list(y),function(x){gsub("(.*)\\(.*\\)", "\\1", x)})

EDIT 编辑

even more simpler 更简单

 gsub("(.*)\\(.*\\)", "\\1", x)

You mean something like this.... 你的意思是这样的...

COL <- c("ELOVL7",
         "ELP2",
         "EMC1 (includes EG:23065)",
         "EPT1 (includes EG:28042)",
         "ZEB1 (includes EG:29009)")

COL <- data.frame(COL)
data.frame(COL=sapply(strsplit(as.character(COL[,1]), split=" "), '[', 1))
     COL
1 ELOVL7
2   ELP2
3   EMC1
4   EPT1
5   ZEB1

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM