我有一个很长的蛋白质名称载体,我想减少它。
我想从向量中删除所有条目==" 5-FCL-like_protein"以" CBSS - "
开头的所有条目对于第一个问题,我可以在%
中使用%remove <- c("5-FCL-like_protein")
vec[! vec %in% remove]
但是我怎样才能包含以&#34; CBSS开头的条目 - &#34;还有吗?
谢谢。
答案 0 :(得分:2)
您可以在子集中使用两个条件。第一个与%in%
非常相似,但我使用==
只是因为个人偏好。如果您要排除多个字符串,则可以返回%in%
。第二个使用grepl
匹配字符串开头的"CBSS-"
。
vec <- c("Protein1","Protein2", "CBSS-Protein 2", "5-FCL-like_protein")
vec[!vec == "5-FCL-like_protein" & !grepl("^CBSS-", vec)]
#[1] "Protein1" "Protein2"
答案 1 :(得分:1)
或者我们可以在TextChanged
grep
grep("^(CBSS|5-FCL-like_protein$)", vec, value = TRUE, invert = TRUE)
#[1] "Protein1" "Protein2"