From b2402ea9972430a7b30fdc6bcc8daa9b0be7e49b Mon Sep 17 00:00:00 2001 From: Elias Projahn Date: Wed, 20 Oct 2021 11:20:20 +0200 Subject: [PATCH] Compute n_species dynamically --- data.R | 1 - server.R | 11 ++++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/data.R b/data.R index 4b47863..71ecb11 100644 --- a/data.R +++ b/data.R @@ -65,7 +65,6 @@ genes <- geposan::genes[, .( id, name, chromosome, - n_species, suggested = name %chin% genes_suggested_tpe_old, verified = name %chin% genes_verified_tpe_old )] diff --git a/server.R b/server.R index a102e15..df95a8e 100644 --- a/server.R +++ b/server.R @@ -69,8 +69,17 @@ server <- function(input, output, session) { by.y = "id" ) + # Count included species from the preset per gene. + genes_n_species <- distances[ + species %chin% preset$species_ids, + .(n_species = .N), + by = "gene" + ] + + setkey(genes_n_species, gene) + # Exclude genes with too few species. - results[n_species >= input$n_species] + results[genes_n_species[gene, n_species] >= input$n_species] }) # Rank the results.