假设数据框是 df
,列为 foo
。有没有办法删除R中数据框列中以@开头的字符串。
示例:
df <- data.frame(foo=c("@john is awesome than @steve",
"@steve is good","@mike is nice"))
df
foo
1 @john is awesome than @steve
2 @steve is good
3 @mike is nice
如何删除以@开头的整个名字@john、@Steve、@mike。
最终输出应该是
foo
1 is awesome than
2 is good
3 is nice
我想删除数据框 df
中以分隔符 @ 开头的 foo
列中的所有字符串。
最佳答案
综合了我和理查德·斯克里文的评论。
df$foo <- gsub(" ?@\\w+ ?", "", df$foo)
df
# foo
# 1 is awesome than
# 2 is good
# 3 is nice
@\\w+
匹配 ampersat 后跟一个或多个字母。
?
匹配开头和结尾的可选空格。
所以它总共寻找匹配
[optional single space]@[one word][optional single space]
关于删除R中数据框列中以@开头的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33377146/