码迷,mamicode.com
首页 > 编程语言 > 详细

R语言实现对基因组SNV进行注释

时间:2017-04-07 21:24:30      阅读:332      评论:0      收藏:0      [点我收藏+]

标签:function   pre   结束   log   r语言   注释   span   code   while   

    很多时候,我们需要对取出的SNV进行注释,这个时候可能会在R上进行注释,通常注释文件都含有Chr(染色体)、Start(开始位点)、End(结束位点)、Description(描述),而我们的SNV文件通常是拥有Position(位置),因此我们可以先定位Chr,再用Postion去定位到Start和End之间,找到相对应的Description。为了加快速度,可以使用二分查找法。

 1 fregion <- function(df, value){
 2 #df:data.frame, V1 and V2 should be Start and End   value: Postition  used to find region  return:df row number where position locates  ,if no region return -1
 3     low=1
 4     high=nrow(df)
 5     mid=high %/% 2
 6     if (df[low,1] <= value & value <= df[low,2]) low
 7     else if (df[high,1] <= value & value <= df[high,2]) high
 8     else{
 9     while (value > df[mid,2] || value < df[mid,1]){
10       if (value > df[mid,2]){
11         low = mid+1
12       } else if (value < df[mid,1]) {
13         high = mid - 1
14       } 
15       if(high<low){
16          mid=-1;break
17       }
18       mid=(low+high)%/%2
19     }
20       mid
21 }
22 }

 

R语言实现对基因组SNV进行注释

标签:function   pre   结束   log   r语言   注释   span   code   while   

原文地址:http://www.cnblogs.com/ywliao/p/6679948.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!