Get the App
SLTechnology News&Howtos  ›  Development  › 

How to use perl script to generate reverse complementary sequences in batches

Shulou Source: shulou.com Published: 2022-06-01 13:02:39 10月01日 Update

This article will explain in detail how to use perl scripts to generate reverse complementary sequences in batches. The editor thinks it is very practical, so I share it with you as a reference. I hope you can get something after reading this article.

Sometimes we need to get the reverse complementary sequence of the sequence, and we can use the script below to batch process the sequence.

Usage:

Perl fasta_Reverse_complementary.pl-fa input.fa-out out.fa

Input.fa is the input file, and out.fa is the reverse complementary sequence.

Enter the file format as shown below:

> bta-26a-2GGCUGUGGCUGGAUUCAAGUAAUCCAGGAUAGGCUGUUUCCAUCUGUGAGGCCUAUUCUUGAUUACUUGUUUCUGGAGGCAGCU > bta-18bCUUGUGUUAAGGUGCAUCUAGUGCAGUUAGUGAAGCAGCUCAGAAUCUACUGCCCUAAAUGCUCCUUCUGGCACA > bta-29aAUGACUGAUUUCUUUUGGUGUUCAGAGUCAAUAUAAUUUUCUAGCACCAUCUGAAAUCGGUUAU > bta-7f-2UGUGGGAUGAGGUAGUAGAUUGUAUAGUUUUAGGGUCAUACCCCAUCUUGGAGAUAACUAUACAGUCUACUGUCUUUCCCACG

The code is as follows:

#! / usr/bin/perl-wuse strict;use Getopt::Long;use Config::General;use Bio::SeqIO;use Bio::Seq;my $version = "1.3" # # prepare parameters #- -# # GetOptionsmy% opts GetOptions (\% opts, "fa=s", "out=s", "h"); if (! defined ($opts {out}) | |! defined ($opts {fa}) | | defined ($opts {h}) {print "$opts {fa}",-format = > 'Fasta'); open (OUT, "> $opts {out}") | die "open file $opts {out} faild.\ n"; while (my $seq = $in- > next_seq () {my ($id,$sequence) = ($seq- > id,$seq- > id,$seq-) $sequence = & reverse_complement_IUPAC ($sequence); print OUT "> $id\ n$sequence\ n";} sub reverse_complement_IUPAC {my $dna = shift; # reverse the DNA sequence my $revcomp = reverse ($dna); # complement the reversed DNA sequence $revcomp = ~ tr/ABCDGHMNRSTUVWXYabcdghmnrstuvwxy/TVGHCDKNYSAABWXRtvghcdknysaabwxr/; return $revcomp;} sub reverse_complement {my $dna = shift # reverse the DNA sequence my $revcomp = reverse ($dna); # complement the reversed DNA sequence $revcomp = ~ tr/ACGTacgt/TGCAtgca/; return $revcomp } this is the end of the article on "how to use perl scripts to generate reverse complementary sequences in batches". I hope the above content can be of some help to you, so that you can learn more knowledge. if you think the article is good, please share it for more people to see.

Tags: Sequence script article generation file more input good practical code content article sometimes format knowledge faceted reference processing help related Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Shulou Information Microsoft vpn Huawei Xiaomi