我有一个文件表征的基因组区域,看起来像这样:提取重叠区域
chrom chromStart chromEnd PGB
chr1 12874 28371 2
chr1 15765 21765 1
chr1 15795 28371 2
chr1 18759 24759 1
chr1 28370 34961 1
chr3 233278 240325 1
chr3 239279 440831 2
chr3 356365 362365 1
基本上PGB,其特征为它的染色体数目(CHROM)的基因组区域的类别,启动(chromStart)和结束( chromEnd)坐标。
我希望以折叠重叠区域,使得重叠PGB的区域= 1和2是在一个新的类别,PGB = 3输出端:
chrom chromStart chromEnd PGB
chr1 12874 15764 2
chr1 15765 24759 3
chr1 24760 28369 2
chr1 28370 28371 3
chr1 28372 34961 1
chr3 233278 239278 1
chr3 239279 240325 3
chr3 240326 356364 2
chr3 356365 440831 3
基本上我希望获得一个输出文件,其报告独特的地区。有两个标准。
首先,如果PGB(第4列)在行之间相同,则合并范围。例如。
chrom chromStart chromEnd PGB
chr1 1 10 1
chr1 5 15 1
输出
chrom chromStart chromEnd PGB
chr1 1 15 1
其次,如果PGB是行之间不同,CHR(列1)是相同的,并且范围重叠(COL2和3)中,报告重叠范围为PGB = 3作为以及各个类别独有的范围。
例如。
chrom chromStart chromEnd PGB
chr1 30 100 1
chr1 50 150 2
输出
chrom chromStart chromEnd PGB
chr1 30 49 1
chr1 50 100 3
chr1 101 150 2
我希望能说明问题更好。
到目前为止你有尝试过什么吗? – chilemagic
我对perl/unix非常陌生,所以我在excel上手动执行。不幸的是,我有60000多行,所以我希望能有更快的选择。 – user3222627
@ user3222627你需要多解释一下你如何得到你想要的结果。 –