From a3d19d22c1e35d6a436c4ad3bd9a7bd0966b57fa Mon Sep 17 00:00:00 2001 From: Luke Zappia <lazappi@users.noreply.github.com> Date: Wed, 14 Aug 2019 13:59:59 +1000 Subject: [PATCH] Fix bug in selectFit Handle missing (not NA) AIC values --- DESCRIPTION | 4 ++-- NEWS.md | 4 ++++ R/splotch-estimate.R | 8 ++++++-- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index b2a14bf..237c3be 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,8 +1,8 @@ Package: splatter Type: Package Title: Simple Simulation of Single-cell RNA Sequencing Data -Version: 1.9.3.9006 -Date: 2019-08-13 +Version: 1.9.3.9007 +Date: 2019-08-14 Author: Luke Zappia Authors@R: c(person("Luke", "Zappia", role = c("aut", "cre"), diff --git a/NEWS.md b/NEWS.md index eec7a01..325e91f 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,7 @@ +### Version 1.9.3.9007 (2019-08-14) + +* Fix bug in selectFit + ### Version 1.9.3.9006 (2019-08-13) * Add splotchEstimate function diff --git a/R/splotch-estimate.R b/R/splotch-estimate.R index 93f7996..7e3230f 100644 --- a/R/splotch-estimate.R +++ b/R/splotch-estimate.R @@ -164,10 +164,14 @@ selectFit <- function(data, distr, weights = NULL, verbose = TRUE) { } aics <- fitdistrplus::gofstat(fits)$aic - selected <- which(aics == min(aics, na.rm = TRUE)) + # Flatten in case aics is a list + aics.flat <- unlist(aics) + selected <- which(aics.flat == min(aics.flat, na.rm = TRUE)) if (verbose) { - message("Selected ", names(fits)[selected], " fit using AIC") + # Work around to get name in case aics is a list + name <- names(fits)[names(aics) == names(aics.flat)[selected]] + message("Selected ", name, " fit using AIC") } return(fits[[selected]]) -- GitLab