Coder Social home page Coder Social logo

bprna's Introduction

bpRNA: Large-scale Automated Annotation and Analysis of RNA Secondary Structure

ABSTRACT

While RNA secondary structure prediction from sequence data has made remarkable progress, there is a need for improved strategies for annotating the features of RNA secondary structures. Here we present bpRNA, a novel annotation tool capable of parsing RNA structures, including complex pseudoknot-containing RNAs, to yield an objective, precise, compact, unambiguous, easily-interpretable description of all loops, stems, and pseudoknots, along with the positions, sequence, and flanking base pairs of each such structural feature. We also introduce several new informative representations of RNA structure types to improve structure visualization and interpretation. 

We have used bpRNA to generate a web-accessible meta-database, "bpRNA-1m", of over 100,000 single-molecule, known secondary structures available at http://bpRNA.cgrb.oregonstate.edu. This is both more fully and accurately annotated and over 20-times larger than existing databases.  We use a subset of the database with highly similar (โ‰ฅ90% identical) sequences filtered out to report on statistical trends in sequence, flanking base pairs, and length. Both the bpRNA method and the bpRNA-1m database will be valuable resources both for specific analysis of individual RNA molecules and large-scale analyses such as are useful for updating RNA energy parameters for computational thermodynamic predictions, improving machine learning models for structure prediction, and for benchmarking structure-prediction algorithms. 

###############################################################################

The code is available here as a perl script called "bpRNA.pl". To use the bpRNA script, one needs a bpseq file or dot-bracket file as input.It should automatically detect input file format. The output of the bpRNA is a "structure type" file with all the details on segments, stems, hairpins, bulges, internal loops, multiloops, and pseudoknots. The structure type file has the same filebase as the input, and with the extension ".st". Moreover, bpRNA provides efficient dotbracket notations and other structural representations. Here is an example on how the bpRNA.pl can be run and the results:

$ perl bpRNA.pl bpRNA_PDB_650.bpseq 

The output is bpRNA_PDB_650.st. Alternatively, a dotbracket can be provided as input:

$ perl bpRNA.pl bpRNA_PDB_650.dbn

This produces the same output. By convention, we include all base pairs from the bpseq file in the dot-bracket output and vice versa, so that the two can be easily converted from one to the other. 

The only dependency for bpRNA is the perl module Graph.pm, available through CPAN. 

In addition, we provide all the scripts necessary to re-create bpRNA-1m. The following scripts and sql files allow one to either load the MySQL database, or to create the tables used in bpRNA-1m. 

bpRNA_1m/bpRNA_1m_README
bpRNA_1m/bpRNA_1m_DatabaseDiagram.pdf
bpRNA_1m/Load_bpRNA_1m_Mysql_Part1.zip
bpRNA_1m/Load_bpRNA_1m_Mysql_Part2.zip
bpRNA_1m/Load_bpRNA_1m_Perl .zip

bpRNA_1m/Create_bpRNA_1m:
	bpRNA_1m_Create_README
	bpRNA_1m/Create_bpRNA_1m.zip
	bpRNA_1m_CreateTablesScript.pl*
	bpRNA_1m_CreateTablesScript.sql

bprna's People

Contributors

hendrixlab avatar padidehdanaee avatar

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.