IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bioinformatique Perl Discussion :

Bioperl et clustalw


Sujet :

Bioinformatique Perl

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 5
    Par défaut Bioperl et clustalw
    Bonjour
    je suis un pt nouveau dans le perl et je suis en train de faire des analyses de bioinformatique. Je vais de me mettre à bioperl qui offre une bonne gamme de modules dont clustalw. J'ai a automatiser un bon millier d'alignement. J'ai parcouru le web et j'ai installer le module bioperl 1.5.1 avec perl package manager sous windows. J'ai installer clustalw 1.83. Mes premiers bouts de code ne donnent pas grand chose. le mieux que j'ai fait c'est faire fonctionner le script mais je n'arrive pas a récupérer les données générées dans un outfile... Ya t'il quelk1 qui pourrait m'expliquer le principe
    C'est un peu la loose...
    Voila merci de votre aide
    cordialitées
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Tout d'abord : ON NE POSTE PAS DANS CE FORUM, on poste dans les sous-forums, comme c'est clairement indiqué en haut de ce forum... Ton prochain message ici sera supprimé sans avertissement (à part un MP), pour celui-ci je me contente de le déplacer dans le sous-forum Bioinformatique.

    Ensuite, ton script a l'air correct. Si je comprends bien ton problème est juste que tu ne sais pas ouvrir un fichier en écriture et écrire dedans ? Dans ce cas notre FAQ contient les informations nécessaire, simplement pour écrire dans "output.txt", il faut faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    open my($out), '>', 'output.txt'
      or die "$!\n";
    print $out "Ce que je veux écrire dans le fichier.\n";
    (Attention, '>' écrase ce qu'il y avait auparavant dans le fichier, utilise '>>' si tu veux juste rajouter du texte à la fin.)

    --
    Jedaï

  3. #3
    Membre éprouvé
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    Octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3 157
    Par défaut
    Voici la façon dont je procède pour directement appeler ClustalW grâce à Perl, peut-être peux-tu t'en inspirer pour d'autres programmes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    #!/usr/local/bin/perl
     
     
    #---------------------------- RunClustalW.pl -----------------------------#
    #       Prend en entrée des séquences en forma FASTA et donne en retour
    #       l'alignement effectué par ClustalW dans un nouveau fichier FASTA
    #---------------------------- RunClustalW.pl -----------------------------#
     
    use strict;
    use warnings;
    use Time::localtime;
     
     
    # Paramètre de temps
    #---------------------
    my $Date = ctime();
     
    BEGIN { $ENV{CLUSTALDIR} = 'C:/Clustalw/' }
    use Bio::Tools::Run::Alignment::Clustalw;
     
     
    my $File = "NomFichier";
    my @params = ('ktuple' => 4, 'type' => 'dna', 'outfile' => "P:/Perl/scripts/Files/$File.msf");
    my $factory = Bio::Tools::Run::Alignment::Clustalw->new(@params);
     
     
    my $str = Bio::SeqIO->new(-file=> "P:/Perl/scripts/Files/$File.txt", -format => 'Fasta');
    my @seq_array =();
     
    while ( my $seq = $str->next_seq() )
    {
            push (@seq_array, $seq) ;
    }
     
    my $seq_array_ref = \@seq_array;
    my $aln = $factory->align($seq_array_ref);
     
     
     
     
    #BILAN
    #------
    print "\n\n\$aln de type\t$aln\n\n";
    print "\n\n\n----------------------------\n------- DESCRIPTEURS -------\n----------------------------\n";
     
     
    print "Longueur\t". $aln->length, "\n";
    print "Nbr de résidus\t". $aln->no_residues, "\n";
    print "Flush\t". $aln->is_flush, "\n";
    print "Nbr de séquences\t". $aln->no_sequences, "\n";
    print "Pourcentage d'identité\t". $aln->percentage_identity, "\n";
     
     
    print "\n\n\n-------------\n--- TEMPS ---\n-------------\n";
    my $Fin = ctime();
    print "\nDépart\t=>".$Date."\nFin\t=>".$Fin."\n";
     
     
     
    close;
    nb: j'ai crée un fichier de sortie .msf mais tu peux également choisir le format .fsa

    En fait tu as déjà en entrée un alignement et tu voudrais l'analyser et avoir dans un fichier de sortie les informations au sujet de cet alignement?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    #! C:/Perl/bin/perl.exe
     
    use strict;
    use warnings;
    use FileHandle;
     
    use Bio::AlignIO;
     
    my $in = new Bio::AlignIO ( -file =>'P:/Perl/testclustal.fsa', -format => 'fasta');
    my $aln = $in->next_aln();
    my $OutFileFASTA = FileHandle->new (">P:/Perl/FASTAInfo.txt");
    print $OutFileFASTA "same length of all sequences: ",
          ($aln->is_flush()) ? "yes" : "no", "\n";
    print $OutFileFASTA "alignment length: ", $aln->length(), "\n";
    printf $OutFileFASTA "identity: %.2f %%\n", $aln->percentage_identity();
    printf $OutFileFASTA "identity of conserved columns: %.2f %%\n", $aln->overall_percentage_identity();
     
     
     
    close;

    Jasmine,

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 5
    Par défaut merci
    Bonjour
    Desolé Jedai pour le coup du sous forum
    En plus en lisant des anciennes discussions j'avais vu ça mais je me suis fait avoir comme un bleu JE NE POSTERAI PLUS SUR LE FORUM PRINCIPAL.
    Merci Jasmine80 pour ton code je l'ai un peu transformé et j'ai obtenu ce que je voulais c'est à dire mettre les paramètres que tu affiche dans ton descripteur à l'interieur de mon outfile...
    merci et vous m'avez economiser mes yeux pour des recherches improbables sur le net.
    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Modules bioinformatiques bioperl CPAN
    Par djibril dans le forum Bioinformatique
    Réponses: 10
    Dernier message: 03/03/2009, 09h02
  2. Bioperl et GenPept
    Par lilybambina dans le forum Bioinformatique
    Réponses: 10
    Dernier message: 22/03/2007, 15h30
  3. récupération domaine protéique bioperl
    Par puce63 dans le forum Bioinformatique
    Réponses: 2
    Dernier message: 15/03/2007, 13h05
  4. [BioPerl] Run::Alignment::Clustalw erreur
    Par crochepatte dans le forum Bioinformatique
    Réponses: 2
    Dernier message: 24/01/2007, 12h09
  5. [bioinfo] NCBI et BioPerl et OO
    Par Jasmine80 dans le forum Bioinformatique
    Réponses: 12
    Dernier message: 27/10/2006, 14h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo