Bio::C...Family(3pm)

πŸ“¦
version 1.7.3 Β· 2 versions
  • 1.7.3 Β· debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking (latest)
  • 1.7.3 Β· ubuntu jammy
, in debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

okay bestie, gather round 🫢 this is Bio::C...Family(3pm) from the User Contributed Perl Documentation, and it's all about the SequenceFamily object. it's giving family reunion but for sequences πŸ’–

πŸŽ€ NAME πŸŽ€

Bio::Cluster::SequenceFamily β€” a Sequence Family object ✨

πŸ’… SYNOPSIS πŸ’…

here's the whole vibe in code form, literally copy-paste-able:

use Bio::SeqIO;
use Bio::Cluster::SequenceFamily;
use File::Spec;

my $file =  File::Spec->catfile('t','data','swiss.dat');
my $seqio= Bio::SeqIO->new(-format => 'swiss',
                          -file => $file);
my @mem;
while(my $seq = $seqio->next_seq){
  push @mem, $seq;
}

#create the family
my $family = Bio::Cluster::SequenceFamily->new(
        -family_id=>"Family_1",
        -description=>"Family Description Here",
        -annotation_score=>"100",
        -members=>\@mem);

#access the family

foreach my $mem ($family->get_members){
  print $mem->display_id."\t".$mem->desc."\n";
}

#select members if members have a Bio::Species Object

my @mem = $family->get_members(-binomial=>"Homo sapiens");
@mem = $family->get_members(-ncbi_taxid => 9606);
@mem = $family->get_members(-common_name=>"Human");
@mem = $family->get_members(-species=>"sapiens");
@mem = $family->get_members(-genus=>"Homo");

🌸 DESCRIPTION 🌸

so this is a simple Family object and it can hold literally any group of objects, that's the whole assignment. but if you want a more specific family, you should derive from FamilyI. that's your girl for the specialized stuff.


πŸ’Œ FEEDBACK πŸ’Œ

email bioperl-l@bioperl.org for support and feedback. that's the line, bestie.

🧚 Mailing Lists

user feedback is, like, an integral part of the evolution of this and other Bioperl modules. so send your comments and suggestions to one of the Bioperl mailing lists β€” your participation is much appreciated, fr fr πŸ’œ

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

🫢 Support

k so for usage questions and support issues, please direct them to the mailing list:

bioperl-l@bioperl.org

and not straight to the module maintainer. there are so many experienced and responsive experts who can look at your problem and address it fast. and if you can at all, include a thorough description of the problem with code and data examples. do it for me πŸ™

πŸ› Reporting Bugs

report bugs to the Bioperl bug tracking system so we can keep track of the bugs and their resolution. bug reports can be submitted via the web:

https://github.com/bioperl/bioperl-live/issues

πŸ‘‘ AUTHOR - Shawn Hoon πŸ‘‘

email: shawnh@fugu-sg.org

πŸ“– APPENDIX πŸ“–

the rest of this documentation details each of the object methods. internal methods are usually preceded with a "_". iykyk 😌

✨ new

  • Title: new
  • Usage:
my $family = Bio::Cluster::SequenceFamily->new(
                            -family_id=>"Family_1",
                            -description=>"Family Description Here",
                            -annotation_score=>"100",
                            -members=>\@mem);
  • Function: Constructor for the SequenceFamily object. it's the birth of a family 🍼
  • Returns: a Bio::Cluster::SequenceFamily object

see Bio::Cluster::SequenceFamily.

✨ version

  • Title: version
  • Usage: $family->version("1.0");
  • Function: get/set for version
  • Returns: a string version of the family generated.

✨ annotation_score

  • Title: annotation_score
  • Usage: $family->annotation_score(100);
  • Function: get/set for annotation_score, which represents the confidence in which the consensus description has been assigned to the family.
  • Returns: Bio::SimpleAlign

see Bio::SimpleAlign.

✨ alignment

  • Title: alignment
  • Usage: $family->alignment($align);
  • Function: get/set for an alignment object representing the multiple alignment of the members of the family.
  • Returns: Bio::SimpleAlign

see Bio::SimpleAlign.

✨ tree

  • Title: tree
  • Usage: $family->tree($tree);
  • Function: get/set for a tree object representing the phylogenetic tree of the family. 🌳
  • Returns: Bio::Tree

see Bio::Tree.

🌈 Bio::Cluster::FamilyI methods 🌈

✨ family_score

  • Title: family_score
  • Usage: Bio::Cluster::FamilyI->family_score(95);
  • Function: get/set for the score of the algorithm used to generate the family, if present. this is aliased to cluster_score().
  • Returns: the score
  • Args: the score

✨ family_id

  • Title: family_id
  • Usage: $family->family_id("Family_1");
  • Function: get/set for family id. this is aliased to display_id().
  • Returns: a string specifying the identifier of the family

πŸ¦‹ Bio::ClusterI methods πŸ¦‹

✨ display_id

  • Title: display_id
  • Usage: (nothing listed πŸ™ˆ)
  • Function: get/set the display name or identifier for the cluster
  • Returns: a string
  • Args: optional β€” on set, the display ID (a string)

✨ description

  • Title: description
  • Usage: $fam->description("POLYUBIQUITIN")
  • Function: get/set for the consensus description of the cluster
  • Returns: the description string
  • Args: optional β€” the description string

✨ get_members

  • Title: get_members
  • Usage: valid criteria are:
-common_name
-binomial
-ncbi_taxid
-organelle
-genus

and the calls look like:

$family->get_members(-common_name =>"human");
$family->get_members(-species     =>"homo sapiens");
$family->get_members(-ncbi_taxid  => 9606);

for now, multiple criteria are ORed. and if you pass no criteria at all, it'll hand you back all the members πŸ’–

  • Function: get members using methods from Bio::Species, the phylogenetic tree of the family.
  • Returns: an array of objects that are members of this family.

✨ size

  • Title: size
  • Usage: $fam->size();
  • Function: get/set for the size of the family, calculated from the number of members
  • Returns: the size of the family
  • Args: (nothing listed)

✨ cluster_score

  • Title: cluster_score
  • Usage: $fam->cluster_score(100);
  • Function: get/set for cluster_score, which represents the score in which the clustering algorithm assigns to this cluster.
  • Returns: a number

πŸ› οΈ Implementation specific methods πŸ› οΈ

these are mostly for adding / removing / changing, bestie. the little maintenance era ✨

✨ add_members

  • Title: add_members
  • Usage: $fam->add_member([$seq1,$seq1]);
  • Function: add members to a family
  • Returns: (nothing listed)
  • Args: the member(s) to add, as an array or arrayref

✨ remove_members

  • Title: remove_members
  • Usage: $fam->remove_members();
  • Function: remove all members from a family
  • Returns: the previous array of members
  • Args: none

✨ members

  • Title: members
  • Usage: $members = $fam->members([$seq1,$seq1]);
  • Function: Deprecated. use add_members() or get_members() instead 🫢

and that's the whole page, bestie πŸ’… this was Bio::C...Family(3pm) from perl v5.34.0, dated 2022-03-27. go forth and cluster, you absolute icon πŸ‘‘πŸ’–

πŸ“¦ where this page comes from