Informacja

Jak zdobyć najmniejsze poddrzewo zawierające zestaw węzłów z BioPhylo?

Jak zdobyć najmniejsze poddrzewo zawierające zestaw węzłów z BioPhylo?


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

Testuję różne biblioteki filogenetyczne w Pythonie. Chcę czytać w drzewie Newick, a następnie, mając listę taksonów, wygenerować najmniejsze drzewo, które zawiera je wszystkie. To zadanie jest dość proste i wydajne w dendropy i ete2:

newick = '((szop, niedźwiedź),((lew_morski,foka),((małpa,kot), łasica)),pies);' taxa = ['szop pracz', 'sea_lion'] import ete2 tree = ete2.Tree(newick) pruned = tree.prune(taxa) import dendropy tree = dendropy.Tree.get_from_string(newick, 'newick') pruned = tree.prune_taxa_with_labels (taksówka)

Próbuję, ale nie mogę znaleźć równoważnej funkcjonalności w pakiecie Bio.Phylo. Drzewa mają metodę „przycinania”, ale przycina ona pojedynczy węzeł z drzewa.


ten wspólny przodek funkcja powinna dać ci pożądany wynik: daje drzewo (chyba), które jest najnowszym wspólnym przodkiem wszystkich podanych celów.


Przepraszam za wykopanie tego starego pytania. Ale myślę, że biorąc pod uwagę, że masz nieukorzenione drzewo, wspólny przodek może nie jest właściwą odpowiedzią.

Musisz zrobić tak: Załóżmy, że masz nieukorzenione drzewo z n końcówkami (gatunkami), a więc z 2n-3 gałęziami. Powinieneś przeciąć drzewo na pół we wszystkich możliwych gałęziach. W ten sposób uzyskasz 4n-6 poddrzew. Odpowiedzią będzie najmniejsze poddrzewo zawierające wszystkie wybrane przez Ciebie gatunki.

Różni się to od wspólnego przodka, ponieważ w przypadku nieukorzenionego drzewa można to określić w taki sposób, że te gatunki, które nie zostały przez ciebie wybrane, zostaną zgrupowane jako pierwsze, a wszystkie wybrane przez ciebie gatunki staną się grupą zewnętrzną. Ale jeśli odpowiednio „ponownie zakorzenisz” drzewo, nadal możesz połączyć wybrane gatunki jako mały, ekskluzywny klad.


Szybkie obliczanie odległości kwartetu między drzewami o dowolnych stopniach

Opracowano szereg algorytmów do obliczania odległości kwartetowej między dwoma drzewami ewolucyjnymi na tym samym zestawie gatunków. Odległość kwartetowa to liczba kwartetów – poddrzew indukowanych przez cztery liście – która różni się między drzewami. W większości algorytmy te są ograniczone do pracy na drzewach binarnych, ale ostatnio opracowaliśmy algorytmy, które działają na drzewach dowolnego stopnia.

Wyniki

Przedstawiamy szybki algorytm obliczania odległości kwartetowej między drzewami dowolnego stopnia. Podane drzewa wejściowe T oraz T', algorytm działa w czasie O(n + |V|·|V'| min<NS, NS'>) i spacja O(n + |V|·|V'|), gdzie n to liczba liści na dwóch drzewach, V oraz V czy węzły niebędące liśćmi są w T oraz T', odpowiednio, i NS oraz NS' to maksymalna liczba węzłów bezlistnych sąsiadujących z węzłem bezlistnym w T oraz T', odpowiednio. Najszybsze algorytmy opublikowane wcześniej dla drzew dowolnych stopni są uruchamiane w O(n 3 ) (niezależnie od stopnia drzewa) i O(|V|·|V'NS·NS'). Porównujemy eksperymentalnie algorytm z istniejącymi algorytmami obliczania odległości kwartetu dla drzew ogólnych.

Wniosek

Przedstawiamy nowy algorytm obliczania odległości kwartetowej między dwoma drzewami dowolnego stopnia. Nowy algorytm poprawia asymptotyczny czas przebiegu obliczania odległości kwartetu w porównaniu z poprzednimi metodami, a wyniki eksperymentalne wskazują, że nowa metoda sprawdza się również znacznie lepiej w praktyce.


Wstęp

Podstawowym zadaniem biologii ewolucyjnej jest połączenie zbioru ukorzenionych drzew na częściowych, ewentualnie nakładających się zestawach danych, w jedno ukorzenione drzewo na pełnym zestawie danych. Taki jest cel metod superdrzewa, głównie zaprojektowanych i wykorzystywanych w celu rekonstrukcji superdrzewa gatunku z zestawu drzew gatunkowych (patrz przeglądy wczesnych metod w [4-6], a nowsze metody w [2,10,21 ,24,25,28,29]).

Idealnie, połączone superdrzewo powinno „wyświetlać” każde drzewo wejściowe, w tym sensie, że ograniczając superdrzewo do zbioru liści drzewa wejściowego, otrzymujemy to samo drzewo wejściowe. Jednak nie zawsze jest to możliwe, ponieważ drzewa wejściowe mogą zawierać sprzeczne informacje filogenetyczne. Należy zauważyć, że rozważenie zestawu drzew wejściowych, z których nie wszystkie są kompatybilne, prowadzi do pytań o korektę drzew genów wejściowych lub znalezienie podzbioru zgodnych drzew wejściowych lub poddrzew [26]. Tutaj pozostawiamy te pytania otwarte i badamy bardziej bezpośrednie sformułowanie problemu superdrzewa, które polega na rozważeniu zestawu kompatybilnych drzew wejściowych i znalezieniu superdrzewa wyświetlającego je wszystkie. Algorytm BUILD autorstwa Aho i inni. [1] może być użyty do testowania, w czasie wielomianowym, czy zbiór ukorzenionych drzew jest kompatybilny, a jeśli tak, konstruuje kompatybilne superdrzewo, niekoniecznie w pełni rozwiązane. Algorytm ten został uogólniony w [9,20] tak, aby wyprowadzał wszystkie kompatybilne superdrzewa, i przystosowany w [27], aby wyprowadzał wszystkie kompatybilne superdrzewa o minimalnej rozdzielczości.

Chociaż metody superdrzewa są klasycznie stosowane do konstruowania drzew gatunkowych, mogą być również wykorzystywane do konstruowania drzew genowych. Dostępnych jest kilka baz danych drzew genowych (patrz np. Ensembl Compara [30], Hogenom [22], Phog [11], MetaPHOrs [23], PhylomeDB [14], Panther[19]). W przypadku interesującej rodziny genów może być dostępnych wiele różnych drzew genów, a znalezienie jednego superdrzewa, które pokazuje je wszystkie, prowadzi do pytania o superdrzewo. Z drugiej strony, biorąc pod uwagę interesujący gen, narzędzie wyszukiwania oparte na homologii jest zwykle używane do wyszukiwania wszystkich homologów w zestawie genomów. Powstała rodzina genów może być bardzo duża, obejmując odległe sekwencje genów, które mogą być trudne do dopasowania, co prowadzi do słabo podtrzymanych drzew – lub, co gorsza, wysoko podtrzymanych drzew genów, które w rzeczywistości są nieprawidłowe. Standardowym sposobem zmniejszenia takich błędów jest następnie użycie algorytmu klastrowania opartego na podobieństwie sekwencji, takiego jak OrthoMCL [18], InParanoid [3], Proteinortho [17] lub wielu innych (patrz linki Quest for Orthologs na http://questfororthologs .org/), aby pogrupować geny w mniejsze zestawy ortologów lub inparalogów (paralogi, które powstały po określonej specjacji). Drzewa uzyskane dla takich częściowych rodzin genów można następnie łączyć przy użyciu metody superdrzewa.

Rozważanie drzew wejściowych jako części drzew genowych, a nie jako części drzew gatunkowych, nie ma żadnego wpływu na procedurę testu zgodności. Jednakże, w celu zrekonstruowania kompatybilnego „superdrzewa genów”, jeśli drzewo gatunkowe jest znane z interesujących taksonów, to może być użyte jako dodatkowa informacja do wyboru spośród wszystkich możliwych superdrzewa wyświetlających wejściowe częściowe drzewa genów. Rzeczywiście, naturalnym kryterium optymalizacji jest minimalizacja kosztu uzgadniania, tj. albo duplikacji, albo duplikacji plus koszt strat, wywołanych przez drzewo wyjściowe. Nazywamy to problemem znalezienia zgodnego superdrzewa minimalizującego koszt uzgodnienia problem supergenetree.

W tym artykule najpierw pokazujemy, w jaki sposób dokładne metody opracowane dla problemu superdrzewa mogą być przystosowane do problemu superdrzewa. Jeśli chodzi o oryginalne algorytmy, wszystkie rozszerzenia mają również wykładniczą złożoność w najgorszym czasie. Następnie przedstawiamy heurystykę, która może być postrzegana jako zachłanne podejście stosowane klasycznie do rozwiązywania problemów superdrzewa, polegające na stopniowym konstruowaniu drzewa od korzenia do jego liści. Głównym modułem tej heurystyki jest wywnioskowanie minimalnej liczby powtórzeń poprzedzających pierwszą specjację, którą nazywamy Minimalne powielanie przed specyfikacją problem. Pokazujemy, że problem supergenetycznego kosztu powielania, a nawet jego ograniczona wersja problemu Minimum pre-speciation Duplication, są NP-trudne do aproksymacji w obrębie n Współczynnik 1-ϵ, dla dowolnego 0 < ϵ < 1 (n będąc liczbą genów). Co więcej, te wyniki nieprzybliżeniowe mają zastosowanie nawet w przypadkach, w których w drzewach wejściowych jest tylko jeden gen na gatunek. Na koniec rozważymy problem supergenetree z ograniczeniami dotyczącymi drzew wejściowych, które są istotne dla wielu zastosowań biologicznych. Mianowicie, wymagamy, aby każdy gen pojawiał się co najwyżej w jednym drzewie, a geny dowolnego drzewa powinny być powiązane tylko poprzez ortologię. Tak jest na przykład w przypadku drzew genowych uzyskanych dla klastrów OrthoMCL zwanych ortogrupami [18]. Pokazujemy, że nawet w przypadku tego ograniczenia problem superdrzewa pozostaje NP-trudny ze względu na koszt duplikacji.

Poniższy rozdział wprowadza wstępne zapisy, które będą wymagane w dalszej części artykułu.


Narzędzia filogenetyczne dla biologii porównawczej

To na pewno ostatni post na ten temat dzisiaj, ale wprowadziłem kilka dodatkowych udoskonaleń w plot.backbonePhylo , mojej nowej metodzie kreślenia, aby pokazać poddrzewa jako trójkąty.

Trzy główne zmiany są następujące: (1) zgodnie z sugestią Łukasza poddrzewa zawierające tylko 1 takson są teraz wykreślane jako linia (właściwie - trójkąt o zerowej szerokości, ale ja gwarancja nie będziesz w stanie odróżnić), zamiast trójkąta o szerokości jednostki (2) zgodnie z sugestią Grahama Slatera dokonałem małej zmiany, aby między sąsiednimi trójkątami była przestrzeń - w konsekwencji klady z 2 taksony mają jednostkową długość, klady z 10 taksonami mają 9 jednostek szerokości itd., co w rzeczywistości pokrywa się z końcówkami zawierającymi 1 takson, które mają teraz jednostkową szerokość i (3) dodałem opcjonalny współczynnik skalowania vscale , który skaluje pion wymiar tak, że duże poddrzewa mogą być przedstawiane przy jednoczesnym uwzględnieniu pojedynczych i odstępów między trójkątami.

Wszystkie te aktualizacje są dostępne tutaj, ale są również częścią nowej wersji phytools (phytools 0.3-51).

Musimy jednak być z tym ostrożni, ponieważ jeśli dostosujemy nasze szerokości kladu tak, aby każda była mniejsza niż 1 jednostka, otrzymamy naprawdę dziwne wykresy.


Ogólna metoda porównywania drzew w oparciu o podobieństwo poddrzewa i jej zastosowanie w bazie danych taksonomicznych

Szereg metryk do porównywania struktury rozgałęzień drzew wykorzystano jako ważne narzędzia w ilościowej analizie drzew ewolucyjnych. Mniej uwagi poświęcono opracowaniu ogólnej metodologii porównawczej dla różnych N-drzew oznaczonych liśćmi, takich jak drzewa klasyfikacyjne i różne typy dendrogramów. W niniejszym artykule zaproponowano metodę pomiaru ogólnego podobieństwa opartą na podobieństwie poddrzewa. Współczynniki asocjacji mogą być użyte do pomiaru podobieństwa między każdą parą poddrzew w dwóch drzewach, a algorytm zwany „metodą macierzy sieci” jest przedstawiony w celu obliczenia ogólnego podobieństwa w tej metodzie. Ponadto wprowadzono zastosowanie tej metody do przeszukiwania i porównywania drzew w bazie danych taksonomicznych.


Dokładne algorytmy i aplikacje dla drzewopodobnej ważonej pokrywy zestawu ☆

Przedstawiamy specjalny przypadek NP-zupełny problemu Weighted Set Cover i pokazujemy jego zdolność do wykonywania przy stałym parametrze w odniesieniu do maksymalnego rozmiaru podzbioru, parametr, który wydaje się być mały w odpowiednich zastosowaniach. Dokładniej, w tym praktycznie istotnym wariancie wymagamy, aby dana kolekcja C podzbiorów zbioru podstawowego S powinno być „drzewo”. Oznacza to, że podzbiory w C można zorganizować w drzewo T tak, że każdy podzbiór jeden do jednego odpowiada węzłowi drzewa i dla każdego elementu s z S, węzły odpowiadające podzbiorom zawierającym s wywołać poddrzewo T. Odpowiada to problemowi znalezienia minimalnego pokrycia krawędzi w hipergrafie acyklicznym ważonym krawędzią. Naszym głównym wynikiem jest algorytm działający w czasie O (3 k ⋅ m n ) gdzie k oznacza maksymalny rozmiar podzbioru, n : = | S | i m : = | C | . Algorytm implikuje również wynik o stałej parametryzacji dla problemu NP-zupełnego Multicut in Trees, uzupełniający poprzednie wyniki aproksymacji. Nasze wyniki znajdują zastosowanie w biologii obliczeniowej w filogenomice oraz do oszczędzania pamięci w algorytmach grafowych opartych na dekompozycji drzew.


1 odpowiedź 1

Możesz obliczyć liczby za pomocą programowania dynamicznego.

Niech $c(n,l)$ będzie liczbą BST z $n$ węzłami i $l$ liśćmi, gdzie węzły są wybierane ze zbioru $n$ odrębnych węzłów. Wtedy mamy następującą relację rekurencyjności w ogólnych przypadkach,

  • Zewnętrzne sumowanie jest większe niż $i$ , liczba węzłów w lewym pod-BST BST z $n$ węzłami i $l$ liśćmi.
  • Suma wewnętrzna jest większa niż $j$ , liczba liści w lewym pod-BST węzłów $i$.
  • Iloczyn $c(i,j)cdot c(ni-1, lj)$ jest liczbą BST, których lewy podBST ma $i$ węzły, a $j$ liście, a prawy podBST ma $ni- 1$ węzły i $lj$ liście. Zwróć uwagę, że korzeń takiego BST ma tylko jeden wybór, a mianowicie $(i+1)^$ najmniejszy węzeł.

Pozwolę Ci obliczyć wartości graniczne $c(n,l)$, takie jak $n=0$ lub $n=1$ lub $l=0$ . Może być kilka różnych przypadków. To jednak powinno wystarczyć, aby wskazać ci właściwy kierunek.


Tło

Genomika porównawcza jest centralnym podejściem w analizie sekwencji, a dzięki jej zastosowaniu uzyskano wiele ważnych wyników biologicznych. Wśród różnych programów i pakietów opracowanych dla genomiki porównawczej, szczególnie interesujące są te, które wykorzystują informacje zawarte w drzewach filogenetycznych. Rzeczywiście, moc wyjaśniająca, jaką dają drzewa, wciąż nie może się równać z problemami, takimi jak detekcja ortologiczna, przewidywanie horyzontalnego transferu genów (HGT) czy wielkoskalowe badania ewolucyjne. W przypadku wykrywania ortologów najbardziej rygorystyczne podejście do określenia, czy geny homologiczne są ortologiczne czy paralogiczne, polega na porównaniu drzewa genowego z drzewem gatunkowym traktowanym jako odniesienie [1-4]. Podobnie to samo podejście można zastosować do wykrywania HGT [5]. Wreszcie różnego rodzaju badania ewolucyjne stały się możliwe tylko dzięki wykorzystaniu dużej kolekcji drzew, np., wykrywanie selekcji pozytywnej w ewolucji kręgowców [6], analiza poziomów metylacji DNA u ssaków [7] lub ewolucja zawartości GC [8].

Problem polega na tym, że ręczne przeglądanie zbiorów zawierających tysiące drzew genowych jest żmudnym – i obecnie prawie niemożliwym do wykonania zadaniem –, a do badań na dużą skalę potrzebne są zautomatyzowane narzędzia. Dlatego opracowaliśmy TPMS, zestaw programów poświęconych manipulacji drzewami i zapytaniach. Jego główną funkcją jest algorytm dopasowywania wzorców, którego celem jest znajdowanie drzew genowych zawierających określone motywy. Wzorce te są pisane przy użyciu rozszerzonego formatu Newick i zwykle zawierają pewnego rodzaju ograniczenia, takie jak natura węzła (duplikacja, specjacja), zawartość poddrzewa lub poziom statystycznego wsparcia dla węzłów (np., bootstrap, scyzoryk lub aLRT). Drugą główną funkcją oferowaną przez TPMS jest narzędzie do zakorzeniania drzew oparte na wykorzystaniu punktacji jedności genów i kryteriów taksonomicznych. Jego celem jest umieszczenie korzenia drzewa genowego w celu zminimalizowania niezgodności obserwowanych między tym drzewem a drzewem gatunku referencyjnego.

Algorytm wyszukiwania według wzorców drzewa używany przez TPMS jest ulepszoną wersją tego, który opublikowaliśmy wcześniej [1]. Głównym usprawnieniem jest możliwość odpytywania kolekcji drzew zbudowanych przez użytkowników. Nasza poprzednia wersja została zaimplementowana w FamFetch, graficznym interfejsie użytkownika (GUI), który był w stanie odpytywać tylko zestaw predefiniowanych baz danych zainstalowanych na scentralizowanym serwerze [9].


2 odpowiedzi 2

Wierzę, że będziesz musiał wykonać kilka zapytań XML, aby uzyskać ten szacunkowy koszt.

Sprawdź, czy tego właśnie szukasz:

Spowoduje to zwrócenie kosztu poszczególnych wyciągów w partii. Być może trzeba będzie pracować w niektórych grupach, jeśli potrzebujesz całkowitego szacowanego kosztu poddrzewa dla całej partii.

Oto jak użyłem odpowiedzi na moje pytanie.

Jestem wielkim fanem sp_whoisactive. Jeśli go nie masz, przestań czytać pobieranie tutaj.

Więc ustawiłem go tak, aby co 10 minut zbierał migawkę, w ten sposób:

Odpuściłem na chwilę (do 3 dni). Następnie konwertuję zebrane dane w ten sposób:

I w końcu dostaję listę, która pokazuje mi, gdzie jest Szacowany koszt mały w porównaniu ze środowiskiem wykonawczym, bez blokowania zadania

To jest bardzo ciekawa lista, ale jest trochę zaszumiony. Na początek zdecydowałem się zignorować szybkie, małe zadania, które trwają krócej niż 10 minut, ale ten limit zależy od Twojej sytuacji.

Teraz o wiele łatwiej jest znaleźć prace, które działają ze złym planem.
Bardzo ci dziękuje za pomoc.


Szczegóły dotyczące wdrożenia

Nasz algorytm jest zaimplementowany (w Javie) jako narzędzie o nazwie FRUUT (Fast RNA Unordered Unrooted Tree mapper). Reprezentacja drzewa RNA jest opisana w sekcji ‘Reprezentacja drzewa RNA’, a schemat punktacji stosowany przez firmę FRUUT jest opisany w sekcji 𠆏unkcja kosztu wyrównania’. FRUUT pozwala użytkownikowi wybrać dowolną kombinację trybu wyrównania (zakorzenione / nieukorzenione, uporządkowane / nieuporządkowane, lokalne / globalne) i obliczyć optymalne wyrównania parami drzew RNA z dołączonym modelem oceny istotności opisanym w sekcji „Obliczanie wartości p” Udostępniamy również interaktywny web-serwer PHP do uruchamiania FRUUT na naszej stronie (wykresy RNA są generowane przez pakiet Vienna [2]).

Reprezentacja drzewa RNA

Istnieje kilka wcześniejszych modeli reprezentowania struktury drugorzędowej RNA pozbawionej pseudowęzłów (przykład na rycinie  9a) jako uporządkowanego, ukorzenionego drzewa [3,9,10,13,45-48]. Na przykład [45] przedstawił strukturę RNA jako drzewo, w którym węzły odpowiadają elementom pętli struktury drugorzędowej (pętle typu spinka do włosów, wybrzuszenia, pętle wewnętrzne lub wielopętle), a krawędzie odpowiadają regionom o parze zasad (łodyga). Inna, odmienna reprezentacja jest podana w pracy Zhang’s [9]: węzły drzewa reprezentują albo niesparowane bazy (liście) albo sparowane bazy (węzły wewnętrzne). Każdy węzeł jest oznaczony odpowiednio podstawą lub parą zasad. Istnieją dwa rodzaje krawędzi, alternatywnie łączące kolejne pary zasad łodygi lub podstawę liścia z ostatnią parą zasad w odpowiedniej łodydze. Wyżej wymienione drzewa są ukorzenione i uporządkowane, ich kolejność odpowiada orientacji sekwencji RNA 5’-3’, a ich korzeń jest tradycyjnie wyznaczonym węzłem rodzicielskim motywu, w którym uczestniczy pierwsza zasada 5’.

Demonstracja wybranej reprezentacji RNA. (a) Struktura drugorzędowa RNA przedstawiona przez [2]. (b) Drzewiasta reprezentacja (a) w naszym modelu. Każde ułożenie par zasad jest dopasowane kolorem do reprezentującego gałąź w drzewie.

Reprezentacja drzewa, którą zastosowaliśmy, wykorzystuje podobne modelowanie, jak w Hཬhsman et al. [48], z pewnymi odmianami opisujemy dalej. Biorąc pod uwagę drugorzędową strukturę RNA, każda pętla, para zasad i przedział niesparowanych zasad generuje węzeł w drzewiastej reprezentacji struktury. Etykiety są przypisywane do węzłów drzewa w celu wskazania ich rodzaju i zawartości. Typy węzłów to: BP  (para zasad), UPI (interwał niesparowanych zasad), HP  (szpilka do włosów), IL (wewnętrzna pętla lub wybrzuszenie), ML  (wiele pętli) i EXT  (pętla zewnętrzna). W przypadku węzła UPI  , etykieta zawiera również sekwencję zasad od 5’ do 3’ odpowiedniego przedziału, a dla węzła BP   etykieta zawiera odpowiednie podstawy (patrz Rysunek  9 ).

Każdy węzeł pętli ( HP , IL , ML i EXT ) jest połączony, w kolejności od 5’ do 3’, do wszystkich węzłów UPI  , które odpowiadają przedziałom niesparowanych zasad powiązanych z pętlą oraz do wszystkich BP & #x02009węzły, które odpowiadają parom zasad kończącym rdzę sąsiadującym z pętlą. Węzły BP   to węzły stopnia 2, gdzie dwaj sąsiedzi takich węzłów to węzły BP  , które odpowiadają przylegającym stosom par bazowych. Zestaw liści w drzewie odpowiada zestawowi węzłów UPI   lub BP  węzłom kończących pędy bez pętli.

Funkcja kosztów wyrównania

Koszty wygładzania węzłów zostały ustawione na 3 dla BP, 11 dla ML/EXT  i 5 dla IL. Dla kosztów przycinania poddrzewa opracowaliśmy funkcję kosztu, która zlicza wystąpienia różnych typów elementów pojawiających się w poddrzewie i dedukuje odpowiednią karę. Funkcja ma postać: Prtynmi(T) = CtyP · ntyP + CbP · nbP + ChP · nhP + …, gdzie wartości Cx są stałymi czynnikami kary, ntyP to liczba niesparowanych zasad w T, nbP to liczba par zasad, nhP to liczba spinek do włosów itd. (konkretne Cx wartości są podane w tabeli  1 ). Tabela  2  podsumowuje koszty dopasowania par węzłów przez wyrównanie. Koszty dopasowania sekwencji i koszty dopasowania par zasad zostały ustalone przy użyciu macierzy punktacji RIBOSUM85-60 [49]. W celu obsługi lokalnego trybu wyrównania dodaliśmy opcję ustawienia zerowego kosztu przycinania poddrzewa: Prtynmi(T) =𠂐.


Obejrzyj wideo: BioPython Tutorial: Making Phylogenetic Trees in Python (Czerwiec 2022).


Uwagi:

  1. Karr

    you were visited by the admirable idea

  2. Dammar

    Dobra robota, to po prostu doskonały pomysł

  3. Alhrik

    Znalazłem odpowiedź na twoje pytanie na Google.com

  4. Birj

    To interesujące. Poniższy, gdzie mogę znaleźć więcej informacji na to pytanie?

  5. Gugal

    as it turned out not in vain =)

  6. Olivier

    Zgadzam się z Tobą



Napisać wiadomość