From b55d182be08c61a155848cab74c537acef7e2c3f Mon Sep 17 00:00:00 2001 From: Francois Michonneau Date: Tue, 6 Dec 2016 14:43:45 -0500 Subject: [PATCH] refactor to use dplyr --- R/idig_search.R | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/R/idig_search.R b/R/idig_search.R index 877cbad..6ec9181 100644 --- a/R/idig_search.R +++ b/R/idig_search.R @@ -99,20 +99,25 @@ idig_search <- function(type="records", mq=FALSE, rq=FALSE, fields=FALSE, " results. This functionality is currently disabled.", " Please see https://github.com/iDigBio/ridigbio/issues/33")) } - - dat <- plyr::rbind.fill(dat, fmt_search_txt_to_df(search_results, fields)) - query$offset <- nrow(dat) + dat[[i]] <- fmt_search_txt_to_df(search_results, fields) + n_res <- n_res + nrow(dat[[i]]) + + query$offset <- n_res if (limit > 0){ - query$limit <- limit - nrow(dat) + query$limit <- limit - n_res } + i <- i + 1 } + dat_template <- data.frame(rep(list(logical(0)), length(fields)), + stringsAsFactors = FALSE) + names(dat_template) <- fields + dat <- dplyr::bind_rows(dat_template, dat) + # Metadata as attributes on the df - a <- attributes(dat) - a[["itemCount"]] <- item_count - a[["attribution"]] <- fmt_search_txt_to_attribution(search_results) - attributes(dat) <- a + attr(dat, "itemCount") <- item_count + attr(dat, "attribution") <- fmt_search_txt_to_attribution(search_results) dat }