遇到了一个问题是这样的:文章只提供了bed文件,我应该如何转换成可以看到峰图的bw或其他格式的文件呢?
首先了解一些文件的格式,bed,bedgraph, wig和BiWig
BED (Browser Extensible Data):
至少包括chrom,chromStart,chromEnd三列;另外9列可选,注意这些列的顺序是固定的。
chrom- 染色体号; 例如,chr1,chrX。。。。。。。
chromStart- feature在染色体上起始位置. 从0开始算,染色体上第一个碱基位置标记为0。
chromEnd- feature在染色体上终止位置。染色体上前100个碱基片段的位置位置标记为:chromStart=0, chromEnd=100。 实际上,第100个碱基不属于当前片段中,当前片段的碱基应该是0-99。所以在BED文件中,起始位置从0开始,终止位置从1开始。
name- BED行名,在基因组浏览器左边显示;
score- 在基因组浏览器中显示的灰度设定,值介于0-1000;
strand- 正负链标记. Either "." (=no strand) or "+" or "-".
thickStart- feature起始位置(for example, the start codon in gene displays)。 When there is no thick part, thickStart and thickEnd are usually set to the chromStart position.
thickEnd- feature编码终止位置 (for example the stop codon in gene displays).
itemRgb- R,G,B (e.g. 255,0,0)值,当itemRgb设置为 "On",BED的行会显示颜色.
blockCount- blocks (exons)数目.
blockSizes- blocks (exons)大小列表,逗号分隔,对应于blockCount.
blockStarts-blocks (exons)起始位置列表,逗号分隔,对应于blockCount.;这个起始位置是与chromStart的一个相对位置。
XX.unsorted.bed:

bedgraph:
共四列,分别表示染色体序号,起始位置,结束位置和value值。这和bed文件很类似。

wig和BiWig:
wig的文件格式:

bigwig格式文件是wig格式文件的二进制压缩版本,这样更加节省空间。
文件转换:
wig 转 bigwig
bedGraph 转 bigwig
bedGraphToBigWig程序比未压缩的bedGraph输入文件使用的RAM多大约25% 。
1) 生成genome文件:
wget http://hgdownload.soe.ucsc.edu/admin/exe/linux.x86_64/fetchChromSizes
fetchChromSizes hg38 > hg38.chrom.sizes
2) bedGraph 转 bw:
wget http://hgdownload.soe.ucsc.edu/admin/exe/linux.x86_64/bedGraphToBigWig
bedGraphToBigWig in.bedGraph hg38.chrom.sizes out.bw
3) 注意
如果报错染色体长度超出,需要先剪切bed
用到的工具:wget http://hgdownload.cse.ucsc.edu/admin/exe/linux.x86_64/bedClip
bedClip input.bed hg38.chrom.sizes output.bed
bed转bw:
1. 首先排序:
1)第一列按照染色体编号进行排序,排序后应该是chr1, chr2, chr4, chr5, chr10, chr20, chrX. 使用-V
2) 第二列和第三列按照数字序进行排序。使用-n
sort -k1,1V -k2,2n -k3,3n 1-wt_ski-WT-CD8T.bed>1-wt_ski-WT-CD8T_sort.bed
2. 把bed文件转成bedgraph文件
bedtools genomecov -i a.bed -g mm10.chrom.sizes.bed -bg > XX.bedgraph
(-g 是输入基因组染色体大小的文件)
3. bedgraph转bw
用bedgraphtobigwig命令转换
bigwig其实是bedgraph的二进制文件。然后就可以做后续的分析啦:
bedGraphToBigWig XX.bedgraph mm10.chrom.sizes> XX.bw