[我正在尝试从数据帧的列中提取+
或-
符号到矢量:
如果我有此数据框:
sample info
A man;+;yes;no
B man;-;no;no
C woman;+;yes;no
D man;NA;no;no
E woman;-;yes;no
我正在尝试将info
列中包含的符号(+或-)提取到矢量中:
strand<-vector()
for (i in 1:nrow(df)){
if(grepl(";\\+;", df[i,2]) == TRUE){
strand[i]<-'+'
}
if(grepl(";-;", df[i,2]) == TRUE){
strand[i]<-'-'
}
else{strand[i]<-NA}
}
但是我没有得到+
标记:
print(strand)
NA - NA NA -
为什么我的循环正在打印NA而不是+
符号?谢谢!
您可以使用转义字符\,这样您的代码将看起来像
grep(";\\+;", df$info)