我使用下面的代码从矢量中的每个字符串的末尾删除部分“(MV)”(特别是对于所有列的第1行,并跳过第1列,如代码所示)但是,即使它位于字符串的起始处,它也会删除矢量中的每个M,V和MV。使用gsub删除字符串的一部分
df[1,(-1)]<-gsub("[(MV)]","",df[1,(-1)])
如何仅删除每个字符串末尾的(MV)部分而不影响其余部分?
这里是一个重复的例子:
structure(list(X1 = structure(c(NA, 5447), class = "Date"), X2 = c("AVON(MV)",
"28.34"), X3 = c("BA.(MV)", "750.07"), X4 = c("CMRG(MV)", "10.040000000000001"
), X5 = c("COB(MV)", "143.22999999999999")), .Names = c("X1",
"X2", "X3", "X4", "X5"), row.names = c(NA, -2L), class = "data.frame")
您可以在'gsub'中使用'fixed'参数,可能使用'“(MV)”'作为模式。例如:'x < - “MV(MV)”; gsub(“(MV)”,“”,x,fixed = TRUE)'请提供一个可重复的示例,以便我们确切知道您在做什么。 – 2014-10-30 19:05:52
@RichardScriven我用一个可重复的例子更新了这个问题 – athraa 2014-10-30 20:00:40
你确定第一行不应该是列标题吗?这不是数据正常建立的方式。 – 2014-10-30 20:09:05