如何从R中的字符串中删除单引号?
Posted
技术标签:
【中文标题】如何从R中的字符串中删除单引号?【英文标题】:How to remove single quote from a string in R? 【发布时间】:2013-07-19 22:49:04 【问题描述】:在数据框中,我有类似
的文本"X1" "X2"
"1" 53 "'all.downtown@enron.com'"
"2" 54 "'all.enron-worldwide@enron.com'"
"3" 55 "'all.worldwide@enron.com'"
"4" 56 "'all_enron_north.america@enron.com'"
如何从第二列的字符串中删除单引号?
【问题讨论】:
【参考方案1】:我知道问题另有说明,但他真正想要做的是展开第二列,即删除拖尾和前导单引号。这可以通过稍微增强的正则表达式来完成:
gsub("(^')|('$)", "", df$X2)
【讨论】:
【参考方案2】: df[,2] <- gsub("'", '', df[,2], fixed=TRUE)
我认为固定是默认设置,但明确表示永远不会有坏处。
抱歉,将帖子的标题读作“如何从 R 中的字符串中删除(一个)单引号?”
【讨论】:
fixed=TRUE
是 not 默认值,但在这种情况下它没有区别。但是,sub
单独在这里是行不通的,OP 需要gsub
。【参考方案3】:
要替换文本,请使用(g
)sub
:
result <- gsub("'", '', yourString)
该函数是矢量化的,因此您可以将其直接应用于您的数据帧,而无需循环或apply
:
df$X2 <- gsub("'", '', df$X2)
【讨论】:
以上是关于如何从R中的字符串中删除单引号?的主要内容,如果未能解决你的问题,请参考以下文章