当你设置了很长的条件去取一个数据集的子集,而你又想通过简单的方法得到这个子集关于这个数据的补集的时候,你应该选择用R语言来解决这个问题。
比如我的数据如下
image.png
- 用R语言处理
data=read.table(file="fst.windows.txt",header=T,sep="\t")
top<-subset(data,xpehh>0)
low<-subset( data,xpehh<=0)
sig=subset(data,(fst>=quantile(data$fst,0.95)&xpehh>quantile(top$xpehh,0.95))|(fst>=quantile(data$fst,0.95)&xpehh<=quantile(low$xpehh,0.05))) #取子集
nosig=data[setdiff(rownames(data),rownames(sig)),] #取子集的补集
网友评论