vignettes/fisheries_dependent_information_data_call.Rmd
fisheries_dependent_information_data_call.Rmd
The Scientific Fisheries Dependent Information (FDI) database was developed to support the management of fishing effort management regimes. With a transition to area-based multi-annual plans there was an opportunity to both rationalise the data base and move to the collection of an EU wide data set of fishing capacity, effort, landings, and discards. In 2018 the Commission requested the STECF to collect and review data in relation to a newly specified Fisheries Dependent Information Database. Expert working groups (STECF EWG-18-11, STECF 19-11, STECF 20-10) reviewed both the data supplied and the appropriateness of the data call with respect to:
More information is available on the offical data call webpage: https://datacollection.jrc.ec.europa.eu/dc/fdi
Github tag for scripts apply in 2023: 1.1.0
Github 2023 documentation associated:
https://ob7-ird.github.io/acdc/articles/fisheries_dependent_information_data_call.html#version
To compile it on your computer use the following code:
devtools::install_github("OB7-IRD/acdc@v1.1.0",
INSTALL_opts=c("--no-multiarch"))
Specific configuration and parameters is available below:
# setup
library(acdc)
library(furdeb)
config <- configuration_file(path_file = "D:/projets_themes/data_calls/fdi/2023/data/fdi_2023_configuration_file.yml",
silent = TRUE)
# not apply scientific format for number (may cause problems for cwp maniuplation)
scipen_defaut <- options("scipen")
options("scipen" = 100)
# parameters definition ----
period <- as.integer(x = c(2013:2022))
# 1 = PS, 2 = BB and 3 = LL
gear <- as.integer(x = c(1, 2, 3))
# for the French fleet, 1 = France & 41 = Mayotte
flag <- as.integer(x = c(1, 41))
ocean <- c("Atlantic",
"Indian")
program <- as.character(c("fr.ird.referential.ps.common.Program#1239832686262#0.31033946454061234",
"fr.ird.referential.ps.common.Program#1308048349668#0.7314513252652438",
"fr.ird.referential.ps.common.Program#1363095174385#0.011966550987014823",
"fr.ird.referential.ps.common.Program#1373642516190#0.998459307142491"))
# checking
template_checking = TRUE
template_year = as.integer(x = 2023)
# shapes
fao_area_file_path <- "D:/developpement/shapes/FAO_AREAS_CWP_NOCOASTLINE/FAO_AREAS_CWP_NOCOASTLINE.Rdata"
eez_area_file_path <- "D:/developpement/shapes/Intersect_EEZ_IHO_v4_2020/Intersect_EEZ_IHO_v4_2020.Rdata"
cwp_grid_1deg_1deg <- "D:/developpement/shapes/fao_cwp_grid/cwp-grid-map-1deg_x_1deg/cwp-grid-map-1deg_x_1deg.RData"
cwp_grid_5deg_5deg <- "D:/developpement/shapes/fao_cwp_grid/cwp-grid-map-5deg_x_5deg/cwp-grid-map-5deg_x_5deg.RData"
# csv files locations ----
observe_bycatch_path <- file.path(config[["wd_path"]],
"data",
"by_catch")
# databases connections ----
t3_con <- postgresql_dbconnection(db_user = config[["databases_configuration"]][["t3_prod_vmot7"]]$login,
db_password = config[["databases_configuration"]][["t3_prod_vmot7"]]$password,
db_dbname = config[["databases_configuration"]][["t3_prod_vmot7"]]$dbname,
db_host = config[["databases_configuration"]][["t3_prod_vmot7"]]$host,
db_port = config[["databases_configuration"]][["t3_prod_vmot7"]]$port)
balbaya_con <- postgresql_dbconnection(db_user = config[["databases_configuration"]][["balbaya_vmot5"]]$login,
db_password = config[["databases_configuration"]][["balbaya_vmot5"]]$password,
db_dbname = config[["databases_configuration"]][["balbaya_vmot5"]]$dbname,
db_host = config[["databases_configuration"]][["balbaya_vmot5"]]$host,
db_port = config[["databases_configuration"]][["balbaya_vmot5"]]$port)
sardara_con <- postgresql_dbconnection(db_user = config[["databases_configuration"]][["sardara_vmot5"]]$login,
db_password = config[["databases_configuration"]][["sardara_vmot5"]]$password,
db_dbname = config[["databases_configuration"]][["sardara_vmot5"]]$dbname,
db_host = config[["databases_configuration"]][["sardara_vmot5"]]$host,
db_port = config[["databases_configuration"]][["sardara_vmot5"]]$port)
observe_con <- postgresql_dbconnection(db_user = config[["databases_configuration"]][["observe_vmot6"]]$login,
db_password = config[["databases_configuration"]][["observe_vmot6"]]$password,
db_dbname = config[["databases_configuration"]][["observe_vmot6"]]$dbname,
db_host = config[["databases_configuration"]][["observe_vmot6"]]$host,
db_port = config[["databases_configuration"]][["observe_vmot6"]]$port)
Github tag for scripts apply in 2022: 1.0.0
Github 2022 documentation associated:
https://ob7-ird.github.io/acdc/articles/fisheries_dependent_information_data_call.html#version-1
To compile it on your computer use the following code:
devtools::install_github("OB7-IRD/acdc@v1.0.0",
INSTALL_opts=c("--no-multiarch"))
Specific configuration and parameters is available below:
# setup
library(acdc)
library(furdeb)
config <- configuration_file(path_file = "D:\\projets_themes\\data_calls\\fdi\\2022\\data\\fdi_2022_configuration_file.yml",
silent = TRUE)
# not apply scientific format for number (may cause problems for cwp maniuplation)
scipen_defaut <- options("scipen")
options("scipen" = 100)
# parameters definition
period <- as.integer(x = c(2013:2021))
# 1 = PS, 2 = BB and 3 = LL
gear <- as.integer(x = c(1, 2, 3))
# for the French fleet, 1 = France & 41 = Mayotte
flag <- as.integer(x = c(1, 41))
# checking
template_checking = TRUE
template_year = 2022L
# shapes
fao_area_file_path <- "D:\\developpement\\shapes\\FAO_AREAS_CWP_NOCOASTLINE\\FAO_AREAS_CWP_NOCOASTLINE.Rdata"
eez_area_file_path <- "D:\\developpement\\shapes\\Intersect_EEZ_IHO_v4_2020\\Intersect_EEZ_IHO_v4_2020.Rdata"
cwp_grid_1deg_1deg <- "D:\\developpement\\shapes\\fao_cwp_grid\\cwp-cwp-grid-map-1deg_x_1deg\\cwp-grid-map-1deg_x_1deg.Rdata"
cwp_grid_5deg_5deg <- "D:\\developpement\\shapes\\fao_cwp_grid\\cwp-cwp-grid-map-5deg_x_5deg\\cwp-grid-map-5deg_x_5deg.Rdata"
# csv files locations
observe_bycatch_path <- file.path(config[["wd_path"]],
"data",
"by_catch")
observe_discard_path <- file.path(config[["wd_path"]],
"data",
"discards")
# databases connections
t3_con <- postgresql_dbconnection(db_user = config[["databases_configuration"]][["t3_prod_vmot7"]]$login,
db_password = config[["databases_configuration"]][["t3_prod_vmot7"]]$password,
db_dbname = config[["databases_configuration"]][["t3_prod_vmot7"]]$dbname,
db_host = config[["databases_configuration"]][["t3_prod_vmot7"]]$host,
db_port = config[["databases_configuration"]][["t3_prod_vmot7"]]$port)
balbaya_con <- postgresql_dbconnection(db_user = config[["databases_configuration"]][["balbaya_vmot5"]]$login,
db_password = config[["databases_configuration"]][["balbaya_vmot5"]]$password,
db_dbname = config[["databases_configuration"]][["balbaya_vmot5"]]$dbname,
db_host = config[["databases_configuration"]][["balbaya_vmot5"]]$host,
db_port = config[["databases_configuration"]][["balbaya_vmot5"]]$port)
sardara_con <- postgresql_dbconnection(db_user = config[["databases_configuration"]][["sardara_vmot5"]]$login,
db_password = config[["databases_configuration"]][["sardara_vmot5"]]$password,
db_dbname = config[["databases_configuration"]][["sardara_vmot5"]]$dbname,
db_host = config[["databases_configuration"]][["sardara_vmot5"]]$host,
db_port = config[["databases_configuration"]][["sardara_vmot5"]]$port)
The global script process to generate the tables is available below. Be aware that you have the process divided step by step but also at the end through a shortcut function. Use parameters and configuration above in sections related to the year of production.
# process step by step
tablea <- fdi_tablea_catch_summary(balbaya_con = balbaya_con[[2]],
observe_bycatch_path = observe_bycatch_path,
period = period,
gear = gear,
flag = flag,
fao_area_file_path = fao_area_file_path,
eez_area_file_path = eez_area_file_path,
cwp_grid_file_path = cwp_grid_1deg_1deg,
template_checking = template_checking,
template_year = template_year,
table_export_path = config[["output_path"]])
tabled <- fdi_tabled_discard_length(observe_con = observe_con[[2]],
period = period,
ocean = ocean,
program = program,
flag = flag,
fao_area_file_path = fao_area_file_path,
tablea_catch_summary = tablea[["fdi_tables"]][["table_a"]],
template_checking = template_checking,
template_year = template_year,
table_export_path = config[["output_path"]])
tablef <- fdi_tablef_landings_length(balbaya_con = balbaya_con[[2]],
sardara_con = sardara_con[[2]],
t3_con = t3_con[[2]],
period = period,
gear = gear,
flag = flag,
tablea_bycatch_retained = tablea[["ad_hoc_tables"]][["bycatch_retained"]],
tablea_catch_summary = tablea[["fdi_tables"]][["table_a"]],
cwp_grid_file_path = cwp_grid_5deg_5deg,
fao_area_file_path = fao_area_file_path,
template_checking = template_checking,
template_year = template_year,
table_export_path = config[["output_path"]])
tableg <- fdi_tableg_effort(balbaya_con = balbaya_con[[2]],
period = period,
gear = gear,
flag = flag,
fao_area_file_path = fao_area_file_path,
eez_area_file_path = eez_area_file_path,
template_checking = template_checking,
template_year = template_year,
table_export_path = config[["output_path"]])
tableh <- fdi_tableh_landings_rectangle(tablea_bycatch_retained = tablea[["ad_hoc_tables"]][["bycatch_retained"]],
tablea_landing_rectangle = tablea[["ad_hoc_tables"]][["landing_rectangle"]],
template_checking = template_checking,
template_year = template_year,
table_export_path = config[["output_path"]])
tablei <- fdi_tablei_effort_rectangle(tableg_effort_rectangle = tableg[["ad_hoc_tables"]][["effort_rectangle"]],
template_checking = template_checking,
template_year = template_year,
table_export_path = config[["output_path"]])
tablej <- fdi_tablej_capacity(balbaya_con = balbaya_con[[2]],
period = period,
gear = gear,
flag = flag,
fao_area_file_path = fao_area_file_path,
template_checking = template_checking,
template_year = template_year,
table_export_path = config[["output_path"]])
# shortcut function
fdi_tables <- fdi_shortcut_function(balbaya_con = balbaya_con[[2]],
sardara_con = sardara_con[[2]],
t3_con = t3_con[[2]],
observe_con = observe_con[[2]],
period = period,
gear = gear,
flag = flag,
ocean = ocean,
program = program,
observe_bycatch_path = observe_bycatch_path,
fao_area_file_path = fao_area_file_path,
eez_area_file_path = eez_area_file_path,
cwp_grid_1deg_1deg = cwp_grid_1deg_1deg,
cwp_grid_5deg_5deg = cwp_grid_5deg_5deg,
template_checking = template_checking,
template_year = template_year,
table_export_path = config[["output_path"]])
# fdi tables consistency
fdi_checks <- fdi_tables_consistency(tablea = fdi_tables$fdi_tables$table_a,
tabled = fdi_tables$fdi_tables$table_d,
tablef = fdi_tables$fdi_tables$table_f,
tableg = fdi_tables$fdi_tables$table_g,
tableh = fdi_tables$fdi_tables$table_h,
tablei = fdi_tables$fdi_tables$table_i,
tablea_bycatch_retained = fdi_tables$ad_hoc_tables$bycatch_retained)
The table G aims to provide effort summary in specific format. A brief description and explanation of each variable is provided below.
hrsea = hours at sea
totseadays = days at sea
enginepower = engine power
1 ch = 0.73539875 kW
\[ totgtdaysatsea = totseadays * GT \] GT = K.V
K = 0.2 + 0.02 * log10(V))
V = volume in m3
\[ totfishdays = \frac{fishingtime}{dayfishingtime} \] fishingtime = fishing time
dayfishingtime = duration day of fishing, 12 in the Atlantic Ocean and 13 in the Indian Ocean
\[ totkwfishdays = totfishdays * enginepower * 0.73539875 \]
totfishdays = fishing days
enginepower = engine power
1 ch = 0.73539875 kW
\[ totgtfishdays = totfishdays * GT \] totfishdays = fishing days
GT = K.V
K = 0.2 + 0.02 * log10(V))
V = volume in m3
\[ kwhrsea = hrsea * enginepower * 0.73539875 \]
hrsea = hours at sea
enginepower = engine power
1 ch = 0.73539875 kW
\[ gthrsea = hrsea * GT \]
hrsea = hours at sea
GT = K.V
K = 0.2 + 0.02 * log10(V))
V = volume in m3