Current Steps to Run Uniwig
These docs are under construction; please see below for some basic examples.
Section titled “These docs are under construction; please see below for some basic examples.”Input Bed File
Section titled “Input Bed File”Currently, Uniwig accepts a single .bed file, .narrowPeak file, .bam file. It should be sorted by chromosome. This single file will be used to create 3 output files:
_start -> accumulations of start coordinates
_end -> accumulations of end coordinates
_core -> accumulations of peaks (between starts and ends)
The below script can be used to create a sorted bed file from a directory of bed files:
#!/bin/sh# directory for the raw data (bed files)RAWDATA_DIR="./data/raw/"# directory for combined dataCOMBDATA_DIR="./data/combined/"# raw data filenameraw="*.bed"# unsorted combined data filenameunsorted="combined_unsort.bed"# chrsorted combined data filenamechrsorted="combined_chrsort.bed"awk 'NF {print} END {print ""}' $RAWDATA_DIR$raw > $COMBDATA_DIR$unsortedsort -k1,1V -k2,2n $COMBDATA_DIR$unsorted | grep '.' > $COMBDATA_DIR$chrsortedRunning uniwig
Section titled “Running uniwig”Once you have your single, sorted bedfile, you can run uniwig with the following command:
cargo run uniwig -f test_30_lines_sorted.bed -c hg38.chrom.sizes -m 5 -s 1 -l /wiggles_created_with_rust/final_wiggles/ -y wigNote that we provide a chrom.sizes reference file (hg38) in the testing folder -> /tests/hg38.chrom.sizes
Create accumulation files from a BED or BAM file
Usage: gtars uniwig [OPTIONS] --file <file> --smoothsize <smoothsize> --stepsize <stepsize> --fileheader <fileheader> --outputtype <outputtype>
Options: -f, --file <file> Path to the combined bed file we want to transform or a sorted bam file -t, --filetype <filetype> Input file type, 'bed' 'bam' or 'narrowpeak' [default: bed] -c, --chromref <chromref> Path to chromreference -m, --smoothsize <smoothsize> Integer value for smoothing -s, --stepsize <stepsize> Integer value for stepsize -l, --fileheader <fileheader> Name of the file -y, --outputtype <outputtype> Output as wiggle or npy -u, --counttype <counttype> Select to only output start, end, or core. Select `shift` for bam workflows. Defaults to all. [default: all] -p, --threads <threads> Number of rayon threads to use for parallel processing [default: 6] -o, --score Count via score (narrowPeak only!) -a, --no-bamshift Set bam shift to False, i.e. uniwig will count raw reads without considering read direction. -z, --zoom <zoom> Number of zoom levels (for bw file output only [default: 1] -d, --debug Print more verbose debug messages? -h, --help Print helpProcessing bam files to bw
Section titled “Processing bam files to bw”Example command
gtars uniwig -f "test1_chr1_chr2.bam" -m 5 -s 1 -l /myoutput/directory/test_file_name -y bw -t bam -p 6 -c /genome/alias/hg38/fasta/default/hg38.chrom.sizes -u allExport types
Section titled “Export types”For Input types: .bed and .narrowPeak
Output types include .wig, .npy, .bedGraph, and .bw
For Input Types: .bam
Output types include .bw and .bed