Giter VIP home page Giter VIP logo

obelisc's Introduction

Obelisc

obelisc (Observational linkage scan) is an identical-by-descent (IBD) mapping tool based on the SNP streak approach.

Overview

obelisc is a command line tool to perform two effective nonparametric linkage analyses (i.e., SNP streak-based IBD mapping and runs of homozygosity (ROH) mapping). obelisc also supports an intuitive visualization of the analytical results.

obelisc requires no predefined inheritance model with parameters and is applicable to both dominant and recessive traits.

Citation

If you use Obelisc or any material in this repository, please cite

Sonehara K and Okada Y. Obelisc: an identical-by-descent mapping tool based on SNP streak. Bioinformatics, 2020.

Requirements

  • python 3.x
  • numpy
  • pandas
  • matplotlib
  • pysnptools
  • argparse
  • Cython (if you want to build LOCH_MappingTools from cython code)

Installation

obelisc can be installed using pip.

pip3 install git+https://github.com/qsonehara/Obelisc

Example usage

When you install obelisc, you get a simple command-line interface. You can perform SNP streak-based IBD mapping and ROH mapping by running the command obelisc as follows:

obelisc example

Here, example is the prefix of a PLINK binary fileset (i.e., example.fam, example.bim, and example.bed) and a text file specifying case individuals (i.e., example.case).

You can run obelisc with the example dataset provided as follows:

obelisc hapmap3_r2_b37_fwd.consensus.qc.poly.JPT.example

You can specify the filename of another case-specifying text file, the size of the scanning window, the minimum size of output stretches, the filename of mapping output, and the filename of the diagram of results as follows;

obelisc example -c case_file.case -w 1500 -s 1500 -o example_ibdmapping -f example_out.pdf

Options

Option name Descriptions Default
--case, -c the case file name {the first argument}.case
--ibd-win-kb, -w the sliding window size during IBD mapping (kb) (regarding SNP streak mapping) 1500
--ibd-str-kb, -s the minimum size of outputted IBD stretches (kb) (regarding SNP streak mapping) 1500
--ibd-inconsistent-snp, -i the maximum number of markers in a scanning window inconsistent with the SNP streak condition (regarding SNP streak mapping) 1
--ibd-min-snp, -m the minimum number of markers a scanning window requires (regarding SNP streak mapping) 25
--ibd-win-gap, -g the maximum length a pair of nearest markers can be apart (kb) (regarding SNP streak mapping) 1000
--ibd-out, -o the prefix of the output text file for SNP streak mapping results generated with option values above
--roh-win-kb, -W the sliding window size during ROH mapping (kb) 1500
--roh-str-kb, -S the minimum size of outputted ROH stretches (kb) 1500
--roh-inconsistent-snp, -I the maximum number of heterozygous markers in a scanning window 1
--roh-min-snp, -M the minimum number of markers a scanning window requires (regarding ROH mapping) 25
--roh-win-gap, -G the maximum length a pair of nearest markers can be apart (kb) (regarding ROH mapping) 1000
--roh-out, -O the prefix of the output text file for ROH mapping results generated with option values above
--point, -p Show the statuses of all of the IBD markers in the cases. false
--fig, -f the prefix of the output PDF file for both mapping results generated with option values above

Contact

Kyuto Sonehara ([email protected])

obelisc's People

Contributors

qsonehara avatar

Stargazers

 avatar

Watchers

 avatar

obelisc's Issues

Issues in running obelisc

Dear @qsonehara,

I receive errors while running obelisc command with both the example sets and a personal sets, made by Plink 1.9
I report below the errors:

 obelisc hapmap3_r2_b37_fwd.consensus.qc.poly.JPT.example -c hapmap3_r2_b37_fwd.consensus.qc.poly.JPT.example.case -w 1500 -s 1500 -o example_ibdmapping -f example_out.pdf
/home/path/example
SNP data loaded.
Traceback (most recent call last):
  File "/home/.local/bin/obelisc", line 8, in <module>
    sys.exit(main())
  File "/home/.local/lib/python3.8/site-packages/obelisc/main.py", line 375, in main
    mapping = Mapping(args.prefix, args.case_file)
  File "/home/.local/lib/python3.8/site-packages/obelisc/main.py", line 59, in __init__
    L.append(i[1].decode('utf-8'))
AttributeError: 'numpy.str_' object has no attribute 'decode'

Is there any known solution?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.