Write perl code to process and analyze the sequence data
Course:- Programming Languages
Reference No.:- EM131469714

Assignment Help
Expertsmind Rated 4.9 / 5 based on 47215 reviews.
Review Site
Assignment Help >> Programming Languages

1. Download and decompress the sequence data of chromosome 22.

2. Write Perl code to process and analyze the sequence data file downloaded.
 a. Read in the data from the file
 b. Use regular expression to extract the sequence from the file.
 c. Remove non-ATGC characters from the sequence
 d. Extract all the open reading frames (ORFs) from the whole sequence.
     - An ORF is a part of DNA sequence that has the potential to be translated.
     - Its length should be a multiple of 3.
    - ORFs are defined as those subsequences which have a start codon 'ATG' and any of the three stop codons 'TAA', 'TAG' and 'TGA'.Each codon includes threenucleotides.
     - In addition to start and stop codon, ORFs extracted here should have 30-90 nucleotides.
     - Only one stop codon is allowed in each ORF.
 e. Print out a message showing how many open reading frames are found in the screen.
 f. Translate each ORF into amino acid sequence using the subroutines provided.
 g. Write all found ORFsto a new data file.
 h. Write all translated amino acid sequence into another new data file.

    2.a - 2.ishould be done in one .pl file.
     Please use the subroutines provided to perform the translation.
     Once I implement your function, I would expect to input the data file name from the screen. Shown below is an example.


Your output file in step 2.hand 2.i should automatically be created. Below is the example of 2.h output file.


Support information:

1. To write an array into a file, where each entry is shown in one line, use the following command:

print MFILE "$_\n" for @ORFs;

MFILE is the handle for output file.
@ORFs is the array.

2. If you have groups in your pattern
@matches = $string =~ m/^(ATG).*(TAA)$/g

=> With parenthesis () surrounding the subpattern "ATG" ad "TAA", substrings matching the "ATG" and "TAA" part will also be returned.
=> values in @matches will be ("ATGTGCTGCTAA", "ATG", "TAA")
=> Add ?: in the front, such as m/^(?:ATG).*(?:TAA)$/g, substring matching "ATG" and "TAA" will not be returned.
=> In this case the output will be ("ATGTGCTGCTAA")

Download Sequence data of chromosome 22


Put your comment

Ask Question & Get Answers from Experts
Browse some more (Programming Languages) Materials
Write a program that lets the user enter a charge account number. The program should determine if the number is valid by checking for it in the following list.
Write pseudocode for finding grade of a student given his/her total score. The program must display a grade of A if the score is above 85, a B if it is between 85 and 75, a C.
Consider the following code with two-dimensional arrays. Does this loop have dependences? Can these loops be written so they are parallel?
Design and implement an application that reads an arbitary number of integers that are in the range of 0 to 50 inclusive and counts how many occurences of each are entere
In the video clip, the monkey is moving. Firstly, red markers create on head, body, hands and feet of monkey. And then track the monkeys' movement with calculating the cente
Describe two ways to handle a situation in which there are a large number of use cases. What role does iteration play in developing use cases?Describe the best way to validate
A quantity known as the body mass (BMI) is used to calculate the risk of weight-related health problems. Write a program that accepts weight and height and then displays th
Develop a C++ console application which utilizes a while loop to count, total, and average series of positive integers entered by a user.