【发布时间】:2014-11-19 08:29:00
【问题描述】:
这是我data.frame的一个例子
no string
1 abc&URL_drf
2 abcdef&URL_efg
我需要将单词*&URL 替换为""。所以,我需要一个这样的结果
no string
1 _drf
2 _efg
如果是 Excel,我可以在“查找和替换”功能中使用 '*&URL' 轻松得出此结果。
但是,我无法在 R 中寻找有效的方法。
在 R 中,我的方法如下。
首先,我使用strsplit(df$string, "&URL") 拆分字符串,然后选择了第二列。我认为这不是一个有效的方法。
有什么有效的方法吗?
【问题讨论】:
-
我不能准确地告诉你 R,但如果这种语言提供正则表达式函数,你可以使用
[0-9]+\s+(.+&URL)并从第 1 组的开始和结束索引中删除内容。 -
我认为
sapply(strsplit(df[[2]], "URL"), "[", 2)可能很快。你能定义有效吗? -
@Tyler Rinker/ 我认为有效性是“简单而快速”。你的方法令人印象深刻。感谢您的评论!