https://github.com/databio/uniwig

https://github.com/databio/uniwig

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 5 committers (20.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.5%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: databio
  • Language: C
  • Default Branch: master
  • Size: 19.8 MB
Statistics
  • Stars: 1
  • Watchers: 20
  • Forks: 0
  • Open Issues: 5
  • Releases: 0
Created about 6 years ago · Last pushed over 1 year ago
Metadata Files
Readme

README.md

Uniwig

Given a set of bed files, we want to produce 3 BigWig output files: one track of the start coordinates, one track of the end coordinates, and one track for core coordinates.

Prerequisites

Uniwig will rely on libBigWig, a C library for processing BigWig files. You will need to compile the libBigWig library locally first, then you can compile uniwig. The steps are described below.

Compiling uniwig

1. Clone the libBigWig and uniwig repositories

We recommend you clone this repository so libBigWig and uniwig are parallel folders at the same level.

git clone https://github.com/dpryan79/libBigWig git clone https://github.com/databio/uniwig

2. Compile libBigWig with provided Makefile

This should add two library files libBigWig.a and libBigWig.so in your libBigWig local repository:

cd libBigWig make install prefix=lib

3. Compile uniwig

With libBigWig compiled, you can use the Makefile to compile, test, or remove uniwig. The compiled program will have the path of ./bin/uniwig (assuming you are already in the uniwig local repository). Below are some commands with different Makefile usage.

To compile uniwig:

cd uniwig make uniwig

To test uniwig:

make tests

To remove uniwig (remove ./bin/uniwig): make clean

To recompile a new version of uniwig after change: make rebuild

If your libBigWig and uniwig local repositories are not located at the same level, then change the LIB_DIR in the Makefile. The default path for LIB_DIR is a relative path from uniwig local repository to libBigWig local repository, which has the library files already compiled.

Uniwig usage:

To use the compiled uniwig program located at ./bin/uniwig, use the command with the following format

./bin/uniwig (-s) -m (5) -w (1) $combined_bed_file_path $chrom_size_file_path $bw_output_file_header

With these parameters:

  • -s for specifying whether the provided combined bed file is already sorted by the chromosome number. If -s flag is not given, uniwig will sort the combined bed file by chromosome number.
  • -m for specifying the smooth size. The positive integer number given after the -m flag will be used to select the window size for smoothing the coordinates.
  • -w for specifying the write size. The data will be written into .bw files in chunks to reduce memory usage, and the chunk size (number of lines) will be determined by the -w flag.
  • $combined_bed_file_path for specifying the path of combined bed file. A relative path given would start changing directories from uniwig local repository (it is recommended to put the combined bed file in ./data/combined/)
  • $chrom_size_file_path for specifying the path of chromosome size reference file. There is a reference file provided in this repository, located at ./test/hg38.chrom.sizes, but you are welcome to use any other reference files (such as refgenie)
  • $bw_output_file_header for specifying the header of the BigWig output file. There will be three .bw files produced, ending with _start.bw, _end.bw, and _core.bw. The input for this parameter will be added to the output file paths as prefixes (it is recommended to put the output BigWig file in ./data/bw/)

You can also use the provided shell script for executing the entire workflow: from a set of raw data (bed files) to the final BigWig file output. There are two choices provided in this repository: - create_unsorted.sh is the shell script for executing uniwig without sorting the combined bed file by chromosome number before it's submitted to uniwig. In other words, uniwig will be responsible for sorting the chromosomes. - create_sorted.sh is the shell script for executing uniwig with sorting the combined bed file by chromosome number before it's submitted to uniwig. The sorting is done by shell script command sort.

For both shell script, the default paths for the required files are provided. It is recommended to organize your input files by the default choice, but make sure to change the paths to corresponding repositories if you are not using the default paths.

Owner

  • Name: Databio
  • Login: databio
  • Kind: organization
  • Location: University of Virginia

Solving problems in computational biology

GitHub Events

Total
  • Push event: 1
Last Year
  • Push event: 1

Committers

Last synced: 12 months ago

All Time
  • Total Commits: 62
  • Total Committers: 5
  • Avg Commits per committer: 12.4
  • Development Distribution Score (DDS): 0.645
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Maria Murach m****h@g****m 22
Yuchen k****2@h****m 18
nsheff n****f 16
nnp3axx n****x@v****u 3
Julia820 r****8@g****m 3
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 12 months ago

All Time
  • Total issues: 9
  • Total pull requests: 3
  • Average time to close issues: almost 3 years
  • Average time to close pull requests: 3 months
  • Total issue authors: 3
  • Total pull request authors: 3
  • Average comments per issue: 1.22
  • Average comments per pull request: 0.0
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: less than a minute
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • nsheff (5)
  • Julia820 (1)
Pull Request Authors
  • Julia820 (2)
  • neil-phan (1)
  • kevinsunofficial (1)
Top Labels
Issue Labels
bug (4)
Pull Request Labels