Nesta prática trataremos do conceito de diversidade filogenética e suas implicações. Primeiro aprenderemos a medir diversidade filogenética. Considere a seguinte filogenia:

library(ape)
tr<-read.tree(text="((espécie_X:0.5,espécie_Y:0.5):0.5,espécie_Z:1);")
plot(tr)
axisPhylo()

Quanta história evolutiva está representada nessa filogenia? Se a escala abaixo está em uma escala de milhões de anos, temos 1 milhão de anos levando desde o ancestral de todas as espécies e a espécie Z, 0.5 mihão de anos entre o ancestral de todas as espécies e o ancestral das espécies X e Y e mais 0.5 milhão de anos desde então até o presente = 1 + 0.5 + 0.5 + 0.5= 2.5. Podemos fazer uma função para o R nos calcular isso diretamente.

divfilo<-function(tr){
  res<-sum(tr$edge.length)
  res
}

divfilo(tr)
## [1] 2.5

Digamos que temos uma filogenia maior e gostaríamos de calcular a diversidade filogenética de diferentes subconjuntos destas espécies.

#agora vamos abrir uma árvore um pouco maior do que a anterior para facilitar a visualização
tr<-read.tree(text="((t1:0.53,t2:0.53):0.07,(((t6:0.1,t7:0.1):0.19,(t4:0.11,(t5:0.11,((t9:0.028,t10:0.028):0.0009,t8:0.029):0.083):0.00039):0.18):0.024,t3:0.32):0.28);")
plot(tr)

subA<-drop.tip(tr, c("t1","t2","t3"))
subB<-drop.tip(tr, c("t10","t5","t6"))

divfilo(subA)
## [1] 0.95929
divfilo(subB)
## [1] 2.47529

Note como cada subconjunto tem o mesmo número de espécies, mas diversidades filogenéticas muito diferentes. Por que? Uma dica pode ser obtida plotando as ávores:

layout(matrix(1:3, nrow=1))
plot(tr)
axisPhylo()
plot(subA)
axisPhylo()
plot(subB)
axisPhylo()

Podemos avaliar o quanto a extinção de espécies pode apagar a diversidade filogenética. Podemos simular uma grande filogenia e podar cada vez mais espécies.

library(phytools)
## Loading required package: maps
tr<-pbtree(n=1000)
terminais<-tr$tip.label
terminais
##    [1] "t393"  "t394"  "t531"  "t532"  "t280"  "t704"  "t877"  "t878" 
##    [9] "t770"  "t771"  "t72"   "t500"  "t724"  "t725"  "t8"    "t455" 
##   [17] "t456"  "t185"  "t707"  "t708"  "t367"  "t358"  "t352"  "t353" 
##   [25] "t316"  "t757"  "t758"  "t625"  "t626"  "t468"  "t591"  "t592" 
##   [33] "t331"  "t285"  "t305"  "t306"  "t70"   "t286"  "t814"  "t815" 
##   [41] "t722"  "t723"  "t519"  "t520"  "t204"  "t686"  "t687"  "t610" 
##   [49] "t194"  "t195"  "t115"  "t257"  "t435"  "t436"  "t999"  "t1000"
##   [57] "t108"  "t499"  "t670"  "t671"  "t109"  "t229"  "t451"  "t645" 
##   [65] "t646"  "t881"  "t993"  "t994"  "t288"  "t59"   "t60"   "t400" 
##   [73] "t401"  "t366"  "t307"  "t913"  "t914"  "t682"  "t683"  "t665" 
##   [81] "t202"  "t203"  "t14"   "t4"    "t250"  "t251"  "t161"  "t875" 
##   [89] "t876"  "t90"   "t193"  "t921"  "t922"  "t173"  "t635"  "t795" 
##   [97] "t796"  "t91"   "t958"  "t959"  "t923"  "t987"  "t988"  "t319" 
##  [105] "t477"  "t478"  "t730"  "t731"  "t997"  "t998"  "t944"  "t699" 
##  [113] "t177"  "t310"  "t799"  "t800"  "t832"  "t855"  "t856"  "t560" 
##  [121] "t628"  "t629"  "t116"  "t117"  "t542"  "t738"  "t739"  "t638" 
##  [129] "t138"  "t336"  "t751"  "t752"  "t480"  "t481"  "t299"  "t300" 
##  [137] "t28"   "t215"  "t216"  "t801"  "t802"  "t540"  "t541"  "t13"  
##  [145] "t25"   "t132"  "t133"  "t85"   "t569"  "t570"  "t86"   "t31"  
##  [153] "t120"  "t142"  "t278"  "t279"  "t119"  "t396"  "t397"  "t182" 
##  [161] "t342"  "t450"  "t691"  "t692"  "t989"  "t990"  "t221"  "t332" 
##  [169] "t333"  "t73"   "t616"  "t617"  "t889"  "t890"  "t379"  "t9"   
##  [177] "t21"   "t210"  "t260"  "t261"  "t504"  "t505"  "t222"  "t223" 
##  [185] "t151"  "t853"  "t854"  "t51"   "t426"  "t427"  "t24"   "t2"   
##  [193] "t503"  "t556"  "t557"  "t5"    "t620"  "t621"  "t175"  "t176" 
##  [201] "t865"  "t866"  "t54"   "t121"  "t122"  "t69"   "t639"  "t640" 
##  [209] "t198"  "t822"  "t823"  "t253"  "t26"   "t245"  "t604"  "t605" 
##  [217] "t491"  "t492"  "t672"  "t673"  "t96"   "t525"  "t582"  "t766" 
##  [225] "t767"  "t553"  "t734"  "t735"  "t513"  "t572"  "t573"  "t516" 
##  [233] "t517"  "t84"   "t282"  "t283"  "t247"  "t248"  "t421"  "t422" 
##  [241] "t104"  "t849"  "t850"  "t637"  "t357"  "t269"  "t740"  "t741" 
##  [249] "t917"  "t918"  "t736"  "t423"  "t764"  "t765"  "t857"  "t858" 
##  [257] "t29"   "t19"   "t785"  "t786"  "t94"   "t789"  "t790"  "t643" 
##  [265] "t644"  "t36"   "t166"  "t726"  "t727"  "t826"  "t827"  "t596" 
##  [273] "t345"  "t380"  "t381"  "t190"  "t191"  "t350"  "t351"  "t137" 
##  [281] "t897"  "t898"  "t227"  "t975"  "t976"  "t974"  "t899"  "t900" 
##  [289] "t167"  "t930"  "t931"  "t313"  "t314"  "t254"  "t255"  "t160" 
##  [297] "t774"  "t928"  "t929"  "t482"  "t581"  "t608"  "t609"  "t158" 
##  [305] "t606"  "t607"  "t416"  "t74"   "t75"   "t66"   "t42"   "t334" 
##  [313] "t335"  "t208"  "t209"  "t159"  "t246"  "t274"  "t787"  "t788" 
##  [321] "t67"   "t938"  "t939"  "t465"  "t544"  "t545"  "t816"  "t817" 
##  [329] "t192"  "t275"  "t276"  "t95"   "t11"   "t493"  "t494"  "t83"  
##  [337] "t838"  "t839"  "t536"  "t537"  "t354"  "t388"  "t777"  "t778" 
##  [345] "t527"  "t320"  "t39"   "t57"   "t550"  "t658"  "t659"  "t184" 
##  [353] "t424"  "t425"  "t371"  "t775"  "t776"  "t369"  "t207"  "t463" 
##  [361] "t464"  "t749"  "t750"  "t518"  "t936"  "t937"  "t126"  "t107" 
##  [369] "t374"  "t375"  "t270"  "t432"  "t433"  "t178"  "t759"  "t760" 
##  [377] "t861"  "t862"  "t391"  "t392"  "t65"   "t88"   "t157"  "t947" 
##  [385] "t948"  "t641"  "t871"  "t872"  "t323"  "t438"  "t439"  "t376" 
##  [393] "t45"   "t46"   "t599"  "t761"  "t762"  "t230"  "t231"  "t364" 
##  [401] "t365"  "t287"  "t259"  "t995"  "t996"  "t124"  "t125"  "t1"   
##  [409] "t563"  "t564"  "t92"   "t587"  "t588"  "t128"  "t263"  "t264" 
##  [417] "t962"  "t963"  "t595"  "t718"  "t719"  "t127"  "t129"  "t130" 
##  [425] "t22"   "t201"  "t514"  "t515"  "t434"  "t437"  "t585"  "t586" 
##  [433] "t131"  "t61"   "t62"   "t934"  "t935"  "t567"  "t172"  "t650" 
##  [441] "t651"  "t574"  "t575"  "t403"  "t281"  "t271"  "t324"  "t325" 
##  [449] "t293"  "t663"  "t664"  "t224"  "t225"  "t343"  "t344"  "t12"  
##  [457] "t35"   "t105"  "t233"  "t309"  "t909"  "t910"  "t705"  "t706" 
##  [465] "t632"  "t633"  "t268"  "t783"  "t784"  "t444"  "t445"  "t150" 
##  [473] "t484"  "t485"  "t228"  "t241"  "t242"  "t668"  "t669"  "t820" 
##  [481] "t821"  "t405"  "t406"  "t404"  "t213"  "t214"  "t487"  "t488" 
##  [489] "t234"  "t235"  "t469"  "t715"  "t716"  "t688"  "t418"  "t402" 
##  [497] "t327"  "t945"  "t946"  "t562"  "t284"  "t308"  "t561"  "t882" 
##  [505] "t883"  "t355"  "t114"  "t262"  "t954"  "t955"  "t407"  "t272" 
##  [513] "t273"  "t970"  "t971"  "t654"  "t689"  "t690"  "t772"  "t773" 
##  [521] "t636"  "t149"  "t47"   "t497"  "t498"  "t38"   "t983"  "t984" 
##  [529] "t322"  "t41"   "t410"  "t411"  "t16"   "t859"  "t860"  "t243" 
##  [537] "t186"  "t187"  "t146"  "t147"  "t474"  "t475"  "t212"  "t169" 
##  [545] "t63"   "t168"  "t301"  "t302"  "t200"  "t3"    "t589"  "t590" 
##  [553] "t810"  "t811"  "t627"  "t508"  "t258"  "t252"  "t442"  "t443" 
##  [561] "t106"  "t828"  "t829"  "t568"  "t630"  "t631"  "t385"  "t386" 
##  [569] "t93"   "t720"  "t721"  "t337"  "t338"  "t318"  "t148"  "t298" 
##  [577] "t489"  "t490"  "t139"  "t140"  "t7"    "t179"  "t180"  "t30"  
##  [585] "t20"   "t40"   "t220"  "t232"  "t486"  "t684"  "t685"  "t56"  
##  [593] "t303"  "t304"  "t529"  "t530"  "t647"  "t952"  "t953"  "t543" 
##  [601] "t398"  "t399"  "t34"   "t459"  "t803"  "t804"  "t737"  "t408" 
##  [609] "t471"  "t538"  "t539"  "t417"  "t818"  "t819"  "t236"  "t170" 
##  [617] "t249"  "t382"  "t383"  "t87"   "t808"  "t809"  "t457"  "t118" 
##  [625] "t143"  "t893"  "t894"  "t528"  "t779"  "t780"  "t729"  "t979" 
##  [633] "t980"  "t330"  "t509"  "t510"  "t960"  "t961"  "t949"  "t317" 
##  [641] "t346"  "t347"  "t341"  "t452"  "t521"  "t830"  "t831"  "t660" 
##  [649] "t755"  "t756"  "t551"  "t552"  "t867"  "t868"  "t377"  "t873" 
##  [657] "t874"  "t466"  "t467"  "t152"  "t431"  "t768"  "t769"  "t111" 
##  [665] "t112"  "t702"  "t703"  "t956"  "t957"  "t634"  "t370"  "t27"  
##  [673] "t558"  "t559"  "t144"  "t879"  "t880"  "t458"  "t576"  "t577" 
##  [681] "t972"  "t973"  "t226"  "t153"  "t460"  "t461"  "t924"  "t925" 
##  [689] "t615"  "t991"  "t992"  "t110"  "t33"   "t506"  "t507"  "t15"  
##  [697] "t676"  "t677"  "t915"  "t916"  "t101"  "t64"   "t339"  "t340" 
##  [705] "t80"   "t81"   "t102"  "t103"  "t674"  "t675"  "t619"  "t472" 
##  [713] "t473"  "t932"  "t933"  "t905"  "t906"  "t753"  "t711"  "t712" 
##  [721] "t113"  "t483"  "t911"  "t912"  "t797"  "t798"  "t211"  "t495" 
##  [729] "t496"  "t164"  "t217"  "t523"  "t524"  "t895"  "t896"  "t886" 
##  [737] "t695"  "t696"  "t535"  "t919"  "t920"  "t717"  "t642"  "t188" 
##  [745] "t328"  "t329"  "t218"  "t219"  "t700"  "t701"  "t742"  "t743" 
##  [753] "t781"  "t782"  "t754"  "t618"  "t678"  "t679"  "t600"  "t601" 
##  [761] "t244"  "t652"  "t653"  "t597"  "t598"  "t414"  "t378"  "t833" 
##  [769] "t834"  "t289"  "t82"   "t655"  "t656"  "t479"  "t413"  "t697" 
##  [777] "t698"  "t37"   "t926"  "t927"  "t356"  "t359"  "t360"  "t43"  
##  [785] "t44"   "t368"  "t501"  "t502"  "t744"  "t745"  "t361"  "t661" 
##  [793] "t662"  "t593"  "t594"  "t446"  "t447"  "t428"  "t429"  "t462" 
##  [801] "t522"  "t805"  "t966"  "t967"  "t315"  "t693"  "t694"  "t840" 
##  [809] "t841"  "t123"  "t239"  "t240"  "t77"   "t78"   "t6"    "t154" 
##  [817] "t602"  "t603"  "t387"  "t430"  "t578"  "t863"  "t864"  "t237" 
##  [825] "t238"  "t199"  "t79"   "t415"  "t622"  "t950"  "t951"  "t68"  
##  [833] "t713"  "t714"  "t985"  "t986"  "t657"  "t409"  "t100"  "t579" 
##  [841] "t580"  "t549"  "t968"  "t969"  "t746"  "t747"  "t296"  "t297" 
##  [849] "t611"  "t612"  "t256"  "t419"  "t420"  "t76"   "t162"  "t163" 
##  [857] "t10"   "t17"   "t533"  "t534"  "t174"  "t940"  "t941"  "t171" 
##  [865] "t666"  "t667"  "t842"  "t843"  "t58"   "t189"  "t869"  "t870" 
##  [873] "t134"  "t135"  "t98"   "t99"   "t326"  "t384"  "t793"  "t794" 
##  [881] "t847"  "t848"  "t395"  "t981"  "t982"  "t277"  "t412"  "t887" 
##  [889] "t888"  "t546"  "t884"  "t885"  "t680"  "t681"  "t136"  "t362" 
##  [897] "t363"  "t565"  "t566"  "t181"  "t183"  "t348"  "t349"  "t613" 
##  [905] "t614"  "t267"  "t623"  "t624"  "t145"  "t977"  "t978"  "t835" 
##  [913] "t547"  "t548"  "t824"  "t825"  "t907"  "t908"  "t571"  "t903" 
##  [921] "t904"  "t836"  "t837"  "t48"   "t321"  "t891"  "t892"  "t763" 
##  [929] "t32"   "t97"   "t901"  "t902"  "t470"  "t476"  "t554"  "t555" 
##  [937] "t845"  "t846"  "t844"  "t709"  "t710"  "t292"  "t728"  "t964" 
##  [945] "t965"  "t389"  "t390"  "t71"   "t290"  "t291"  "t511"  "t512" 
##  [953] "t18"   "t648"  "t649"  "t311"  "t312"  "t155"  "t156"  "t851" 
##  [961] "t852"  "t748"  "t791"  "t792"  "t205"  "t206"  "t50"   "t141" 
##  [969] "t942"  "t943"  "t583"  "t584"  "t89"   "t453"  "t454"  "t732" 
##  [977] "t733"  "t806"  "t807"  "t526"  "t440"  "t441"  "t196"  "t197" 
##  [985] "t52"   "t53"   "t372"  "t373"  "t49"   "t55"   "t265"  "t266" 
##  [993] "t23"   "t812"  "t813"  "t448"  "t449"  "t165"  "t294"  "t295"

Vc pode notar que em terminais temos todos os nomes das espécies da filogenia. Agora podemos fazer amostras aleatórias desdes nomes para serem podados.

del10<-sample(terminais, 100) # uma amostra aleatória de 10% das espécies (100 das 1000) e assim por diante.
del20<-sample(terminais, 200)
del30<-sample(terminais, 300)
del40<-sample(terminais, 400)
del50<-sample(terminais, 500)
del60<-sample(terminais, 600)
del70<-sample(terminais, 700)
del80<-sample(terminais, 800)
del90<-sample(terminais, 900)

Agora podemos podar estas espécies e calcular as diversidades filogenéticas

treedel10<-drop.tip(tr, del10)
treedel20<-drop.tip(tr, del20)
treedel30<-drop.tip(tr, del30)
treedel40<-drop.tip(tr, del40)
treedel50<-drop.tip(tr, del50)
treedel60<-drop.tip(tr, del60)
treedel70<-drop.tip(tr, del70)
treedel80<-drop.tip(tr, del80)
treedel90<-drop.tip(tr, del90)

divfilo(treedel10)
## [1] 922.2292
divfilo(treedel20)
## [1] 847.834
divfilo(treedel30)
## [1] 805.3763
divfilo(treedel40)
## [1] 760.7609
divfilo(treedel50)
## [1] 669.6512
divfilo(treedel60)
## [1] 595.2575
divfilo(treedel70)
## [1] 490.856
divfilo(treedel80)
## [1] 390.1199
divfilo(treedel90)
## [1] 246.0758

Podemos fazer um gráfico para visualizar isso melhor.

diversidade_filogenetica<-c(divfilo(treedel10),divfilo(treedel20),divfilo(treedel30),divfilo(treedel40),divfilo(treedel50),divfilo(treedel60),divfilo(treedel70),divfilo(treedel80),divfilo(treedel90))
extincoes<-c(10,20,30,40,50,60,70,80,90)
plot(diversidade_filogenetica, extincoes, type="l")

Exercícios para serem entregues:

  1. Explique em suas palavras o conceito de diversidade filogenética.
  2. Com base nos resultados da prática, discuta como a extinção de espécies afeta a diversidade filogenética em um dado clado.