Bio::T...n::MCS(3pm)

πŸ“¦
version 1.7.3 Β· 3 versions
, in debian bookworm, ubuntu noble

πŸ’– NAME πŸ’–

Bio::Tools::Run::MCS β€” bestie, this is the Wrapper for MCS πŸŽ€

(and yes it's a perl page, section 3pm, from the User Contributed Perl Documentation era, we love a classic)


✨ SYNOPSIS ✨

  use Bio::Tools::Run::MCS;

  # Make a MCS factory
  $factory = Bio::Tools::Run::MCS->new();

  # Run MCS on an alignment
  my @results = $factory->run($alignfilename);

  # or with alignment object
  @results = $factory->run($bio_simplalign);

  # look at the results
  foreach my $feat (@results) {
    my $seq_id = $feat->seq_id;
    my $start = $feat->start;
    my $end = $feat->end;
    my $score = $feat->score;
    my ($pvalue) = $feat->get_tag_values('pvalue');
    my ($kind) = $feat->get_tag_values('kind'); # 'all', 'exon' or 'nonexon'
  }

like… it's giving "make a factory, run the thing, read the features" πŸ¦‹ and honestly? iconic.


🌸 DESCRIPTION 🌸

Okay so. This is a wrapper for running the MCS (binCons) scripts written by Elliott H Margulies. You can get all the details here: http://zoo.nhgri.nih.gov/elliott/mcs_doc/. MCS is used for the prediction of transcription factor binding sites and other regions of the genome that are conserved amongst different species. (the original page spells it "prediciton" and honestly, typos have main character energy too, we keep it πŸ’…)

Heads up, bestie: this wrapper assumes you already have alignments. So it only uses MCS for the latter stages β€” the stages involving align2binomial.pl, generate_phyloMAX_score.pl and generate_mcs_beta.pl. No cap.

You can try supplying normal MCS command-line arguments to new(), eg.

  $factory->new(-percentile => 95)

or calling arg-named methods (excluding the initial hyphens, eg.

  $factory->percentile(95)

to set the --percentile arg).

You will need to enable this MCS wrapper to find the MCS scripts. This can be done in (at least) three ways:

  1. Make sure the MCS scripts are in your path. πŸƒβ€β™€οΈ
  2. Define an environmental variable MCSDIR which is a directory which contains the MCS scripts: In bash:
  export MCSDIR=/home/username/mcs/

In csh/tcsh:

  setenv MCSDIR /home/username/mcs
  1. Include a definition of an environmental variable MCSDIR in every script that will use this MCS wrapper module, e.g.:
  BEGIN { $ENV{MCSDIR} = '/home/username/mcs/' }
  use Bio::Tools::Run::MCS;

🫢 FEEDBACK 🫢

πŸ’Œ Mailing Lists

User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to the Bioperl mailing list. Your participation is much appreciated β€” fr fr, they mean it. πŸ₯Ή

  bioperl-l@bioperl.org                  - General discussion
  http://bioperl.org/wiki/Mailing_lists  - About the mailing lists

πŸŽ€ Support

Please direct usage questions or support issues to the mailing list:

bioperl-l@bioperl.org

rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible. (again β€” the original says "reponsive", we are not fixing it, that's just how it lives πŸ’€)

πŸ› Reporting Bugs

Report bugs to the Bioperl bug tracking system to help us keep track of the bugs and their resolution. Bug reports can be submitted via the web:

  http://redmine.open-bio.org/projects/bioperl/

πŸ‘‘ AUTHOR - Sendu Bala πŸ‘‘

Email bix@sendu.me.uk β€” periodt. πŸ’œ


🌈 APPENDIX 🌈

The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _ (iykyk, the underscore ones are the private vibes πŸ™ˆ).

⭐ program_name

  Title   : program_name
  Usage   : $factory>program_name()
  Function: holds the program name
  Returns : string
  Args    : None

(that $factory> is missing a -, and no, bestie, we are not editing the sacred text πŸŽ€)

⭐ program_dir

  Title   : program_dir
  Usage   : $factory->program_dir(@params)
  Function: returns the program directory, obtained from ENV variable.
  Returns : string
  Args    : None

⭐ new

  Title   : new
  Usage   : $factory = Bio::Tools::Run::MCS->new()
  Function: creates a new MCS factory
  Returns : Bio::Tools::Run::MCS
  Args    : Many options understood by MCS can be supplied as key =>
            value pairs.

            These options can NOT be used with this wrapper:
            ucsc gtf neutral-only fourd-align align-only ar
okay so about that "can NOT be used" list β€” ucsc gtf neutral-only fourd-align align-only ar β€” those six are off limits in this wrapper. Don't try it. It will not slay, it will just not work. πŸ’€

⭐ run

  Title   : run
  Usage   : $result = $factory->run($align_file_or_object, Bio::Location::Atomic,
                                    [Bio::SeqFeatureI]);
  Function: Runs the MCS scripts on an alignment.
  Returns : list of Bio::SeqFeatureI feature objects (with coordinates corrected
            according to the supplied offset, if any)
  Args    : The first argument represents an alignment, the optional second
            argument represents the chromosome, stand and end and the optional
            third argument represents annotation of the exons in the alignment.

            The alignment can be provided as a multi-fasta format alignment
            filename, or a Bio::Align::AlignI compliant object (eg. a
            Bio::SimpleAlign).

            The position in the genome can be provided as a Bio::Location::Atomic
            with start, end and seq_id set.

            The annnotation can be provided as an array of Bio::SeqFeatureI
            objects.

so like β€” arg one is the alignment, arg two (optional) is the chromosome, stand and end, arg three (optional) is the exon annotation. ✨ (yes it says stand, yes it says annnotation, we're keeping the lore intact πŸ™ˆ)

⭐ _setparams

  Title   : _setparams
  Usage   : Internal function, not to be called directly
  Function: Creates a string of params to be used in the command string
  Returns : string of params
  Args    : none
bestie do not call this one directly, it literally says so. it's an internal function. look away. πŸ’…

and that's the whole page!! ty for reading my little manpage rant, you ate that πŸ“πŸ§š

this was Bio::Tools::Run::MCS(3pm) from perl v5.36.0, dated 2023-01-22 β€” mwah, bye bestie!! πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from