2017-10-13 1 views
-1

Je veux faire un simple substituons dans R pour la colonne suivante:Remplacer Support incomplet avec gsub

df 

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

Je veux faire deux remplacements différents:

1) Remplacer « [ » avec vide

2) Remplacer « ] » avec vide

besoin de le faire séparément mais parce que certaines de mes valeurs a seulement 1 sur les consoles comme la première valeur dans la Songs colonne.

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

Erreur:

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

Comment puis-je à aller dans cette erreur d'expression régulière non valide?

Merci!

+0

@Henrik excuses, n'a pas vu l'autre question. Bryan Goggin et Akrun ont été utiles en donnant une manière différente de le résoudre. Merci –

Répondre

2

Parfois, il faut doubler les choses échapper à R. Cela devrait fonctionner à la fois faire les remplacements en une seule fois.

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

Votre solution ressemble à la mienne – akrun

+0

C'est presque comme si il y avait une bonne façon de le faire ... –

2

Le [ est un métacaractère, il doit être échappé

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

ou tout autre dispositif est

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