ДВ
Size: a a a
ДВ
A
A
ДВ
A
ГД
ДВ
S
ГД
ГД
IY
ГД
ГД
IY
IY
IY
IS
S4
, а в subset
IS
subset
использует NSE, причем достаточно криво, ибо subset
рассчитан был исключительно на интерактивное применение.tidyselect
& rlang
3. поскольку тут целая экосистема, написанная подобным образом, то тратить время на разбор идеологически кривого кода нет ни малейшего смысла. подойдет любой паллиатив, включая лом.library(phyloseq)По-хорошему, за такой код в продуктиве отрывают руки или голову. Зависит от размера катастрофы.
library(dplyr)
dfr <- data.frame(group = c("A", "A", "B", "A", "B"), value = 1:5)
conditions <- list(quote(group == "A" & value < 3),
quote(group == "A"),
quote(group == "B"))
OTU <- otu_table(matrix(1:20, ncol = 4), taxa_are_rows = TRUE)
samples <- sample_data(dfr)
mb <- phyloseq(OTU, samples)
lapply(conditions, function(x){eval(parse(text = paste0("subset_samples(mb, ", deparse(x),")")))})
subset
является страшным косяком — можете почитать литературу:base::subset
is bad?base::subset()
really that bad?](https://win-vector.com/2018/02/23/is-r-basesubset-really-that-bad/)[
better than subset
?](https://stackoverflow.com/questions/9860090/why-is-better-than-subset). subset
в п. [Calling from another function]S
IS
subset
категорически запрещен к использованию.