我处理一些qPCR的结果,我想删除的假阳性结果在R的原始数据如下:删除特定字符的行而不是部分相同的字符
Gene Sample Ct
aacC 1 27.57863
aacC1 1 23.64810
aacC2 1 28.65250
aacC4 1 34.21550
tetA 1 25.37649
tet(34) 1 29.39106
aacC 2 33.89373
aacC1 2 30.94777
aacC2 2 35.08097
aacC4 2 24.55223
tetA 2 11.88988
tet(34) 2 18.39641
aacC 3 30.64538
aacC1 3 27.13225
aacC2 3 11.72730
aacC4 3 23.60715
tetA 3 15.78128
tet(34) 3 12.49784
我想去除基因“aacC”和“tet(34)”。我期望的结果是:
Gene Sample Ct
aacC1 1 23.64810
aacC2 1 28.65250
aacC4 1 34.21550
tetA 1 25.37649
aacC1 2 30.94777
aacC2 2 35.08097
aacC4 2 24.55223
tetA 2 11.88988
aacC1 3 27.13225
aacC2 3 11.72730
aacC4 3 23.60715
tetA 3 15.78128
我使用的代码如下:
false_signal<-c("aacC", "tet(34)")
ct<-ct[!grepl(paste(false_signal, collapse="|"), ct$Gene),]
然而,我发现含有 “AACC” 除去所有基因,和TET(34)被留。结果是:
Gene Sample Ct
tetA 1 25.37649
tet(34) 1 29.39106
tetA 2 11.88988
tet(34) 2 18.39641
tetA 3 15.78128
tet(34) 3 12.49784
你能帮我解码吗?我只想删除“aacC”和“tet(34)”,但不是“aacC1”,“aacC2”,“aacC4”。我想可能是我在使用“grep”函数时错过的东西。
也许使用具有精确匹配“%的%”? 'ct_clean < - ct [!ct $ Gene%in%c(“aacC”,“tet(34)”),]' – zx8754
或非常简单:ct_clean < - ct [ct $ Gene!=“aacC”&ct $ Gene!=“tet(34)”,] – KoenV
请勿使用正则表达式进行精确匹配。 –