我的数据如下:
sources
1: Jana’s iPhone
2: Richard's iPhone 6
3: Denise's
4: Sara’s iPhone
5: Jeff’s Apple Watch
6: BLAIR’s Apple Watch
7: Sunshine's iPhone
8: Brian's iPhone
9: Jonathan’s Apple Watch
10: patricia’s Apple Watch
我正在尝试替换包含iPhone
的任何字符串,只需说iPhone
。我怎么能这样做?
我在包含名为sources
的列的数据表sources
上尝试了以下操作:
sources[length(grep("iPhone", sources)) > 0, sources:= "iPhone"]
但是这会将所有行转换为“iPhone”,即使该行最初不包含带有“iPhone”的字符串。我猜这是因为grep或length没有矢量化,所以我最终选择了所有行。那么我的问题就是如何识别包含子字符串的行?
答案 0 :(得分:5)
改为使用grepl
:
sources[grepl("iPhone", sources), sources:= "iPhone"]