From eb488e4635232fc421a9e5594ecd64913303bf08 Mon Sep 17 00:00:00 2001 From: jsadler2 Date: Tue, 14 Dec 2021 17:09:28 -0600 Subject: [PATCH] [#27] variable target output location --- 1_fetch.R | 10 +++++----- 2_process.R | 4 ++-- 3_visualize.R | 16 ++++++++-------- _targets.R | 15 ++++++++++----- 4 files changed, 25 insertions(+), 20 deletions(-) diff --git a/1_fetch.R b/1_fetch.R index 520499de..971a04aa 100644 --- a/1_fetch.R +++ b/1_fetch.R @@ -15,7 +15,7 @@ p1_targets_list <- list( # Load harmonized WQP data product for discrete samples tar_target( p1_wqp_data, - fetch_harmonized_wqp_data("1_fetch/out")), + fetch_harmonized_wqp_data(file.path(run_dir, "1_fetch/out"))), # Identify NWIS sites with DO data tar_target( @@ -41,7 +41,7 @@ p1_targets_list <- list( tar_target( p1_daily_data_csv, - write_to_csv(p1_daily_data, outfile="1_fetch/out/daily_do_data.csv"), + write_to_csv(p1_daily_data, outfile=file.path(run_dir, "1_fetch/out/daily_do_data.csv")), format = "file"), # Subset NWIS sites with sub-daily data @@ -59,7 +59,7 @@ p1_targets_list <- list( tar_target( p1_inst_data_csv, - write_to_csv(p1_inst_data, outfile="1_fetch/out/inst_do_data.csv"), + write_to_csv(p1_inst_data, outfile=file.path(run_dir, "1_fetch/out/inst_do_data.csv")), format = "file" ), @@ -77,7 +77,7 @@ p1_targets_list <- list( tar_target( p1_reaches_shp_unzipped, - {shapedir = "1_fetch/out/study_stream_reaches" + {shapedir = file.path(run_dir, "1_fetch/out/study_stream_reaches") unzip(p1_reaches_shp_zip, exdir = shapedir)}, format = "file" ), @@ -90,7 +90,7 @@ p1_targets_list <- list( # fetch prms met data tar_target( p1_prms_met_data_zip_file, - fetch_prms_met_data("1_fetch/out", "sntemp_inputs_outputs_drb.zip"), + fetch_prms_met_data(file.path(run_dir, "1_fetch/out"), "sntemp_inputs_outputs_drb.zip"), format = "file"), # unzip prms met data diff --git a/2_process.R b/2_process.R index 4dbff494..1c3dd6fe 100644 --- a/2_process.R +++ b/2_process.R @@ -45,7 +45,7 @@ p2_targets_list <- list( tar_target( p2_sites_w_segs_csv, - write_to_csv(p2_sites_w_segs, "2_process/out/site_w_seg_ids.csv") + write_to_csv(p2_sites_w_segs, file.path(run_dir, "2_process/out/site_w_seg_ids.csv")) ), tar_target( @@ -58,7 +58,7 @@ p2_targets_list <- list( tar_target( p2_daily_with_seg_ids_csv, - write_to_csv(p2_daily_with_seg_ids, "2_process/out/daily_do_data.csv"), + write_to_csv(p2_daily_with_seg_ids, file.path(run_dir, "2_process/out/daily_do_data.csv")), format = "file" ) diff --git a/3_visualize.R b/3_visualize.R index f0938717..f5e300fa 100644 --- a/3_visualize.R +++ b/3_visualize.R @@ -6,18 +6,18 @@ p3_targets_list <- list( # Plot daily data tar_target(p3_daily_timeseries_png, - plot_daily_data(sprintf("3_visualize/out/daily_timeseries_png/daily_data_%s.png",unique(p1_daily_data$site_no)),p1_daily_data), + plot_daily_data(file.path(run_dir, sprintf("3_visualize/out/daily_timeseries_png/daily_data_%s.png",unique(p1_daily_data$site_no))),p1_daily_data), format = "file", pattern = map(p1_daily_data)), # Plot instantaneous data (hourly averages) tar_target(p3_hourly_timeseries_png, - plot_inst_data(sprintf("3_visualize/out/hourly_timeseries_png/hourly_data_%s.png",unique(p2_inst_data_hourly$site_no)),p2_inst_data_hourly), + plot_inst_data(file.path(run_dir, sprintf("3_visualize/out/hourly_timeseries_png/hourly_data_%s.png",unique(p2_inst_data_hourly$site_no))),p2_inst_data_hourly), format = "file", pattern = map(p2_inst_data_hourly)), # Render data summary report (report target has format = "file") - tarchetypes::tar_render(p3_wqp_spC_report, "3_visualize/src/report-do-inventory.Rmd",output_dir = "3_visualize/out"), + tarchetypes::tar_render(p3_wqp_spC_report, "3_visualize/src/report-do-inventory.Rmd",output_dir = file.path(run_dir, "3_visualize/out")), tar_target(p3_do_plot_python_file, "3_visualize/src/do_overview_plots.py", @@ -28,11 +28,11 @@ p3_targets_list <- list( plot_do_overview(p3_do_plot_python_file, p1_daily_data_csv, p1_inst_data_csv, - filesout=c("3_visualize/out/inst_daily_means.jpg", - "3_visualize/out/daily_daily_means.jpg", - "3_visualize/out/doy_means.jpg", - "3_visualize/out/filtered_daily_means.jpg", - "3_visualize/out/filtered_inst_means.jpg")), + filesout=c(file.path(run_dir, "3_visualize/out/inst_daily_means.jpg"), + file.path(run_dir, "3_visualize/out/daily_daily_means.jpg"), + file.path(run_dir, "3_visualize/out/doy_means.jpg"), + file.path(run_dir, "3_visualize/out/filtered_daily_means.jpg"), + file.path(run_dir, "3_visualize/out/filtered_inst_means.jpg"))), format = "file" ) ) diff --git a/_targets.R b/_targets.R index 808ad3b4..b76a8a91 100644 --- a/_targets.R +++ b/_targets.R @@ -7,11 +7,16 @@ source("1_fetch.R") source("2_process.R") source("3_visualize.R") -dir.create("1_fetch/out/", showWarnings = FALSE) -dir.create("2_process/out/", showWarnings = FALSE) -dir.create("3_visualize/out/", showWarnings = FALSE) -dir.create("3_visualize/out/daily_timeseries_png/",showWarnings = FALSE) -dir.create("3_visualize/out/hourly_timeseries_png/",showWarnings = FALSE) +run_dir <- targets::tar_config_get("store") +if (run_dir == "_targets"){ + run_dir <- getwd() +} + +dir.create(file.path(run_dir, "1_fetch/out/"), showWarnings = FALSE) +dir.create(file.path(run_dir, "2_process/out/"), showWarnings = FALSE) +dir.create(file.path(run_dir, "3_visualize/out/"), showWarnings = FALSE) +dir.create(file.path(run_dir, "3_visualize/out/daily_timeseries_png/"),showWarnings = FALSE) +dir.create(file.path(run_dir, "3_visualize/out/hourly_timeseries_png/"),showWarnings = FALSE) # Define columns of interest from harmonized WQP data wqp_vars_select <- c("MonitoringLocationIdentifier","MonitoringLocationName","LongitudeMeasure","LatitudeMeasure",