BigWig是一个能用于加载到基因组浏览器上展示的格式。它的格式比较复杂,不适合直接阅读,通常由BedGraph文件转换而来。
在R语言中可以通过rtracklayer的export.bw输入和输出BigWig文件。
默认情况下,我们导入的数据集是GRanges格式
| 1 | test_path <- system.file("tests", package = "rtracklayer") | 
输出信息如下
| 1 | gr | 
我们可以通过设定import里的as参数,使其读取为RleList
| 1 | rle <- import(test_bw, as = "RleList") | 
输出信息如下
| 1 | RleList of length 2 | 
如果要输出BigWig文件,也只要保证提供的对象是GRanges或RleList, 只不过要保证一定要有score列表示信号强度。
| 1 | export.bw(rle, "test.bw") | 
假如要用R语言输出下面这个GRanges对象为BigWig
| 1 | gr <- GRanges( | 
那么思路就是
- 获取染色体的长度
- 将染色体按照一定宽度分窗, 可用函数为tile和slidingWindows
- 统计每个窗口的read数, 需要用到函数coverage,Views和ViewSums
- 输出BigWig
代码实现:
| 1 | # 获取染色体长度 |