我正在尝试使用circos软件描述我的寄生虫的全基因组序列(WGS)数据。
我想要描述的其中一个元素是参考基因组中我没有我的寄生虫测序数据的区域。
为了做到这一点,我使用Samtools创建了一个mpileup文件,从该文件中提取了序列深度= 0的位置。因此,我有一个如下所示的文件:
$chromosome_name $chromosome_position $depth
chr_1 1 0
chr_1 2 0
chr_1 3 0
chr_2 67 0
chr_2 68 0
chr_2 1099 0
chr_2 1100 0
chr_2 1101 0这意味着在1号染色体上有3个位置,没有序列数据(深度= 0):即位置1,2和3。对于2号染色体,没有数据的位置是67,68,1099,1100和1101。
由于我的文件非常庞大(多达300万行),而且许多未排序的位置都是以区间形式出现的,因此我想从上面的数据创建一个区间文件。此外,circos需要这样的间隔文件才能创建磁贴。因此,我需要从上面创建一个新文件,如下所示:
$chromosome_name $start_pos $end_pos
chr_1 1 3
chr_2 67 68
chr_2 1099 1101我已经搜索了一大堆,但我只发现了与按预先定义的间隔对数据进行分组有关的问题(例如,6个月内发生的团购,按年龄分组的患者等)。
所以如果有人能帮我,我会非常高兴的!Sidsel
发布于 2017-08-23 22:57:52
考虑使用bedtools。具体地说,是bedtools merge子命令:
http://bedtools.readthedocs.io/en/latest/content/tools/merge.html
从这个页面上看,它似乎做了您想做的事情:
bedtools merge将间隔文件中重叠或“书本结尾”的特征合并为一个跨越所有组合特征的特征。
此外,您还可以使用-d选项指定要合并的要素之间的最大距离:
-d要合并的要素允许的要素之间的最大距离。默认值为0。也就是说,重叠和/或书本结尾的要素将被合并。
https://stackoverflow.com/questions/45531343
复制相似问题