Skip to contents

Pacote de uso interno do laboratório Nupgen DBC/Nupélia

Instalação

Você pode instalar o pacote nupgen direto do Github usando:

# install.packages("remotes")
remotes::install_github("brunomioto/nupgen")

Uso

Renomear arquivos PHYLIP com label_phy()

library(nupgen)
library(ape)

#carrega arquivo FASTA (que possui os nomes corretos)
seq <- ape::read.FASTA("sequencia_fasta.fas")
#carrega arquivo .nwk (que possui os nomes cortados)
tree <- ape::read.tree("arvore.nwk")

#Função para renomear tip labels da árvore
new_tree <- label_phy(seq, tree)

#Confere se os novos nomes estão certos
new_tree$tip.label

#Salva em um novo arquivo .nwk
ape::write.tree(new_tree, "nova_tree.nwk")

Obter informações de sequências do GenBank com info_genbank()

As informações buscadas são:

  • Código do GenBank
  • Nome do organismo
  • País de origem (pode conter mais informações)
  • Latitude
  • Longitude
  • Gene
library(nupgen)

ayla <- info_genbank(organism = "Aylacostoma brunneum[Organism]")

ayla %>% 
  head()
#> # A tibble: 6 × 6
#>   code     organism             country    lat   lon gene 
#>   <chr>    <chr>                <chr>    <dbl> <dbl> <chr>
#> 1 KU168373 Aylacostoma brunneum Paraguay -27.4 -55.8 <NA> 
#> 2 JQ236704 Aylacostoma brunneum Paraguay -27.4 -55.8 COI  
#> 3 KU168375 Aylacostoma brunneum Paraguay -27.4 -55.8 <NA> 
#> 4 JQ236705 Aylacostoma brunneum Paraguay -27.4 -55.8 COI  
#> 5 KF918858 Aylacostoma brunneum Paraguay -27.4 -55.8 cytb 
#> 6 JQ236703 Aylacostoma brunneum Paraguay -27.4 -55.8 COI

Formatar resultados da Delimitação de Espécies do PTP (ou bPTP) com ptp_results()

Copie os resultados do PTP e salve como um vetor (Só abrir aspas e colar todo o resultado)

vetor_ptp <- "# Max likilhood partition 
Species 1 (support = 0.329)
     MZ051026_Characidium_pellucidum_voucher_SU08-1290,MZ051108_Characidium_pellucidum_voucher_SU08-1290_4,MZ051140_Characidium_pellucidum_voucher_SU08-1290_3

Species 2 (support = 0.668)
     MG936837_Characidium_marshi_voucher_stri-3611,MG936835_Characidium_marshi_voucher_stri-11821,MG936836_Characidium_marshi_voucher_stri-4069,MG936834_Characidium_marshi_voucher_stri-6730

Species 3 (support = 0.738)
     KU288836_Characidium_rachovii_voucher_MG_ZV-P_172-2,JX111702_Characidium_rachovii_voucher_UNMDP-T_0289,KU288852_Characidium_rachovii_voucher_MG_ZV-P_172-3,KU288835_Characidium_rachovii_voucher_MG_ZV-P_172-1,KU288853_Characidium_rachovii_voucher_MG_ZV-P_172-4,KU288854_Characidium_rachovii_voucher_MG_ZV-P_172-5,KU289033_Characidium_rachovii_voucher_MG_ZV-P_309

Species 4 (support = 0.188)
     MK464095_Characidium_zebra_isolate_JCB77,MK464130_Characidium_zebra_isolate_JCB286,MK464156_Characidium_zebra_isolate_JCB354,MK464155_Characidium_zebra_isolate_JCB352,MK464153_Characidium_zebra_isolate_JCB349,MK464093_Characidium_zebra_isolate_JCB70,MK464047_Characidium_fasciatum_isolate_CIUnB884_a,MK464134_Characidium_zebra_isolate_JCB298,MK464048_Characidium_fasciatum_isolate_CIUnB884_b,MK464137_Characidium_zebra_isolate_JCB311,MK464135_Characidium_zebra_isolate_JCB299,MK464092_Characidium_zebra_isolate_JCB69,MK464125_Characidium_zebra_isolate_JCB220,MK464040_Characidium_zebra_isolate_CIUnB846_2,MK464152_Characidium_zebra_isolate_JCB348,MK464138_Characidium_zebra_isolate_JCB315,MK464131_Characidium_zebra_isolate_JCB287,MK464126_Characidium_zebra_isolate_JCB221,MK464139_Characidium_zebra_isolate_JCB316,MK464154_Characidium_zebra_isolate_JCB351,MK464094_Characidium_zebra_isolate_JCB76,MK464039_Characidium_zebra_isolate_CIUnB846_1,MK464132_Characidium_zebra_isolate_JCB294,MK464133_Characidium_zebra_isolate_JCB297,MK464140_Characidium_zebra_isolate_JCB317
"

Depois, utilize esse vetor dentro da função ptp_results()

ptp_results(vetor_ptp)
#> # A tibble: 39 × 2
#>    label                                               species
#>    <chr>                                               <chr>  
#>  1 MZ051026_Characidium_pellucidum_voucher_SU08-1290   1      
#>  2 MZ051108_Characidium_pellucidum_voucher_SU08-1290_4 1      
#>  3 MZ051140_Characidium_pellucidum_voucher_SU08-1290_3 1      
#>  4 MG936837_Characidium_marshi_voucher_stri-3611       2      
#>  5 MG936835_Characidium_marshi_voucher_stri-11821      2      
#>  6 MG936836_Characidium_marshi_voucher_stri-4069       2      
#>  7 MG936834_Characidium_marshi_voucher_stri-6730       2      
#>  8 KU288836_Characidium_rachovii_voucher_MG_ZV-P_172-2 3      
#>  9 JX111702_Characidium_rachovii_voucher_UNMDP-T_0289  3      
#> 10 KU288852_Characidium_rachovii_voucher_MG_ZV-P_172-3 3      
#> # ℹ 29 more rows

Formatar resultados da análise de haplótipos do DNAsp com hap_results()

Copie os resultados análise de haplótipos do DNAsp e salve como um vetor (Só abrir aspas e colar a parte dos resultados que contém os haplótipos e nome das sequências)

vetor_hap <- "    Hap_1: 1  [ANGBF36849-19|Eigenmannia_viresc]
    Hap_2: 1  [ANGBF36850-19|Eigenmannia_viresc]
    Hap_3: 2  [ANGBF56488-19|Eigenmannia_trilin BFFDF015-19|Eigenmannia_trilinea]
    Hap_4: 2  [BSB261-10|Eigenmannia_virescens| BSB264-10|Eigenmannia_virescens|]
    Hap_5: 2  [BSB262-10|Eigenmannia_virescens| BSB260-10|Eigenmannia_virescens|]
    Hap_6: 1  [BSB263-10|Eigenmannia_virescens|]
    Hap_7: 4  [BSFFA646-07|Eigenmannia_humboldt BSFFA647-07|Eigenmannia_humboldt ANGBF36843-19|Eigenmannia_humbol ANGBF36844-19|Eigenmannia_humbol]
    Hap_8: 1  [CIUA1137-21|Eigenmannia_virescen]
"

Depois, utilize esse vetor dentro da função hap_results()

hap_results(vetor_hap)
#> # A tibble: 14 × 2
#>    haplotype seq                             
#>    <chr>     <chr>                           
#>  1 1         ANGBF36849-19|Eigenmannia_viresc
#>  2 2         ANGBF36850-19|Eigenmannia_viresc
#>  3 3         ANGBF56488-19|Eigenmannia_trilin
#>  4 3         BFFDF015-19|Eigenmannia_trilinea
#>  5 4         BSB261-10|Eigenmannia_virescens|
#>  6 4         BSB264-10|Eigenmannia_virescens|
#>  7 5         BSB262-10|Eigenmannia_virescens|
#>  8 5         BSB260-10|Eigenmannia_virescens|
#>  9 6         BSB263-10|Eigenmannia_virescens|
#> 10 7         BSFFA646-07|Eigenmannia_humboldt
#> 11 7         BSFFA647-07|Eigenmannia_humboldt
#> 12 7         ANGBF36843-19|Eigenmannia_humbol
#> 13 7         ANGBF36844-19|Eigenmannia_humbol
#> 14 8         CIUA1137-21|Eigenmannia_virescen

Selecionar sequencias únicas de cada haplotipo com select_seqs_by_hap()

Copie os resultados análise de haplótipos do DNAsp e salve como um vetor (Só abrir aspas e colar a parte dos resultados que contém os haplótipos e nome das sequências).

Carregue o alinhamento (usando ape::read.FASTA()) e salve como um objeto

Depois, utilize o vetor e o alinhamento dentro da função select_seqs_by_hap()

selected_seqs <- select_seqs_by_hap(haps, seqs)

Por fim, salve o alinhamento com as sequências selecionadas utilizando ape::write.FASTA()