logo Hurry, Grab up to 30% discount on the entire course
Order Now logo

Ask This Question To Be Solved By Our ExpertsGet A+ Grade Solution Guaranteed

expert
Pierre BernierData mining
(5/5)

818 Answers

Hire Me
expert
Aaryan KhannaGeneral article writing
(5/5)

616 Answers

Hire Me
expert
Jim TavareLaw
(5/5)

548 Answers

Hire Me
expert
Herbert BarciaEducation
(5/5)

707 Answers

Hire Me
Others
(5/5)

GFF3 format is a commonly-used one in bioinformatics for representing sequence annotation

INSTRUCTIONS TO CANDIDATES
ANSWER ALL QUESTIONS

Carefully read the following general requirements:

• Please provide both python source code AND sample output to receive full credit.

• Program must run with Python 3 and start with:

#!/usr/bin/env python3

• Please clean up any unused code and files – commented-out print statements are fine but remove anything else unused to keep your code easy to read.

• Avoid hardcoding values or filenames (except where the questions allow it).

• You should check expected input from the user to make sure it is valid.

• Code must be able to run on our class server

PLEASE READ THE TEXT OF THIS PROJECT COMPLETELY (RIGHT NOW) AND CONTACT ME ASAP IF YOU HAVE ANY QUESTIONS!!

Problem Statement

The GFF3 format is a commonly-used one in bioinformatics for representing sequence annotation. You can find the specification here:

http://www.sequenceontology.org/gff3.shtml

The genome and annotation for Saccharomyces cerevisiae S288C are on the class server here:

/home/jorvis1/Saccharomyces_cerevisiae_S288C.annotation.gff

Note that this same file has both the annotation feature table and the FASTA sequence for the molecules referenced. (See the '##FASTA' directive in the specification.)

Within the feature table another column of note is the 9 th , where we can store any key=value pairs relevant to that row's feature such as ID, Ontology_term or Note.

Your task is to write a GFF3 feature exporter. A user should be able to run your script like this:

$ export_gff3_feature.py --source_gff=/path/to/some.gff3 --type=gene --attribute=ID --value=YAR003W

There are 4 arguments here that correspond to values in the GFF3 columns. In this case, your script should read the path to a GFF3 file, find any gene (column 3) which has an ID=YAR003W (column 9). When it finds this, it should use the coordinates for that feature (columns 4, 5 and 7) and the FASTA sequence at the end of the document to return its FASTA sequence.

Your script should work regardless of the parameter values passed, warning the user if no features were found that matched their query. (It should also check and warn if more than one feature matches the query.)

The output should just be printed on STDOUT (no writing to a file is necessary.) It should have a header that matches their query, like this:

>gene:ID:YAR003W

.... sequence here ...

As an extra challenge, you can format the sequence portion of the FASTA output as 60-characters per line, which follows the standard.

Provide the complete source code AND the output of the program as it runs. You should do test runs with 3 features that are present in the file and 1 where you intentionally enter a feature NOT present in the file. Your script should handle this gracefully.

(5/5)
Attachments:

Related Questions

. The fundamental operations of create, read, update, and delete (CRUD) in either Python or Java

CS 340 Milestone One Guidelines and Rubric  Overview: For this assignment, you will implement the fundamental operations of create, read, update,

. Develop a program to emulate a purchase transaction at a retail store. This  program will have two classes, a LineItem class and a Transaction class

Retail Transaction Programming Project  Project Requirements:  Develop a program to emulate a purchase transaction at a retail store. This

. The following program contains five errors. Identify the errors and fix them

7COM1028   Secure Systems Programming   Referral Coursework: Secure

. Accepts the following from a user: Item Name Item Quantity Item Price Allows the user to create a file to store the sales receipt contents

Create a GUI program that:Accepts the following from a user:Item NameItem QuantityItem PriceAllows the user to create a file to store the sales receip

. The final project will encompass developing a web service using a software stack and implementing an industry-standard interface. Regardless of whether you choose to pursue application development goals as a pure developer or as a software engineer

CS 340 Final Project Guidelines and Rubric  Overview The final project will encompass developing a web service using a software stack and impleme