Наиболее очевидная ошибка - использование "=", когда вы имеете в виду "==". Но я думаю, из контекста, что вы действительно хотите «разделить» эти данные:
split(NL, NL$alleles)
, который создаст список фреймов данных, каждый из которых имеет одно из значений для alleles
.
Но, возможно, вы хотите использовать сопоставление с шаблоном:
NL[ grepl("C_G|G_C|A_T|T_A", NL$alleles), ]
SNP alleles
1 rs1234 A_T
3 rs2343 A_T
4 rs2342 G_C
5 rs1134 C_G
6 rs1675 T_A
7 rs8543 A_T
И иллюстрирующим, как мне кажется, был ваш комментарий-пример:
P <- read.table(text="V1 V2 V3 V4 V5 V6 alleles
15116 25 rsX 0 123412 G A G_A
15117 25 rsX1 0 23432 A C A_C
15118 25 rsX2 0 234324 A G A_G
15119 25 rsX3 0 3423 A G A_G
15120 25 rsX4 0 2343223 C A C_A
15121 25 rsX5 0 23523423 A G A_G", header=TRUE)
P[ grepl("G_A", NL$alleles), ]
# V1 V2 V3 V4 V5 V6 alleles
# 15116 25 rs306910 0 154613671 G A G_A
Версия подмножества:
subset(P, alleles %in% c("G_A", "A_G") )
V1 V2 V3 V4 V5 V6 alleles
15116 25 rsX 0 123412 G A G_A
15118 25 rsX2 0 234324 A G A_G
15119 25 rsX3 0 3423 A G A_G
15121 25 rsX5 0 23523423 A G A_G