Arbre de newick

Présentation
Newick est le nom d'un format de fichier utilisé en biologie pour décrire les relations phylogénétiques entre diverses êtres vivants ou molécules biologiques telles que l'ADN. le code présenté est une classe qui parse une représentation textuelle (sauce moi-même) et généère un arbre à tableau. Avec une 2e passe sur l'arbre on peut reformater les arbres sur d'autres formats dont de l'xml simple.

http://fr.wikipedia.org/wiki/Newick
http://en.wikipedia.org/wiki/Newick_format

// il y a un peu de code de DEMO au debut code:
$toto = '((((1:0.a1,2:a2)3:0.a3,((4:0.b1,5:0.b2)6:0.b3,(7:0.c1,8:0.c2)9:0.c3)10:0.bc3)11:0.abc3,(12:0.d1,13:0.d2):0.d3)14:0.abcd3,15:0.e2)';
//$toto ='(((((1:0.01,2:0.01):0.05,(5:0.02,19:0.02):0.04,alone:dist):0.05,(3:0.03,4:0.03):0.08):0.59,(7:0.13,20:0.13):0.57):0.14,6:0.84)tout:distance;';
$tree = new NewickParser($toto);

echo '';
print_r( $tmp = $tree->parse() );
print_r( $tree->formatFlat($tmp) );
print_r( $tree->formatLayered($tmp) );
print_r( $tree->formatRich($tmp));
file_put_contents(__FILE__.'.xml',$tree->formatXMLString($tmp));
print( $tree->formatNewick($tmp));
echo '';
Téléchargement
0  0 
Téléchargé 18 fois Voir les 2 commentaires
Détails
Catégories : Chaines de caractères
Avatar de gene69
Membre émérite
Voir tous les téléchargements de l'auteur
Licence : GPL
Date de mise en ligne : 25 juillet 2012




Avatar de fourmizen fourmizen - Membre à l'essai https://www.developpez.com
le 25/07/2012 à 13:58
Superbe !
Juste à la ligne 122 il semble manquer le "$this->" après le "self::". Enfin en tout cas ca enlève l'erreur
Avatar de gene69 gene69 - Membre émérite https://www.developpez.com
le 26/07/2012 à 14:04
??
Code : Sélectionner tout
self::{$this->callbackLeaf }($root)

c'est pas juste ? et les callback appelé sont bien static !
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.
Contacter le responsable de la rubrique PHP