2013-07-20 23 views
7

BenR'deki bir diziden tek tırnak nasıl kaldırılır? Bir veri çerçevede

ben 2 sütunda dizesinden tek tırnak nasıl kaldırırım
"X1" "X2" 
"1" 53 "'[email protected]'" 
"2" 54 "'[email protected]'" 
"3" 55 "'[email protected]'" 
"4" 56 "'[email protected]'" 

gibi metin? Eğer bir döngü için gerek kalmadan veri çerçevesine doğrudan uygulayabilirsiniz böylece fonksiyon vektörleştirilmiş edilir

result <- gsub("'", '', yourString) 

veya apply: metni değiştirmek için

cevap

12

, (g)sub kullanmak

df$X2 <- gsub("'", '', df$X2) 
+0

Sorun çözüldü! : D Teşekkürler! Vectorized seçeneği için – phoenix

+0

+1! – phoenix

2
df[,2] <- gsub("'", '', df[,2], fixed=TRUE) 

Sanırım sabit varsayılan, ama açık olmak için asla acıtmaz.

Özür dileriz, yazının başlığını "R'de bir dizeden (bir) tek alıntı nasıl kaldırılır?" Olarak okuyun. "

+0

'fixed = TRUE' * varsayılan değil * ancak bu durumda hiçbir fark yaratmaz. Ancak, 'yalnız' burada çalışmıyor, OP'nin gsub ihtiyacı var. –

0

Aksi halde soruları biliyorum, ama aslında yapmak istediği şey bu 2. sütunu açmak, yani kuyruğu kaldırmak ve tek tırnak işareti vermek. Bu biraz geliştirilmiş bir regex ile yapılabilir:

gsub("(^')|('$)", "", df$X2) 
İlgili konular