如何 select 基于其位置的字符列表中的特定元素
How to select a specific element on a list of character based on its position
我是 R 的新用户,我需要一些帮助。
我有一个如下所示的数据框:
Type ID
pink-blue-blue-green-END 125
blue-pink-END 145
green-green-pink-END 489
green-pink-blue-END 478
pink-green-green-blue-END 546
我想要 "blue" 在 "pink" 之前的所有行,结果将是
Type ID
pink-blue-blue-green-END 125
green-pink-blue-END 478
pink-green-green-blue-END 546
我想知道另一个提示 :) 我怎样才能删除字符列表中的所有 "green",例如第一行:
pink-blue-blue-END
感谢您的帮助
我们可以使用 grep
来匹配单词 "pink" 后跟一个或多个字符后跟单词 "blue"。请注意 \b
表示单词边界
df1[grepl("\bpink\b-.*\bblue\b", df1$Type),]
# Type ID
#1 pink-blue-blue-green-END 125
#4 green-pink-blue-END 478
#5 pink-green-green-blue-END 546
对于第二种情况,使用gsub
df1$Type <- gsub("green-", "", df1$Type)
我是 R 的新用户,我需要一些帮助。
我有一个如下所示的数据框:
Type ID
pink-blue-blue-green-END 125
blue-pink-END 145
green-green-pink-END 489
green-pink-blue-END 478
pink-green-green-blue-END 546
我想要 "blue" 在 "pink" 之前的所有行,结果将是
Type ID
pink-blue-blue-green-END 125
green-pink-blue-END 478
pink-green-green-blue-END 546
我想知道另一个提示 :) 我怎样才能删除字符列表中的所有 "green",例如第一行:
pink-blue-blue-END
感谢您的帮助
我们可以使用 grep
来匹配单词 "pink" 后跟一个或多个字符后跟单词 "blue"。请注意 \b
表示单词边界
df1[grepl("\bpink\b-.*\bblue\b", df1$Type),]
# Type ID
#1 pink-blue-blue-green-END 125
#4 green-pink-blue-END 478
#5 pink-green-green-blue-END 546
对于第二种情况,使用gsub
df1$Type <- gsub("green-", "", df1$Type)