代码程序处理,第一列连续 1-6个位点数值在30以上,其他位点小于30,认为该位点是候选位点;而且两个候选位点的距离是在400bp以上;输入文件就两列,第一列是位点位置,第二列是具体数值。
输入文件格式:
4560233 6
4560234 9
4560235 23
4560236 45
4560237 25
4560238 18
4560239 12
4560240 23
4560241 5
是这样两列,上述4560236位点符合要求。前后位点都小于30
再比如:如下4560224和4560225 两个位点符合要求,需要输出。
4560223 1
4560224 39
4560225 50
4560226 1
4560227 1
4560228 1
4560229 1
再比如,如下 4560218,4560219,4560220,4560221四个位点符合要求,需要输出
4560215 4
4560216 4
4560217 8
4560218 60
4560219 70
4560220 30
4560221 40
4560222 23
4560223 1
4560224 1
4560225 1
4560226 1
总之连续 1-6个位点数值在30以上,其他位点小于30的位点要输出,且输出的位点还要满足他们直接的距离在400bp以上。
补充:注意,第一列位点数字未必是完全+1递增的,会有某些位点缺失。但是从小到大排序是确定的。两列数据之间是制表符,不是空格。这个其实是一个滑窗分析问题,1-6个连续位点的窗口滑动检测。