首页
学习
活动
专区
圈层
工具
发布

基因注释:区间范围匹配

今天,有老师问我一个问题,如果从一个区间匹配到另一个的区间范围,并找出来。我觉得比较有代表性,就写篇博客总结一下。...「老师的需求如下:」 图1是SNP的上下游区间,图2是基因的上下游区间,想以图1为标准,将区间内有基因的行放到右边。...「换到基因注释的领域,看一下相关需求:」 1,显著性的SNP位点,取上下游50k的位点,作为候选的区间 2,将候选区间有基因的,匹配到SNP的右边 「处理注意:」 1,显著SNP在上下游区间时,可能会有交叉...数据描述 「SNP区间文件:」 这里,提取显著SNP的区间,提取三列信息:染色体,开始位置,结束位置: 共有6个SNP区间,其中第一个和第二个有重合,第五个和第六个有重合。...「注意,将gff格式整理为:染色体,开始位置,结束位置,基因信息; snp区间整理为:染色体,开始区间,结束区间」 可以实现的功能: 每个SNP区间内的基因 每个SNP全进内基因的个数 合并SNP区间内的基因

74910
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    GWAS分析后的基因注释:区间范围匹配

    「老师的需求如下:」 图1是SNP的上下游区间,图2是基因的上下游区间,想以图1为标准,将区间内有基因的行放到右边。...「换到基因注释的领域,看一下相关需求:」 1,显著性的SNP位点,取上下游50k的位点,作为候选的区间 2,将候选区间有基因的,匹配到SNP的右边 「处理注意:」 1,显著SNP在上下游区间时,可能会有交叉...数据描述 「SNP区间文件:」 这里,提取显著SNP的区间,提取三列信息:染色体,开始位置,结束位置: 共有6个SNP区间,其中第一个和第二个有重合,第五个和第六个有重合。...「注意,将gff格式整理为:染色体,开始位置,结束位置,基因信息; snp区间整理为:染色体,开始区间,结束区间」 可以实现的功能: 每个SNP区间内的基因 每个SNP全进内基因的个数 合并SNP区间内的基因...合并SNP区间内基因的个数

    1.2K70

    Python日期范围按旬和整月以及剩余区间拆分

    原文:Python日期范围按旬和整月以及剩余区间拆分 地址:https://blog.csdn.net/as604049322/article/details/135033118 小小明 昨天见到了一个比较烧脑的问题...']) 2023-3-1 2023-3-31 (2023, ['3月']) 2023-2-1 2023-4-5 (2023, ['2月', '3月', '4月1日-4月5日']) 整体思路: 将日期范围拆分为...首月、中间连续月、末月三部分 针对中间连续月直接生成月份即可 首月和末月都可以使用一个拆分函数进行计算 针对单月区间的计算思路: 将日期拆分为s-10,11-20,21-e这三个以内的区间 遍历区间,...自己和上一个区间都不是旬区间则进行合并 遍历合并后的区间,根据是否为旬区间进行不同的日期格式化 最终我的完整代码为: from datetime import datetime, timedelta...= end_date.year: raise Exception("日期范围不在同一年") data = [] month_end = get_month_end(start_date

    56410

    将数据归一化到任意区间范围的方法

    将数据归一化到任意区间范围的方法 一般常见的数据归一化,是归一化到0~1,或者-1~1的区间,但在一些特殊场合下,我们需要根据实际情况归一化到其他任意区间,方法是: 将数据归一化到[a,b...]区间范围的方法: (1)首先找到样本数据Y的最小值Min及最大值Max (2)计算系数为:k=(b-a)/(Max-Min) (3)得到归一化到[a,b]区间的数据:norY=a+k(Y-Min)...: function [ y ] = normalization( x,ymin,ymax ) %NORMALIZATION 将数据x归一化到任意区间[ymin,ymax]范围的方法 % 输入参数x...:需要被归一化的数据 % 输入参数ymin:归一化的区间[ymin,ymax]下限 % 输入参数ymax:归一化的区间[ymin,ymax]上限 % 输出参数y:归一化到区间[ymin,ymax...计算最小值 y = (ymax-ymin)*(x-xmin)/(xmax-xmin) + ymin; end Matlab里有一个归一化函数normalize,对矩阵是按列归一化的: %按列归一化,任意归一化范围

    1.9K30

    利用分析函数改写范围判断自关联查询

    简单一点说,表中的记录表示的是由 BEGIN开始到 END截至的范围,那么当前想要获取的结果是找出哪些没有范围所包含的范围。...需要注意的是,对于当前的 SQL逻辑,如果存在两条范围完全相同的记录,那么最终这两条记录都会被舍弃。...显而易见的是,如果是范围段本身的比较,其选择度一般还是不错的,但是如果只是比较其长度,那么无疑容易产生大量的重复,比如在这个例子中: SQL> select length(begin), count(*...,在这种情况下,仅有的一个等值判断条件 LENGTH(BEGIN)是非常低效的,这时一条记录根据这个等值条件会关联到近万条记录,甚至关联到两万多条记录,显然大量的实践消耗在低效的连接过程中。...而外层的两个分析函数,COUNT用来去掉完全重复的记录,而ROW_NUMBER用来获取范围最大的记录(也就是没有被其他记录的范围所涵盖)。

    75240
    领券