Skip to content

Commit 21c80a1

Browse files
committed
merge qs2 branch; closes #84
1 parent 4897394 commit 21c80a1

File tree

12 files changed

+29
-21
lines changed

12 files changed

+29
-21
lines changed

R/SimCheck.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ SimCheck <- function(dir = NULL, files = NULL, min = 1L, max = NULL){
5454
files <- paste0(dir, files)
5555
filename <- strsplit(files[1], '-')[[1L]][1L]
5656
if(is.null(max)){
57-
tmp <- readRDS(files[1])
57+
tmp <- qs2::qd_read(files[1])
5858
max <- attr(tmp, 'extra_info')$number_of_conditions
5959
}
6060
minmax <- min:max

R/SimClean.R

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55
#' Monte Carlo simulation (e.g., remove files and folders which contained bugs/biased results).
66
#'
77
#' @param ... one or more character objects indicating which files to remove. Used to remove
8-
#' \code{.rds} files which were saved with \code{\link{saveRDS}} or when
9-
#' using the \code{filename} input to \code{\link{runSimulation}}
8+
#' temp files that were saved, or for removing specific file names
109
#'
1110
#' @param dirs a character vector indicating which directories to remove
1211
#'

R/SimCollect.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,7 @@ SimCollect <- function(dir=NULL, files = NULL, filename = NULL, simobj=NULL,
243243
readin <- vector('list', length(filenames))
244244
for(i in 1:length(filenames)){
245245
if(i %in% print_when) cat(".")
246-
tmp <- try(readRDS(filenames[i]), TRUE)
246+
tmp <- SimRead(filenames[i])
247247
if(is(tmp, 'try-error'))
248248
stop(c('Could not read file ', filenames[i]))
249249
readin[[i]] <- if(!is.null(select) && length(select) == 1L &&

R/SimResults.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ SimResults <- function(obj, which, prefix = "results-row", wd = getwd(),
105105
stored_Results_list <- vector('list', length(which))
106106
for(i in seq_len(length(which))){
107107
pick <- which(files$file_num == which[i])
108-
stored_Results_list[[i]] <- readRDS(files$files[pick])
108+
stored_Results_list[[i]] <- qs2::qd_read(files$files[pick])
109109
}
110110
design <- SimExtract(obj, 'design')
111111
if(is(stored_Results_list[[1L]]$results, 'data.frame') ||

R/analysis.R

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -185,10 +185,11 @@ Analysis <- function(Functions, condition, condition.row, replications, fixed_ob
185185
if(summarise_asis || store_results){
186186
tabled_results <- toTabledResults(results)
187187
if(save_results){
188+
browser()
188189
tmp <- ifelse(is.null(save_results_filename), 'results-row', save_results_filename)
189190
tmpfilename <- paste0(save_results_dirname,
190-
sprintf('/%s', tmp), ID, '.rds')
191-
saveRDS(list(condition=condition, results=tabled_results),
191+
sprintf('/%s', tmp), ID)
192+
qs2::qd_save(list(condition=condition, results=tabled_results),
192193
file.path(save_results_out_rootdir, tmpfilename))
193194
}
194195
if(summarise_asis) return(tabled_results)
@@ -224,10 +225,10 @@ Analysis <- function(Functions, condition, condition.row, replications, fixed_ob
224225
if(save_results){
225226
tmp <- ifelse(is.null(save_results_filename), 'results-row', save_results_filename)
226227
tmpfilename <- paste0(save_results_dirname,
227-
sprintf('/%s', tmp), ID, '.rds')
228+
sprintf('/%s', tmp), ID)
228229
tmpcondition <- condition
229230
tmpcondition$ID <- NULL
230-
saveRDS(list(condition=tmpcondition, results=results, errors=try_errors,
231+
qs2::qd_save(list(condition=tmpcondition, results=results, errors=try_errors,
231232
error_seeds=try_error_seeds,
232233
warnings=warnings, warning_seeds=warning_message_seeds),
233234
file.path(save_results_out_rootdir, tmpfilename))

R/reSummarise.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ reSummarise <- function(summarise, dir = NULL, files = NULL, results = NULL, Des
157157

158158
for(i in 1L:length(files)){
159159
if(read_files){
160-
inp <- readRDS(files[i])
160+
inp <- SimRead(files[i])
161161
conditions[[i]] <- inp$condition
162162
summ <- if(nargs == 3)
163163
try(summarise(condition=inp$condition, results=inp$results,

R/runArraySimulation.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@
168168
#' res <- runArraySimulation(design=Design, replications=50,
169169
#' generate=Generate, analyse=Analyse,
170170
#' summarise=Summarise, arrayID=arrayID,
171-
#' iseed=iseed, filename='mysim') # saved as 'mysim-1.rds'
171+
#' iseed=iseed, filename='mysim') # saved as 'mysim-1'
172172
#' res
173173
#' SimResults(res) # condition and replication count stored
174174
#'

R/util.R

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,22 +12,23 @@ parent_env_fun <- function(level=2){
1212
ret
1313
}
1414

15-
unique_filename <- function(filename, safe = TRUE, verbose = TRUE){
15+
unique_filename <- function(filename, safe = TRUE, verbose = TRUE,
16+
ext = '.rds'){
1617
if(!is.null(filename) && safe){ #save file
1718
filename <- gsub('.rds', "", filename)
1819
filename0 <- filename
1920
count <- 1L
2021
# create a new file name if old one exists, and throw warning
2122
while(TRUE){
22-
filename <- paste0(filename, '.rds')
23+
filename <- paste0(filename, ext)
2324
if(file.exists(filename)){
2425
filename <- paste0(filename0, '-', count)
2526
count <- count + 1L
2627
} else break
2728
}
2829
if(count > 1L)
2930
if(verbose && safe)
30-
message(paste0('\nWARNING:\n\"', filename0, '.rds\" existed in the working directory.
31+
message(paste0('\nWARNING:\n', filename0, 'existed in the working directory.
3132
Using a unique file name instead.\n'))
3233
}
3334
filename
@@ -1050,3 +1051,11 @@ add_cbind <- function(lst){
10501051
}
10511052
dplyr::as_tibble(ret)
10521053
}
1054+
1055+
SimRead <- function(filename){
1056+
file_ext <- tools::file_ext(filename)
1057+
tmp <- if(tolower(file_ext) == 'rds')
1058+
try(readRDS(filename), TRUE)
1059+
else try(qs2::qd_read(filename), TRUE)
1060+
tmp
1061+
}

man/SimClean.Rd

Lines changed: 1 addition & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

man/runArraySimulation.Rd

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)