用 Gsub 替换不完整的括号

Replace Incomplete Bracket with Gsub

我想在 R 中为以下列做一个简单的替换:

df

                                                                        Songs
1                                                      Saga (Skit) [feat. RZA
2                                                                     Revenge
3                                                           Whatever You Want
4                                                               What About Us
5                                                              But We Lost It
6                                                                     Barbies

我想做两个不同的替换:

1) 将“[”替换为空白

2) 将“]”替换为空白

需要单独执行此操作,因为我的某些值在括号中只有 1,例如 Songs 列中的第一个值。

df[,1]<-gsub("[","",df[,1])

错误:

Error in gsub("[", "", newdf2[, 1]) : 
  invalid regular expression '[', reason 'Missing ']''

我该如何解决这个无效的正则表达式错误?

谢谢!

[是元字符,需要转义

gsub("\[|\]", "", df$Songs)

或者其他方式是

gsub("[][]", "", df$Songs)

有时你必须在 R 中双重转义。这应该可以一次完成两个替换。

gsub("\[|\]", "", df$Songs)