From 787fc40260fc8404f6ce9511adfa18d901cd3af4 Mon Sep 17 00:00:00 2001 From: petermenzies Date: Fri, 2 Sep 2022 16:25:45 -0700 Subject: [PATCH 01/40] added function layers_eez_base_updater.R - automatic formatting edits from devtools::document() --- DESCRIPTION | 3 +- NAMESPACE | 1 + R/layers_eez_base_updater.R | 115 +++++++++++++++++++++++++++++++++ man/CalculateGoalIndex.Rd | 13 +++- man/PlotFlower.Rd | 14 ++-- man/SelectLayersData.Rd | 10 ++- man/collapse_2_rgn.Rd | 8 ++- man/layers_eez_base_updater.Rd | 14 ++++ man/name_2_rgn.Rd | 8 ++- man/rgn_eez_area.Rd | 6 +- man/score_check.Rd | 12 +++- man/sovregion_labels.Rd | 6 +- man/sovregions.Rd | 6 +- 13 files changed, 194 insertions(+), 22 deletions(-) create mode 100644 R/layers_eez_base_updater.R create mode 100644 man/layers_eez_base_updater.Rd diff --git a/DESCRIPTION b/DESCRIPTION index b4c152b..83ece90 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -40,6 +40,7 @@ Collate: 'CheckLayers.R' 'Conf.R' 'Layers.R' + 'layers_eez_base_updater.R' 'PlotFlower.R' 'ScoreScaling.R' 'SelectLayersData.R' @@ -60,5 +61,5 @@ URL: https://github.com/OHI-Science/ohicore BugReports: https://github.com/OHI-Science/ohicore/issues LazyData: TRUE VignetteBuilder: knitr -RoxygenNote: 6.1.1 +RoxygenNote: 7.1.1 Encoding: UTF-8 diff --git a/NAMESPACE b/NAMESPACE index 5853240..d1c2963 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -15,6 +15,7 @@ export(SelectLayersData) export(WriteRefPoint) export(collapse_2_rgn) export(compare_scores_df) +export(layers_eez_base_updater) export(mapvalues) export(name_2_rgn) export(read_git_csv) diff --git a/R/layers_eez_base_updater.R b/R/layers_eez_base_updater.R new file mode 100644 index 0000000..e0ee018 --- /dev/null +++ b/R/layers_eez_base_updater.R @@ -0,0 +1,115 @@ +#' Update layers_eez_base.csv +#' By Peter Menzies +#' +#' Convenient interface for changing directory paths of recently updated layers in layers_eez_base.csv +#' No arguments required - user will be prompted for needed information +#' +#' +#' @keywords ohi +#' @export + + +layers_eez_base_updater <- function() { + + require(here) + require(tidyverse) + + # read in the csv + layers_eez_base <- read_csv(here("metadata_documentation/layers_eez_base.csv"), col_types = cols()) + + # prompt user for current version year + version_year <- paste0("v", readline(prompt = "enter version year: ")) + + # empty vector that will later contain layer names - used in while loop + possible_layers <- c() + + # loop that ends when a viable goal/subgoal abbr is supplied + while (length(possible_layers) == 0) { + + goal <- readline(prompt = "enter the goal / subgoal abbreviation for the layers you're updating: ") %>% + tolower() + + possible_layers <- layers_eez_base$layer[startsWith(layers_eez_base$layer, goal)] + + if (length(possible_layers) == 0) { + message("\nthere are no layers starting with that abbreviation\n") + } + } + + # the component layers of that goal/subgoal are printed below for user's convenience + message("\nthese are the layers associated with that goal:\n") + print(possible_layers) + message("\nif you want to update all of these layers, enter 'all' at the next prompt —") + message("if you are only updating certain ones you can copypaste the layer names above separated by commas\n") + + + # prompt user for layers which have been updated + updated_layers <- str_split(readline(prompt = "enter 'all' or layers separated only by commas: "), ",")[[1]] %>% + str_remove_all(" ") + + if (tolower(updated_layers[1]) == "all") { + updated_layers <- possible_layers + } + + + # loop that executes or repeats if entries don't match any of the layer names in the goal / subgoal + while (length(intersect(updated_layers, possible_layers)) < length(updated_layers)) { + + unknown_layers <- setdiff(updated_layers, possible_layers) + + if (length(unknown_layers) == length(updated_layers)) { + message("\nnone of the layers entered exist in the chosen goal / subgoal\n") + } else if (length(unknown_layers) == 1) { + message(paste0("\nthe following entry does not exist in the chosen goal / subgoal: \n")) + print(unknown_layers) + message("") + } else { + message("\nthe following entries do not exist in the chosen goal / subgoal: \n") + print(unknown_layers) + message("") + } + + updated_layers <- str_split(readline(prompt = "enter 'all' or layers separated only by commas: "), ",")[[1]] %>% + str_remove_all(" ") + + if (tolower(updated_layers[1]) == "all") { + updated_layers <- possible_layers + } + } + + # create df with updated file paths + layers_eez_base_updated <- layers_eez_base %>% + mutate(dir = case_when(layer %in% updated_layers ~ + gsub("v20\\d\\d", version_year, dir), + TRUE ~ dir)) + + # vector of dir names which have changed from the original csv + changed_dirs <- setdiff(layers_eez_base_updated$dir, layers_eez_base$dir) + + message("\nthe selected 'dir' values will be updated as shown in the data viewer ↑ ") + message("do you want to update layers_eez_base.csv with these changes?\n") + + # df of altered rows to be viewed by the user + updated_dirs <- layers_eez_base_updated %>% + filter(dir %in% changed_dirs) %>% + rename("dir (UPDATED)" = dir) + + View(updated_dirs) + + # request for permission to overwrite current csv with version containing updated dirs + overwrite <- readline(prompt = "update? ('y' or 'n'): ") + + if (overwrite == "y") { + write.csv(layers_eez_base_updated, here("metadata_documentation/layers_eez_base.csv"), + row.names = FALSE) + message("\nfile has been updated\n") + } + + else { + message("\nfile was *NOT* updated\n") + } + +} + + + diff --git a/man/CalculateGoalIndex.Rd b/man/CalculateGoalIndex.Rd index 94f5c17..a07b9a4 100644 --- a/man/CalculateGoalIndex.Rd +++ b/man/CalculateGoalIndex.Rd @@ -4,8 +4,17 @@ \alias{CalculateGoalIndex} \title{Calculate Goal Index} \usage{ -CalculateGoalIndex(id, status, trend, resilience, pressure, DISCOUNT = 1, - BETA = 0.67, default_trend = 0, xlim = c(0, 1)) +CalculateGoalIndex( + id, + status, + trend, + resilience, + pressure, + DISCOUNT = 1, + BETA = 0.67, + default_trend = 0, + xlim = c(0, 1) +) } \arguments{ \item{id}{is the subregion identifier} diff --git a/man/PlotFlower.Rd b/man/PlotFlower.Rd index 4833f6d..59d5c3b 100644 --- a/man/PlotFlower.Rd +++ b/man/PlotFlower.Rd @@ -6,10 +6,16 @@ By Casey O'Hara, Julia Lowndes, Melanie Frazier github.com/ohi-science Assumes the following is present:} \usage{ -PlotFlower(region_plot = NA, year_plot = NA, - assessment_name = "Average", scenario_folder = "eez", - scores_file = "scores.csv", dir_fig_save = file.path(scenario_folder, - "reports/figures"), legend_include = TRUE, save = TRUE) +PlotFlower( + region_plot = NA, + year_plot = NA, + assessment_name = "Average", + scenario_folder = "eez", + scores_file = "scores.csv", + dir_fig_save = file.path(scenario_folder, "reports/figures"), + legend_include = TRUE, + save = TRUE +) } \arguments{ \item{region_plot}{region_id/s to plot (i.e., region_plot = c(1,4,8)), defaults to plotting all regions plus the diff --git a/man/SelectLayersData.Rd b/man/SelectLayersData.Rd index bd5726b..10e5af9 100644 --- a/man/SelectLayersData.Rd +++ b/man/SelectLayersData.Rd @@ -4,8 +4,14 @@ \alias{SelectLayersData} \title{Select Layers to Data} \usage{ -SelectLayersData(object, targets = NULL, layers = NULL, cast = TRUE, - narrow = FALSE, expand.time.invariant = FALSE) +SelectLayersData( + object, + targets = NULL, + layers = NULL, + cast = TRUE, + narrow = FALSE, + expand.time.invariant = FALSE +) } \arguments{ \item{object}{instance of Layers class} diff --git a/man/collapse_2_rgn.Rd b/man/collapse_2_rgn.Rd index e3db3e0..f49565b 100644 --- a/man/collapse_2_rgn.Rd +++ b/man/collapse_2_rgn.Rd @@ -4,9 +4,13 @@ \alias{collapse_2_rgn} \title{Collapse region} \usage{ -collapse_2_rgn(df_in, fld_value, fld_id = "rgn_id", +collapse_2_rgn( + df_in, + fld_value, + fld_id = "rgn_id", collapse_fxn = c("sum", "mean", "weighted_mean")[1], - collapse_wts = NULL) + collapse_wts = NULL +) } \arguments{ \item{df_in}{dataset} diff --git a/man/layers_eez_base_updater.Rd b/man/layers_eez_base_updater.Rd new file mode 100644 index 0000000..24216d2 --- /dev/null +++ b/man/layers_eez_base_updater.Rd @@ -0,0 +1,14 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/layers_eez_base_updater.R +\name{layers_eez_base_updater} +\alias{layers_eez_base_updater} +\title{Update layers_eez_base.csv +By Peter Menzies} +\usage{ +layers_eez_base_updater() +} +\description{ +Convenient interface for changing directory paths of recently updated layers in layers_eez_base.csv +No arguments required - user will be prompted for needed information +} +\keyword{ohi} diff --git a/man/name_2_rgn.Rd b/man/name_2_rgn.Rd index 5dee476..b264140 100644 --- a/man/name_2_rgn.Rd +++ b/man/name_2_rgn.Rd @@ -4,8 +4,12 @@ \alias{name_2_rgn} \title{Name to region (New version: doesn't collapse data)} \usage{ -name_2_rgn(df_in, fld_name = "country", flds_unique = NULL, - keep_fld_name = TRUE) +name_2_rgn( + df_in, + fld_name = "country", + flds_unique = NULL, + keep_fld_name = TRUE +) } \arguments{ \item{df_in}{dataset} diff --git a/man/rgn_eez_area.Rd b/man/rgn_eez_area.Rd index 804987b..e89852d 100644 --- a/man/rgn_eez_area.Rd +++ b/man/rgn_eez_area.Rd @@ -4,11 +4,13 @@ \name{rgn_eez_area} \alias{rgn_eez_area} \title{Region eez areas} -\format{A data frame with 236 rows and 2 variables: +\format{ +A data frame with 236 rows and 2 variables: \describe{ \item{rgn_id}{region id used for Ocean Health Index (starting with 2013 assessment)} \item{area_km2}{area of region's eez} -}} +} +} \usage{ rgn_eez_area } diff --git a/man/score_check.Rd b/man/score_check.Rd index 384d1bd..5dc5f38 100644 --- a/man/score_check.Rd +++ b/man/score_check.Rd @@ -4,9 +4,15 @@ \alias{score_check} \title{score_check} \usage{ -score_check(scenario_year, commit = "previous", file_name, - scenario_name = "eez", save_csv = FALSE, save_png = FALSE, - NA_compare = TRUE) +score_check( + scenario_year, + commit = "previous", + file_name, + scenario_name = "eez", + save_csv = FALSE, + save_png = FALSE, + NA_compare = TRUE +) } \arguments{ \item{scenario_year}{if there are multiple scenario years with an assessment, choose the year of interest} diff --git a/man/sovregion_labels.Rd b/man/sovregion_labels.Rd index fdedb9c..8f322d7 100644 --- a/man/sovregion_labels.Rd +++ b/man/sovregion_labels.Rd @@ -4,14 +4,16 @@ \name{sovregion_labels} \alias{sovregion_labels} \title{Territories} -\format{A data frame with 220 rows and 5 variables: +\format{ +A data frame with 220 rows and 5 variables: \describe{ \item{rgn_id}{numeric region id used for Ocean Health Index (1-250)} \item{r0_label}{sovreign country name} \item{r1_label}{sovreign country name} \item{r2_label}{sovreign country name} \item{rgn_label}{region name used for Ocean Health Index (Albania, Angola, etc.)} -}} +} +} \usage{ sovregion_labels } diff --git a/man/sovregions.Rd b/man/sovregions.Rd index 0478775..c7f26bc 100644 --- a/man/sovregions.Rd +++ b/man/sovregions.Rd @@ -4,14 +4,16 @@ \name{sovregions} \alias{sovregions} \title{Territories (streamlined)} -\format{A data frame with 220 rows and 5 variables: +\format{ +A data frame with 220 rows and 5 variables: \describe{ \item{rgn_id}{region id used for Ocean Health Index (1-250)} \item{r0}{sovreign country region id} \item{r1}{sovreign country region id} \item{r2}{sovreign country region id} \item{fld_wt}{identifies territory countries (0) and sovreign regions (1)} -}} +} +} \usage{ sovregions } From 8cc82babfb27124fcd91a8e350688d1581e0a1e0 Mon Sep 17 00:00:00 2001 From: petermenzies Date: Tue, 6 Sep 2022 11:25:15 -0700 Subject: [PATCH 02/40] fixed bug where updated file paths didn't show up in data viewer --- R/layers_eez_base_updater.R | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/R/layers_eez_base_updater.R b/R/layers_eez_base_updater.R index e0ee018..eff7740 100644 --- a/R/layers_eez_base_updater.R +++ b/R/layers_eez_base_updater.R @@ -26,7 +26,7 @@ layers_eez_base_updater <- function() { # loop that ends when a viable goal/subgoal abbr is supplied while (length(possible_layers) == 0) { - goal <- readline(prompt = "enter the goal / subgoal abbreviation for the layers you're updating: ") %>% + goal <- readline(prompt = "enter the goal / subgoal / pressure / resilliance abbreviation for the layers you're updating: ") %>% tolower() possible_layers <- layers_eez_base$layer[startsWith(layers_eez_base$layer, goal)] @@ -84,16 +84,12 @@ layers_eez_base_updater <- function() { TRUE ~ dir)) # vector of dir names which have changed from the original csv - changed_dirs <- setdiff(layers_eez_base_updated$dir, layers_eez_base$dir) + updated_dirs <- anti_join(layers_eez_base_updated, layers_eez_base) %>% + rename("dir (UPDATED)" = dir) message("\nthe selected 'dir' values will be updated as shown in the data viewer ↑ ") message("do you want to update layers_eez_base.csv with these changes?\n") - # df of altered rows to be viewed by the user - updated_dirs <- layers_eez_base_updated %>% - filter(dir %in% changed_dirs) %>% - rename("dir (UPDATED)" = dir) - View(updated_dirs) # request for permission to overwrite current csv with version containing updated dirs From 9adeb6d821e8de4e5bddf7aead3deb6360ec2d47 Mon Sep 17 00:00:00 2001 From: petermenzies Date: Tue, 6 Sep 2022 11:37:07 -0700 Subject: [PATCH 03/40] made instructions more clear for entering abbreviation associated with layers --- R/layers_eez_base_updater.R | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/R/layers_eez_base_updater.R b/R/layers_eez_base_updater.R index eff7740..d34cbae 100644 --- a/R/layers_eez_base_updater.R +++ b/R/layers_eez_base_updater.R @@ -18,6 +18,7 @@ layers_eez_base_updater <- function() { layers_eez_base <- read_csv(here("metadata_documentation/layers_eez_base.csv"), col_types = cols()) # prompt user for current version year + message("") version_year <- paste0("v", readline(prompt = "enter version year: ")) # empty vector that will later contain layer names - used in while loop @@ -26,7 +27,7 @@ layers_eez_base_updater <- function() { # loop that ends when a viable goal/subgoal abbr is supplied while (length(possible_layers) == 0) { - goal <- readline(prompt = "enter the goal / subgoal / pressure / resilliance abbreviation for the layers you're updating: ") %>% + goal <- readline(prompt = "enter the goal/subgoal/prs/res abbreviation for the layers you're updating (e.g. 'np', 'hab', or 'cc'): ") %>% tolower() possible_layers <- layers_eez_base$layer[startsWith(layers_eez_base$layer, goal)] @@ -37,7 +38,7 @@ layers_eez_base_updater <- function() { } # the component layers of that goal/subgoal are printed below for user's convenience - message("\nthese are the layers associated with that goal:\n") + message("\nthese are the layers associated with that abbreviation:\n") print(possible_layers) message("\nif you want to update all of these layers, enter 'all' at the next prompt —") message("if you are only updating certain ones you can copypaste the layer names above separated by commas\n") @@ -58,13 +59,13 @@ layers_eez_base_updater <- function() { unknown_layers <- setdiff(updated_layers, possible_layers) if (length(unknown_layers) == length(updated_layers)) { - message("\nnone of the layers entered exist in the chosen goal / subgoal\n") + message("\nnone of the layers entered coincide with the chosen abbreviation\n") } else if (length(unknown_layers) == 1) { - message(paste0("\nthe following entry does not exist in the chosen goal / subgoal: \n")) + message(paste0("\nthe following entry does not coincide with the chosen abbreviation: \n")) print(unknown_layers) message("") } else { - message("\nthe following entries do not exist in the chosen goal / subgoal: \n") + message("\nthe following entries do not coincide with the chosen abbreviation: \n") print(unknown_layers) message("") } From 27861553911d98ce4aff9fd2396f0b8fff4c6a86 Mon Sep 17 00:00:00 2001 From: petermenzies Date: Wed, 7 Sep 2022 09:58:27 -0700 Subject: [PATCH 04/40] function now removes 'v' or other letters accompanying version year, silenced anti_join(), added message if no file paths change --- R/layers_eez_base_updater.R | 46 +++++++++++++++++++++---------------- 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/R/layers_eez_base_updater.R b/R/layers_eez_base_updater.R index d34cbae..04977cc 100644 --- a/R/layers_eez_base_updater.R +++ b/R/layers_eez_base_updater.R @@ -17,9 +17,9 @@ layers_eez_base_updater <- function() { # read in the csv layers_eez_base <- read_csv(here("metadata_documentation/layers_eez_base.csv"), col_types = cols()) - # prompt user for current version year + # prompt user for current version year (gsub() to remove 'v' if user adds it as well) message("") - version_year <- paste0("v", readline(prompt = "enter version year: ")) + version_year <- paste0("v", gsub("\\D", "", readline(prompt = "enter version year: "))) # empty vector that will later contain layer names - used in while loop possible_layers <- c() @@ -27,6 +27,7 @@ layers_eez_base_updater <- function() { # loop that ends when a viable goal/subgoal abbr is supplied while (length(possible_layers) == 0) { + message("") goal <- readline(prompt = "enter the goal/subgoal/prs/res abbreviation for the layers you're updating (e.g. 'np', 'hab', or 'cc'): ") %>% tolower() @@ -42,7 +43,7 @@ layers_eez_base_updater <- function() { print(possible_layers) message("\nif you want to update all of these layers, enter 'all' at the next prompt —") message("if you are only updating certain ones you can copypaste the layer names above separated by commas\n") - + # prompt user for layers which have been updated updated_layers <- str_split(readline(prompt = "enter 'all' or layers separated only by commas: "), ",")[[1]] %>% @@ -85,25 +86,30 @@ layers_eez_base_updater <- function() { TRUE ~ dir)) # vector of dir names which have changed from the original csv - updated_dirs <- anti_join(layers_eez_base_updated, layers_eez_base) %>% + updated_dirs <- anti_join(layers_eez_base_updated, layers_eez_base, by = c("layer", "dir")) %>% rename("dir (UPDATED)" = dir) - message("\nthe selected 'dir' values will be updated as shown in the data viewer ↑ ") - message("do you want to update layers_eez_base.csv with these changes?\n") - - View(updated_dirs) - - # request for permission to overwrite current csv with version containing updated dirs - overwrite <- readline(prompt = "update? ('y' or 'n'): ") - - if (overwrite == "y") { - write.csv(layers_eez_base_updated, here("metadata_documentation/layers_eez_base.csv"), - row.names = FALSE) - message("\nfile has been updated\n") - } - - else { - message("\nfile was *NOT* updated\n") + # make sure the chosen year and layers elicited changes + if (nrow(updated_dirs) != 0) { + message("\nthe selected 'dir' values will be updated as shown in the data viewer ↑ ") + message("do you want to update layers_eez_base.csv with these changes?\n") + View(updated_dirs) + + # request for permission to overwrite current csv with version containing updated dirs + overwrite <- readline(prompt = "update? ('y' or 'n'): ") + + if (overwrite == "y") { + write.csv(layers_eez_base_updated, here("metadata_documentation/layers_eez_base.csv"), + row.names = FALSE) + message("\nfile has been updated\n") + + } else { + message("\nfile was *NOT* updated\n") + } + + # if no changes were elicited to any file paths, end function with message + } else { + message("\nthe chosen file paths already contain that version year - no updates were made\n") } } From f5d798ec4dc67876ea052e4ce9cbe3bb7381275b Mon Sep 17 00:00:00 2001 From: petermenzies Date: Fri, 9 Sep 2022 17:15:39 -0700 Subject: [PATCH 05/40] added dataframe with just current region ids and region names --- data/rgn_id_names.rda | Bin 0 -> 5952 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 data/rgn_id_names.rda diff --git a/data/rgn_id_names.rda b/data/rgn_id_names.rda new file mode 100644 index 0000000000000000000000000000000000000000..c6fb60b2ceb935c5b60a336d466b8f08b97ab02b GIT binary patch literal 5952 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 literal 0 HcmV?d00001 From 5e9e5c61c1856b08ffa58973087b218ca8caaeef Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Mon, 24 Jul 2023 14:43:43 -0700 Subject: [PATCH 06/40] testing updates to name_2_rgn function --- DESCRIPTION | 2 +- data-raw/data_prepare.R | 8 +- data-raw/eez_rgn_2013main.csv | 262 ++++++++++++++++++++++++ data-raw/rgn_eez_v2013a_synonyms.csv | 296 +++++++++++++++++++++++++++ data/rgn_master.rda | Bin 6451 -> 6432 bytes data/rgn_synonyms.rda | Bin 3615 -> 3541 bytes man/PlotFlower.Rd | 4 - 7 files changed, 563 insertions(+), 9 deletions(-) create mode 100644 data-raw/eez_rgn_2013main.csv create mode 100644 data-raw/rgn_eez_v2013a_synonyms.csv diff --git a/DESCRIPTION b/DESCRIPTION index 83ece90..152820d 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -61,5 +61,5 @@ URL: https://github.com/OHI-Science/ohicore BugReports: https://github.com/OHI-Science/ohicore/issues LazyData: TRUE VignetteBuilder: knitr -RoxygenNote: 7.1.1 +RoxygenNote: 7.2.2 Encoding: UTF-8 diff --git a/data-raw/data_prepare.R b/data-raw/data_prepare.R index 6c3bbef..1f6f419 100644 --- a/data-raw/data_prepare.R +++ b/data-raw/data_prepare.R @@ -4,12 +4,12 @@ library(devtools) -rgn_synonyms <- read.csv('../ohiprep/src/LookupTables/rgn_eez_v2013a_synonyms.csv', na = "", stringsAsFactors = FALSE) -devtools::use_data(rgn_synonyms, overwrite = TRUE) +rgn_synonyms <- read.csv('data-raw/rgn_eez_v2013a_synonyms.csv', na = "", stringsAsFactors = FALSE) +usethis::use_data(rgn_synonyms, overwrite = TRUE) -rgn_master <- read.csv('../ohiprep/src/LookupTables/eez_rgn_2013master.csv', na = "", stringsAsFactors = FALSE) -devtools::use_data(rgn_master, overwrite = TRUE) +rgn_master <- read.csv('data-raw/eez_rgn_2013main.csv', na = "", stringsAsFactors = FALSE) +usethis::use_data(rgn_master, overwrite = TRUE) ## The following have not been updated, will do this when I figure out how they are used. diff --git a/data-raw/eez_rgn_2013main.csv b/data-raw/eez_rgn_2013main.csv new file mode 100644 index 0000000..575270c --- /dev/null +++ b/data-raw/eez_rgn_2013main.csv @@ -0,0 +1,262 @@ +rgn_typ,rgn_key_2013,rgn_id_2013,rgn_nam_2013,rgn_iso2,eez_key,eez_id,eez_nam,eez_iso3,sov_id,sov_nam,country_id_2012,region_id_2012,region_name_2012 +eez,CC,1,Cocos Islands,CC,CC,1,Cocos Islands,CCK,16,Australia,CCK,1,Australian Tropical Territories +eez,CX,2,Christmas Island,CX,CX,2,Christmas Island,CXR,16,Australia,CXR,1,Australian Tropical Territories +eez,NF,3,Norfolk Island,NF,NF,3,Norfolk Island,NFK,16,Australia,NFK,1,Australian Tropical Territories +eez,HM,94,Heard and McDonald Islands,HM,HM,94,Heard and McDonald Islands,HMD,16,Australia,HMD,2,Australian Southern Ocean Territories +eez,MQ,4,Macquarie Island,AU,AU-XMQ,4,Macquarie Island,AUS,16,Australia,Macquarie Island,2,Australian Southern Ocean Territories +eez,NC,5,New Caledonia,NC,NC,5,New Caledonia,NCL,179,France,NCL,3,New Caledonia +eez,VU,6,Vanuatu,VU,VU,6,Vanuatu,VUT,6,Vanuatu,VUT,4,Vanuatu +eez,SB,7,Solomon Islands,SB,SB,7,Solomon Islands,SLB,7,Solomon Islands,SLB,5,Solomon Islands +eez,PW,8,Palau,PW,PW,8,Palau,PLW,8,Palau,PLW,6,Palau +eez,FM,9,Micronesia,FM,FM,9,Micronesia,FSM,9,Micronesia,FSM,7,Micronesia +eez,NR,10,Nauru,NR,NR,10,Nauru,NRU,10,Nauru,NRU,8,Nauru +eez,MH,11,Marshall Islands,MH,MH,11,Marshall Islands,MHL,11,Marshall Islands,MHL,9,Marshall Islands +eez,TW,14,Taiwan,TW,TW,14,Taiwan,TWN,14,Taiwan,TWN,10,Taiwan +eez,PH,15,Philippines,PH,PH,15,Philippines,PHL,15,Philippines,PHL,11,Philippines +eez,AU,16,Australia,AU,AU,0,Australia,AUS,16,Australia,AUS,12,Australia +eez,PG,17,Papua New Guinea,PG,PG,17,Papua New Guinea,PNG,17,Papua New Guinea,PNG,13,Papua New Guinea +eez,FJ,18,Fiji,FJ,FJ,18,Fiji,FJI,18,Fiji,FJI,14,Fiji +eez,TV,19,Tuvalu,TV,TV,19,Tuvalu,TUV,19,Tuvalu,TUV,15,Tuvalu +eez,KR,20,South Korea,KR,KR,20,South Korea,KOR,20,South Korea,KOR,16,South Korea +eez,KP,21,North Korea,KP,KP,21,North Korea,PRK,21,North Korea,PRK,17,North Korea +eez,KH,24,Cambodia,KH,KH,24,Cambodia,KHM,24,Cambodia,KHM,18,Cambodia +eez,TH,25,Thailand,TH,TH,25,Thailand,THA,25,Thailand,THA,19,Thailand +eez,KM,28,Comoro Islands,KM,KM,28,Comoro Islands,COM,28,Comoro Islands,COM,20,Comoros +eez,BI,34,Bassas da India,TF,TF-XBS,34,Bassas da India,ATF,179,France,Bassas da India,21,French Indian Ocean Territories +eez,EU,35,Ile Europa,TF,TF-XEU,35,Ile Europa,ATF,179,France,Ile Europa,21,French Indian Ocean Territories +eez,GO,30,Glorioso Islands,TF,TF-XGO,30,Glorioso Islands,ATF,179,France,Glorioso Islands,21,French Indian Ocean Territories +eez,JN,33,Juan de Nova Island,TF,TF-XJU,33,Juan de Nova Island,ATF,179,France,Juan de Nova Island,21,French Indian Ocean Territories +eez,RE,32,Reunion,RE,RE,32,R_union,REU,179,France,REU,21,French Indian Ocean Territories +eez,TE,36,Ile Tromelin,TF,TF-XTE,36,Ile Tromelin,ATF,179,France,Ile Tromelin,21,French Indian Ocean Territories +eez,YT,29,Mayotte,YT,YT,29,Mayotte,MYT,179,France,MYT,21,French Indian Ocean Territories +eez,SC,31,Seychelles,SC,SC,31,Seychelles,SYC,31,Seychelles,SYC,22,Seychelles +eez,MU,37,Mauritius,MU,MU,37,Mauritius,MUS,37,Mauritius,MUS,23,Mauritius +eez,IO,38,British Indian Ocean Territory,IO,IO,38,British Indian Ocean Territory,IOT,180,United Kingdom,IOT,24,British Indian Ocean Territory +eez,MV,39,Maldives,MV,MV,39,Maldives,MDV,39,Maldives,MDV,25,Maldives +eez,LK,40,Sri Lanka,LK,LK,40,Sri Lanka,LKA,40,Sri Lanka,LKA,26,Sri Lanka +eez,MZ,41,Mozambique,MZ,MZ,41,Mozambique,MOZ,41,Mozambique,MOZ,27,Mozambique +eez,MG,42,Madagascar,MG,MG,42,Madagascar,MDG,42,Madagascar,MDG,28,Madagascar +eez,KE,43,Kenya,KE,KE,43,Kenya,KEN,43,Kenya,KEN,29,Kenya +eez,SO,44,Somalia,SO,SO,44,Somalia,SOM,44,Somalia,SOM,30,Somalia +eez,ER,45,Eritrea,ER,ER,45,Eritrea,ERI,45,Eritrea,ERI,31,Eritrea +eez,DJ,46,Djibouti,DJ,DJ,46,Djibouti,DJI,46,Djibouti,DJI,32,Djibouti +eez,YE,47,Yemen,YE,YE,47,Yemen,YEM,47,Yemen,YEM,33,Yemen +eez,OM,48,Oman,OM,OM,48,Oman,OMN,48,Oman,OMN,34,Oman +eez,SD,49,Sudan,SD,SD,49,Sudan,SDN,49,Sudan,SDN,35,Sudan +eez,SA,50,Saudi Arabia,SA,SA,50,Saudi Arabia,SAU,50,Saudi Arabia,SAU,36,Saudi Arabia +eez,KW,51,Kuwait,KW,KW,51,Kuwait,KWT,51,Kuwait,KWT,37,Kuwait +eez,BH,52,Bahrain,BH,BH,52,Bahrain,BHR,52,Bahrain,BHR,38,Bahrain +eez,PK,53,Pakistan,PK,PK,53,Pakistan,PAK,53,Pakistan,PAK,39,Pakistan +eez,AE,54,United Arab Emirates,AE,AE,54,United Arab Emirates,ARE,54,United Arab Emirates,ARE,40,United Arab Emirates +eez,CV,56,Cape Verde,CV,CV,56,Cape Verde,CPV,56,Cape Verde,CPV,41,Cape Verde +eez,BE,59,Belgium,BE,BE,59,Belgium,BEL,59,Belgium,BEL,42,Belgium +eez,GI,60,Gibraltar,GI,GI,60,Gibraltar,GIB,180,United Kingdom,GIB,43,Gibraltar +eez,TN,61,Tunisia,TN,TN,61,Tunisia,TUN,61,Tunisia,TUN,44,Tunisia +eez,MA,62,Morocco,MA,MA,62,Morocco,MAR,62,Morocco,MAR,45,Morocco +eez,EH,63,Western Sahara,EH,EH,63,Western Sahara,ESH,62,Morocco,ESH,46,Western Sahara +eez,MR,64,Mauritania,MR,MR,64,Mauritania,MRT,64,Mauritania,MRT,47,Mauritania +eez,GM,65,Gambia,GM,GM,65,Gambia,GMB,65,Gambia,GMB,48,Gambia +eez,SN,66,Senegal,SN,SN,66,Senegal,SEN,66,Senegal,SEN,49,Senegal +eez,LY,67,Libya,LY,LY,67,Libya,LBY,67,Libya,LBY,50,Libya +eez,MT,68,Malta,MT,MT,68,Malta,MLT,68,Malta,MLT,51,Malta +eez,LV,69,Latvia,LV,LV,69,Latvia,LVA,69,Latvia,LVA,52,Latvia +eez,EE,70,Estonia,EE,EE,70,Estonia,EST,70,Estonia,EST,53,Estonia +eez,BG,71,Bulgaria,BG,BG,71,Bulgaria,BGR,71,Bulgaria,BGR,54,Bulgaria +eez,RO,72,Romania,RO,RO,72,Romania,ROU,72,Romania,ROU,55,Romania +eez,RU,73,Russia,RU,RU,73,Russia,RUS,73,Russia,RUS,56,Russia +eez,GE,74,Georgia,GE,GE,74,Georgia,GEO,74,Georgia,GEO,57,Georgia +eez,UA,75,Ukraine,UA,UA,75,Ukraine,UKR,75,Ukraine,UKR,58,Ukraine +eez,TR,76,Turkey,TR,TR,76,Turkey,TUR,76,Turkey,TUR,59,Turkey +eez,SY,77,Syria,SY,SY,77,Syria,SYR,77,Syria,SYR,60,Syria +eez,LB,78,Lebanon,LB,LB,78,Lebanon,LBN,78,Lebanon,LBN,61,Lebanon +eez,IL,79,Israel,IL,IL,79,Israel,ISR,79,Israel,ISR,62,Israel +eez,GR,80,Greece,GR,GR,80,Greece,GRC,80,Greece,GRC,63,Greece +eez,CY,81,Cyprus,CY,CY,81,Cyprus,CYP,81,Cyprus,CYP,64,Cyprus +eez,AL,82,Albania,AL,AL,82,Albania,ALB,82,Albania,ALB,65,Albania +eez,DZ,84,Algeria,DZ,DZ,84,Algeria,DZA,84,Algeria,DZA,66,Algeria +eez,AM,92,Amsterdam Island and Saint Paul Island,TF,TF-XAM,92,Amsterdam Island and Saint Paul Island,ATF,179,France,Amsterdam Island and Saint Paul Island,67,French Southern Ocean Territories +eez,CZ,91,Crozet Islands,TF,TF-XCR,91,Crozet Islands,ATF,179,France,Crozet Islands,67,French Southern Ocean Territories +eez,KG,93,Kerguelen Islands,TF,TF-XKE,93,Kerguelen Islands,ATF,179,France,Kerguelen Islands,67,French Southern Ocean Territories +eez,AC,85,Ascension,SH,SH-AC,85,Ascension,ASC,180,United Kingdom,Ascension,68,British Southern Ocean Territories +eez,FK,95,Falkland Islands,FK,FK,95,Falkland Islands,FLK,180,United Kingdom,FLK,68,British Southern Ocean Territories +eez,GS,89,South Georgia and the South Sandwich Islands,GS,GS,89,South Georgia and the South Sandwich Islands,SGS,180,United Kingdom,SGS,68,British Southern Ocean Territories +eez,SH,86,Saint Helena,SH,SH-HL,86,Saint Helena,SHN,180,United Kingdom,SHN,68,British Southern Ocean Territories +eez,TA,88,Tristan da Cunha,SH,SH-TA,88,Tristan da Cunha,TAA,180,United Kingdom,Tristan da Cunha,68,British Southern Ocean Territories +eez,SL,96,Sierra Leone,SL,SL,96,Sierra Leone,SLE,96,Sierra Leone,SLE,69,Sierra Leone +eez,LR,97,Liberia,LR,LR,97,Liberia,LBR,97,Liberia,LBR,70,Liberia +eez,TG,98,Togo,TG,TG,98,Togo,TGO,98,Togo,TGO,71,Togo +eez,BJ,99,Benin,BJ,BJ,99,Benin,BEN,99,Benin,BEN,72,Benin +eez,CG,100,Republique du Congo,CG,CG,100,R_publique du Congo,COG,100,R_publique du Congo,COG,73,Republic of the Congo +eez,NM,101,Namibia,NA,NA,101,Namibia,NAM,101,Namibia,NAM,74,Namibia +eez,PI,90,Prince Edward Islands,ZA,ZA-XPE,90,Prince Edward Islands,ZAF,102,South Africa,Prince Edward Islands,75,South Africa +eez,ZA,102,South Africa,ZA,ZA,102,South Africa,ZAF,102,South Africa,ZAF,75,South Africa +eez,ST,103,Sao Tome and Principe,ST,ST,103,Sao Tome and Principe,STP,103,Sao Tome and Principe,STP,76,Sao Tome and Principe +eez,GQ,104,Equatorial Guinea,GQ,GQ,104,Equatorial Guinea,GNQ,104,Equatorial Guinea,GNQ,77,Equatorial Guinea +eez,GH,106,Ghana,GH,GH,106,Ghana,GHA,106,Ghana,GHA,78,Ghana +eez,CP,107,Clipperton Island,CP,CP,107,Clipperton Island,CPT,179,France,Clipperton Island,79,Clipperton Island +eez,BS,110,Bahamas,BS,BS,110,Bahamas,BHS,110,Bahamas,BHS,80,Bahamas +eez,CU,112,Cuba,CU,CU,112,Cuba,CUB,112,Cuba,CUB,81,Cuba +eez,HT,114,Haiti,HT,HT,114,Haiti,HTI,114,Haiti,HTI,82,Haiti +eez,DO,115,Dominican Republic,DO,DO,115,Dominican Republic,DOM,115,Dominican Republic,DOM,83,Dominican Republic +eez,PR,116,Puerto Rico and Virgin Islands of the United States,PR,PR,116,Puerto Rico and Virgin Islands of the United States,PRI,163,United States,PRI|VIR,84,USA Caribbean Territories +eez,AI,118,Anguilla,AI,AI,118,Anguilla,AIA,180,United Kingdom,AIA,85,British Caribbean Territories +eez,BM,108,Bermuda,BM,BM,108,Bermuda,BMU,180,United Kingdom,BMU,85,British Caribbean Territories +eez,KY,113,Cayman Islands,KY,KY,113,Cayman Islands,CYM,180,United Kingdom,CYM,85,British Caribbean Territories +eez,MS,121,Montserrat,MS,MS,121,Montserrat,MSR,180,United Kingdom,MSR,85,British Caribbean Territories +eez,TC,111,Turks and Caicos Islands,TC,TC,111,Turks and Caicos Islands,TCA,180,United Kingdom,TCA,85,British Caribbean Territories +eez,VG,117,British Virgin Islands,VG,VG,117,British Virgin Islands,VGB,180,United Kingdom,VGB,85,British Caribbean Territories +eez,KN,119,Saint Kitts and Nevis,KN,KN,119,Saint Kitts and Nevis,KNA,119,Saint Kitts and Nevis,KNA,86,Saint Kitts and Nevis +eez,AG,120,Antigua and Barbuda,AG,AG,120,Antigua and Barbuda,ATG,120,Antigua and Barbuda,ATG,87,Antigua and Barbuda +eez,LC,122,Saint Lucia,LC,LC,122,Saint Lucia,LCA,122,Saint Lucia,LCA,88,Saint Lucia +eez,DM,123,Dominica,DM,DM,123,Dominica,DMA,123,Dominica,DMA,89,Dominica +eez,BB,124,Barbados,BB,BB,124,Barbados,BRB,124,Barbados,BRB,90,Barbados +eez,GD,125,Grenada,GD,GD,125,Grenada,GRD,125,Grenada,GRD,91,Grenada +eez,TT,126,Trinidad and Tobago,TT,TT,126,Trinidad and Tobago,TTO,126,Trinidad and Tobago,TTO,92,Trinidad and Tobago +eez,VC,127,Saint Vincent and the Grenadines,VC,VC,127,Saint Vincent and the Grenadines,VCT,127,Saint Vincent and the Grenadines,VCT,93,Saint Vincent and the Grenadines +eez,AW,250,Aruba,AW,AW,250,Aruba,AW,177,Netherlands,ANT,94,Netherlands Caribbean Territories +eez,BO,245,Bonaire,BQ,BQ-BO,245,Bonaire,BQ,177,Netherlands,ANT,94,Netherlands Caribbean Territories +eez,CW,244,Curacao,CW,CW,244,Curacao,CW,177,Netherlands,ANT,94,Netherlands Caribbean Territories +eez,EQ,249,Sint Eustatius,BQ,BQ-SE,249,Sint-Eustasius,ANT,177,Netherlands,ANT,94,Netherlands Caribbean Territories +eez,SQ,248,Saba,BQ,BQ-SA,248,Saba,BES,177,Netherlands,ANT,94,Netherlands Caribbean Territories +eez,SX,220,Sint Maarten,SX,SX,220,Sint-Maarten,SXM,177,Netherlands,Southern Saint-Martin,94,Netherlands Caribbean Territories +eez,PA,129,Panama,PA,PA,129,Panama,PAN,129,Panama,PAN,95,Panama +eez,CR,130,Costa Rica,CR,CR,130,Costa Rica,CRI,130,Costa Rica,CRI,96,Costa Rica +eez,NI,131,Nicaragua,NI,NI,131,Nicaragua,NIC,131,Nicaragua,NIC,97,Nicaragua +eez,CO,132,Colombia,CO,CO,132,Colombia,COL,132,Colombia,COL,98,Colombia +eez,HN,133,Honduras,HN,HN,133,Honduras,HND,133,Honduras,HND,99,Honduras +eez,SV,134,El Salvador,SV,SV,134,El Salvador,SLV,134,El Salvador,SLV,100,El Salvador +eez,MX,135,Mexico,MX,MX,135,Mexico,MEX,135,Mexico,MEX,101,Mexico +eez,GT,136,Guatemala,GT,GT,136,Guatemala,GTM,136,Guatemala,GTM,102,Guatemala +eez,EC,137,Ecuador,EC,EC,137,Ecuador,ECU,137,Ecuador,ECU,103,Ecuador +eez,EC,137,Ecuador,EC,EC-XGL,109,Galapagos Islands,ECU,137,Ecuador,Galapagos Islands,103,Ecuador +eez,PE,138,Peru,PE,PE,138,Peru,PER,138,Peru,PER,104,Peru +eez,VE,139,Venezuela,VE,VE,139,Venezuela,VEN,139,Venezuela,VEN,105,Venezuela +eez,GX,140,Guadeloupe and Martinique,GP_MQ,GP_MQ,140,Guadeloupe and Martinique,GP-MQ,179,France,GLP|MTQ,106,French Caribbean Territories +eez,MF,221,Northern Saint-Martin,MF,MF,221,Northern Saint-Martin,MAF,179,France,MAF,106,French Caribbean Territories +eez,IS,143,Iceland,IS,IS,143,Iceland,ISL,143,Iceland,ISL,107,Iceland +eez,PN,146,Pitcairn,PN,PN,146,Pitcairn,PCN,180,United Kingdom,PCN,108,British Pacific Territories (Pitcairn) +eez,PF,147,French Polynesia,PF,PF,147,French Polynesia,PYF,179,France,PYF,109,French Polynesia +eez,WF,161,Wallis and Futuna,WF,WF,161,Wallis and Futuna,WLF,179,France,WLF,109,French Polynesia +eez,JI,149,Jarvis Island,UM,UM-86,149,Jarvis Island,UMI,163,United States,Jarvis Island,110,Jarvis Island +eez,AS,151,American Samoa,AS,AS,151,American Samoa,ASM,163,United States,ASM,111,USA Pacific Inhabited Territories +eez,HB,158,Howland Island and Baker Island,UM,UM-84,158,Howland Island and Baker Island,UMI,163,United States,Howland Island and Baker Island,114,USA Pacific Uninhabited Territories +eez,MP,13,Northern Mariana Islands and Guam,MP,MP,13,Northern Mariana Islands and Guam,MNP,163,United States,MNP|GUM,111,USA Pacific Inhabited Territories +eez,WS,152,Samoa,WS,WS,152,Samoa,WSM,152,Samoa,WSM,112,Samoa +eez,TO,155,Tonga,TO,TO,155,Tonga,TON,155,Tonga,TON,113,Tonga +eez,JA,159,Johnston Atoll,UM,UM-67,159,Johnston Atoll,UMI,163,United States,Johnston Atoll,114,USA Pacific Uninhabited Territories +eez,PY,150,Palmyra Atoll,UM,UM-95,150,Palmyra Atoll,UMI,163,United States,Palmyra Atoll,114,USA Pacific Uninhabited Territories +eez,WI,12,Wake Island,UM,UM-79,12,Wake Island,UMI,163,United States,Wake Island,114,USA Pacific Uninhabited Territories +eez,CK,153,Cook Islands,CK,CK,153,Cook Islands,COK,162,New Zealand,COK,115,New Zealand +eez,NU,154,Niue,NU,NU,154,Niue,NIU,162,New Zealand,NIU,115,New Zealand +eez,NZ,162,New Zealand,NZ,NZ,162,New Zealand,NZL,162,New Zealand,NZL,115,New Zealand +eez,TK,156,Tokelau,TK,TK,156,Tokelau,TKL,162,New Zealand,TKL,115,New Zealand +eez,US,163,United States,US,US-AK,170,Alaska,USA,163,United States,Alaska,116,United States +eez,US,163,United States,US,US-HI,160,Hawaii,USA,163,United States,Hawaii,116,United States +eez,US,163,United States,US,US,163,United States,USA,163,United States,USA,116,United States +eez,BZ,164,Belize,BZ,BZ,164,Belize,BLZ,164,Belize,BLZ,117,Belize +eez,JM,166,Jamaica,JM,JM,166,Jamaica,JAM,166,Jamaica,JAM,118,Jamaica +eez,GY,167,Guyana,GY,GY,167,Guyana,GUY,167,Guyana,GUY,119,Guyana +eez,SR,168,Suriname,SR,SR,168,Suriname,SUR,168,Suriname,SUR,120,Suriname +eez,GF,169,French Guiana,GF,GF,169,French Guiana,GUF,179,France,GUF,121,French Guiana +eez,BR,171,Brazil,BR,BR,171,Brazil,BRA,171,Brazil,BRA,122,Brazil +eez,BR,171,Brazil,BR,BR-XTR,87,Trindade,BRA,171,Brazil,Trindade,122,Brazil +eez,AR,172,Argentina,AR,AR,172,Argentina,ARG,172,Argentina,ARG,123,Argentina +eez,UY,173,Uruguay,UY,UY,173,Uruguay,URY,173,Uruguay,URY,124,Uruguay +eez,FI,174,Finland,FI,FI,174,Finland,FIN,174,Finland,FIN,125,Finland +eez,DK,175,Denmark,DK,DK,175,Denmark,DNK,175,Denmark,DNK,126,Denmark +eez,FO,141,Faeroe Islands,FO,FO,141,Faeroe Islands,FRO,175,Denmark,FRO,126,Denmark +eez,GL,145,Greenland,GL,GL,145,Greenland,GRL,175,Denmark,GRL,126,Denmark +eez,DE,176,Germany,DE,DE,176,Germany,DEU,176,Germany,DEU,127,Germany +eez,NL,177,Netherlands,NL,NL,177,Netherlands,NLD,177,Netherlands,NLD,128,Netherlands +eez,PL,178,Poland,PL,PL,178,Poland,POL,178,Poland,POL,129,Poland +eez,FR,179,France,FR,FR,179,France,FRA,179,France,FRA,130,France +eez,GB,180,United Kingdom,GB,GB,180,United Kingdom,GBR,180,United Kingdom,GBR,131,United Kingdom +eez,GG,228,Guernsey,GG,GG,228,Guernsey,GGY,180,United Kingdom,GGY,131,United Kingdom +eez,JE,227,Jersey,JE,JE,227,Jersey,JEY,180,United Kingdom,JEY,131,United Kingdom +eez,IE,181,Ireland,IE,IE,181,Ireland,IRL,181,Ireland,IRL,132,Ireland +eez,CS,58,Canary Islands,ES,ES-CN,58,Canary Islands,ESP,182,Spain,Canary Islands,133,Spain +eez,ES,182,Spain,ES,ES,182,Spain,ESP,182,Spain,ESP,133,Spain +eez,AX,55,Azores,PT,PT-20,55,Azores,PRT,183,Portugal,Azores,134,Portugal +eez,MD,57,Madeira,PT,PT-30,57,Madeira,PRT,183,Portugal,Madeira,134,Portugal +eez,PT,183,Portugal,PT,PT,183,Portugal,PRT,183,Portugal,PRT,134,Portugal +eez,IT,184,Italy,IT,IT,184,Italy,ITA,184,Italy,ITA,135,Italy +eez,MC,185,Monaco,MC,MC,185,Monaco,MCO,185,Monaco,MCO,136,Monaco +eez,ME,186,Montenegro,ME,ME,186,Montenegro,MNE,186,Montenegro,SCG,137,Serbia and Montenegro +eez,HR,187,Croatia,HR,HR,187,Croatia,HRV,187,Croatia,HRV,138,Croatia +eez,SI,188,Slovenia,SI,SI,188,Slovenia,SVN,188,Slovenia,SVN,139,Slovenia +eez,LT,189,Lithuania,LT,LT,189,Lithuania,LTU,189,Lithuania,LTU,140,Lithuania +eez,QA,190,Qatar,QA,QA,190,Qatar,QAT,190,Qatar,QAT,141,Qatar +eez,IR,191,Iran,IR,IR,191,Iran,IRN,191,Iran,IRN,142,Iran +eez,IQ,192,Iraq,IQ,IQ,192,Iraq,IRQ,192,Iraq,IRQ,143,Iraq +eez,GW,193,Guinea Bissau,GW,GW,193,Guinea Bissau,GNB,193,Guinea Bissau,GNB,144,Guinea-Bissau +eez,GN,194,Guinea,GN,GN,194,Guinea,GIN,194,Guinea,GIN,145,Guinea +eez,CI,195,Ivory Coast,CI,CI,195,Ivory Coast,CIV,195,Ivory Coast,CIV,146,Ivory Coast +eez,NG,196,Nigeria,NG,NG,196,Nigeria,NGA,196,Nigeria,NGA,147,Nigeria +eez,CM,197,Cameroon,CM,CM,197,Cameroon,CMR,197,Cameroon,CMR,148,Cameroon +eez,GA,198,Gabon,GA,GA,198,Gabon,GAB,198,Gabon,GAB,149,Gabon +eez,CD,199,Democratic Republic of the Congo,CD,CD,199,Democratic Republic of the Congo,COD,199,Democratic Republic of the Congo,COD,150,Democratic Republic of the Congo +eez,AO,200,Angola,AO,AO,200,Angola,AGO,200,Angola,AGO,151,Angola +eez,TZ,202,Tanzania,TZ,TZ,202,Tanzania,TZA,202,Tanzania,TZA,152,Tanzania +eez,AN,26,Andaman and Nicobar,IN,IN-XAN,26,Andaman and Nicobar,IND,203,India,Andaman and Nicobar,153,India +eez,IN,203,India,IN,IN,203,India,IND,203,India,IND,153,India +eez,BD,204,Bangladesh,BD,BD,204,Bangladesh,BGD,204,Bangladesh,BGD,154,Bangladesh +eez,MM,205,Myanmar,MM,MM,205,Myanmar,MMR,205,Myanmar,MMR,155,Myanmar +eez,BN,247,Brunei,BN,BN,247,Brunei,BRN,247,Brunei,MYS,156,Malaysia +eez,MY,206,Malaysia,MY,MY,206,Malaysia,MYS,206,Malaysia,MYS,156,Malaysia +eez,VN,207,Vietnam,VN,VN,207,Vietnam,VNM,207,Vietnam,VNM,157,Vietnam +eez,SG,208,Singapore,SG,SG,208,Singapore,SGP,208,Singapore,SGP,158,Singapore +eez,CN,209,China,CN,CN,209,China,CHN,209,China,CHN,159,China +eez,JP,210,Japan,JP,JP,210,Japan,JPN,210,Japan,JPN,160,Japan +eez,KI,212,Kiribati,KI,KI-G,212,Kiribati,KIR,212,Kiribati,KIR,161,Kiribati +eez,LG,148,Line Group,KI,KI-L,148,Line Group,KIR,212,Kiribati,Line Group,161,Kiribati +eez,PX,157,Phoenix Group,KI,KI-P,157,Phoenix Group,KIR,212,Kiribati,Phoenix Group,161,Kiribati +eez,AQ,213,Antarctica,AQ,AQ,213,Antarctica,ATA,213,Antarctica,ATA,162,Antarctica +eez,EG,214,Egypt,EG,EG,214,Egypt,EGY,214,Egypt,EGY,163,Egypt +eez,XD,255,DISPUTED,,XD-EG-SD,252,Disputed Sudan-Egypt,0,0,Disputed Egypt-Sudan,EGY,174,Disputed Egypt-Sudan +eez,JO,215,Jordan,JO,JO,215,Jordan,JOR,215,Jordan,JOR,164,Jordan +eez,ID,216,Indonesia,ID,ID,216,Indonesia,IDN,216,Indonesia,IDN,165,Indonesia +eez,CA,218,Canada,CA,CA,218,Canada,CAN,218,Canada,CAN,166,Canada +eez,PM,219,Saint Pierre and Miquelon,PM,PM,219,Saint Pierre and Miquelon,SPM,179,France,SPM,167,Saint Pierre and Miquelon +eez,SE,222,Sweden,SE,SE,222,Sweden,SWE,222,Sweden,SWE,168,Sweden +eez,BV,105,Bouvet Island,BV,BV,105,Bouvet Island,BVT,223,Norway,BVT,169,Norway +eez,NO,223,Norway,NO,NO,223,Norway,NOR,223,Norway,NOR,169,Norway +eez,SJ,144,Jan Mayen,SJ,SJ,144,Jan Mayen,SJM,223,Norway,SJM,169,Norway +eez,CL,224,Chile,CL,CL,224,Chile,CHL,224,Chile,CHL,170,Chile +eez,CL,224,Chile,CL,CL-XEA,225,Easter Island,CHL,224,Chile,Easter Island,170,Chile +eez,OE,237,Oecussi Ambeno,TL,TL-OE,237,Oecussi Ambeno,TLS,231,East Timor,Oecussi Ambeno,171,East Timor +eez,TL,231,East Timor,TL,TL,231,East Timor,TLS,231,East Timor,TLS,171,East Timor +fao,XAAN,268,"Atlantic, Antarctic",,,1048,"Atlantic, Antarctic",,,,,, +fao,XAEC,264,"Atlantic, Eastern Central",,,1034,"Atlantic, Eastern Central",,,,,, +fao,XANE,262,"Atlantic, Northeast",,,1027,"Atlantic, Northeast",,,,,, +fao,XANW,261,"Atlantic, Northwest",,,1021,"Atlantic, Northwest",,,,,, +fao,XARC,260,Arctic Sea,,,1018,Arctic Sea,,,,,, +fao,XASE,267,"Atlantic, Southeast",,,1047,"Atlantic, Southeast",,,,,, +fao,XASW,266,"Atlantic, Southwest",,,1041,"Atlantic, Southwest",,,,,, +fao,XAWC,263,"Atlantic, Western-Central",,,1031,"Atlantic, Western-Central",,,,,, +eez,BA,232,Bosnia and Herzegovina,BA,BA,232,Bosnia and Herzegovina,BIH,232,Bosnia and Herzegovina,BIH,172,Bosnia and Herzegovina +eez,AZ,255,Azerbaijan,AZ,AZ,241,Azerbaijan,AZE,233,Azerbaijan,,173, +eez,KZ,255,Kazakhstan,KZ,KZ,242,Kazakhstan,KAZ,235,Kazakhstan,,173, +eez,TM,255,Turkmenistan,TM,TM,243,Turkmenistan,TKM,236,Turkmenistan,,173, +eez,XD,255,DISPUTED,,XD-AU-TL,238,Australia - East Timor,0,0,Joint Development,,174, +eez,XD,255,DISPUTED,,XD-AU-PG,239,Australia - Papua New Guinea,0,0,Australia - Papua New Guinea,,174, +eez,XD,255,DISPUTED,,XD-AU-ID,251,Australia/Indonesia,0,0,Australia/Indonesia,,174, +eez,XD,255,DISPUTED,,XD-CL-PE,240,Chile/Peru,0,0,Disputed,,174, +eez,XD,255,DISPUTED,,XD-CO-JM,165,Colombia - Jamaica,0,0,Joint Regime,,174, +eez,XD,255,DISPUTED,,XD-CN-JP,217,Conflict Zone,0,0,Disputed,,174, +eez,XD,255,DISPUTED,,XD-JP-KP,211,Japan - Korea,0,0,Joint Regime,,174, +eez,XD,255,DISPUTED,,XD-JP-KR,226,Japan - South Korea Conflict Zone,0,0,Disputed,,174, +eez,XD,255,DISPUTED,,XD-NE-ST,201,Nigeria - Sao Tome and Principe,0,0,Joint Regime,,174, +fao,XIAN,271,"Indian Ocean, Antarctic And Southern",,,1058,"Indian Ocean, Antarctic And Southern",,,,,, +fao,XIEA,270,"Indian Ocean, Eastern",,,1057,"Indian Ocean, Eastern",,,,,, +fao,XIWE,269,"Indian Ocean, Western",,,1051,"Indian Ocean, Western",,,,,, +fao,XMED,265,Mediterranean And Black Sea,,,1037,Mediterranean And Black Sea,,,,,, +fao,XPAN ,278,"Pacific, Antarctic",,,1088,"Pacific, Antarctic",,,,,, +fao,XPEC,275,"Pacific, Eastern Central",,,1077,"Pacific, Eastern Central",,,,,, +fao,XPNE,273,"Pacific, Northeast",,,1067,"Pacific, Northeast",,,,,, +fao,XPNW,272,"Pacific, Northwest",,,1061,"Pacific, Northwest",,,,,, +fao,XPSE,277,"Pacific, Southeast",,,1087,"Pacific, Southeast",,,,,, +fao,XPSW,276,"Pacific, Southwest",,,1081,"Pacific, Southwest",,,,,, +fao,XPWC,274,"Pacific, Western Central",,,1071,"Pacific, Western Central",,,,,, +eez,XD,255,DISPUTED,,XD-PF,22,Paracel Islands,0,22,Disputed,,174, +eez,XD,255,DISPUTED,,XD-KU,27,Southern Kuriles,0,0,Disputed,,174, +eez,XD,255,DISPUTED,,XD-PG,23,Spratly Islands,0,23,Disputed,,174, diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data-raw/rgn_eez_v2013a_synonyms.csv new file mode 100644 index 0000000..908d3a8 --- /dev/null +++ b/data-raw/rgn_eez_v2013a_synonyms.csv @@ -0,0 +1,296 @@ +rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ +1,Cocos (Keeling) Islands,CC,CCK,ohi_region +7,British Solomon Islands,SB,SLB,ohi_region +9,Federated State of Micronesia,FM,FSM,ohi_region +9,"Micronesia, FS",FM,FSM,ohi_region +9,Micronesia (Fed. States of),FM,FSM,ohi_region +9,Micronesia (Federated States of),FM,FSM,ohi_region +9,Micronesia Federated States of,FM,FSM,ohi_region +9,"Micronesia, Fed. States of",FM,FSM,ohi_region +9,"Micronesia, Fed. Sts.",FM,FSM,ohi_region +9,"Micronesia, Fed.States of",FM,FSM,ohi_region +9,"Micronesia, Federated States of",FM,FSM,ohi_region +12,United States Minor Outlying Islands (Wake Is.),WI,Wake Island,ohi_region +13,Guam,MP,MNP,ohi_region +13,N. Mariana Islands,MP,MNP,ohi_region +13,Northern Mariana Is.,MP,MNP,ohi_region +13,Northern Mariana Islands,MP,MNP,ohi_region +14,"China, Taiwan Province of",TW,TWN,ohi_region +14,Taiwan (China),TW,TWN,ohi_region +14,Taiwan Province of China,TW,TWN,ohi_region +14,"Taiwan, China",TW,TWN,ohi_region +14,"Taiwan, Province of China",TW,TWN,ohi_region +18,"Fiji, Republic of",FJ,FJI,ohi_region +20,"Korea, South",KR,KOR,ohi_region +20,"Korea, South (Republic of Korea)",KR,KOR,ohi_region +20,Korea Republic of,KR,KOR,ohi_region +20,"Korea, Rep.",KR,KOR,ohi_region +20,"Korea, Republic of",KR,KOR,ohi_region +20,Republic of Korea,KR,KOR,ohi_region +20,Korea (Republic of),KR,KOR,ohi_region +21,"Korea, Dem. People's Rep.",KP,PRK,ohi_region +21,Democratic People's Republic of Korea,KP,PRK,ohi_region +21,"Korea, Dem. People's Rep",KP,PRK,ohi_region +21,"Korea, Dem. People's Rep. of",KP,PRK,ohi_region +21,"Korea, Dem. Rep.",KP,PRK,ohi_region +21,"Korea, Democratic People's Republic of",KP,PRK,ohi_region +21,Korea (North),KP,PRK,ohi_region +21,"Korea, North",KP,PRK,ohi_region +28,Comoros,KM,COM,ohi_region +32,R.+union,RE,REU,ohi_region +32,R_union,RE,REU,ohi_region +32,Reunion,RE,REU,ohi_region +32,Réunion,RE,REU,ohi_region +37,British Indian Ocean Territory (Chagos Archipelago),MU,MUS,ohi_region +39,"Maldives, Republic of",MV,MDV,ohi_region +42,Madagasca,MG,MDG,ohi_region +47,"Yemen, Rep.",YE,YEM,ohi_region +49,Sudan (former),SD,SDN,ohi_region +56,Cabo Verde,CV,CPV,ohi_region +62,Morocco (includes Western Sahara),MA,MAR,ohi_region +65,"Gambia, The",GM,GMB,ohi_region +65,The Gambia,GM,GMB,ohi_region +67,Libyan Arab Jamahiriya,LY,LBY,ohi_region +73,Russian Federation,RU,RUS,ohi_region +73,Russian Federation (before 9.91: USSR),RU,RUS,ohi_region +73,Un. Sov. Soc. Rep.,RU,RUS,ohi_region +77,Syrian Arab Republic,SY,SYR,ohi_region +89,South Georgia and South Sandwich Islands,GS,SGS,ohi_region +94,Heard Island and McDonald Islands,HM,HMD,ohi_region +95,Falkland Is.(Malvinas),FK,FLK,ohi_region +95,Falkland Islands (Islas Malvinas),FK,FLK,ohi_region +95,Falkland Islands (Malvinas),FK,FLK,ohi_region +100,Congo,CG,COG,ohi_region +100,Congo Rep of,CG,COG,ohi_region +100,Republic of Congo,CG,COG,ohi_region +100,"Congo, R.+publique du",CG,COG,ohi_region +100,"Congo, R_publique du",CG,COG,ohi_region +100,"Congo, Rep.",CG,COG,ohi_region +100,"Congo, Republic of",CG,COG,ohi_region +100,"Congo, Republic of the",CG,COG,ohi_region +100,R.+publique du Congo,CG,COG,ohi_region +100,R_publique du Congo,CG,COG,ohi_region +100,"Congo, Republique du",CG,COG,ohi_region +103,S.+Principe,ST,STP,ohi_region +110,Bahamas (The),BS,BHS,ohi_region +110,"Bahamas, The",BS,BHS,ohi_region +110,The Bahamas,BS,BHS,ohi_region +111,Turks and Caicos Is.,TC,TCA,ohi_region +116,Puerto Rico,PR,PRI,ohi_region +116,United States Virgin Islands,PR,PRI,ohi_region +116,USVI,PR,PRI,ohi_region +116,US Virgin Islands,PR,PRI,ohi_region +116,Virgin Islands,PR,PRI,ohi_region +116,Virgin Islands (U.S.),PR,PRI,ohi_region +116,Virgin Islands (US),PR,PRI,ohi_region +116,"Virgin Islands, U.S.",PR,PRI,ohi_region +117,UK Virgin Islands,VG,VGB,ohi_region +117,Virgin Islands (British),VG,VGB,ohi_region +117,"Virgin Islands, British",VG,VGB,ohi_region +119,Saint Kitts & Nevis,KN,KNA,ohi_region +119,St Kitts and Nevis,KN,KNA,ohi_region +119,St. Kitts & Nevis,KN,KNA,ohi_region +119,St. Kitts and Nevis,KN,KNA,ohi_region +120,Antigua & Barbuda,AG,ATG,ohi_region +122,St Lucia,LC,LCA,ohi_region +122,St. Lucia,LC,LCA,ohi_region +123,Commonwealth of Dominica,DM,DOM,ohi_region +126,Trinidad & Tobago,TT,TTO,ohi_region +126,Trinidad & Tobago,TT,TTO,ohi_region +127,Saint Vincent & the Grenadines,VC,VCT,ohi_region +127,Saint Vincent/Grenadines,VC,VCT,ohi_region +127,St Vincent and the Grenadines,VC,VCT,ohi_region +127,St. Vincent & the Grenadines,VC,VCT,ohi_region +127,St.Vincent & Grenadines,VC,VCT,ohi_region +127,St. Vincent and The Grenadines,VC,VCT,ohi_region +127,St. Vincent and the Grenadines,VC,VCT,ohi_region +137,Ecuador,EC,ECU,ohi_region +137,Galapagos,EC,ECU,ohi_region +139,Venezuela (Bolivarian Republic of),VE,VEN,ohi_region +139,Venezuela Bolivarian Republic of,VE,VEN,ohi_region +139,"Venezuela, Boliv Rep of",VE,VEN,ohi_region +139,"Venezuela, Bolivarian Republic of",VE,VEN,ohi_region +139,"Venezuela, RB",VE,VEN,ohi_region +140,Guadeloupe,GX,Guadeloupe and Martinique,ohi_region +140,Martinique,GX,Guadeloupe and Martinique,ohi_region +141,Faroe Islands,FO,FRO,ohi_region +144,Svalbard and Jan Mayen,SJ,SJM,ohi_region +144,Svalbard and Jan Mayen Islands,SJ,SJM,ohi_region +146,Pitcairn Islands,PN,PCN,ohi_region +147,French Polynesia (Tuamotu),PF,PYF,ohi_region +158,Howland Island,HB,Howland Island and Baker Island,ohi_region +161,Wallis and Futuna Islands,WF,WLF,ohi_region +161,Wallis and Futuna Is.,WF,WLF,ohi_region +163,United States of America,US,USA,ohi_region +167,British Guyana,GY,GUY,ohi_region +168,Surinam,SR,SUR,ohi_region +169,French Guyana,GF,GUF,ohi_region +171,Brazil,BR,BRA,ohi_region +171,Trinidade,BR,BRA,ohi_region +180,UK,GB,GBR,ohi_region +180,United Kingdom of Great Britain and Northern Ireland,GB,GBR,ohi_region +186,Serbia and Montenegro,ME,SCG,ohi_region +191,Iran (Islamic Rep. of),IR,IRN,ohi_region +191,Iran (Islamic Republic of),IR,IRN,ohi_region +191,Iran Islamic Republic of,IR,IRN,ohi_region +191,"Iran, Islamic Rep.",IR,IRN,ohi_region +191,"Iran, Islamic Republic of",IR,IRN,ohi_region +193,Guinea-Bissau,GW,GNB,ohi_region +193,Guinea-bissau,GW,GNB,ohi_region +195,C.+voire,CI,CIV,ohi_region +195,Cote d'Ivoire,CI,CIV,ohi_region +195,Cote d'ivorie,CI,CIV,ohi_region +199,Congo (Democratic Republic of the),CD,COD,ohi_region +199,"Congo, Dem. Rep.",CD,COD,ohi_region +199,"Congo, Dem. Rep. of the",CD,COD,ohi_region +199,"Congo, Dem rep. of",CD,COD,ohi_region +199,"Congo, Democratic Republic",CD,COD,ohi_region +199,"Congo, Democratic Republic of the",CD,COD,ohi_region +199,"Congo, Democratic Republic of",CD,COD,ohi_region +199,"Congo, The Democratic Republic of the",CD,COD,ohi_region +199,Dem. Rep. Congo,CD,COD,ohi_region +199,"Congo, DR",CD,COD,ohi_region +199,Dem. Rep. of the Congo,CD,COD,ohi_region +199,Democratic Republic of Congo,CD,COD,ohi_region +199,Zaire,CD,COD,ohi_region +202,Tanzania (United Republic of),TZ,TZA,ohi_region +202,Tanzania United Republic of,TZ,TZA,ohi_region +202,Zanzibar,TZ,TZA,ohi_region +202,"Tanzania, United Rep. of",TZ,TZA,ohi_region +202,"Tanzania, United Republic of",TZ,TZA,ohi_region +202,United Rep. of Tanzania,TZ,TZA,ohi_region +202,United Republic of Tanzania,TZ,TZA,ohi_region +205,Burma/Myanmar,MM,MMR,ohi_region +205,Burma,MM,MMR,ohi_region +207,Viet Nam,VN,VNM,ohi_region +209,"China, Hong Kong SAR",CN,CHN,ohi_region +209,"China, Macao SAR",CN,CHN,ohi_region +209,Hong Kong,CN,CHN,ohi_region +209,Hong Kong (China),CN,CHN,ohi_region +209,Hong Kong China (SAR),CN,CHN,ohi_region +209,Hong Kong SAR,CN,CHN,ohi_region +209,Hong Kong SAR China,CN,CHN,ohi_region +209,"Hong Kong SAR, China",CN,CHN,ohi_region +209,"China, mainland",CN,CHN,ohi_region +209,"Hong Kong, China (SAR)",CN,CHN,ohi_region +209,Macao,CN,CHN,ohi_region +209,Macao SAR China,CN,CHN,ohi_region +209,"Macao SAR, China",CN,CHN,ohi_region +209,Macau,CN,CHN,ohi_region +209,Macau (China),CN,CHN,ohi_region +209,"Macau, China",CN,CHN,ohi_region +209,Province of China,CN,CHN,ohi_region +214,"Egypt, Arab Rep.",EG,EGY,ohi_region +219,Saint Pierre and Miqelon,PM,SPM,ohi_region +219,St Pierre and Miquelon,PM,SPM,ohi_region +219,St. Pierre and Miquelon,PM,SPM,ohi_region +219,Saint Pierre,PM,SPM,ohi_region +220,Saint Maarten (Dutch West Indies),SX,Southern Saint-Martin,ohi_region +220,Sint Maarten,SX,Southern Saint-Martin,ohi_region +220,Sint Maarten (Dutch part),SX,Southern Saint-Martin,ohi_region +220,"Sint Maarten, Dutch West Indies",SX,Southern Saint-Martin,ohi_region +220,"Saint Maarten, DWI",SX,Southern Saint-Martin,ohi_region +221,Northern Saint Martin,MF,Saint Martin,ohi_region +221,Saint Martin (French Part),MF,Saint Martin,ohi_region +221,Saint Martin,MF,Saint Martin,ohi_region +221,St. Martin (French part),MF,Saint Martin,ohi_region +224,Chile,CL,CHL,ohi_region +224,Easter Island,CL,CHL,ohi_region +231,Timor-leste,TL,TLS,ohi_region +231,Timor-Leste,TL,TLS,ohi_region +232,Bosnia-Herzegovina,BA,BIH,ohi_region +232,Bosnia Herzegovina,BA,BIH,ohi_region +244,Curacao,CW,CUW,ohi_region +244,Curaçao,CW,CUW,ohi_region +244,Cura.+ao,CW,CUW,ohi_region +245,Netherlands - Bonaire,BO,BQ,ohi_region +245,Netherlands (Kingdom of the),BO,BQ,ohi_region +247,Brunei Darussalam,BN,BRN,ohi_region +249,Sint Eustasius,EQ,Sint-Eustasius,ohi_region +76,Turkiye,TR,TUR,ohi_region +76,Türkiye,TR,TUR,ohi_region +,,,, +,,,, +255,Azerbaijan,,,landlocked +255,"Disputed Territory (Paracel Is., Spratly Is.)",,,disputed +255,Gaza Strip,,,disputed +255,Kazachstan,,,landlocked +255,Kazakhstan,,,landlocked +255,Occupied Palestinian Territory,,,disputed +255,Occupied Palestinian territory,,,disputed +255,Palestine State of,,,disputed +255,"Palestine, Occupied Tr.",,,disputed +255,Paracel Islands,,,disputed +255,Spratly Islands,,,disputed +255,Tajikistan,,,landlocked +255,Turkmenistan,,,landlocked +255,Uzbekistan,,,landlocked +255,West Bank,,,disputed +255,West Bank and Gaza,,,disputed +,Afghanistan,,,landlocked +,Andorra,,,landlocked +,Armenia,,,landlocked +,Austria,,,landlocked +,Belarus,,,landlocked +,Bhutan,,,landlocked +,Bolivia,,,landlocked +,Bolivia (Plurinat.State),,,landlocked +,Bolivia (Plurinational State of),,,landlocked +,Bolivia Plurinational State of,,,landlocked +,"Bolivia, Plurinational State of",,,landlocked +,Botswana,,,landlocked +,Burkina Faso,,,landlocked +,Burundi,,,landlocked +,Central African Republic,,,landlocked +,Chad,,,landlocked +,Czechia,,,landlocked +,Czech Republic,,,landlocked +,Czechoslovakia,,,landlocked +,Ethiopia,,,landlocked +,Ethiopia PDR,,,landlocked +,Holy See,,,landlocked +,Holy See (Vatican City),,,landlocked +,Holy See (Vatican),,,landlocked +,Hungary,,,landlocked +,Kosovo,,,landlocked +,Kyrgyz Republic,,,landlocked +,Kyrgyzstan,,,landlocked +,Lao PDR,,,landlocked +,Lao People?s Democratic Republic,,,landlocked +,Lao People's Dem. Rep.,,,landlocked +,Lao People's Democratic Republic,,,landlocked +,Laos,,,landlocked +,Lesotho,,,landlocked +,Liechtenstein,,,landlocked +,Luxembourg,,,landlocked +,Macedonia,,,landlocked +,"Macedonia, Fmr Yug Rp of",,,landlocked +,"Macedonia, FYR",,,landlocked +,Malawi,,,landlocked +,Mali,,,landlocked +,Moldova,,,landlocked +,Moldova Republic of,,,landlocked +,"Moldova, Republic of",,,landlocked +,Mongolia,,,landlocked +,Nepal,,,landlocked +,Niger,,,landlocked +,Paraguay,,,landlocked +,Republic of Moldova,,,landlocked +,Rwanda,,,landlocked +,San Marino,,,landlocked +,Serbia,,,landlocked +,Slovak Republic,,,landlocked +,Slovakia,,,landlocked +,South Sudan,,,landlocked +,Swaziland,,,landlocked +,Switzerland,,,landlocked +,TFYR Macedonia,,,landlocked +,TFYR of Macedonia,,,landlocked +,The former Yugoslav Republic of Macedonia,,,landlocked +,The Former Yugoslav Republic of Macedonia,,,landlocked +,Total,,,largescale +,Uganda,,,landlocked +,Vatican,,,landlocked +,World,,,largescale +,Zambia,,,landlocked +,Zimbabwe,,,landlocked \ No newline at end of file diff --git a/data/rgn_master.rda b/data/rgn_master.rda index 4a7bc508d51aeeb97edfbfa1700691935134627f..f70dc3dc794846d05597e9c13b5e45e573d0e5f0 100644 GIT binary patch delta 6346 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

m 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 BAGrVk diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index 8bece910b240c8d2e92b66bce18b239159833608..bed7bbd7954d064c240c53a7802cd49312a64c72 100644 GIT binary patch literal 3541 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 l07AkQx2%vA3iwiDppXFyf Date: Mon, 24 Jul 2023 15:13:50 -0700 Subject: [PATCH 07/40] added additional region synonyms --- data-raw/rgn_eez_v2013a_synonyms.csv | 592 ++++++++++++++------------- data/rgn_synonyms.rda | Bin 3541 -> 3570 bytes 2 files changed, 297 insertions(+), 295 deletions(-) diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data-raw/rgn_eez_v2013a_synonyms.csv index 908d3a8..6a8ab4b 100644 --- a/data-raw/rgn_eez_v2013a_synonyms.csv +++ b/data-raw/rgn_eez_v2013a_synonyms.csv @@ -1,296 +1,298 @@ -rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ -1,Cocos (Keeling) Islands,CC,CCK,ohi_region -7,British Solomon Islands,SB,SLB,ohi_region -9,Federated State of Micronesia,FM,FSM,ohi_region -9,"Micronesia, FS",FM,FSM,ohi_region -9,Micronesia (Fed. States of),FM,FSM,ohi_region -9,Micronesia (Federated States of),FM,FSM,ohi_region -9,Micronesia Federated States of,FM,FSM,ohi_region -9,"Micronesia, Fed. States of",FM,FSM,ohi_region -9,"Micronesia, Fed. Sts.",FM,FSM,ohi_region -9,"Micronesia, Fed.States of",FM,FSM,ohi_region -9,"Micronesia, Federated States of",FM,FSM,ohi_region -12,United States Minor Outlying Islands (Wake Is.),WI,Wake Island,ohi_region -13,Guam,MP,MNP,ohi_region -13,N. Mariana Islands,MP,MNP,ohi_region -13,Northern Mariana Is.,MP,MNP,ohi_region -13,Northern Mariana Islands,MP,MNP,ohi_region -14,"China, Taiwan Province of",TW,TWN,ohi_region -14,Taiwan (China),TW,TWN,ohi_region -14,Taiwan Province of China,TW,TWN,ohi_region -14,"Taiwan, China",TW,TWN,ohi_region -14,"Taiwan, Province of China",TW,TWN,ohi_region -18,"Fiji, Republic of",FJ,FJI,ohi_region -20,"Korea, South",KR,KOR,ohi_region -20,"Korea, South (Republic of Korea)",KR,KOR,ohi_region -20,Korea Republic of,KR,KOR,ohi_region -20,"Korea, Rep.",KR,KOR,ohi_region -20,"Korea, Republic of",KR,KOR,ohi_region -20,Republic of Korea,KR,KOR,ohi_region -20,Korea (Republic of),KR,KOR,ohi_region -21,"Korea, Dem. People's Rep.",KP,PRK,ohi_region -21,Democratic People's Republic of Korea,KP,PRK,ohi_region -21,"Korea, Dem. People's Rep",KP,PRK,ohi_region -21,"Korea, Dem. People's Rep. of",KP,PRK,ohi_region -21,"Korea, Dem. Rep.",KP,PRK,ohi_region -21,"Korea, Democratic People's Republic of",KP,PRK,ohi_region -21,Korea (North),KP,PRK,ohi_region -21,"Korea, North",KP,PRK,ohi_region -28,Comoros,KM,COM,ohi_region -32,R.+union,RE,REU,ohi_region -32,R_union,RE,REU,ohi_region -32,Reunion,RE,REU,ohi_region -32,Réunion,RE,REU,ohi_region -37,British Indian Ocean Territory (Chagos Archipelago),MU,MUS,ohi_region -39,"Maldives, Republic of",MV,MDV,ohi_region -42,Madagasca,MG,MDG,ohi_region -47,"Yemen, Rep.",YE,YEM,ohi_region -49,Sudan (former),SD,SDN,ohi_region -56,Cabo Verde,CV,CPV,ohi_region -62,Morocco (includes Western Sahara),MA,MAR,ohi_region -65,"Gambia, The",GM,GMB,ohi_region -65,The Gambia,GM,GMB,ohi_region -67,Libyan Arab Jamahiriya,LY,LBY,ohi_region -73,Russian Federation,RU,RUS,ohi_region -73,Russian Federation (before 9.91: USSR),RU,RUS,ohi_region -73,Un. Sov. Soc. Rep.,RU,RUS,ohi_region -77,Syrian Arab Republic,SY,SYR,ohi_region -89,South Georgia and South Sandwich Islands,GS,SGS,ohi_region -94,Heard Island and McDonald Islands,HM,HMD,ohi_region -95,Falkland Is.(Malvinas),FK,FLK,ohi_region -95,Falkland Islands (Islas Malvinas),FK,FLK,ohi_region -95,Falkland Islands (Malvinas),FK,FLK,ohi_region -100,Congo,CG,COG,ohi_region -100,Congo Rep of,CG,COG,ohi_region -100,Republic of Congo,CG,COG,ohi_region -100,"Congo, R.+publique du",CG,COG,ohi_region -100,"Congo, R_publique du",CG,COG,ohi_region -100,"Congo, Rep.",CG,COG,ohi_region -100,"Congo, Republic of",CG,COG,ohi_region -100,"Congo, Republic of the",CG,COG,ohi_region -100,R.+publique du Congo,CG,COG,ohi_region -100,R_publique du Congo,CG,COG,ohi_region -100,"Congo, Republique du",CG,COG,ohi_region -103,S.+Principe,ST,STP,ohi_region -110,Bahamas (The),BS,BHS,ohi_region -110,"Bahamas, The",BS,BHS,ohi_region -110,The Bahamas,BS,BHS,ohi_region -111,Turks and Caicos Is.,TC,TCA,ohi_region -116,Puerto Rico,PR,PRI,ohi_region -116,United States Virgin Islands,PR,PRI,ohi_region -116,USVI,PR,PRI,ohi_region -116,US Virgin Islands,PR,PRI,ohi_region -116,Virgin Islands,PR,PRI,ohi_region -116,Virgin Islands (U.S.),PR,PRI,ohi_region -116,Virgin Islands (US),PR,PRI,ohi_region -116,"Virgin Islands, U.S.",PR,PRI,ohi_region -117,UK Virgin Islands,VG,VGB,ohi_region -117,Virgin Islands (British),VG,VGB,ohi_region -117,"Virgin Islands, British",VG,VGB,ohi_region -119,Saint Kitts & Nevis,KN,KNA,ohi_region -119,St Kitts and Nevis,KN,KNA,ohi_region -119,St. Kitts & Nevis,KN,KNA,ohi_region -119,St. Kitts and Nevis,KN,KNA,ohi_region -120,Antigua & Barbuda,AG,ATG,ohi_region -122,St Lucia,LC,LCA,ohi_region -122,St. Lucia,LC,LCA,ohi_region -123,Commonwealth of Dominica,DM,DOM,ohi_region -126,Trinidad & Tobago,TT,TTO,ohi_region -126,Trinidad & Tobago,TT,TTO,ohi_region -127,Saint Vincent & the Grenadines,VC,VCT,ohi_region -127,Saint Vincent/Grenadines,VC,VCT,ohi_region -127,St Vincent and the Grenadines,VC,VCT,ohi_region -127,St. Vincent & the Grenadines,VC,VCT,ohi_region -127,St.Vincent & Grenadines,VC,VCT,ohi_region -127,St. Vincent and The Grenadines,VC,VCT,ohi_region -127,St. Vincent and the Grenadines,VC,VCT,ohi_region -137,Ecuador,EC,ECU,ohi_region -137,Galapagos,EC,ECU,ohi_region -139,Venezuela (Bolivarian Republic of),VE,VEN,ohi_region -139,Venezuela Bolivarian Republic of,VE,VEN,ohi_region -139,"Venezuela, Boliv Rep of",VE,VEN,ohi_region -139,"Venezuela, Bolivarian Republic of",VE,VEN,ohi_region -139,"Venezuela, RB",VE,VEN,ohi_region -140,Guadeloupe,GX,Guadeloupe and Martinique,ohi_region -140,Martinique,GX,Guadeloupe and Martinique,ohi_region -141,Faroe Islands,FO,FRO,ohi_region -144,Svalbard and Jan Mayen,SJ,SJM,ohi_region -144,Svalbard and Jan Mayen Islands,SJ,SJM,ohi_region -146,Pitcairn Islands,PN,PCN,ohi_region -147,French Polynesia (Tuamotu),PF,PYF,ohi_region -158,Howland Island,HB,Howland Island and Baker Island,ohi_region -161,Wallis and Futuna Islands,WF,WLF,ohi_region -161,Wallis and Futuna Is.,WF,WLF,ohi_region -163,United States of America,US,USA,ohi_region -167,British Guyana,GY,GUY,ohi_region -168,Surinam,SR,SUR,ohi_region -169,French Guyana,GF,GUF,ohi_region -171,Brazil,BR,BRA,ohi_region -171,Trinidade,BR,BRA,ohi_region -180,UK,GB,GBR,ohi_region -180,United Kingdom of Great Britain and Northern Ireland,GB,GBR,ohi_region -186,Serbia and Montenegro,ME,SCG,ohi_region -191,Iran (Islamic Rep. of),IR,IRN,ohi_region -191,Iran (Islamic Republic of),IR,IRN,ohi_region -191,Iran Islamic Republic of,IR,IRN,ohi_region -191,"Iran, Islamic Rep.",IR,IRN,ohi_region -191,"Iran, Islamic Republic of",IR,IRN,ohi_region -193,Guinea-Bissau,GW,GNB,ohi_region -193,Guinea-bissau,GW,GNB,ohi_region -195,C.+voire,CI,CIV,ohi_region -195,Cote d'Ivoire,CI,CIV,ohi_region -195,Cote d'ivorie,CI,CIV,ohi_region -199,Congo (Democratic Republic of the),CD,COD,ohi_region -199,"Congo, Dem. Rep.",CD,COD,ohi_region -199,"Congo, Dem. Rep. of the",CD,COD,ohi_region -199,"Congo, Dem rep. of",CD,COD,ohi_region -199,"Congo, Democratic Republic",CD,COD,ohi_region -199,"Congo, Democratic Republic of the",CD,COD,ohi_region -199,"Congo, Democratic Republic of",CD,COD,ohi_region -199,"Congo, The Democratic Republic of the",CD,COD,ohi_region -199,Dem. Rep. Congo,CD,COD,ohi_region -199,"Congo, DR",CD,COD,ohi_region -199,Dem. Rep. of the Congo,CD,COD,ohi_region -199,Democratic Republic of Congo,CD,COD,ohi_region -199,Zaire,CD,COD,ohi_region -202,Tanzania (United Republic of),TZ,TZA,ohi_region -202,Tanzania United Republic of,TZ,TZA,ohi_region -202,Zanzibar,TZ,TZA,ohi_region -202,"Tanzania, United Rep. of",TZ,TZA,ohi_region -202,"Tanzania, United Republic of",TZ,TZA,ohi_region -202,United Rep. of Tanzania,TZ,TZA,ohi_region -202,United Republic of Tanzania,TZ,TZA,ohi_region -205,Burma/Myanmar,MM,MMR,ohi_region -205,Burma,MM,MMR,ohi_region -207,Viet Nam,VN,VNM,ohi_region -209,"China, Hong Kong SAR",CN,CHN,ohi_region -209,"China, Macao SAR",CN,CHN,ohi_region -209,Hong Kong,CN,CHN,ohi_region -209,Hong Kong (China),CN,CHN,ohi_region -209,Hong Kong China (SAR),CN,CHN,ohi_region -209,Hong Kong SAR,CN,CHN,ohi_region -209,Hong Kong SAR China,CN,CHN,ohi_region -209,"Hong Kong SAR, China",CN,CHN,ohi_region -209,"China, mainland",CN,CHN,ohi_region -209,"Hong Kong, China (SAR)",CN,CHN,ohi_region -209,Macao,CN,CHN,ohi_region -209,Macao SAR China,CN,CHN,ohi_region -209,"Macao SAR, China",CN,CHN,ohi_region -209,Macau,CN,CHN,ohi_region -209,Macau (China),CN,CHN,ohi_region -209,"Macau, China",CN,CHN,ohi_region -209,Province of China,CN,CHN,ohi_region -214,"Egypt, Arab Rep.",EG,EGY,ohi_region -219,Saint Pierre and Miqelon,PM,SPM,ohi_region -219,St Pierre and Miquelon,PM,SPM,ohi_region -219,St. Pierre and Miquelon,PM,SPM,ohi_region -219,Saint Pierre,PM,SPM,ohi_region -220,Saint Maarten (Dutch West Indies),SX,Southern Saint-Martin,ohi_region -220,Sint Maarten,SX,Southern Saint-Martin,ohi_region -220,Sint Maarten (Dutch part),SX,Southern Saint-Martin,ohi_region -220,"Sint Maarten, Dutch West Indies",SX,Southern Saint-Martin,ohi_region -220,"Saint Maarten, DWI",SX,Southern Saint-Martin,ohi_region -221,Northern Saint Martin,MF,Saint Martin,ohi_region -221,Saint Martin (French Part),MF,Saint Martin,ohi_region -221,Saint Martin,MF,Saint Martin,ohi_region -221,St. Martin (French part),MF,Saint Martin,ohi_region -224,Chile,CL,CHL,ohi_region -224,Easter Island,CL,CHL,ohi_region -231,Timor-leste,TL,TLS,ohi_region -231,Timor-Leste,TL,TLS,ohi_region -232,Bosnia-Herzegovina,BA,BIH,ohi_region -232,Bosnia Herzegovina,BA,BIH,ohi_region -244,Curacao,CW,CUW,ohi_region -244,Curaçao,CW,CUW,ohi_region -244,Cura.+ao,CW,CUW,ohi_region -245,Netherlands - Bonaire,BO,BQ,ohi_region -245,Netherlands (Kingdom of the),BO,BQ,ohi_region -247,Brunei Darussalam,BN,BRN,ohi_region -249,Sint Eustasius,EQ,Sint-Eustasius,ohi_region -76,Turkiye,TR,TUR,ohi_region -76,Türkiye,TR,TUR,ohi_region -,,,, -,,,, -255,Azerbaijan,,,landlocked -255,"Disputed Territory (Paracel Is., Spratly Is.)",,,disputed -255,Gaza Strip,,,disputed -255,Kazachstan,,,landlocked -255,Kazakhstan,,,landlocked -255,Occupied Palestinian Territory,,,disputed -255,Occupied Palestinian territory,,,disputed -255,Palestine State of,,,disputed -255,"Palestine, Occupied Tr.",,,disputed -255,Paracel Islands,,,disputed -255,Spratly Islands,,,disputed -255,Tajikistan,,,landlocked -255,Turkmenistan,,,landlocked -255,Uzbekistan,,,landlocked -255,West Bank,,,disputed -255,West Bank and Gaza,,,disputed -,Afghanistan,,,landlocked -,Andorra,,,landlocked -,Armenia,,,landlocked -,Austria,,,landlocked -,Belarus,,,landlocked -,Bhutan,,,landlocked -,Bolivia,,,landlocked -,Bolivia (Plurinat.State),,,landlocked -,Bolivia (Plurinational State of),,,landlocked -,Bolivia Plurinational State of,,,landlocked -,"Bolivia, Plurinational State of",,,landlocked -,Botswana,,,landlocked -,Burkina Faso,,,landlocked -,Burundi,,,landlocked -,Central African Republic,,,landlocked -,Chad,,,landlocked -,Czechia,,,landlocked -,Czech Republic,,,landlocked -,Czechoslovakia,,,landlocked -,Ethiopia,,,landlocked -,Ethiopia PDR,,,landlocked -,Holy See,,,landlocked -,Holy See (Vatican City),,,landlocked -,Holy See (Vatican),,,landlocked -,Hungary,,,landlocked -,Kosovo,,,landlocked -,Kyrgyz Republic,,,landlocked -,Kyrgyzstan,,,landlocked -,Lao PDR,,,landlocked -,Lao People?s Democratic Republic,,,landlocked -,Lao People's Dem. Rep.,,,landlocked -,Lao People's Democratic Republic,,,landlocked -,Laos,,,landlocked -,Lesotho,,,landlocked -,Liechtenstein,,,landlocked -,Luxembourg,,,landlocked -,Macedonia,,,landlocked -,"Macedonia, Fmr Yug Rp of",,,landlocked -,"Macedonia, FYR",,,landlocked -,Malawi,,,landlocked -,Mali,,,landlocked -,Moldova,,,landlocked -,Moldova Republic of,,,landlocked -,"Moldova, Republic of",,,landlocked -,Mongolia,,,landlocked -,Nepal,,,landlocked -,Niger,,,landlocked -,Paraguay,,,landlocked -,Republic of Moldova,,,landlocked -,Rwanda,,,landlocked -,San Marino,,,landlocked -,Serbia,,,landlocked -,Slovak Republic,,,landlocked -,Slovakia,,,landlocked -,South Sudan,,,landlocked -,Swaziland,,,landlocked -,Switzerland,,,landlocked -,TFYR Macedonia,,,landlocked -,TFYR of Macedonia,,,landlocked -,The former Yugoslav Republic of Macedonia,,,landlocked -,The Former Yugoslav Republic of Macedonia,,,landlocked -,Total,,,largescale -,Uganda,,,landlocked -,Vatican,,,landlocked -,World,,,largescale -,Zambia,,,landlocked +rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ +1,Cocos (Keeling) Islands,CC,CCK,ohi_region +7,British Solomon Islands,SB,SLB,ohi_region +9,Federated State of Micronesia,FM,FSM,ohi_region +9,"Micronesia, FS",FM,FSM,ohi_region +9,Micronesia (Fed. States of),FM,FSM,ohi_region +9,Micronesia (Federated States of),FM,FSM,ohi_region +9,Micronesia (Fed. States),FM,FSM,ohi_region +9,Micronesia Federated States of,FM,FSM,ohi_region +9,"Micronesia, Fed. States of",FM,FSM,ohi_region +9,"Micronesia, Fed. Sts.",FM,FSM,ohi_region +9,"Micronesia, Fed.States of",FM,FSM,ohi_region +9,"Micronesia, Federated States of",FM,FSM,ohi_region +12,United States Minor Outlying Islands (Wake Is.),WI,Wake Island,ohi_region +13,Guam,MP,MNP,ohi_region +13,N. Mariana Islands,MP,MNP,ohi_region +13,Northern Mariana Is.,MP,MNP,ohi_region +13,Northern Mariana Islands,MP,MNP,ohi_region +14,"China, Taiwan Province of",TW,TWN,ohi_region +14,Taiwan (China),TW,TWN,ohi_region +14,Taiwan Province of China,TW,TWN,ohi_region +14,"Taiwan, China",TW,TWN,ohi_region +14,"Taiwan, Province of China",TW,TWN,ohi_region +18,"Fiji, Republic of",FJ,FJI,ohi_region +20,"Korea, South",KR,KOR,ohi_region +20,"Korea, South (Republic of Korea)",KR,KOR,ohi_region +20,Korea Republic of,KR,KOR,ohi_region +20,"Korea, Rep.",KR,KOR,ohi_region +20,"Korea, Republic of",KR,KOR,ohi_region +20,Republic of Korea,KR,KOR,ohi_region +20,Korea (Republic of),KR,KOR,ohi_region +21,"Korea, Dem. People's Rep.",KP,PRK,ohi_region +21,Democratic People's Republic of Korea,KP,PRK,ohi_region +21,"Korea, Dem. People's Rep",KP,PRK,ohi_region +21,"Korea, Dem. People's Rep. of",KP,PRK,ohi_region +21,"Korea, Dem. Rep.",KP,PRK,ohi_region +21,"Korea, Democratic People's Republic of",KP,PRK,ohi_region +21,Korea (North),KP,PRK,ohi_region +21,"Korea, North",KP,PRK,ohi_region +28,Comoros,KM,COM,ohi_region +32,R.+union,RE,REU,ohi_region +32,R_union,RE,REU,ohi_region +32,Reunion,RE,REU,ohi_region +32,Réunion,RE,REU,ohi_region +37,British Indian Ocean Territory (Chagos Archipelago),MU,MUS,ohi_region +39,"Maldives, Republic of",MV,MDV,ohi_region +42,Madagasca,MG,MDG,ohi_region +47,"Yemen, Rep.",YE,YEM,ohi_region +49,Sudan (former),SD,SDN,ohi_region +56,Cabo Verde,CV,CPV,ohi_region +62,Morocco (includes Western Sahara),MA,MAR,ohi_region +65,"Gambia, The",GM,GMB,ohi_region +65,The Gambia,GM,GMB,ohi_region +67,Libyan Arab Jamahiriya,LY,LBY,ohi_region +73,Russian Federation,RU,RUS,ohi_region +73,Russian Federation (before 9.91: USSR),RU,RUS,ohi_region +73,Un. Sov. Soc. Rep.,RU,RUS,ohi_region +77,Syrian Arab Republic,SY,SYR,ohi_region +89,South Georgia and South Sandwich Islands,GS,SGS,ohi_region +94,Heard Island and McDonald Islands,HM,HMD,ohi_region +95,Falkland Is.(Malvinas),FK,FLK,ohi_region +95,Falkland Islands (Islas Malvinas),FK,FLK,ohi_region +95,Falkland Islands (Malvinas),FK,FLK,ohi_region +100,Congo,CG,COG,ohi_region +100,Congo Rep of,CG,COG,ohi_region +100,Republic of Congo,CG,COG,ohi_region +100,"Congo, R.+publique du",CG,COG,ohi_region +100,"Congo, R_publique du",CG,COG,ohi_region +100,"Congo, Rep.",CG,COG,ohi_region +100,"Congo, Republic of",CG,COG,ohi_region +100,"Congo, Republic of the",CG,COG,ohi_region +100,R.+publique du Congo,CG,COG,ohi_region +100,R_publique du Congo,CG,COG,ohi_region +100,"Congo, Republique du",CG,COG,ohi_region +103,S.+Principe,ST,STP,ohi_region +110,Bahamas (The),BS,BHS,ohi_region +110,"Bahamas, The",BS,BHS,ohi_region +110,The Bahamas,BS,BHS,ohi_region +111,Turks and Caicos Is.,TC,TCA,ohi_region +116,Puerto Rico,PR,PRI,ohi_region +116,United States Virgin Islands,PR,PRI,ohi_region +116,USVI,PR,PRI,ohi_region +116,US Virgin Islands,PR,PRI,ohi_region +116,Virgin Islands,PR,PRI,ohi_region +116,Virgin Islands (U.S.),PR,PRI,ohi_region +116,Virgin Islands (US),PR,PRI,ohi_region +116,"Virgin Islands, U.S.",PR,PRI,ohi_region +117,UK Virgin Islands,VG,VGB,ohi_region +117,Virgin Islands (British),VG,VGB,ohi_region +117,"Virgin Islands, British",VG,VGB,ohi_region +119,Saint Kitts & Nevis,KN,KNA,ohi_region +119,St Kitts and Nevis,KN,KNA,ohi_region +119,St. Kitts & Nevis,KN,KNA,ohi_region +119,St. Kitts and Nevis,KN,KNA,ohi_region +120,Antigua & Barbuda,AG,ATG,ohi_region +122,St Lucia,LC,LCA,ohi_region +122,St. Lucia,LC,LCA,ohi_region +123,Commonwealth of Dominica,DM,DOM,ohi_region +126,Trinidad & Tobago,TT,TTO,ohi_region +126,Trinidad & Tobago,TT,TTO,ohi_region +127,Saint Vincent & the Grenadines,VC,VCT,ohi_region +127,Saint Vincent/Grenadines,VC,VCT,ohi_region +127,St Vincent and the Grenadines,VC,VCT,ohi_region +127,St. Vincent & the Grenadines,VC,VCT,ohi_region +127,St.Vincent & Grenadines,VC,VCT,ohi_region +127,St. Vincent and The Grenadines,VC,VCT,ohi_region +127,St. Vincent and the Grenadines,VC,VCT,ohi_region +137,Ecuador,EC,ECU,ohi_region +137,Galapagos,EC,ECU,ohi_region +139,Venezuela (Bolivarian Republic of),VE,VEN,ohi_region +139,Venezuela Bolivarian Republic of,VE,VEN,ohi_region +139,"Venezuela, Boliv Rep of",VE,VEN,ohi_region +139,"Venezuela, Boliv Rep of",VE,VEN,ohi_region +139,"Venezuela (Boliv Rep of)",VE,VEN,ohi_region +139,"Venezuela, RB",VE,VEN,ohi_region +140,Guadeloupe,GX,Guadeloupe and Martinique,ohi_region +140,Martinique,GX,Guadeloupe and Martinique,ohi_region +141,Faroe Islands,FO,FRO,ohi_region +144,Svalbard and Jan Mayen,SJ,SJM,ohi_region +144,Svalbard and Jan Mayen Islands,SJ,SJM,ohi_region +146,Pitcairn Islands,PN,PCN,ohi_region +147,French Polynesia (Tuamotu),PF,PYF,ohi_region +158,Howland Island,HB,Howland Island and Baker Island,ohi_region +161,Wallis and Futuna Islands,WF,WLF,ohi_region +161,Wallis and Futuna Is.,WF,WLF,ohi_region +163,United States of America,US,USA,ohi_region +167,British Guyana,GY,GUY,ohi_region +168,Surinam,SR,SUR,ohi_region +169,French Guyana,GF,GUF,ohi_region +171,Brazil,BR,BRA,ohi_region +171,Trinidade,BR,BRA,ohi_region +180,UK,GB,GBR,ohi_region +180,United Kingdom of Great Britain and Northern Ireland,GB,GBR,ohi_region +186,Serbia and Montenegro,ME,SCG,ohi_region +191,Iran (Islamic Rep. of),IR,IRN,ohi_region +191,Iran (Islamic Republic of),IR,IRN,ohi_region +191,Iran Islamic Republic of,IR,IRN,ohi_region +191,"Iran, Islamic Rep.",IR,IRN,ohi_region +191,"Iran, Islamic Republic of",IR,IRN,ohi_region +193,Guinea-Bissau,GW,GNB,ohi_region +193,Guinea-bissau,GW,GNB,ohi_region +195,C.+voire,CI,CIV,ohi_region +195,Cote d'Ivoire,CI,CIV,ohi_region +195,Cote d'ivorie,CI,CIV,ohi_region +199,Congo (Democratic Republic of the),CD,COD,ohi_region +199,"Congo, Dem. Rep.",CD,COD,ohi_region +199,"Congo, Dem. Rep. of the",CD,COD,ohi_region +199,"Congo, Dem rep. of",CD,COD,ohi_region +199,"Congo, Democratic Republic",CD,COD,ohi_region +199,"Congo, Democratic Republic of the",CD,COD,ohi_region +199,"Congo, Democratic Republic of",CD,COD,ohi_region +199,"Congo, The Democratic Republic of the",CD,COD,ohi_region +199,Dem. Rep. Congo,CD,COD,ohi_region +199,"Congo, DR",CD,COD,ohi_region +199,Dem. Rep. of the Congo,CD,COD,ohi_region +199,Democratic Republic of Congo,CD,COD,ohi_region +199,Zaire,CD,COD,ohi_region +202,Tanzania (United Republic of),TZ,TZA,ohi_region +202,Tanzania United Republic of,TZ,TZA,ohi_region +202,Zanzibar,TZ,TZA,ohi_region +202,"Tanzania, United Rep. of",TZ,TZA,ohi_region +202,"Tanzania, United Republic of",TZ,TZA,ohi_region +202,United Rep. of Tanzania,TZ,TZA,ohi_region +202,United Republic of Tanzania,TZ,TZA,ohi_region +205,Burma/Myanmar,MM,MMR,ohi_region +205,Burma,MM,MMR,ohi_region +207,Viet Nam,VN,VNM,ohi_region +209,"China, Hong Kong SAR",CN,CHN,ohi_region +209,"China, Macao SAR",CN,CHN,ohi_region +209,Hong Kong,CN,CHN,ohi_region +209,Hong Kong (China),CN,CHN,ohi_region +209,Hong Kong China (SAR),CN,CHN,ohi_region +209,Hong Kong SAR,CN,CHN,ohi_region +209,Hong Kong SAR China,CN,CHN,ohi_region +209,"Hong Kong SAR, China",CN,CHN,ohi_region +209,"China, mainland",CN,CHN,ohi_region +209,"Hong Kong, China (SAR)",CN,CHN,ohi_region +209,Macao,CN,CHN,ohi_region +209,Macao SAR China,CN,CHN,ohi_region +209,"Macao SAR, China",CN,CHN,ohi_region +209,Macau,CN,CHN,ohi_region +209,Macau (China),CN,CHN,ohi_region +209,"Macau, China",CN,CHN,ohi_region +209,Province of China,CN,CHN,ohi_region +214,"Egypt, Arab Rep.",EG,EGY,ohi_region +219,Saint Pierre and Miqelon,PM,SPM,ohi_region +219,St Pierre and Miquelon,PM,SPM,ohi_region +219,St. Pierre and Miquelon,PM,SPM,ohi_region +219,Saint Pierre,PM,SPM,ohi_region +220,Saint Maarten (Dutch West Indies),SX,Southern Saint-Martin,ohi_region +220,Sint Maarten,SX,Southern Saint-Martin,ohi_region +220,Sint Maarten (Dutch part),SX,Southern Saint-Martin,ohi_region +220,"Sint Maarten, Dutch West Indies",SX,Southern Saint-Martin,ohi_region +220,"Saint Maarten, DWI",SX,Southern Saint-Martin,ohi_region +221,Northern Saint Martin,MF,Saint Martin,ohi_region +221,Saint Martin (French Part),MF,Saint Martin,ohi_region +221,Saint Martin,MF,Saint Martin,ohi_region +221,St. Martin (French part),MF,Saint Martin,ohi_region +224,Chile,CL,CHL,ohi_region +224,Easter Island,CL,CHL,ohi_region +231,Timor-leste,TL,TLS,ohi_region +231,Timor-Leste,TL,TLS,ohi_region +232,Bosnia-Herzegovina,BA,BIH,ohi_region +232,Bosnia Herzegovina,BA,BIH,ohi_region +244,Curacao,CW,CUW,ohi_region +244,Curaçao,CW,CUW,ohi_region +244,Cura.+ao,CW,CUW,ohi_region +245,Netherlands - Bonaire,BO,BQ,ohi_region +245,Netherlands (Kingdom of the),BO,BQ,ohi_region +247,Brunei Darussalam,BN,BRN,ohi_region +249,Sint Eustasius,EQ,Sint-Eustasius,ohi_region +76,Turkiye,TR,TUR,ohi_region +76,Türkiye,TR,TUR,ohi_region +,,,, +,,,, +255,Azerbaijan,,,landlocked +255,"Disputed Territory (Paracel Is., Spratly Is.)",,,disputed +255,Gaza Strip,,,disputed +255,Kazachstan,,,landlocked +255,Kazakhstan,,,landlocked +255,Occupied Palestinian Territory,,,disputed +255,Occupied Palestinian territory,,,disputed +255,Palestine State of,,,disputed +255,"Palestine, Occupied Tr.",,,disputed +255,Paracel Islands,,,disputed +255,Spratly Islands,,,disputed +255,Tajikistan,,,landlocked +255,Turkmenistan,,,landlocked +255,Uzbekistan,,,landlocked +255,West Bank,,,disputed +255,West Bank and Gaza,,,disputed +,Afghanistan,,,landlocked +,Andorra,,,landlocked +,Armenia,,,landlocked +,Austria,,,landlocked +,Belarus,,,landlocked +,Bhutan,,,landlocked +,Bolivia,,,landlocked +,Bolivia (Plurinat.State),,,landlocked +,Bolivia (Plurinational State of),,,landlocked +,Bolivia Plurinational State of,,,landlocked +,"Bolivia, Plurinational State of",,,landlocked +,Botswana,,,landlocked +,Burkina Faso,,,landlocked +,Burundi,,,landlocked +,Central African Republic,,,landlocked +,Chad,,,landlocked +,Czechia,,,landlocked +,Czech Republic,,,landlocked +,Czechoslovakia,,,landlocked +,Ethiopia,,,landlocked +,Ethiopia PDR,,,landlocked +,Holy See,,,landlocked +,Holy See (Vatican City),,,landlocked +,Holy See (Vatican),,,landlocked +,Hungary,,,landlocked +,Kosovo,,,landlocked +,Kyrgyz Republic,,,landlocked +,Kyrgyzstan,,,landlocked +,Lao PDR,,,landlocked +,Lao People?s Democratic Republic,,,landlocked +,Lao People's Dem. Rep.,,,landlocked +,Lao People's Democratic Republic,,,landlocked +,Laos,,,landlocked +,Lesotho,,,landlocked +,Liechtenstein,,,landlocked +,Luxembourg,,,landlocked +,Macedonia,,,landlocked +,"Macedonia, Fmr Yug Rp of",,,landlocked +,"Macedonia, FYR",,,landlocked +,Malawi,,,landlocked +,Mali,,,landlocked +,Moldova,,,landlocked +,Moldova Republic of,,,landlocked +,"Moldova, Republic of",,,landlocked +,Mongolia,,,landlocked +,Nepal,,,landlocked +,Niger,,,landlocked +,Paraguay,,,landlocked +,Republic of Moldova,,,landlocked +,Rwanda,,,landlocked +,San Marino,,,landlocked +,Serbia,,,landlocked +,Slovak Republic,,,landlocked +,Slovakia,,,landlocked +,South Sudan,,,landlocked +,Swaziland,,,landlocked +,Switzerland,,,landlocked +,TFYR Macedonia,,,landlocked +,TFYR of Macedonia,,,landlocked +,The former Yugoslav Republic of Macedonia,,,landlocked +,The Former Yugoslav Republic of Macedonia,,,landlocked +,Total,,,largescale +,Uganda,,,landlocked +,Vatican,,,landlocked +,World,,,largescale +,Zambia,,,landlocked ,Zimbabwe,,,landlocked \ No newline at end of file diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index bed7bbd7954d064c240c53a7802cd49312a64c72..e2e354fd2407ea19f64e1fc439b70c01bd8ab2f7 100644 GIT binary patch literal 3570 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 literal 3541 zcmV;`4Jz_NT4*^jL0KkKSzDiw2>=(6fB*mg|Nry<{Bghk|M9>7|M|c!SOF;L1Qe)} zp)Nqc2BF{%pC1o+E}GohyI3zNl9Z__zUEy4^`Z0t06hW8;F3g|G|&lvO+7{>Jg4Z< z>I{jKQ_^Xm0009(00006nrH*jr~t_TjWSFjq!~|A4lT8^kWDJ3jWHAg7G#X?y zF&PXdO&A0QjEx#($PETSWB?*ml+)DE$N``XfHVUpfB*rY0iXZ?G{_kPBSSzmG(A9( z5deTjgG~ftWg2XzD8g!J2Gj#UWDiih<1U`wwY-?@xh#{89NY%=&#$KG*^HPso0Z6ZU@}=~AcrlCFDtHoQ=w1s((t z2B^Wb;Nb;90@^5`%WKW1-t@mOy!;#t0lL|G0C%_691u@6O0ED!MP0j;B*Sg$APe*K1aWyY>x5UeKadDKUOUo>PYaN-em=J}T1amhwFfm#V z8u=~-_W-OysJkkeg;Q$1eRN@ z;8eC&9=7kY8O5}dGG9}RwP_7nCbQbJB{<&4KcJ)uNE>rr3@dmS3nKe$-ujdF#r?4U zgZfQ>GngX3+OLFaNnBS27E`n7c!D3M4;po)Yeu{RnnQ%rjJX!uj)$wmNw>zjA7%QY zZ`5Gu#FA|kKp}Tqvn>DRD;WcNovA+zUooHpNwzA^#0)6YC(Mk5TtN}8>sEz^qJYS^ zGo(s{eaqgVUK;K51ZI6VO(57*D5aUBU9P3ki&q68YO0;UV|aAb*V|UT4jE-QwWbi1XUEJ1PiE&wS9Wbl@w7$Dp?H0eQr301O@@@ zMY7~18$s|4^vKzV)WQ`i51R?=eW0vxZN*|9K+-Uf0pV-i)al}Mn#6H`C#R=n-h4J(CB8Z=XZny|5!B^Q!9-DIh5 zL89tbkh;9B7?dP)g+whVd#DQnPybe6Eu~ICkq-$YebJ!=rjewq^CBzYsv$sBfpg%L z+9VQ6In>~0rw6TAV2nfzKoUsjV-yE0rTEmodQh2bjzkDHb@_A?$g+jW2EnzOhN!_% z4DVm6VZX9Ax0AIj{HSEI*86`x6GXkw5 zH0RNl%Im*OU3J|y73HPeRO7=`vj(xk3Eib&D=jODn?>0}u{PUL05O=jm~h~?rX@25 zQd})hETdE+BD@i*0#OkV2A!13Qw0N_yrre&z|bRk?Ag!i#3)Dd>{`{pE&Qq4-r}|J zs8zd7EVsJuLC;o}W)YeXW7chDG*A z19PL6EPIfn7ERpHZ*w&_vLH8}u;2j3+Zj+rjN4Si>_o*r&8s zK&#YBLNx$r3p@kQQ_hcQ8VLZw?e}apdO9Tw(MTKrreex3`-{XN0T8Nf9n&Wft5eUD}VBZz#AqZBnpZ~31qMn>NF_D_On z6FOx1$3$d|<2CDSV^*MG>u|Z_oF`1;mbU^R-F8Wh0ymf}Y-XFAGxhGy3hiPfIGIiw zoN`ISTW2od>IlBT%#~a;A&Rc1hC^*BB#yQ?2nb7LBpMnTO)E3&_&K^LaeMZ0Q5v7g zY)3r_J=d>;h8ucNU)tYSa)U<}y~;PQGw07!CfKsgG&*IO&euZ7NxthXR z$ub!XnObwR=$#6cb~N9A8-Ubo?3(dlu`Yv*4nP(zIPVN1?TWfhjW!*b4MH=^xL;V_ zxh=Nc59>{{H-c-twhF)puAA#bASVZaPys+tfRI3%?+XE7rxF+t69UY*fg%WO97X>= z`Kp%a3-CvTy~@WoU#fUPD&1(#&QX?$GA9L6Sy5f2F0Y1KkM z&P@TDG(8G)X(rOJ8yro8v~*d3>_bBmV?LE704e$6uY8L@R%rB_!pIIy9t<()sukcN zG?am*hI4u7fCA4BEX4IFo`VYfIqm4MT;R|#A4M{Wo?~jgb?7?}pj*`TEq@U`cpmqb z%C`S2G7>MEMZhI~Z4zsO0-#s&Rm61OCP^u^p1h9RKhmEw_ghRh@Z z5-1oL(gKV_0k9i#HQq>HIXG6y?nSLwDp(Siq($LrA4z~1R3o5G~U+M6>O3*k`Yyu5LsX)HPSWp z+59+yEDXjJxYCVQ_i$7Hp4H|N{~wtGGTg?^*rZ2#B#KF9)&pC4B{`9qkRuiNr>cUt zc%=jMkqZkz9k{mimYeKiu*Ic58On(9_XDyb0?mfT8#(SrXp&!%J>H*&p4RJuZDRSa z+GdKMO^C=qgwaG*jg6$4X+>oC*l~KA>w$zrfw9L~V&r_~LAIDQ(6|H$R@jh96^J-r zvE$3nr{D4j5UFTfPk%%2;TtT5_9y~`1>~|m7NCRzs`pHyquhb6&n{p!onuUBZ~#`y z5cTvKh|*Hf()dn$ACeptqTVBZ9#c|Yjoz}R z`;;uvyU{JS+CymFsf_@IWH8cO)fZJ_h&s#7NGy$EVS+jJ2=Vgu=HhQpM2LhOA=%g1 zXAGJ@KTx8m!U2twm6O~5kI5uAQIA!%x@*IQl`O5&m)O{7peypnh- z)Ff&gAP}G&KtSzt6Ai&662*IxjG96qpoWtnstrF5v{H?X6YOomRZ7%HH;=m_3WF>X z3x0ZpkQ!P-pjNPz>pK+?)UZv`2tcN=Ha<54B7&$jHOwLjZr4C!2AG|G}}&^NFkJA9<%JlETS3exVV(6*>ps2 zRAG{(OAy3KB>@HKiq>HwaeGDG@}WjBY7%EzKvA#1*j}(L{`h3M1e#wF?TNUJXhyLoJyK*DWCKs5?l~ z^sF`vZI?$kYTo*1g$W$fTA62z3y5P&uu+tYMoYT(e+!Db*-oiYH0-8VXtQjR8n`m6 z$rJ>0_KWt)5)gq@dIuF#1)ytPb$o$HM_$YNyE5yg#r>RRjc7+socUUM Date: Tue, 25 Jul 2023 14:56:35 -0700 Subject: [PATCH 08/40] finished updating synonyms --- data-raw/rgn_eez_v2013a_synonyms.csv | 2 ++ 1 file changed, 2 insertions(+) diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data-raw/rgn_eez_v2013a_synonyms.csv index 6a8ab4b..9359b9f 100644 --- a/data-raw/rgn_eez_v2013a_synonyms.csv +++ b/data-raw/rgn_eez_v2013a_synonyms.csv @@ -162,6 +162,7 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 202,"Tanzania, United Republic of",TZ,TZA,ohi_region 202,United Rep. of Tanzania,TZ,TZA,ohi_region 202,United Republic of Tanzania,TZ,TZA,ohi_region +202,"United Republic of Tanzania,Zanzibar",TZ,TZA,ohi_region 205,Burma/Myanmar,MM,MMR,ohi_region 205,Burma,MM,MMR,ohi_region 207,Viet Nam,VN,VNM,ohi_region @@ -209,6 +210,7 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 245,Netherlands (Kingdom of the),BO,BQ,ohi_region 247,Brunei Darussalam,BN,BRN,ohi_region 249,Sint Eustasius,EQ,Sint-Eustasius,ohi_region +83,Saint Helena/Asc./Trist.,SH,SHN,ohi_region 76,Turkiye,TR,TUR,ohi_region 76,Türkiye,TR,TUR,ohi_region ,,,, From c59c3d3b41988e0bdf5b9b5d74ac612002e8c812 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Tue, 25 Jul 2023 15:00:38 -0700 Subject: [PATCH 09/40] updated synonyms --- data/rgn_synonyms.rda | Bin 3570 -> 3581 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index e2e354fd2407ea19f64e1fc439b70c01bd8ab2f7..f4a5038eabb4b45251d304f6781237867dc6abd3 100644 GIT binary patch literal 3581 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 literal 3570 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 From 27566b9d51ce18451e604c8e18823aa00ccf9b79 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Tue, 25 Jul 2023 15:09:20 -0700 Subject: [PATCH 10/40] fixing issue with synonym --- data-raw/rgn_eez_v2013a_synonyms.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data-raw/rgn_eez_v2013a_synonyms.csv index 9359b9f..7a18812 100644 --- a/data-raw/rgn_eez_v2013a_synonyms.csv +++ b/data-raw/rgn_eez_v2013a_synonyms.csv @@ -162,7 +162,7 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 202,"Tanzania, United Republic of",TZ,TZA,ohi_region 202,United Rep. of Tanzania,TZ,TZA,ohi_region 202,United Republic of Tanzania,TZ,TZA,ohi_region -202,"United Republic of Tanzania,Zanzibar",TZ,TZA,ohi_region +202,"United Republic of Tanzania, Zanzibar",TZ,TZA,ohi_region 205,Burma/Myanmar,MM,MMR,ohi_region 205,Burma,MM,MMR,ohi_region 207,Viet Nam,VN,VNM,ohi_region From b04869f934d51ef3b3d0c6ed6fe814f22983e0c1 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Tue, 25 Jul 2023 15:09:20 -0700 Subject: [PATCH 11/40] fixing issue with synonym --- data-raw/rgn_eez_v2013a_synonyms.csv | 2 +- data/rgn_synonyms.rda | Bin 3581 -> 3598 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data-raw/rgn_eez_v2013a_synonyms.csv index 9359b9f..7a18812 100644 --- a/data-raw/rgn_eez_v2013a_synonyms.csv +++ b/data-raw/rgn_eez_v2013a_synonyms.csv @@ -162,7 +162,7 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 202,"Tanzania, United Republic of",TZ,TZA,ohi_region 202,United Rep. of Tanzania,TZ,TZA,ohi_region 202,United Republic of Tanzania,TZ,TZA,ohi_region -202,"United Republic of Tanzania,Zanzibar",TZ,TZA,ohi_region +202,"United Republic of Tanzania, Zanzibar",TZ,TZA,ohi_region 205,Burma/Myanmar,MM,MMR,ohi_region 205,Burma,MM,MMR,ohi_region 207,Viet Nam,VN,VNM,ohi_region diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index f4a5038eabb4b45251d304f6781237867dc6abd3..1ea2505bd1312928d709aee4feb8b1d57866d15b 100644 GIT binary patch literal 3598 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 UB!q1VAs_g=k}1N3fXE9;plOJLz5oCK literal 3581 zcmV7|M|c!SOF;L1Qe)} zqYgm82BF{%zk2w0fPG%_Yq#B9x7*#%W~xP0uN}A@KDwbmbu9<3s=0T9NlgskIsaGyoa{KmY&+hJzpmnKS{C08Bz;(rRht4MRqa4^RLA z000^QXaE2J02)0;f$B8SHB<1KB+8yCR&;vj{AZP}Lho}-HAess25Nde?MLiVtKN6p$(^G0_0MGyihK(5-00000 z00x2f5Bv!T?$Ks=>c)W~Ul1e$z|p3-1YFWc+}zvUSs>pUqCksY1%!|z&f&AIizKFy zi3JNQB#=#^8oNS-hpi|Q0kk7;LWHsgk~(RrmQdDgHd{k&yf}OMDq7oH^4@x#9K)OJ z0oi+DcilVP^T0ML0X!#&d}osI^7*{}gVXBu)4e^1x89!u`S_#q1Ll1`s2_Xq{3ql; zMgjXjkMyZi{cNs!(0CkBp%oigC=Lw3)$njaD1mPj1ZOIq*KvAZ9Ug~~((X??y66Jv z{lXkninM45UnB2RJwtNgFqyQ(fZ~*UZ z1S4`4raBrNA(fLLLlCg_F9m@`mhW5&mdiud-Tp?lHbm5y&Bfa?4O()F)dwuqPdV7= zNQzLL+HnQ;yo?3%erve@Vt*O=3_q~`(^re_2eXq^HS~iDGj(i)oT;ccaX9deANDql*Netbr>>#T27~dz6TJ^ z%roE0Mk?E{?7U*cXLWfvYfoT`IAz)GblCuFm zS+N3)7)TXdNYFwk6oj(O(AFgmj3`GGqjE{G*xPiLu9c!-V^dC-X3H>UcZM6an8K6T z-OBWxuXiQdSj^jbauVNIVQ;~hZDN^xU{eDd(v|U!Qq*>37PGXoB8FQr98IPTHaBc$ zF3$BaD!W24Xu%RQg8QgrPDRN{2*SXdNQ{`V-IkZe)j|-S`Qh4I9GRlXg`koIvP%oz zTzR4_1@I1-t=Y53f^D{>0gTDYjyPk-N=(&dsleSl_+u<0A}O9(U?kgYCb}N#d(bVJ zH-d_^tX7v;TkqBDZIM)Je%71LYYy2>{V1|~i&x=Pm8hKSjAl0OO*2_?t?OxRVRRc` zR)gmIAWwPyIP~XVqkELJX1;?$8dOAbnocLIz|ebk=szS&nwkG&_m7lFK0FVcb<-~= zO{qVT%04cgM5WNsrtb3rY=nXnRzgAVBq3Urq$!6Mjt_00EYcodpN;$e&{~RT5ioUa zelyjJr_}27>(NiB?w%8cD{H*dg23F+R5M?Gd^VZ~s9-NOc9DbmV+9X#*~b#4K=T}l z2*yRM6|fBW>&t&yZPOG!SnPOW>u*AZ2?-PgCk$xdZs9{n&Q?P@nK^Sg96~re?x{%6 z$Rb%I&dOA>keEJLAr|*A^ggyP3nQ%WXC__e7hXJ2fS-wQR&s6Y+LrEEWa{y-@woJ7 zU2@0hWdj4IEh5q(Rn=@-Ccgp=h8cvD|35E;Y?_7Bdm31JjEKmP(pyWdY)e+Ha?`Jy zcbl6W&r{#zNj_ahZUWrX3{G57kKvv&hh%=_1dJ9+L0eUG<0)a!1BgjayHKreAo@DzMxjCfXtXanQ6yI~;>0cw+oKcAx24>9I+ZwDx z2;ZtCL<%X~^1IpmNP{!fpl8v?V4G`1Iy5?ql)}SmM2CnZrC);v4f%5C-5%0Lwhe)P z+%;Q&M$VJ5E*=}Q`e~CYE09PU8W;=(DCO)f&iQAPO3UKYZ$=lMzWC#i(%97BhSnG_ z?r$ra0koo`+;?uXs#H)zb}m&_S7TqTOI?fIYPN4*zgk_@n~yS95@9hk*7QcaMc&H% zr!;HsKpr!%)AwxT&)(SwBruVcXUsl{acN`4!qZz7i%7j&JGWrY(#tLQb17q103^lE zzE=)+H^1<>4B9rtgeXS`zuTgWBgPXM+uk_{*f}$IS*q%sVdHKQS&qaiL7|m>N?O;u zFd{6K5>&yfSvMQL{@HI4WyDoS9)EC_wWe@?r&xvd_VWG6~dn59WN-Si@2Jrhnl ziYx{MR~i`8Fr_6G%Ag1_)#guH$68ggNXAG-R!~J|X-Z3_b2Zue!9;5eMhVz%3i|po zXQ%yoSBxY4d9WiErZ#Hd#E~x8rbTqKc&wcugDGPhzj!=m}c2vxxfR(cE;au{TC^MnT5dAF(e19!Zd`0CPV0f zjg6$4Sv6F;>Nk5D+XD!P17nS)OMUDp4Ya|gg`7x2uB3uQQXtU#oqQWNJf1-z3VF-$ zbln{_=B00vxgu&qhU%14JtV=-a2CwP1cteeTtHedg+_fpIy*Ulm1#JXWt+1Jb>m@6b0|qpsqQjKEE}dQShPxCjQLCmyZMKlwHD1Pq zAyo`F3i#s6E0G4$()1NZP^iF-mx$}-+mjyaal<5tL7+Ld^BB>Eqvc+UE;$iuy0G${yjb3(2?`TgErm>iJ8J+979@;V5_a!eY66m( z*aFmxWpDc^N)jm?b~d(%4xH?6k0wRBgK=BU+mbD=jK3Lr9q-fP(@e z_o$IsL6!(~k7bU zlz_aD5MG#WgWcz+AWjjtHN1S-cFw}yZQ`b~BZ}(H3wWf From ace3d33e52c1680d6409a2b4f4a06b21026e49ed Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Wed, 26 Jul 2023 09:50:09 -0700 Subject: [PATCH 12/40] another synonym --- data-raw/rgn_eez_v2013a_synonyms.csv | 1 + data/rgn_synonyms.rda | Bin 3598 -> 3593 bytes 2 files changed, 1 insertion(+) diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data-raw/rgn_eez_v2013a_synonyms.csv index 7a18812..586584f 100644 --- a/data-raw/rgn_eez_v2013a_synonyms.csv +++ b/data-raw/rgn_eez_v2013a_synonyms.csv @@ -141,6 +141,7 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 193,Guinea-bissau,GW,GNB,ohi_region 195,C.+voire,CI,CIV,ohi_region 195,Cote d'Ivoire,CI,CIV,ohi_region +195,C\\Ste d\\SIvoire,CI,CIV,ohi_region 195,Cote d'ivorie,CI,CIV,ohi_region 199,Congo (Democratic Republic of the),CD,COD,ohi_region 199,"Congo, Dem. Rep.",CD,COD,ohi_region diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index 1ea2505bd1312928d709aee4feb8b1d57866d15b..4cc4d451978cd4661fd55b561f60d6797be155d5 100644 GIT binary patch literal 3593 zcmV+k4)*avT4*^jL0KkKS+C*AjQ|(@|NsC0|Nry<{Bghk|MkEB|M|c!SOF;L1Qe)} zr4B&A2BF{%-hBrLpzci{Yi#=a-3p}wtKKFW7uXL#bf-hpl|6Of(M={yQzmF>JVQz8 z8BY_`+EZ;!6HPrp000000004?00Y$8fCfkcWY7~rm{ZeCnwbMY$N&HU&;UI^00000 z(dqyXP!UXOLSsp$j06AygwsF`007Vc(V>AE05Jdn4H^SL1cZo+Jv~J~RP>urdV|yr z0QCR>GynhwnE*5Z0000000JpUQ`GWLAsS);G&IoAHl~0L0BFbn$j}V{27u5onlb}M znjWA?kb-Clh#F+lZ4~t~c{C#Nh?xpik^#Q@;HsBX5MHLO z+Vlx~ED_Toi$-oiPI^hfz&^ z^VW-ois>e`Mv&G;AV;+k%gK*uhD>rk6oee6t8pD>tf2-iVH_co0;<;NWWkn3S7qYo z7FU7YWQd#bbtI5@=maF%A_#$D2owZ}MMe|=0s<9Lr2q=3T0%JR2&pO*3-~|+b?pl1 zh=~%6t?>D~U8IJt-wur$|t)ml6 zWSrg1!i5qc8!(A`)&;1s2t8{Mi$q_A@egLeaa)nd^mD6%b7jthGBf>2ZDDSJV_DRu z(TaJQlJ!ifD7292Wl~agGlwndJ2K+jp^gj-Q5O<+*Hxs01%LHPSZ!X4nC>8zkC)cE zMV8p_x!#DBPT7>WnJP6Gts3o(w@Gd`7E=Qnn;QC$f2Wo5yaYH(_?nVV(jlItg7tj z!JhO;%nR-zjX4)3BqI9)Z6YyXq_1t!u~393%RDQ3r#@rNPGjd z8Ea?Mj|AIoNCO$6%8oc=#>!0Gvee*ddYUGfi6!;xObTtb7F)-=Phty;)z}NHQp`&R zCYEw+er<)9IQ>~^Am*aEAK;d=*DOxqC{3({I%43q>rFk~D&Dr1-WNf)^yGZMTnX;K zqaKv&a^C2cjMm7>4I=?gDae!H^%MaP%OeND2tFqD_AhWplrVT+NKC;+@|juHSeWI) zpAki(oCoV@LSdITrvnd(6!X=75J))(w zLSXpdgj?6Y%=%cmnH?uV@m&I#EeM|C9t_;FhuLLQ7%+hIB{5MDEfTd zH=&$ocsSEQ!@<&2Ci~Jv2(vvDF=8;>gQ)IxFGcwBrZ3`{N@ zJZSQs{<&t;L$=PINo(!u@oQ`iNNCd0-?luqAzsE(gfXDGmYv+%*I*z8)D=g-0>R|O zK~x|M1QR%8gP6ORF>LN`$Rzc=`e~Ht#o98US+S+UT%Zg=S7bbD9x^$>ppXUUx7AUX zqlQRb6M?_*&hzf=>UlhfGI!CPE;Ooi@K@ay>z}Zk<3&k~ftNE5yw;NSvodHg7+dMcxuJeC`sJyrE}OQV9o&i3s@6vb9OPA)EcHtxg{!XZe&Ga*RHoOuea z&3CN}gjDIVGa)dTP%40sG&C?66=BQeY1cD%!&dCYk^IWyIA%!iy{y^u)o!F`u4fau zfF2UrE=i$4(7NRrS_@uan6Fp#rBf7jtWTp#l!kku-tuV?#z+LTfZ5)xO zu>g3EzK(l3*}Hm_HdKHtUU9%Mi}xqR+~C}Kdd8A9tK=`CZy_(f{de)r^f-WO@^!Lv zhk3*44;y`N2ZGJBfRYfQ93KCHMHoknCNs9YauKj{XYO;=)i}e%^2n^mVih3J%D!q_ zo86cZ7D|aKVAZS+M}7UYb7->G;HhAg67uZ~N*I!gc&6*)vURJj6k7lyef~P2}LevaH5$GmOGsHI4t7apR_@#VLD%$jkY%d-DI;h+D_z;n7rx}1tKCVuU zFoAF{;VmHP1Om+6Vn;K(yNXzn1GyGvoG}bW}zW{vC#67fYcF{R$@0od{o7BqL71Z?59^2jayCK=0#6)|fF z?k&yovsFx07c`{%I7%dR`2o8T0bWxp47#irC;)l#=I!~j=h0v-wl8A&*@}nGVlSkG zCW)eqY;7dU$*QH(QMue}WDFu44URSyE$679Hq!>07G#ixT}cFpq(Pna`giqX@AZ;G z6!RG`bX^@4<)v?}T#+>)!*xn2nv!7WI16TAf zRe5D(2_n5|3}rUR#M3+#pkNb(0?IhV*l;wqq?jH$j)VK(EP~DVzjN zqX{7sMnsSiL20?t{&0o5R-1rjVj~Fpa>B;d8>Z7;nWbSt4_#zTIku?gmF^TZ91;+q zIRXzCQloI96vbn^~!PC_t1p$=_1%7gbkQmxR zm|pQL;gc1F)i6!k5dx-MW7u$NSX2h3ObHN4y4=B}4KX_Gh$tf#9JfwKFD#@FYB!kV z5xWaal2&!j3pFHw*`P$UfCpJ9jTXo%EJUA4(byJLD8_I_85nA3NX)4c$({p6i6aH% zox8T00HmgOEC8lYAC`sc?d=OdXvep}+cf7f=*)0W2I|wHBN$0sU<)4c#lO9A+<=B4 z%J@x{G4+T{3`Mm7j%VN_3Pp(*sbmmE(4fzXm-!Qgzo*1Sp}--YF~4M$mbDmBb_SRO zk8varW}K#KM-w9GD-mT3HJ|yHE6`_!Dl{6UcIb$}9&A(v z0D&+Fw)~XBYeUgj6O{=C@=S`_B}WOioiY$cU4-Y4`dbSjobGcmNnN({Nj6oOXj*T9 ziW)_VE(kXWm%T)a(FRx{(Y{fR#g1nPM6TlP0aCtK1P_p4tYkLBeQbeJU{vKAGQNfe z02ZZ1i(FO_a3dJpzGP#mM%Dr;QaPe&7sv^t!e6Zl^$@KFq>GTsNWSjk~}G!5Du~ObH@*fy{=z&6Lu#NlKIjR*1>T26ltOqwy^X z7sPp;qfY64aFqd&kPu`{Hv#T)l^j}M;~ zC{S^!P#2Qw;#mz>=u}x?twP>l0rh>%0zW$&LunP}w33iZ*hQL(B-sU!h*c6GR7*io PKjQ94rwS4k{5dh83QTec literal 3598 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 UB!q1VAs_g=k}1N3fXE9;plOJLz5oCK From b4413483fc8deb93757b8db5c43343c71d34abb7 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Wed, 26 Jul 2023 09:50:09 -0700 Subject: [PATCH 13/40] another synonym --- data-raw/rgn_eez_v2013a_synonyms.csv | 1 + data/rgn_synonyms.rda | Bin 3598 -> 3605 bytes 2 files changed, 1 insertion(+) diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data-raw/rgn_eez_v2013a_synonyms.csv index 7a18812..d21bee7 100644 --- a/data-raw/rgn_eez_v2013a_synonyms.csv +++ b/data-raw/rgn_eez_v2013a_synonyms.csv @@ -141,6 +141,7 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 193,Guinea-bissau,GW,GNB,ohi_region 195,C.+voire,CI,CIV,ohi_region 195,Cote d'Ivoire,CI,CIV,ohi_region +195,Côte d’Ivoire,CI,CIV,ohi_region 195,Cote d'ivorie,CI,CIV,ohi_region 199,Congo (Democratic Republic of the),CD,COD,ohi_region 199,"Congo, Dem. Rep.",CD,COD,ohi_region diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index 1ea2505bd1312928d709aee4feb8b1d57866d15b..864c5e894ad3e76c543c70146404789fed0a4854 100644 GIT binary patch literal 3605 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 bLN7p+4WyAG1w^VUC;VN>6yZWbAHQy_t><^S literal 3598 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 UB!q1VAs_g=k}1N3fXE9;plOJLz5oCK From 58c42f8d0132c8cfe4be171701046c00de65b321 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Thu, 3 Aug 2023 10:40:59 -0700 Subject: [PATCH 14/40] added more synonyms and added functionality to make synonyms case insensitive and remove , --- R/name_2_rgn.R | 13 +++++++++++-- data-raw/rgn_eez_v2013a_synonyms.csv | 21 ++++++--------------- data/rgn_synonyms.rda | Bin 3605 -> 3548 bytes 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/R/name_2_rgn.R b/R/name_2_rgn.R index c3b8b80..6169826 100644 --- a/R/name_2_rgn.R +++ b/R/name_2_rgn.R @@ -27,7 +27,7 @@ name_2_rgn <- function(df_in, #df_in=empd dplyr::ungroup() ### attach rgn_synonyms; summarize eliminates duplicate rows (same tmp_name - ### and rgn_id) - rgn type not critical? + ### and rgn_id) syns <- rgn_synonyms %>% dplyr::select(rgn_id = rgn_id_2013, tmp_name = rgn_nam_2013, tmp_type = rgn_typ) @@ -44,7 +44,16 @@ name_2_rgn <- function(df_in, #df_in=empd ### replace problematic symbols (accents and such) within target data frame. df_in <- df_in %>% dplyr::mutate(tmp_name = stringr::str_trim(tmp_name), - tmp_name = stringr::str_replace(tmp_name, "^'", "")) + tmp_name = stringr::str_replace(tmp_name, "^'", "")) %>% + mutate(tmp_name = stringr::str_remove(tmp_name, ",")) %>% + + + mutate(tmp_name = tolower(tmp_name)) + + #turn all of the names to lowercase and remove commas + rgn_syn <- rgn_syn %>% + mutate(tmp_name = tolower(tmp_name)) %>% + mutate(tmp_name = stringr::str_remove(tmp_name, ",")) ### combine target data frame with region name data frame; ### filter to ones with 'eez' or 'ohi_region' in the type. diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data-raw/rgn_eez_v2013a_synonyms.csv index d21bee7..9864169 100644 --- a/data-raw/rgn_eez_v2013a_synonyms.csv +++ b/data-raw/rgn_eez_v2013a_synonyms.csv @@ -10,7 +10,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 9,"Micronesia, Fed. States of",FM,FSM,ohi_region 9,"Micronesia, Fed. Sts.",FM,FSM,ohi_region 9,"Micronesia, Fed.States of",FM,FSM,ohi_region -9,"Micronesia, Federated States of",FM,FSM,ohi_region 12,United States Minor Outlying Islands (Wake Is.),WI,Wake Island,ohi_region 13,Guam,MP,MNP,ohi_region 13,N. Mariana Islands,MP,MNP,ohi_region @@ -20,13 +19,11 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 14,Taiwan (China),TW,TWN,ohi_region 14,Taiwan Province of China,TW,TWN,ohi_region 14,"Taiwan, China",TW,TWN,ohi_region -14,"Taiwan, Province of China",TW,TWN,ohi_region 18,"Fiji, Republic of",FJ,FJI,ohi_region 20,"Korea, South",KR,KOR,ohi_region 20,"Korea, South (Republic of Korea)",KR,KOR,ohi_region 20,Korea Republic of,KR,KOR,ohi_region 20,"Korea, Rep.",KR,KOR,ohi_region -20,"Korea, Republic of",KR,KOR,ohi_region 20,Republic of Korea,KR,KOR,ohi_region 20,Korea (Republic of),KR,KOR,ohi_region 21,"Korea, Dem. People's Rep.",KP,PRK,ohi_region @@ -103,7 +100,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 127,St Vincent and the Grenadines,VC,VCT,ohi_region 127,St. Vincent & the Grenadines,VC,VCT,ohi_region 127,St.Vincent & Grenadines,VC,VCT,ohi_region -127,St. Vincent and The Grenadines,VC,VCT,ohi_region 127,St. Vincent and the Grenadines,VC,VCT,ohi_region 137,Ecuador,EC,ECU,ohi_region 137,Galapagos,EC,ECU,ohi_region @@ -134,11 +130,9 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 186,Serbia and Montenegro,ME,SCG,ohi_region 191,Iran (Islamic Rep. of),IR,IRN,ohi_region 191,Iran (Islamic Republic of),IR,IRN,ohi_region -191,Iran Islamic Republic of,IR,IRN,ohi_region 191,"Iran, Islamic Rep.",IR,IRN,ohi_region 191,"Iran, Islamic Republic of",IR,IRN,ohi_region 193,Guinea-Bissau,GW,GNB,ohi_region -193,Guinea-bissau,GW,GNB,ohi_region 195,C.+voire,CI,CIV,ohi_region 195,Cote d'Ivoire,CI,CIV,ohi_region 195,Côte d’Ivoire,CI,CIV,ohi_region @@ -157,10 +151,10 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 199,Democratic Republic of Congo,CD,COD,ohi_region 199,Zaire,CD,COD,ohi_region 202,Tanzania (United Republic of),TZ,TZA,ohi_region +202,Tanzania (United Republic of),TZ,TZA,ohi_region 202,Tanzania United Republic of,TZ,TZA,ohi_region 202,Zanzibar,TZ,TZA,ohi_region 202,"Tanzania, United Rep. of",TZ,TZA,ohi_region -202,"Tanzania, United Republic of",TZ,TZA,ohi_region 202,United Rep. of Tanzania,TZ,TZA,ohi_region 202,United Republic of Tanzania,TZ,TZA,ohi_region 202,"United Republic of Tanzania, Zanzibar",TZ,TZA,ohi_region @@ -174,12 +168,9 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 209,Hong Kong China (SAR),CN,CHN,ohi_region 209,Hong Kong SAR,CN,CHN,ohi_region 209,Hong Kong SAR China,CN,CHN,ohi_region -209,"Hong Kong SAR, China",CN,CHN,ohi_region 209,"China, mainland",CN,CHN,ohi_region -209,"Hong Kong, China (SAR)",CN,CHN,ohi_region 209,Macao,CN,CHN,ohi_region 209,Macao SAR China,CN,CHN,ohi_region -209,"Macao SAR, China",CN,CHN,ohi_region 209,Macau,CN,CHN,ohi_region 209,Macau (China),CN,CHN,ohi_region 209,"Macau, China",CN,CHN,ohi_region @@ -200,7 +191,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 221,St. Martin (French part),MF,Saint Martin,ohi_region 224,Chile,CL,CHL,ohi_region 224,Easter Island,CL,CHL,ohi_region -231,Timor-leste,TL,TLS,ohi_region 231,Timor-Leste,TL,TLS,ohi_region 232,Bosnia-Herzegovina,BA,BIH,ohi_region 232,Bosnia Herzegovina,BA,BIH,ohi_region @@ -222,8 +212,9 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 255,Kazachstan,,,landlocked 255,Kazakhstan,,,landlocked 255,Occupied Palestinian Territory,,,disputed -255,Occupied Palestinian territory,,,disputed +255,Palestine,,,disputed 255,Palestine State of,,,disputed +255,State Of Palestine,,,disputed 255,"Palestine, Occupied Tr.",,,disputed 255,Paracel Islands,,,disputed 255,Spratly Islands,,,disputed @@ -242,15 +233,16 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ ,Bolivia (Plurinat.State),,,landlocked ,Bolivia (Plurinational State of),,,landlocked ,Bolivia Plurinational State of,,,landlocked -,"Bolivia, Plurinational State of",,,landlocked ,Botswana,,,landlocked ,Burkina Faso,,,landlocked ,Burundi,,,landlocked ,Central African Republic,,,landlocked ,Chad,,,landlocked ,Czechia,,,landlocked +,czech republic (czechia),,,landlocked ,Czech Republic,,,landlocked ,Czechoslovakia,,,landlocked +,eswatini,,,landlocked ,Ethiopia,,,landlocked ,Ethiopia PDR,,,landlocked ,Holy See,,,landlocked @@ -269,13 +261,13 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ ,Liechtenstein,,,landlocked ,Luxembourg,,,landlocked ,Macedonia,,,landlocked +,North Macedonia,,,landlocked ,"Macedonia, Fmr Yug Rp of",,,landlocked ,"Macedonia, FYR",,,landlocked ,Malawi,,,landlocked ,Mali,,,landlocked ,Moldova,,,landlocked ,Moldova Republic of,,,landlocked -,"Moldova, Republic of",,,landlocked ,Mongolia,,,landlocked ,Nepal,,,landlocked ,Niger,,,landlocked @@ -291,7 +283,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ ,Switzerland,,,landlocked ,TFYR Macedonia,,,landlocked ,TFYR of Macedonia,,,landlocked -,The former Yugoslav Republic of Macedonia,,,landlocked ,The Former Yugoslav Republic of Macedonia,,,landlocked ,Total,,,largescale ,Uganda,,,landlocked diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index 864c5e894ad3e76c543c70146404789fed0a4854..4bdccfef22279d9c38b2ec026ec7f4fd3007172f 100644 GIT binary patch literal 3548 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 bLN7p+4WyAG1w^VUC;VN>6yZWbAHQy_t><^S From 21baf253512851505e0a0394aeb11d7bb2fb7e85 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Thu, 3 Aug 2023 11:12:14 -0700 Subject: [PATCH 15/40] moved disputed regions to synonyms file and removed region 255 label --- data-raw/eez_rgn_2013main.csv | 18 +---------- data-raw/rgn_eez_v2013a_synonyms.csv | 44 ++++++++++++++++----------- data/rgn_master.rda | Bin 6432 -> 6001 bytes data/rgn_synonyms.rda | Bin 3548 -> 3640 bytes 4 files changed, 28 insertions(+), 34 deletions(-) diff --git a/data-raw/eez_rgn_2013main.csv b/data-raw/eez_rgn_2013main.csv index 575270c..7ebbddb 100644 --- a/data-raw/eez_rgn_2013main.csv +++ b/data-raw/eez_rgn_2013main.csv @@ -212,7 +212,6 @@ eez,LG,148,Line Group,KI,KI-L,148,Line Group,KIR,212,Kiribati,Line Group,161,Kir eez,PX,157,Phoenix Group,KI,KI-P,157,Phoenix Group,KIR,212,Kiribati,Phoenix Group,161,Kiribati eez,AQ,213,Antarctica,AQ,AQ,213,Antarctica,ATA,213,Antarctica,ATA,162,Antarctica eez,EG,214,Egypt,EG,EG,214,Egypt,EGY,214,Egypt,EGY,163,Egypt -eez,XD,255,DISPUTED,,XD-EG-SD,252,Disputed Sudan-Egypt,0,0,Disputed Egypt-Sudan,EGY,174,Disputed Egypt-Sudan eez,JO,215,Jordan,JO,JO,215,Jordan,JOR,215,Jordan,JOR,164,Jordan eez,ID,216,Indonesia,ID,ID,216,Indonesia,IDN,216,Indonesia,IDN,165,Indonesia eez,CA,218,Canada,CA,CA,218,Canada,CAN,218,Canada,CAN,166,Canada @@ -234,18 +233,6 @@ fao,XASE,267,"Atlantic, Southeast",,,1047,"Atlantic, Southeast",,,,,, fao,XASW,266,"Atlantic, Southwest",,,1041,"Atlantic, Southwest",,,,,, fao,XAWC,263,"Atlantic, Western-Central",,,1031,"Atlantic, Western-Central",,,,,, eez,BA,232,Bosnia and Herzegovina,BA,BA,232,Bosnia and Herzegovina,BIH,232,Bosnia and Herzegovina,BIH,172,Bosnia and Herzegovina -eez,AZ,255,Azerbaijan,AZ,AZ,241,Azerbaijan,AZE,233,Azerbaijan,,173, -eez,KZ,255,Kazakhstan,KZ,KZ,242,Kazakhstan,KAZ,235,Kazakhstan,,173, -eez,TM,255,Turkmenistan,TM,TM,243,Turkmenistan,TKM,236,Turkmenistan,,173, -eez,XD,255,DISPUTED,,XD-AU-TL,238,Australia - East Timor,0,0,Joint Development,,174, -eez,XD,255,DISPUTED,,XD-AU-PG,239,Australia - Papua New Guinea,0,0,Australia - Papua New Guinea,,174, -eez,XD,255,DISPUTED,,XD-AU-ID,251,Australia/Indonesia,0,0,Australia/Indonesia,,174, -eez,XD,255,DISPUTED,,XD-CL-PE,240,Chile/Peru,0,0,Disputed,,174, -eez,XD,255,DISPUTED,,XD-CO-JM,165,Colombia - Jamaica,0,0,Joint Regime,,174, -eez,XD,255,DISPUTED,,XD-CN-JP,217,Conflict Zone,0,0,Disputed,,174, -eez,XD,255,DISPUTED,,XD-JP-KP,211,Japan - Korea,0,0,Joint Regime,,174, -eez,XD,255,DISPUTED,,XD-JP-KR,226,Japan - South Korea Conflict Zone,0,0,Disputed,,174, -eez,XD,255,DISPUTED,,XD-NE-ST,201,Nigeria - Sao Tome and Principe,0,0,Joint Regime,,174, fao,XIAN,271,"Indian Ocean, Antarctic And Southern",,,1058,"Indian Ocean, Antarctic And Southern",,,,,, fao,XIEA,270,"Indian Ocean, Eastern",,,1057,"Indian Ocean, Eastern",,,,,, fao,XIWE,269,"Indian Ocean, Western",,,1051,"Indian Ocean, Western",,,,,, @@ -256,7 +243,4 @@ fao,XPNE,273,"Pacific, Northeast",,,1067,"Pacific, Northeast",,,,,, fao,XPNW,272,"Pacific, Northwest",,,1061,"Pacific, Northwest",,,,,, fao,XPSE,277,"Pacific, Southeast",,,1087,"Pacific, Southeast",,,,,, fao,XPSW,276,"Pacific, Southwest",,,1081,"Pacific, Southwest",,,,,, -fao,XPWC,274,"Pacific, Western Central",,,1071,"Pacific, Western Central",,,,,, -eez,XD,255,DISPUTED,,XD-PF,22,Paracel Islands,0,22,Disputed,,174, -eez,XD,255,DISPUTED,,XD-KU,27,Southern Kuriles,0,0,Disputed,,174, -eez,XD,255,DISPUTED,,XD-PG,23,Spratly Islands,0,23,Disputed,,174, +fao,XPWC,274,"Pacific, Western Central",,,1071,"Pacific, Western Central",,,,,, \ No newline at end of file diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data-raw/rgn_eez_v2013a_synonyms.csv index 9864169..e8d4ec9 100644 --- a/data-raw/rgn_eez_v2013a_synonyms.csv +++ b/data-raw/rgn_eez_v2013a_synonyms.csv @@ -206,23 +206,33 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 76,Türkiye,TR,TUR,ohi_region ,,,, ,,,, -255,Azerbaijan,,,landlocked -255,"Disputed Territory (Paracel Is., Spratly Is.)",,,disputed -255,Gaza Strip,,,disputed -255,Kazachstan,,,landlocked -255,Kazakhstan,,,landlocked -255,Occupied Palestinian Territory,,,disputed -255,Palestine,,,disputed -255,Palestine State of,,,disputed -255,State Of Palestine,,,disputed -255,"Palestine, Occupied Tr.",,,disputed -255,Paracel Islands,,,disputed -255,Spratly Islands,,,disputed -255,Tajikistan,,,landlocked -255,Turkmenistan,,,landlocked -255,Uzbekistan,,,landlocked -255,West Bank,,,disputed -255,West Bank and Gaza,,,disputed +,Azerbaijan,,,landlocked +,"Disputed Territory (Paracel Is., Spratly Is.)",,,disputed +,"Australia - East Timor",,,disputed +,"Australia - Papua New Guinea",,,disputed +,"Australia/Indonesia",,,disputed +,"Chile/Peru",,,disputed +,"Colombia - Jamaica",,,disputed +,Gaza Strip,,,disputed +,Japan - South Korea Conflict Zone,,,disputed +,Nigeria - Sao Tome and Principe,,,disputed +,Kazachstan,,,landlocked +,Kazakhstan,,,landlocked +,Occupied Palestinian Territory,,,disputed +,Palestine,,,disputed +,Palestine State of,,,disputed +,Southern Kuriles,,,disputed +,Spratly Islands,,,disputed +,Disputed Sudan-Egypt,,,disputed +,State Of Palestine,,,disputed +,"Palestine, Occupied Tr.",,,disputed +,Paracel Islands,,,disputed +,Spratly Islands,,,disputed +,Tajikistan,,,landlocked +,Turkmenistan,,,landlocked +,Uzbekistan,,,landlocked +,West Bank,,,disputed +,West Bank and Gaza,,,disputed ,Afghanistan,,,landlocked ,Andorra,,,landlocked ,Armenia,,,landlocked diff --git a/data/rgn_master.rda b/data/rgn_master.rda index f70dc3dc794846d05597e9c13b5e45e573d0e5f0..bb4101fd81c841876b942fdd9cb510852ea5f2de 100644 GIT binary patch literal 6001 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 KI8cx!`@6mk7O(UG literal 3548 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 W0z)tYMo Date: Fri, 4 Aug 2023 12:52:53 -0700 Subject: [PATCH 16/40] added files for testing name_2_rgn --- R/name_2_rgn.R | 16 +++++++----- data-raw/rgn_eez_v2013a_synonyms.csv | 7 +++-- tests/test_countries.csv | 33 +++++++++++++++++++++++ tests/test_synonyms.R | 39 ++++++++++++++++++++++++++++ 4 files changed, 87 insertions(+), 8 deletions(-) create mode 100644 tests/test_countries.csv create mode 100644 tests/test_synonyms.R diff --git a/R/name_2_rgn.R b/R/name_2_rgn.R index 6169826..524390e 100644 --- a/R/name_2_rgn.R +++ b/R/name_2_rgn.R @@ -41,19 +41,23 @@ name_2_rgn <- function(df_in, #df_in=empd ### create a temp field in the target data frame, for the field that is being combined. df_in['tmp_name'] <- df_in[fld_name] - ### replace problematic symbols (accents and such) within target data frame. + ### replace problematic symbols within target data frame. df_in <- df_in %>% dplyr::mutate(tmp_name = stringr::str_trim(tmp_name), tmp_name = stringr::str_replace(tmp_name, "^'", "")) %>% mutate(tmp_name = stringr::str_remove(tmp_name, ",")) %>% - - + mutate(tmp_name = stringr::str_remove(tmp_name, "'")) %>% + mutate(tmp_name = stringr::str_remove(tmp_name, "´")) %>% + mutate(tmp_name = stringr::str_remove(tmp_name, "’")) %>% mutate(tmp_name = tolower(tmp_name)) - #turn all of the names to lowercase and remove commas + #turn all of the names to lowercase and remove commas and apostrophes rgn_syn <- rgn_syn %>% mutate(tmp_name = tolower(tmp_name)) %>% - mutate(tmp_name = stringr::str_remove(tmp_name, ",")) + mutate(tmp_name = stringr::str_remove(tmp_name, ",")) %>% + mutate(tmp_name = stringr::str_remove(tmp_name, "'")) %>% + mutate(tmp_name = stringr::str_remove(tmp_name, "´")) %>% + mutate(tmp_name = stringr::str_remove(tmp_name, "’")) ### combine target data frame with region name data frame; ### filter to ones with 'eez' or 'ohi_region' in the type. @@ -119,7 +123,7 @@ name_2_rgn <- function(df_in, #df_in=empd duplicated(dups_data, fromLast = TRUE) if(sum(i_dupes) > 0) { - message(sprintf("\nDUPLICATES found. Consider using collapse2rgn to collapse duplicates (function in progress).\n")) + message(sprintf("\nDUPLICATES found. Confirm your script consolidates these as appropriate for your data.\n")) df_out_dupes <- unique(df_out[i_dupes, fld_name]) print(df_out_dupes) } diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data-raw/rgn_eez_v2013a_synonyms.csv index e8d4ec9..5de638a 100644 --- a/data-raw/rgn_eez_v2013a_synonyms.csv +++ b/data-raw/rgn_eez_v2013a_synonyms.csv @@ -30,8 +30,9 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 21,Democratic People's Republic of Korea,KP,PRK,ohi_region 21,"Korea, Dem. People's Rep",KP,PRK,ohi_region 21,"Korea, Dem. People's Rep. of",KP,PRK,ohi_region +21,"Korea, Dem. People's Rep. of",KP,PRK,ohi_region 21,"Korea, Dem. Rep.",KP,PRK,ohi_region -21,"Korea, Democratic People's Republic of",KP,PRK,ohi_region +21,"korea democratic people´s republic of",KP,PRK,ohi_region 21,Korea (North),KP,PRK,ohi_region 21,"Korea, North",KP,PRK,ohi_region 28,Comoros,KM,COM,ohi_region @@ -166,6 +167,7 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 209,Hong Kong,CN,CHN,ohi_region 209,Hong Kong (China),CN,CHN,ohi_region 209,Hong Kong China (SAR),CN,CHN,ohi_region +209,Hong Kong china,CN,CHN,ohi_region 209,Hong Kong SAR,CN,CHN,ohi_region 209,Hong Kong SAR China,CN,CHN,ohi_region 209,"China, mainland",CN,CHN,ohi_region @@ -173,7 +175,8 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 209,Macao SAR China,CN,CHN,ohi_region 209,Macau,CN,CHN,ohi_region 209,Macau (China),CN,CHN,ohi_region -209,"Macau, China",CN,CHN,ohi_region +209,"Macau China",CN,CHN,ohi_region +209,"Macao China",CN,CHN,ohi_region 209,Province of China,CN,CHN,ohi_region 214,"Egypt, Arab Rep.",EG,EGY,ohi_region 219,Saint Pierre and Miqelon,PM,SPM,ohi_region diff --git a/tests/test_countries.csv b/tests/test_countries.csv new file mode 100644 index 0000000..85be719 --- /dev/null +++ b/tests/test_countries.csv @@ -0,0 +1,33 @@ +country +Antigua And Barbuda +Bosnia And Herzegovina +"Congo, Democratic Republic Of The" +Cote D´Ivoire +Curaçao +"Hong Kong, China" +"Iran, Islamic Republic Of" +"Korea, Democratic People´S Republic Of" +"Korea, Republic Of" +"Macao, China" +"Micronesia, Federated States Of" +Saint Kitts And Nevis +Saint Vincent And The Grenadines +Sao Tome And Principe +Serbia And Montenegro +Sint Maarten (Dutch Part) +Taiwan Province Of China +"Tanzania, United Republic Of" +Trinidad And Tobago +Turks And Caicos Islands +United States Of America +"Venezuela, Bolivarian Republic Of" +"Bolivia, Plurinational State Of" +Czech Republic (Czechia) +Eswatini +Lao People´S Democratic Republic +"Moldova, Republic Of" +North Macedonia +Lao Pdr +Micronesia (Fed. States) +Netherlands (Kingdom of the) +Venezuela (Boliv Rep of) \ No newline at end of file diff --git a/tests/test_synonyms.R b/tests/test_synonyms.R new file mode 100644 index 0000000..d27e3f2 --- /dev/null +++ b/tests/test_synonyms.R @@ -0,0 +1,39 @@ +#' test_synonyms.R +#' +#' function to test country names are being accounted for properly in name_2_rgn +#' +#' @param synonyms_list list of country names that are synonyms for names handled in the name_2_rgn function +#' @param append_synonyms if set to TRUE, will append the synonyms tested to the bottom of the comprehensive test_countries.csv file. default: FALSE +#' +#' @return output of name_2_rgn for those countries +#' +#' @examples +#' test_synonyms(c("test1", "test2"), append_synonyms = TRUE) +#' +#' @examples +#' # Example usage of your function +#' result <- your_function(arg1_value, arg2_value) +#' +#' # read in existing countries csv +countries <- read_csv(here::here("tests/test_countries.csv")) +#read in the updated synonyms csv +rgn_master <- read_csv(here::here("data-raw/eez_rgn_2013main.csv")) + +#read in the region data frame +rgn_synonyms <- read_csv(here::here("data-raw/rgn_eez_v2013a_synonyms.csv")) + +test_synonyms <- function(synonyms_list, append_synonyms = FALSE) { + + # add new synonyms to existing csv + df_in <- rbind(countries, data.frame(country = synonyms_list)) + + # run through name_2_rgn and see if all are taken care of properly + ohi_names <- name_2_rgn(df_in = df_in, fld_name = "country") + + # append synonyms to the end of the csv if were used & relevant for future testing + # so we ensure no updates to the function cause older fixed synonyms to become unfixed + if (append_synonyms) { + write_csv(df_in, "/home/egg/personal/test_countries.csv") + } + +} \ No newline at end of file From 147de543617aee045ab2be86c01c1bb6138d5e52 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Tue, 8 Aug 2023 11:57:29 -0700 Subject: [PATCH 17/40] added functions for updating and testing synonyms --- data/georegion_labels.rda | Bin 2866 -> 2769 bytes data/georegions.rda | Bin 849 -> 845 bytes data/rgn_synonyms.rda | Bin 3640 -> 3641 bytes data/sovregion_labels.rda | Bin 3425 -> 2933 bytes data/sovregions.rda | Bin 889 -> 880 bytes {data-raw => data_raw}/data_prepare.R | 12 ++-- {data-raw => data_raw}/eez_rgn_2013main.csv | 0 {data-raw => data_raw}/georegion_labels.csv | 0 {data-raw => data_raw}/georegions.csv | 0 .../rgn_eez_v2013a_synonyms.csv | 6 -- {data-raw => data_raw}/sovregion_labels.csv | 0 {data-raw => data_raw}/sovregions.csv | 0 .../name_2_rgn}/test_countries.csv | 0 .../name_2_rgn}/test_synonyms.R | 11 +-- .../name_2_rgn/update_name_2_rgn.Rmd | 64 ++++++++++++++++++ .../name_2_rgn/update_synonyms.R | 46 +++++++++++++ 16 files changed, 122 insertions(+), 17 deletions(-) rename {data-raw => data_raw}/data_prepare.R (66%) rename {data-raw => data_raw}/eez_rgn_2013main.csv (100%) rename {data-raw => data_raw}/georegion_labels.csv (100%) rename {data-raw => data_raw}/georegions.csv (100%) rename {data-raw => data_raw}/rgn_eez_v2013a_synonyms.csv (98%) rename {data-raw => data_raw}/sovregion_labels.csv (100%) rename {data-raw => data_raw}/sovregions.csv (100%) rename {tests => updating_functions/name_2_rgn}/test_countries.csv (100%) rename {tests => updating_functions/name_2_rgn}/test_synonyms.R (81%) create mode 100644 updating_functions/name_2_rgn/update_name_2_rgn.Rmd create mode 100644 updating_functions/name_2_rgn/update_synonyms.R diff --git a/data/georegion_labels.rda b/data/georegion_labels.rda index 30fef013bf414085a24df0a8e1a66b0baa50650f..aa762d4d296a886e14a5db4c43f6de3ae7e45d90 100644 GIT binary patch literal 2769 zcmY*Zc{tST`~EPDnX!$Tv2)B!W3miKb`@qU85t$UHX)5Qh9*Lxelugqek|FSD9a#g zk)ZZ3}91+Tq?{ZcdOvtZ!_1FgK$V~F79t7!hEOE{ zA_9OS7!3gaKrjFO1lx@Oi93Sx9&#o+gAowIOb%+IK?Yh5- zZ>R(a;SyyMMfOM{{KMeBLH#)rXH&0O(!RAUcnHB>%-lvpqj;y!_h*b z5*X(Z3{oF9mfd{-ahvEokQ9)eBolfdc?puJH6}lnRN?Q*_zwHo>LG#ez7!?MV0m2k zGq$jLI5|7{`s4a{5Of}?yhq#M0O^f`%W+@))0bhNq;!vjvsJyzU;N=yu_)ZvZ<)+u za}tu0rDc$^@(Nf(GIx0!nAEpgdaE8#b8l?i@e!oFLeY|BWyoAdQP19dvMCZ`54&-* zqw`i*cTex_JAM5FgYt=b;eVk2@nXbh)z>rtH&45`LVh2^M5ZsI?q_UVpkBS>S~)Sm~tSKkGQyhGsrG-Be^?PH)`E) zs4~LU5@1S)0}Ey*+?1bj8)~y7Vm>#1H-ByKXcMj_J+F85k^=RsOl~#^$*&%f-yrDR2ho5x`+u3?~- z^Jwc}V;Gl^cCTHSo#7}U_=qM5#Uj3oO%u6>wg6CgrtImuo6yrB{ z*w-f8nM1-+m+FNv#zXjoh6{Bil2LMs=D7oadPy0fhJT=J8)D$|R~nI@SO#gtMsWT1 zOSxHq$-Xvo^T#!1ZTyKbcQzxq%OXI&RA%}b@srCA0pi&`aP>yKp{U`LGeWomr{&C{#h_{qrsek?B%jJ?w-TCoQ zcoVLO${{%3l zd=0eTjeW=f?wTQ_ZGqxDt25q5?`juO}_s9Ct&d%%!(C=}s&u+XUOJ6m~>6r5_gmoQpF)veRn>TEV;cz&;0bO=~98E?s z$cAm4X6Cn_rxMwfY_#Z|pa-dNOBuYRJBaJR2+3J^N6X}}gL(B_zsoy|&IlXqohOCw z$%0Z(Vyu2@CA-ybXr=$^9l9tFQ)yrgl+xz}&B91LT&jGewfb~B6fa#;0qYh3bAY#kAy2y=&>m^E1k!V#pr==9SC(HRKB*vk=L zt0N3!n(7M;yA<_e?c74dFOrTDA+nqENgk*A5GZuH)bP{VaB~T;yJ?b=Ze>9HsfCcm>V^8x)@ORRwAb|l>#+CD_P+~j zc=pCRCY9kf%NT`;H`hd}Bnfp@YfL05mujKyq4zs;C!{l)=Bs2Z zbr~<@v%SyC-7?#2=%3#F{PbzVFxrpzBs$O9Mws#DZVEW_L$V~*<91A{D_NbY zsp2|1QJkMDJenm@L$5#|*Phh`BGq-(Q7ZwCJppW))SkQ zqF_;$Zoi1Y$;R^!%IaLdX@X>Vj4#zcfc1r`JzrfUyQnxZTV5^Yaf!fw5|`*B=g-l~Wl5Mu+MPbu6k(4f z`*w^S@t6x3IyJ6SPCdn9meSg6eOeth04FcU$amqXQYPXhII9 z+k?zd4U7wrZwoKIAR?4aW>u3;N*IXX`ZKlV=vO_VhpcBk&+a{={EE5zquBaU;OtZF zh!1;>;iYZ_P6C!dl@(18q2?G2HDs(35e-9S>wViH%*SX{Dy}R43a<6ZN7JTng1;;h z7Ef(FjP5&*(3QJz`{|qFa7V3$MOqtMwcdP-*>!uVn^CDZheeY#a$XIF;at#w3L}r5 ze)z-eVdu@)*B6G!VixjuzXTg1zLemO27r5x#y^H*#R@G-RUIRnJHkSItsg0%iMO9w Q?&vP1F{{wFMYK=<0iK!2xc~qF literal 2866 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 delta 232 zcmVH zgu)4Fsjs>CWdS5OOeC3@U=jf^Fp!|n9Fj@h5I( iPp}Z!Ng$+&m_iu|DDY+w!Xw82i@744C`f7h@brMOm|YP7 diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index bb5c7b60952bf5e49770190950b3e5533259b539..1608baf372a449293e433a202f54a189e64c4bfa 100644 GIT binary patch literal 3641 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 LP81|FqRiMpFv^m; literal 3640 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 KI8cx!`@6mk7O(UG diff --git a/data/sovregion_labels.rda b/data/sovregion_labels.rda index 6bc7801c7ea862c1d0983e133eb18eab1c677036..454d08c086a21b67c149bd25855e2307f737d995 100644 GIT binary patch literal 2933 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 MeIBe1?n{aK55y9b$^ZZW literal 3425 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 diff --git a/data-raw/data_prepare.R b/data_raw/data_prepare.R similarity index 66% rename from data-raw/data_prepare.R rename to data_raw/data_prepare.R index 1f6f419..8af82bb 100644 --- a/data-raw/data_prepare.R +++ b/data_raw/data_prepare.R @@ -4,26 +4,26 @@ library(devtools) -rgn_synonyms <- read.csv('data-raw/rgn_eez_v2013a_synonyms.csv', na = "", stringsAsFactors = FALSE) +rgn_synonyms <- read.csv('data_raw/rgn_eez_v2013a_synonyms.csv', na = "", stringsAsFactors = FALSE) usethis::use_data(rgn_synonyms, overwrite = TRUE) -rgn_master <- read.csv('data-raw/eez_rgn_2013main.csv', na = "", stringsAsFactors = FALSE) +rgn_master <- read.csv('data_raw/eez_rgn_2013main.csv', na = "", stringsAsFactors = FALSE) usethis::use_data(rgn_master, overwrite = TRUE) ## The following have not been updated, will do this when I figure out how they are used. georegion_labels <- read.csv('data_raw/georegion_labels.csv') -devtools::use_data(georegion_labels, overwrite = TRUE) +usethis::use_data(georegion_labels, overwrite = TRUE) georegions <- read.csv('data_raw/georegions.csv') -devtools::use_data(georegions, overwrite = TRUE) +usethis::use_data(georegions, overwrite = TRUE) sovregion_labels <- read.csv('data_raw/sovregion_labels.csv') -devtools::use_data(sovregion_labels, overwrite = TRUE) +usethis::use_data(sovregion_labels, overwrite = TRUE) sovregions <- read.csv('data_raw/sovregions.csv') -devtools::use_data(sovregions, overwrite = TRUE) +usethis::use_data(sovregions, overwrite = TRUE) diff --git a/data-raw/eez_rgn_2013main.csv b/data_raw/eez_rgn_2013main.csv similarity index 100% rename from data-raw/eez_rgn_2013main.csv rename to data_raw/eez_rgn_2013main.csv diff --git a/data-raw/georegion_labels.csv b/data_raw/georegion_labels.csv similarity index 100% rename from data-raw/georegion_labels.csv rename to data_raw/georegion_labels.csv diff --git a/data-raw/georegions.csv b/data_raw/georegions.csv similarity index 100% rename from data-raw/georegions.csv rename to data_raw/georegions.csv diff --git a/data-raw/rgn_eez_v2013a_synonyms.csv b/data_raw/rgn_eez_v2013a_synonyms.csv similarity index 98% rename from data-raw/rgn_eez_v2013a_synonyms.csv rename to data_raw/rgn_eez_v2013a_synonyms.csv index 5de638a..d6b11e7 100644 --- a/data-raw/rgn_eez_v2013a_synonyms.csv +++ b/data_raw/rgn_eez_v2013a_synonyms.csv @@ -30,7 +30,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 21,Democratic People's Republic of Korea,KP,PRK,ohi_region 21,"Korea, Dem. People's Rep",KP,PRK,ohi_region 21,"Korea, Dem. People's Rep. of",KP,PRK,ohi_region -21,"Korea, Dem. People's Rep. of",KP,PRK,ohi_region 21,"Korea, Dem. Rep.",KP,PRK,ohi_region 21,"korea democratic people´s republic of",KP,PRK,ohi_region 21,Korea (North),KP,PRK,ohi_region @@ -107,7 +106,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 139,Venezuela (Bolivarian Republic of),VE,VEN,ohi_region 139,Venezuela Bolivarian Republic of,VE,VEN,ohi_region 139,"Venezuela, Boliv Rep of",VE,VEN,ohi_region -139,"Venezuela, Boliv Rep of",VE,VEN,ohi_region 139,"Venezuela (Boliv Rep of)",VE,VEN,ohi_region 139,"Venezuela, RB",VE,VEN,ohi_region 140,Guadeloupe,GX,Guadeloupe and Martinique,ohi_region @@ -152,7 +150,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 199,Democratic Republic of Congo,CD,COD,ohi_region 199,Zaire,CD,COD,ohi_region 202,Tanzania (United Republic of),TZ,TZA,ohi_region -202,Tanzania (United Republic of),TZ,TZA,ohi_region 202,Tanzania United Republic of,TZ,TZA,ohi_region 202,Zanzibar,TZ,TZA,ohi_region 202,"Tanzania, United Rep. of",TZ,TZA,ohi_region @@ -207,8 +204,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 83,Saint Helena/Asc./Trist.,SH,SHN,ohi_region 76,Turkiye,TR,TUR,ohi_region 76,Türkiye,TR,TUR,ohi_region -,,,, -,,,, ,Azerbaijan,,,landlocked ,"Disputed Territory (Paracel Is., Spratly Is.)",,,disputed ,"Australia - East Timor",,,disputed @@ -230,7 +225,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ ,State Of Palestine,,,disputed ,"Palestine, Occupied Tr.",,,disputed ,Paracel Islands,,,disputed -,Spratly Islands,,,disputed ,Tajikistan,,,landlocked ,Turkmenistan,,,landlocked ,Uzbekistan,,,landlocked diff --git a/data-raw/sovregion_labels.csv b/data_raw/sovregion_labels.csv similarity index 100% rename from data-raw/sovregion_labels.csv rename to data_raw/sovregion_labels.csv diff --git a/data-raw/sovregions.csv b/data_raw/sovregions.csv similarity index 100% rename from data-raw/sovregions.csv rename to data_raw/sovregions.csv diff --git a/tests/test_countries.csv b/updating_functions/name_2_rgn/test_countries.csv similarity index 100% rename from tests/test_countries.csv rename to updating_functions/name_2_rgn/test_countries.csv diff --git a/tests/test_synonyms.R b/updating_functions/name_2_rgn/test_synonyms.R similarity index 81% rename from tests/test_synonyms.R rename to updating_functions/name_2_rgn/test_synonyms.R index d27e3f2..d3831d6 100644 --- a/tests/test_synonyms.R +++ b/updating_functions/name_2_rgn/test_synonyms.R @@ -15,12 +15,12 @@ #' result <- your_function(arg1_value, arg2_value) #' #' # read in existing countries csv -countries <- read_csv(here::here("tests/test_countries.csv")) +countries <- read_csv(here::here("updating_functions/name_2_rgn/test_countries.csv")) #read in the updated synonyms csv -rgn_master <- read_csv(here::here("data-raw/eez_rgn_2013main.csv")) +load(here::here("data/rgn_master.rda")) #read in the region data frame -rgn_synonyms <- read_csv(here::here("data-raw/rgn_eez_v2013a_synonyms.csv")) +load(file = here::here("data/rgn_synonyms.rda")) test_synonyms <- function(synonyms_list, append_synonyms = FALSE) { @@ -29,11 +29,12 @@ test_synonyms <- function(synonyms_list, append_synonyms = FALSE) { # run through name_2_rgn and see if all are taken care of properly ohi_names <- name_2_rgn(df_in = df_in, fld_name = "country") - # append synonyms to the end of the csv if were used & relevant for future testing # so we ensure no updates to the function cause older fixed synonyms to become unfixed if (append_synonyms) { - write_csv(df_in, "/home/egg/personal/test_countries.csv") + write_csv(df_in, here::here("updating_functions/name_2_rgn/test_countries.csv")) + } + return(ohi_names) } \ No newline at end of file diff --git a/updating_functions/name_2_rgn/update_name_2_rgn.Rmd b/updating_functions/name_2_rgn/update_name_2_rgn.Rmd new file mode 100644 index 0000000..15f2d35 --- /dev/null +++ b/updating_functions/name_2_rgn/update_name_2_rgn.Rmd @@ -0,0 +1,64 @@ +--- +title: "Updating name 2 region synonyms" +output: html_document +date: "2023-08-07" +editor_options: + chunk_output_type: console +--- + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE) +``` + +This script can be used to update the synonyms in name_2\_rgn as well as confirm that the update was successful. To update synonyms in name_2\_rgn follow the steps below. + +**1.)** Run the code below to update the synonyms list in name_2 region. If you experience issues or need to delete synonyms open \~/data_raw/rgn_eez_v2013a_synonyms.csv and manually edit the file. + +```{r} +load(here::here("data/rgn_master.rda")) + +#new synonyms +new_synonyms <- c("Congooooo, Democratic Republic") + +#region ids +region_ids <- c(199) + +#rgn type (must be be ohi_region, landlocked, or disputed) +region_types <- c("ohi_region") + +#run the function to add synonyms +source(here::here("updating_functions/name_2_rgn/update_synonyms.R")) + +update_synonyms(new_synonyms, region_ids, region_types) +``` + +**2)** Rerun data_prepare.R to update the rda files stored in the data folder + +```{r} +source(here::here("data_raw/data_prepare.R")) +``` + +**3)** Confirm that the update was successful + +- If you experience unexpected issues when testing the update, you may need to update the name_2\_rgn function stored in the R folder. + +```{r} +#source the functions for testing the synonyms +source(here::here("updating_functions_documentation/name_2_rgn/test_synonyms.R")) + +#source the latest version of name_2_rgn +source(here::here("R/name_2_rgn.R")) + +#create a list of synyonyms that you updated + +synonyms <- c("Albania") #replace this with your list +#run the test_synonyms function +#to add the synonyms to the test data frame set append_synonyms to true, do not do this until you have confirmed they are working as expected + + +#review output, confirm your synonyms were not removed for not having any match in the lookup tables +#review the results data frame and check that the synoynms you added were assigned to the correct region +result <- test_synonyms(synonyms) +``` + +**4)** Push changes to the ohicore repository. Reinstall ohicore from the dev branch to use the updated functions. diff --git a/updating_functions/name_2_rgn/update_synonyms.R b/updating_functions/name_2_rgn/update_synonyms.R new file mode 100644 index 0000000..542d18b --- /dev/null +++ b/updating_functions/name_2_rgn/update_synonyms.R @@ -0,0 +1,46 @@ +old_synonyms <- read_csv(here::here("data_raw/rgn_eez_v2013a_synonyms.csv")) + +update_synonyms <- function(synonyms_list, region_id_list, rgn_type_list) { + + + #make them into a data frame + rgn_data <- tibble(rgn_id_2013 = region_id_list, rgn_nam_2013 = synonyms_list, + rgn_typ = rgn_type_list) + + rgn_main <- rgn_master %>% select(-c(rgn_nam_2013, rgn_typ)) + + #lookup the correct information for each + rgn_syn_new <- rgn_data %>% + left_join(rgn_main, by = "rgn_id_2013") %>% + select(rgn_id_2013, rgn_nam_2013, rgn_key_2013, + eez_iso3, rgn_typ) # select the rows we want + + print(rgn_syn_new) + confirmation <- readline("Confirm you want to add this line to the synonyms file? (yes/no): ") + + + if (tolower(confirmation) == "yes") { + + final_synonyms <- rbind(old_synonyms, rgn_syn_new) + #check that there are no duplicates + final_synonyms_test <- final_synonyms %>% + mutate(rgn_nam_2013 = tolower(rgn_nam_2013)) %>% + mutate(rgn_nam_2013 = stringr::str_remove(rgn_nam_2013, ",")) %>% + mutate(rgn_nam_2013 = stringr::str_remove(rgn_nam_2013, "'")) %>% + mutate(rgn_nam_2013 = stringr::str_remove(rgn_nam_2013, "´")) %>% + mutate(rgn_nam_2013 = stringr::str_remove(rgn_nam_2013, "’")) %>% + group_by(rgn_nam_2013) %>% + summarize(n=n()) %>% filter(n >1) + if(nrow(final_synonyms_test) == 0) { + #write final csv + write_csv(final_synonyms, here::here("data_raw/rgn_eez_v2013a_synonyms.csv")) + print("Synonyms Added") + } else{ + print("duplicates detected, synonyms were not added.") + } + + } else { + print("Operation cancelled.") + } + +} \ No newline at end of file From aa166f01c8de6b2e68d2f4c653704d8874c8829d Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Tue, 8 Aug 2023 14:03:45 -0700 Subject: [PATCH 18/40] finished adding name_2_rgn updates --- data/rgn_master.rda | Bin 6001 -> 6313 bytes data/rgn_synonyms.rda | Bin 3641 -> 3895 bytes data_raw/data_prepare.R | 4 +- data_raw/rgn_eez_v2013a_synonyms.csv | 196 +++++++++--------- .../name_2_rgn/test_countries.csv | 2 +- .../name_2_rgn/update_name_2_rgn.Rmd | 21 +- .../name_2_rgn/update_synonyms.R | 27 ++- 7 files changed, 131 insertions(+), 119 deletions(-) diff --git a/data/rgn_master.rda b/data/rgn_master.rda index bb4101fd81c841876b942fdd9cb510852ea5f2de..1410d128d9df5e95aaf2fd72a9b314080b5bab74 100644 GIT binary patch literal 6313 zcmV;a7*^*(T4*^jL0KkKS!?ddT>v}!fB*mg|9}5?fB*mg|NsC0|MbK_P00BS%0YCsmPyhsi zfEeuegp^ZF0W~ye)6>zTDrxF|sMw)0E%#v2av!h1YH*nBA7xh z8CxqVV8;em#_X0_rL87cvZ;+1%B9SNBxJ!sfQvasLW(8~V-^9J6a)Z^10yhCz%oJP z3<4;kLiDRGy}71(m#uphgWA2z_dQ$7 zkK5?q^?C>U@;vm1{zy+A$CcHV&c5OZ>}@2%L^U8H{tqv08xaW3J#Cu^l2nC39uJFe zdf5*B&wmzzJUX^Sfh4|6kSQMBGId1y0KY0kEQYm(6Pv~UQ3)iYJg@x}ZVZcPJ z+%vqWxUAY%P$(sZhGS!k-jz*`Ffg1n;hIfGqry8vqN7oyz^t^%bhM1ZD3oaxZ4}4I z#||Vb8JG!5Pix+VsY{@y@<62pu8tF791mRp>b9joW`_u zD#Ug3&_45j8?m7!W?-?0Orv*E0rg^_-hJn9WRG zZih1_#+HU_H8y8hskxrtuZywZ+59=TJ6f6?7I?C6bgtaRgRSUY#j&N&!$T)$%YOGO zgQeJ|o`wb5+nU#Gce>a&v1Y|)r#j8ej2N`GI61pCJq~wchTd*&&PDsOaBOrqxf@nf zC2Hzn-MQ4-=4jH@_iMXDQgTTyWFabcN*-#yp8Jn}0U z=*@{Kt8BbAQfm9mpMguTB+W+0DN408?wI0c?afl_2d@5EE1h|}WX$+j&Qp-oY-C_j ziDSU6(9%}T@2=))GbqWMV)M5{0}Ljj(>2U3P5SO&R??#tITHhUMw3M1`?)+bXi>?f zdP;IMF><{-Psn?8%{v>WxpS7J!NV;-hX%S}r0;lLd6jf4l3l9Bl&e}WozDCl551D^ zX0PJ1)9AsOb8R#lo;RCLzYQ}7F;0hyXuA_8ELbUo-7afIhNm1C#m263eSce97gJ$M zXBOycV}(Pyp|b1^Ww044s9IBnm%Bq*0z4#yh*U`t6eUO!PgO*KmdR3B5PaEUNg*Bu z5_Z+ms87#QLCeBnCup%G=fTX#h7zQbiX$r)6K}uzWux`@HX6IaAAPV(0QomtJl;jF=jxDB|D0 zOB~mpyRb27l)>*(+NZK|Uiht~!PB6;(x%piEY@t7n6O~jy2%)s4s#OmixnvsDsl}o z1WtB}GfNp591RAw<`bB-+EX_6hPJ~)9I8sWc#BG;W~i2^saDF=uAN4pF)eSTmx zY8qHpaaEM|Dsb457O!DY3 z`-8NJs|y$c+#WC)gNA%a9T4A)6A49I;KwvbN;g9BZYoRfWiLBbDbULD>gRK4tJ^0B z9&6#DD=2GP=B3KLvk9Y-=;~t4!=*PmttTn5gC1e&EZO|jR_UmAU*>Zs zc%F&hKbJhY=VI>Xq3mYC+V6FfwklClils_arA!s&M?|AG3vkITJE~cN)3|g_v#>NY z(}5@^14kyX8g>J;I+m!vN(~e`M^i$ISr@61D}_{ic~Vh|s+xSJN5~zF#YIabkCBrG z3PqyQl{P5Ut~D@rT71fzm?F}pPa7@BskU8YQl%B$9OF^%o<sb%FbWqEfKi0B{q zKNFB_n&!_`u1Vv*eQEoX**?tWbh>ACJSqr#qER zt&OfmMy7?Pb?134zn#9@T@Oln-YMfHO=tH@9%cg5-CiS-c1@GFzDnnoljwIWr-yRc zUjfrPl_^tF%R-ad_r1p<tvYt=8RbRnmz(sw<@~eMKydP?|(k zAbm(58m5+7YE-h4l_^q+o_*GrRHC&vG39#ZDWRHKf{P#grKIL_Gd*t;Y1pF!?9Ta# zW(FwxN?iD@BNNb3;yw=rL{FqEYAYA%tuRr7r8#z++Yd8y z=#+iwxOq*pbooxX=y)t%AW=cOxAL* zJ#Lev^_D2@J@eRLcBh9&rgdG5=p{%JYWU>-q(xE7HlsZX0484ub zZx(HhUYkp;eY}qsE5=!b#ivgUrb?DsX-2iBmBCWXnpc-*mX)2Q-3Nj3N7qi%PbhbwRaF%NhUS8KK(7NCy*R6(}?)j2f9Z*0*y*bIG~A zx!~qR>z#*0{Xf&O%f4)zTBpU%<>Ib6TMb7v*{SE>Ag&Ds7u5wr!f`>FJy2jQCA+mU7J6ET-0{$?;_NGW9jFaZ@&imiHC6?6)aS zMNLig{r;8J(zBymTGKYOPKl|dgOQnx=wjq?eV3nb@4fDnc%0EY9J(hN%YJT2Zf7j| zlN|>I9knuNuLZA`ys)i@H22;|GU=VIDN@}S;KETxZwYnMl{hS&P7N$m26C1%aav%& zw5B?&ysDIY9TV-k&ocA#rAXdUfr(?Vzt%85lj>Tl+H6au3gDGRVh-Ra?@JvYs)vEG00ePkwK%GRo+&1M9&?wHOqrfZvK z?&jtPYfD+F(K;GiOd94go})CJdYa~prX7=m*3S(SQJPSt)~5yc~;M4wId4!f?# z$2HhTVPoj(sG@LQ()?ppQ2i8H=e_RuQahwX{|6g zora^ZqjAi|xzHU6Oe7UBn9ef51B&j`ov_+&JPaQb zd2>=vz+`xyavaUZPIHOma-4?F1vHx_<#WWj$}mS%>1sS1B%Kpbx$RVMJLU%RpX8cN zoRf6+8;8=GC~0_pV}Ytn3W?4%moI?sHf}09j;YtoJqMeuH59?trkL9&whqFRG_vOd z6QH#8$sDpynPW1-#&#~8(@C8Z0|O~CDAXEO7APf6YuLI*nNZ2fSk)bwlqc0h`^Hk? zlBE5VdX46&j0$~!MrB@9t4HJfGEc^j#(z8S@-tncT)AX)6O|KY=z{Rxpq+niQ zB+R-7sYdxt@OS&QP3Kf$QZg$O1-?cFu*o-<@L7Em3siju4N>uoCNjpE_4;W}X32{w zO-Z_JHcgVslUTq}N6c9MiYe@GlqghGlib!mb7bl_B%X7aiSIqkCiMHLB>d;K=sI}} zj?&Uzc%5c0Whvae=Y2yy*<+-}VC6p{_s(4h!ILF0jj|_sf%XryZ9NmYuz1c{JkO{< z3F$uCetI`Z>!mnaa5I|CL!Hzbjw>`GiBhFHos5rZgXvm*$dUIMy~o=;jW0u1nknBb zx!`ygF~ZiAN|G%^@hnY#;rC&i*FM;2JM9tk9tS#BjVCdgMUI2KvPOdXN|r`Nj0?!tSY%O5MHv~HPp2o0n zYbdH+F^7?JS?VfejN&M$9{D_qI7>`RuqLS{`yaYd#!-4T&Vz}Zly6;uVvF+J_LMAm z7?_k%iS06&6ku^NFw|)@nU<3lEDB(|IbzxuG7O`lUK8d$M+2T*%VAQU5~Yla#Z^+3 zRaH5sYI2^LJmt$hC$anHOU&N0#TpG0)OX7wK69=kNx0Pf2ewNe2^~&vQdW4BvdOsZ zJQ@s(H%Yjp%<7uMxztmX_@r$+#*<@^%UUXtN}f5Xz|M1=gT%>c*F7_7smgB_oWnN= zG@XaU`Hk_Qqq=00H>W$O$jKnucR7u`^k_3RP3Nj3)_jXWuweGO*haR4OvO_(n6aVy zMhyi03XD;*b`~siXiKIvc*~zLd5dOE88I*~I^4$yy8_X#f?8(9Nn(_<327}+UURW| z4iQo+DI$`Ngqgk$eHSXC}VbCk@viWtJj&S)<)U~pulqZN`%mx~Ke zgr}&!tYj>6!#l4fFqB$aq*+xHBFEZ3vk7yM=OxZZZy9qUqESkkORkHKvdMvSVo_{n zmkGI!Ow7{d+A9qfVWOoNrkLQ`Y+;q7OED=^ zbXiP2J7Go!C7(y#!V?KIkfO;3)kG;sS!vM{T?0u>3l$+|BUHG+aWE`h6B5HT%4dwK z#SCP~v#7wDJCln_Vo227*v1w`IT=07*&@Y8q-ioqV*+Skz+9t@E1Hnx8ji~pV50>W zF=IB)Rz^#hy{Xz}d<><;4YGw#Wm_9q3JcOK*FxF!iE)5NwXnnlm3c$$s#+Ae83 zHytJt=P9~QV&}y6wLZbxZ8)3F;?r5BF2x$yNijv0OG!EpsC?t<&x>MYk~t=cvMUhj z6fvJcu-n?~IgWYAdl{IsP0rZ|QKjT=n41jxry*(4>6?{36TW&|(vDJ$Tc(34Mh1Bg zx1?Zo!{1euE>d$(n9xm7XOvo0DoQMiMMX(3FEmZZnB2h|iagJW+>zHj{pZq=tz%JU z(}~?C!;K?)p=rdTjG4`xh8mF}M+AwUL<&6^a4z&DQCPNK52xat;Mgg%cR6}LxkhP4G$f*oWfZ~;DC$Y2pv82&u|{boMo}X% zf=d=^Da^TvnAEYcQF4w2XfAcnLCjI)-6cM>^&h7$QNYObnw(8U`^U)dcAQOTI-~2G zC8p=Oeqp%6T|uII3esfCaGgEA3L&$4nBlfdyT zYb@n1avP6XXfMH$naML8hlsm5jL>LOYb;qsG)p{7Np(BRn$N6aWM)%yr0hH=0~pN_ zCgWMS++JfRM9A)P{_08lsy`jLWP=4V6<**lf&hRi1(2K@poMN}DVzYrTR_SPf{;WT z<&Qj4^MWyH86lu(cfo>ejRaQ~A(|0p74QZOunelFOx#guC(Y`>Rg~3iSR@tA{k3ee zu;T~;QVPgzfdz)UCNk7&F^C;7fVg3>1c3!4;e%VvJkL1uJpBCL$zErib-feK=9Ke1 z&p#yc=jYMnaPpcuUQ^0<&nd~1z5nkHCbt~a;NvTSjKh3NN@od)ibjD<%2}_VN&j%K fAc2H0DnN^%e2Z}jCcJVa|KjdQrwS4cec213G1BNM literal 6001 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 FB!E&O7k&T$ literal 3641 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 LP81|FqRiMpFv^m; diff --git a/data_raw/data_prepare.R b/data_raw/data_prepare.R index 8af82bb..bf467b7 100644 --- a/data_raw/data_prepare.R +++ b/data_raw/data_prepare.R @@ -4,11 +4,11 @@ library(devtools) -rgn_synonyms <- read.csv('data_raw/rgn_eez_v2013a_synonyms.csv', na = "", stringsAsFactors = FALSE) +rgn_synonyms <- read_csv('data_raw/rgn_eez_v2013a_synonyms.csv') usethis::use_data(rgn_synonyms, overwrite = TRUE) -rgn_master <- read.csv('data_raw/eez_rgn_2013main.csv', na = "", stringsAsFactors = FALSE) +rgn_master <- read_csv('data_raw/eez_rgn_2013main.csv') usethis::use_data(rgn_master, overwrite = TRUE) ## The following have not been updated, will do this when I figure out how they are used. diff --git a/data_raw/rgn_eez_v2013a_synonyms.csv b/data_raw/rgn_eez_v2013a_synonyms.csv index d6b11e7..e903864 100644 --- a/data_raw/rgn_eez_v2013a_synonyms.csv +++ b/data_raw/rgn_eez_v2013a_synonyms.csv @@ -31,7 +31,7 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 21,"Korea, Dem. People's Rep",KP,PRK,ohi_region 21,"Korea, Dem. People's Rep. of",KP,PRK,ohi_region 21,"Korea, Dem. Rep.",KP,PRK,ohi_region -21,"korea democratic people´s republic of",KP,PRK,ohi_region +21,korea democratic people´s republic of,KP,PRK,ohi_region 21,Korea (North),KP,PRK,ohi_region 21,"Korea, North",KP,PRK,ohi_region 28,Comoros,KM,COM,ohi_region @@ -106,7 +106,7 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 139,Venezuela (Bolivarian Republic of),VE,VEN,ohi_region 139,Venezuela Bolivarian Republic of,VE,VEN,ohi_region 139,"Venezuela, Boliv Rep of",VE,VEN,ohi_region -139,"Venezuela (Boliv Rep of)",VE,VEN,ohi_region +139,Venezuela (Boliv Rep of),VE,VEN,ohi_region 139,"Venezuela, RB",VE,VEN,ohi_region 140,Guadeloupe,GX,Guadeloupe and Martinique,ohi_region 140,Martinique,GX,Guadeloupe and Martinique,ohi_region @@ -172,8 +172,8 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 209,Macao SAR China,CN,CHN,ohi_region 209,Macau,CN,CHN,ohi_region 209,Macau (China),CN,CHN,ohi_region -209,"Macau China",CN,CHN,ohi_region -209,"Macao China",CN,CHN,ohi_region +209,Macau China,CN,CHN,ohi_region +209,Macao China,CN,CHN,ohi_region 209,Province of China,CN,CHN,ohi_region 214,"Egypt, Arab Rep.",EG,EGY,ohi_region 219,Saint Pierre and Miqelon,PM,SPM,ohi_region @@ -204,96 +204,98 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 83,Saint Helena/Asc./Trist.,SH,SHN,ohi_region 76,Turkiye,TR,TUR,ohi_region 76,Türkiye,TR,TUR,ohi_region -,Azerbaijan,,,landlocked -,"Disputed Territory (Paracel Is., Spratly Is.)",,,disputed -,"Australia - East Timor",,,disputed -,"Australia - Papua New Guinea",,,disputed -,"Australia/Indonesia",,,disputed -,"Chile/Peru",,,disputed -,"Colombia - Jamaica",,,disputed -,Gaza Strip,,,disputed -,Japan - South Korea Conflict Zone,,,disputed -,Nigeria - Sao Tome and Principe,,,disputed -,Kazachstan,,,landlocked -,Kazakhstan,,,landlocked -,Occupied Palestinian Territory,,,disputed -,Palestine,,,disputed -,Palestine State of,,,disputed -,Southern Kuriles,,,disputed -,Spratly Islands,,,disputed -,Disputed Sudan-Egypt,,,disputed -,State Of Palestine,,,disputed -,"Palestine, Occupied Tr.",,,disputed -,Paracel Islands,,,disputed -,Tajikistan,,,landlocked -,Turkmenistan,,,landlocked -,Uzbekistan,,,landlocked -,West Bank,,,disputed -,West Bank and Gaza,,,disputed -,Afghanistan,,,landlocked -,Andorra,,,landlocked -,Armenia,,,landlocked -,Austria,,,landlocked -,Belarus,,,landlocked -,Bhutan,,,landlocked -,Bolivia,,,landlocked -,Bolivia (Plurinat.State),,,landlocked -,Bolivia (Plurinational State of),,,landlocked -,Bolivia Plurinational State of,,,landlocked -,Botswana,,,landlocked -,Burkina Faso,,,landlocked -,Burundi,,,landlocked -,Central African Republic,,,landlocked -,Chad,,,landlocked -,Czechia,,,landlocked -,czech republic (czechia),,,landlocked -,Czech Republic,,,landlocked -,Czechoslovakia,,,landlocked -,eswatini,,,landlocked -,Ethiopia,,,landlocked -,Ethiopia PDR,,,landlocked -,Holy See,,,landlocked -,Holy See (Vatican City),,,landlocked -,Holy See (Vatican),,,landlocked -,Hungary,,,landlocked -,Kosovo,,,landlocked -,Kyrgyz Republic,,,landlocked -,Kyrgyzstan,,,landlocked -,Lao PDR,,,landlocked -,Lao People?s Democratic Republic,,,landlocked -,Lao People's Dem. Rep.,,,landlocked -,Lao People's Democratic Republic,,,landlocked -,Laos,,,landlocked -,Lesotho,,,landlocked -,Liechtenstein,,,landlocked -,Luxembourg,,,landlocked -,Macedonia,,,landlocked -,North Macedonia,,,landlocked -,"Macedonia, Fmr Yug Rp of",,,landlocked -,"Macedonia, FYR",,,landlocked -,Malawi,,,landlocked -,Mali,,,landlocked -,Moldova,,,landlocked -,Moldova Republic of,,,landlocked -,Mongolia,,,landlocked -,Nepal,,,landlocked -,Niger,,,landlocked -,Paraguay,,,landlocked -,Republic of Moldova,,,landlocked -,Rwanda,,,landlocked -,San Marino,,,landlocked -,Serbia,,,landlocked -,Slovak Republic,,,landlocked -,Slovakia,,,landlocked -,South Sudan,,,landlocked -,Swaziland,,,landlocked -,Switzerland,,,landlocked -,TFYR Macedonia,,,landlocked -,TFYR of Macedonia,,,landlocked -,The Former Yugoslav Republic of Macedonia,,,landlocked -,Total,,,largescale -,Uganda,,,landlocked -,Vatican,,,landlocked -,World,,,largescale -,Zambia,,,landlocked -,Zimbabwe,,,landlocked \ No newline at end of file +NA,Azerbaijan,NA,NA,landlocked +NA,"Disputed Territory (Paracel Is., Spratly Is.)",NA,NA,disputed +NA,Australia - East Timor,NA,NA,disputed +NA,Australia - Papua New Guinea,NA,NA,disputed +NA,Australia/Indonesia,NA,NA,disputed +NA,Chile/Peru,NA,NA,disputed +NA,Colombia - Jamaica,NA,NA,disputed +NA,Gaza Strip,NA,NA,disputed +NA,Japan - South Korea Conflict Zone,NA,NA,disputed +NA,Nigeria - Sao Tome and Principe,NA,NA,disputed +NA,Kazachstan,NA,NA,landlocked +NA,Kazakhstan,NA,NA,landlocked +NA,Occupied Palestinian Territory,NA,NA,disputed +NA,Palestine,NA,NA,disputed +NA,Palestine State of,NA,NA,disputed +NA,Southern Kuriles,NA,NA,disputed +NA,Spratly Islands,NA,NA,disputed +NA,Disputed Sudan-Egypt,NA,NA,disputed +NA,State Of Palestine,NA,NA,disputed +NA,"Palestine, Occupied Tr.",NA,NA,disputed +NA,Paracel Islands,NA,NA,disputed +NA,Tajikistan,NA,NA,landlocked +NA,Turkmenistan,NA,NA,landlocked +NA,Uzbekistan,NA,NA,landlocked +NA,West Bank,NA,NA,disputed +NA,West Bank and Gaza,NA,NA,disputed +NA,Afghanistan,NA,NA,landlocked +NA,Andorra,NA,NA,landlocked +NA,Armenia,NA,NA,landlocked +NA,Austria,NA,NA,landlocked +NA,Belarus,NA,NA,landlocked +NA,Bhutan,NA,NA,landlocked +NA,Bolivia,NA,NA,landlocked +NA,Bolivia (Plurinat.State),NA,NA,landlocked +NA,Bolivia (Plurinational State of),NA,NA,landlocked +NA,Bolivia Plurinational State of,NA,NA,landlocked +NA,Botswana,NA,NA,landlocked +NA,Burkina Faso,NA,NA,landlocked +NA,Burundi,NA,NA,landlocked +NA,Central African Republic,NA,NA,landlocked +NA,Chad,NA,NA,landlocked +NA,Czechia,NA,NA,landlocked +NA,czech republic (czechia),NA,NA,landlocked +NA,Czech Republic,NA,NA,landlocked +NA,Czechoslovakia,NA,NA,landlocked +NA,eswatini,NA,NA,landlocked +NA,Ethiopia,NA,NA,landlocked +NA,Ethiopia PDR,NA,NA,landlocked +NA,Holy See,NA,NA,landlocked +NA,Holy See (Vatican City),NA,NA,landlocked +NA,Holy See (Vatican),NA,NA,landlocked +NA,Hungary,NA,NA,landlocked +NA,Kosovo,NA,NA,landlocked +NA,Kyrgyz Republic,NA,NA,landlocked +NA,Kyrgyzstan,NA,NA,landlocked +NA,Lao PDR,NA,NA,landlocked +NA,Lao People?s Democratic Republic,NA,NA,landlocked +NA,Lao People's Dem. Rep.,NA,NA,landlocked +NA,Lao People's Democratic Republic,NA,NA,landlocked +NA,Laos,NA,NA,landlocked +NA,Lesotho,NA,NA,landlocked +NA,Liechtenstein,NA,NA,landlocked +NA,Luxembourg,NA,NA,landlocked +NA,Macedonia,NA,NA,landlocked +NA,North Macedonia,NA,NA,landlocked +NA,"Macedonia, Fmr Yug Rp of",NA,NA,landlocked +NA,"Macedonia, FYR",NA,NA,landlocked +NA,Malawi,NA,NA,landlocked +NA,Mali,NA,NA,landlocked +NA,Moldova,NA,NA,landlocked +NA,Moldova Republic of,NA,NA,landlocked +NA,Mongolia,NA,NA,landlocked +NA,Nepal,NA,NA,landlocked +NA,Niger,NA,NA,landlocked +NA,Paraguay,NA,NA,landlocked +NA,Republic of Moldova,NA,NA,landlocked +NA,Rwanda,NA,NA,landlocked +NA,San Marino,NA,NA,landlocked +NA,Serbia,NA,NA,landlocked +NA,Slovak Republic,NA,NA,landlocked +NA,Slovakia,NA,NA,landlocked +NA,South Sudan,NA,NA,landlocked +NA,Swaziland,NA,NA,landlocked +NA,Switzerland,NA,NA,landlocked +NA,TFYR Macedonia,NA,NA,landlocked +NA,TFYR of Macedonia,NA,NA,landlocked +NA,The Former Yugoslav Republic of Macedonia,NA,NA,landlocked +NA,Total,NA,NA,largescale +NA,Uganda,NA,NA,landlocked +NA,Vatican,NA,NA,landlocked +NA,World,NA,NA,largescale +NA,Zambia,NA,NA,landlocked +NA,Zimbabwe,NA,NA,landlocked +76,turk,TR,TUR,ohi_region +9,Micronesia States of,FM,FSM,ohi_region diff --git a/updating_functions/name_2_rgn/test_countries.csv b/updating_functions/name_2_rgn/test_countries.csv index 85be719..5c533ef 100644 --- a/updating_functions/name_2_rgn/test_countries.csv +++ b/updating_functions/name_2_rgn/test_countries.csv @@ -30,4 +30,4 @@ North Macedonia Lao Pdr Micronesia (Fed. States) Netherlands (Kingdom of the) -Venezuela (Boliv Rep of) \ No newline at end of file +Venezuela (Boliv Rep of) diff --git a/updating_functions/name_2_rgn/update_name_2_rgn.Rmd b/updating_functions/name_2_rgn/update_name_2_rgn.Rmd index 15f2d35..970d05d 100644 --- a/updating_functions/name_2_rgn/update_name_2_rgn.Rmd +++ b/updating_functions/name_2_rgn/update_name_2_rgn.Rmd @@ -10,18 +10,19 @@ editor_options: knitr::opts_chunk$set(echo = TRUE) ``` -This script can be used to update the synonyms in name_2\_rgn as well as confirm that the update was successful. To update synonyms in name_2\_rgn follow the steps below. +This script can be used to update the synonyms in name_2\_rgn as well as confirm that the update was successful. -**1.)** Run the code below to update the synonyms list in name_2 region. If you experience issues or need to delete synonyms open \~/data_raw/rgn_eez_v2013a_synonyms.csv and manually edit the file. +**1.)** Run the code below to update the synonyms list in name_2 region. If you need to delete or edit existing synonyms open \~/data_raw/rgn_eez_v2013a_synonyms.csv and manually edit the file. ```{r} load(here::here("data/rgn_master.rda")) -#new synonyms -new_synonyms <- c("Congooooo, Democratic Republic") +#new synonyms, update with new synonyms +new_synonyms <- c("Micronesia Federated States of") -#region ids -region_ids <- c(199) +#region ids, update with the matching region id for the synonym +#put NA for landlocked or disputed +region_ids <- c(9) #rgn type (must be be ohi_region, landlocked, or disputed) region_types <- c("ohi_region") @@ -44,21 +45,17 @@ source(here::here("data_raw/data_prepare.R")) ```{r} #source the functions for testing the synonyms -source(here::here("updating_functions_documentation/name_2_rgn/test_synonyms.R")) +source(here::here("updating_functions/name_2_rgn/test_synonyms.R")) #source the latest version of name_2_rgn source(here::here("R/name_2_rgn.R")) -#create a list of synyonyms that you updated - -synonyms <- c("Albania") #replace this with your list #run the test_synonyms function #to add the synonyms to the test data frame set append_synonyms to true, do not do this until you have confirmed they are working as expected - #review output, confirm your synonyms were not removed for not having any match in the lookup tables #review the results data frame and check that the synoynms you added were assigned to the correct region -result <- test_synonyms(synonyms) +results <- test_synonyms(new_synonyms) ``` **4)** Push changes to the ohicore repository. Reinstall ohicore from the dev branch to use the updated functions. diff --git a/updating_functions/name_2_rgn/update_synonyms.R b/updating_functions/name_2_rgn/update_synonyms.R index 542d18b..442c937 100644 --- a/updating_functions/name_2_rgn/update_synonyms.R +++ b/updating_functions/name_2_rgn/update_synonyms.R @@ -1,11 +1,14 @@ old_synonyms <- read_csv(here::here("data_raw/rgn_eez_v2013a_synonyms.csv")) +valid_values <- c('ohi_region', 'landlocked', 'disputed') update_synonyms <- function(synonyms_list, region_id_list, rgn_type_list) { #make them into a data frame + rgn_data <- tibble(rgn_id_2013 = region_id_list, rgn_nam_2013 = synonyms_list, - rgn_typ = rgn_type_list) + rgn_typ = rgn_type_list) + rgn_main <- rgn_master %>% select(-c(rgn_nam_2013, rgn_typ)) @@ -14,9 +17,16 @@ update_synonyms <- function(synonyms_list, region_id_list, rgn_type_list) { left_join(rgn_main, by = "rgn_id_2013") %>% select(rgn_id_2013, rgn_nam_2013, rgn_key_2013, eez_iso3, rgn_typ) # select the rows we want - + cat("\nConfirm new line(s) are correct:\n") print(rgn_syn_new) - confirmation <- readline("Confirm you want to add this line to the synonyms file? (yes/no): ") + name_check <- rgn_syn_new %>% + left_join(rgn_master, by ="rgn_id_2013") + + cat("\nConfirm these are the correct region names for your synonyms:\n") + print(table(name_check$rgn_nam_2013.y)) + + confirmation <- readline("Add these synonyms? (yes/no): ") + if (tolower(confirmation) == "yes") { @@ -31,12 +41,15 @@ update_synonyms <- function(synonyms_list, region_id_list, rgn_type_list) { mutate(rgn_nam_2013 = stringr::str_remove(rgn_nam_2013, "’")) %>% group_by(rgn_nam_2013) %>% summarize(n=n()) %>% filter(n >1) - if(nrow(final_synonyms_test) == 0) { - #write final csv + + + if (nrow(final_synonyms_test) > 0) { + print("Duplicates detected, synonyms were not added.") + } else if (!all(rgn_data$rgn_typ %in% valid_values)) { + print("Invalid rgion type") + } else { write_csv(final_synonyms, here::here("data_raw/rgn_eez_v2013a_synonyms.csv")) print("Synonyms Added") - } else{ - print("duplicates detected, synonyms were not added.") } } else { From fa9686dc4a525f50c8ad9b87490de71d96f0ec85 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Tue, 8 Aug 2023 16:07:00 -0700 Subject: [PATCH 19/40] fixed mismatched rgn id, added new synonym --- data/rgn_synonyms.rda | Bin 3895 -> 3918 bytes data_raw/rgn_eez_v2013a_synonyms.csv | 7 +++---- .../name_2_rgn/update_name_2_rgn.Rmd | 8 +++++--- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index 2221ba29850efc543cb620edde2f6c12ec202160..5d37e23272fa6690d01328595336a9e4e5ba1cd4 100644 GIT binary patch literal 3918 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 FB!E&O7k&T$ diff --git a/data_raw/rgn_eez_v2013a_synonyms.csv b/data_raw/rgn_eez_v2013a_synonyms.csv index e903864..1439c1e 100644 --- a/data_raw/rgn_eez_v2013a_synonyms.csv +++ b/data_raw/rgn_eez_v2013a_synonyms.csv @@ -198,10 +198,9 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 244,Curaçao,CW,CUW,ohi_region 244,Cura.+ao,CW,CUW,ohi_region 245,Netherlands - Bonaire,BO,BQ,ohi_region -245,Netherlands (Kingdom of the),BO,BQ,ohi_region 247,Brunei Darussalam,BN,BRN,ohi_region 249,Sint Eustasius,EQ,Sint-Eustasius,ohi_region -83,Saint Helena/Asc./Trist.,SH,SHN,ohi_region +86,Saint Helena/Asc./Trist.,SH,SHN,ohi_region 76,Turkiye,TR,TUR,ohi_region 76,Türkiye,TR,TUR,ohi_region NA,Azerbaijan,NA,NA,landlocked @@ -297,5 +296,5 @@ NA,Vatican,NA,NA,landlocked NA,World,NA,NA,largescale NA,Zambia,NA,NA,landlocked NA,Zimbabwe,NA,NA,landlocked -76,turk,TR,TUR,ohi_region -9,Micronesia States of,FM,FSM,ohi_region +177,Netherlands (Kingdom of the,NL,NLD,ohi_region +86,saint helena ascension and tristan da cunha,SH,SHN,ohi_region diff --git a/updating_functions/name_2_rgn/update_name_2_rgn.Rmd b/updating_functions/name_2_rgn/update_name_2_rgn.Rmd index 970d05d..e6994ca 100644 --- a/updating_functions/name_2_rgn/update_name_2_rgn.Rmd +++ b/updating_functions/name_2_rgn/update_name_2_rgn.Rmd @@ -15,17 +15,19 @@ This script can be used to update the synonyms in name_2\_rgn as well as confirm **1.)** Run the code below to update the synonyms list in name_2 region. If you need to delete or edit existing synonyms open \~/data_raw/rgn_eez_v2013a_synonyms.csv and manually edit the file. ```{r} +library(tidyverse) load(here::here("data/rgn_master.rda")) #new synonyms, update with new synonyms -new_synonyms <- c("Micronesia Federated States of") +new_synonyms <- c("Netherlands (Kingdom of the", + "saint helena ascension and tristan da cunha") #region ids, update with the matching region id for the synonym #put NA for landlocked or disputed -region_ids <- c(9) +region_ids <- c(177,86) #rgn type (must be be ohi_region, landlocked, or disputed) -region_types <- c("ohi_region") +region_types <- c("ohi_region", "ohi_region") #run the function to add synonyms source(here::here("updating_functions/name_2_rgn/update_synonyms.R")) From f2b4f9a4a5a2e10d8c13dd235c5a923952368601 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Wed, 9 Aug 2023 09:11:52 -0700 Subject: [PATCH 20/40] added more tests for name_2_rgn --- updating_functions/name_2_rgn/test_countries.csv | 6 ++++++ updating_functions/name_2_rgn/update_name_2_rgn.Rmd | 9 ++++++--- updating_functions/name_2_rgn/update_synonyms.R | 4 ++-- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/updating_functions/name_2_rgn/test_countries.csv b/updating_functions/name_2_rgn/test_countries.csv index 5c533ef..15029ae 100644 --- a/updating_functions/name_2_rgn/test_countries.csv +++ b/updating_functions/name_2_rgn/test_countries.csv @@ -17,10 +17,12 @@ Serbia And Montenegro Sint Maarten (Dutch Part) Taiwan Province Of China "Tanzania, United Republic Of" +"United Republic of Tanzania, Zanzibar" Trinidad And Tobago Turks And Caicos Islands United States Of America "Venezuela, Bolivarian Republic Of" +"Venezuela (Boliv Rep of)" "Bolivia, Plurinational State Of" Czech Republic (Czechia) Eswatini @@ -31,3 +33,7 @@ Lao Pdr Micronesia (Fed. States) Netherlands (Kingdom of the) Venezuela (Boliv Rep of) +Réunion +Saint Martin (French Part) +Svalbard and Jan Mayen Islands +Saint Helena/Asc./Trist. \ No newline at end of file diff --git a/updating_functions/name_2_rgn/update_name_2_rgn.Rmd b/updating_functions/name_2_rgn/update_name_2_rgn.Rmd index e6994ca..8d1eaab 100644 --- a/updating_functions/name_2_rgn/update_name_2_rgn.Rmd +++ b/updating_functions/name_2_rgn/update_name_2_rgn.Rmd @@ -20,14 +20,15 @@ load(here::here("data/rgn_master.rda")) #new synonyms, update with new synonyms new_synonyms <- c("Netherlands (Kingdom of the", - "saint helena ascension and tristan da cunha") + "saint helena ascension and tristan da cunha", + "Saint Helena/Asc./Trist.") #region ids, update with the matching region id for the synonym #put NA for landlocked or disputed -region_ids <- c(177,86) +region_ids <- c(177,86, 86) #rgn type (must be be ohi_region, landlocked, or disputed) -region_types <- c("ohi_region", "ohi_region") +region_types <- c("ohi_region", "ohi_region", "ohi_region") #run the function to add synonyms source(here::here("updating_functions/name_2_rgn/update_synonyms.R")) @@ -57,6 +58,8 @@ source(here::here("R/name_2_rgn.R")) #review output, confirm your synonyms were not removed for not having any match in the lookup tables #review the results data frame and check that the synoynms you added were assigned to the correct region + + results <- test_synonyms(new_synonyms) ``` diff --git a/updating_functions/name_2_rgn/update_synonyms.R b/updating_functions/name_2_rgn/update_synonyms.R index 442c937..218db1a 100644 --- a/updating_functions/name_2_rgn/update_synonyms.R +++ b/updating_functions/name_2_rgn/update_synonyms.R @@ -23,7 +23,7 @@ update_synonyms <- function(synonyms_list, region_id_list, rgn_type_list) { left_join(rgn_master, by ="rgn_id_2013") cat("\nConfirm these are the correct region names for your synonyms:\n") - print(table(name_check$rgn_nam_2013.y)) + print(name_check$rgn_nam_2013.y) confirmation <- readline("Add these synonyms? (yes/no): ") @@ -46,7 +46,7 @@ update_synonyms <- function(synonyms_list, region_id_list, rgn_type_list) { if (nrow(final_synonyms_test) > 0) { print("Duplicates detected, synonyms were not added.") } else if (!all(rgn_data$rgn_typ %in% valid_values)) { - print("Invalid rgion type") + print("Invalid region type") } else { write_csv(final_synonyms, here::here("data_raw/rgn_eez_v2013a_synonyms.csv")) print("Synonyms Added") From b315c4fff27b2ad8930d53d5f8ca7cb28ea02dd5 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Wed, 9 Aug 2023 09:17:25 -0700 Subject: [PATCH 21/40] updated netherlands --- data_raw/rgn_eez_v2013a_synonyms.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data_raw/rgn_eez_v2013a_synonyms.csv b/data_raw/rgn_eez_v2013a_synonyms.csv index 1439c1e..d300470 100644 --- a/data_raw/rgn_eez_v2013a_synonyms.csv +++ b/data_raw/rgn_eez_v2013a_synonyms.csv @@ -296,5 +296,5 @@ NA,Vatican,NA,NA,landlocked NA,World,NA,NA,largescale NA,Zambia,NA,NA,landlocked NA,Zimbabwe,NA,NA,landlocked -177,Netherlands (Kingdom of the,NL,NLD,ohi_region +177,Netherlands (Kingdom of the),NL,NLD,ohi_region 86,saint helena ascension and tristan da cunha,SH,SHN,ohi_region From afe01598b592dad3612d2cfecafd8548883b4b17 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Wed, 9 Aug 2023 09:20:21 -0700 Subject: [PATCH 22/40] updated netherlands --- data/rgn_synonyms.rda | Bin 3918 -> 3918 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index 5d37e23272fa6690d01328595336a9e4e5ba1cd4..415cb7d3aff36949b9a1ed384618409c13c3071f 100644 GIT binary patch literal 3918 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 literal 3918 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 Date: Mon, 14 Aug 2023 10:27:30 -0700 Subject: [PATCH 23/40] minor cleanup --- updating_functions/name_2_rgn/update_name_2_rgn.Rmd | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/updating_functions/name_2_rgn/update_name_2_rgn.Rmd b/updating_functions/name_2_rgn/update_name_2_rgn.Rmd index 8d1eaab..88d527c 100644 --- a/updating_functions/name_2_rgn/update_name_2_rgn.Rmd +++ b/updating_functions/name_2_rgn/update_name_2_rgn.Rmd @@ -10,7 +10,7 @@ editor_options: knitr::opts_chunk$set(echo = TRUE) ``` -This script can be used to update the synonyms in name_2\_rgn as well as confirm that the update was successful. +This script can be used to update the synonyms in name_2_rgn as well as confirm that the update was successful. **1.)** Run the code below to update the synonyms list in name_2 region. If you need to delete or edit existing synonyms open \~/data_raw/rgn_eez_v2013a_synonyms.csv and manually edit the file. @@ -19,7 +19,7 @@ library(tidyverse) load(here::here("data/rgn_master.rda")) #new synonyms, update with new synonyms -new_synonyms <- c("Netherlands (Kingdom of the", +new_synonyms <- c("Netherlands (Kingdom of the)", "saint helena ascension and tristan da cunha", "Saint Helena/Asc./Trist.") @@ -44,7 +44,7 @@ source(here::here("data_raw/data_prepare.R")) **3)** Confirm that the update was successful -- If you experience unexpected issues when testing the update, you may need to update the name_2\_rgn function stored in the R folder. +- If you experience unexpected issues when testing the update, you may need to update the name_2_rgn function stored in the R folder. ```{r} #source the functions for testing the synonyms @@ -57,10 +57,10 @@ source(here::here("R/name_2_rgn.R")) #to add the synonyms to the test data frame set append_synonyms to true, do not do this until you have confirmed they are working as expected #review output, confirm your synonyms were not removed for not having any match in the lookup tables -#review the results data frame and check that the synoynms you added were assigned to the correct region +#review the results data frame and check that the synoynms you added were assigned to the correct region. results <- test_synonyms(new_synonyms) ``` -**4)** Push changes to the ohicore repository. Reinstall ohicore from the dev branch to use the updated functions. +**4)** Push changes to the ohicore repository. Reinstall ohicore from the dev branch to use the updated function. From 4b85c265669f65e290eea4fe5234fee16408bc75 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Mon, 14 Aug 2023 11:25:12 -0700 Subject: [PATCH 24/40] added test to confirm region type is na for landlocked/disputed rgns --- updating_functions/name_2_rgn/update_synonyms.R | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/updating_functions/name_2_rgn/update_synonyms.R b/updating_functions/name_2_rgn/update_synonyms.R index 218db1a..d6c82b3 100644 --- a/updating_functions/name_2_rgn/update_synonyms.R +++ b/updating_functions/name_2_rgn/update_synonyms.R @@ -5,7 +5,6 @@ update_synonyms <- function(synonyms_list, region_id_list, rgn_type_list) { #make them into a data frame - rgn_data <- tibble(rgn_id_2013 = region_id_list, rgn_nam_2013 = synonyms_list, rgn_typ = rgn_type_list) @@ -42,11 +41,14 @@ update_synonyms <- function(synonyms_list, region_id_list, rgn_type_list) { group_by(rgn_nam_2013) %>% summarize(n=n()) %>% filter(n >1) + invalid_rgn_types <- rgn_data$rgn_typ[rgn_data$rgn_typ %in% c("landlocked", "disputed")] if (nrow(final_synonyms_test) > 0) { print("Duplicates detected, synonyms were not added.") } else if (!all(rgn_data$rgn_typ %in% valid_values)) { print("Invalid region type") + } else if (length(invalid_rgn_types) > 0 && any(!is.na(rgn_data$rgn_id_2013[rgn_data$rgn_typ %in% invalid_rgn_types]))) { + cat("rgn_id should be NA for landlocked or disputed regions.\n") } else { write_csv(final_synonyms, here::here("data_raw/rgn_eez_v2013a_synonyms.csv")) print("Synonyms Added") From b1972644baa9020f46a9929330f4ff068ffca609 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Mon, 14 Aug 2023 15:15:23 -0700 Subject: [PATCH 25/40] removed saint helena synonyms as these need to be split --- data_raw/rgn_eez_v2013a_synonyms.csv | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/data_raw/rgn_eez_v2013a_synonyms.csv b/data_raw/rgn_eez_v2013a_synonyms.csv index d300470..468d5d8 100644 --- a/data_raw/rgn_eez_v2013a_synonyms.csv +++ b/data_raw/rgn_eez_v2013a_synonyms.csv @@ -200,7 +200,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 245,Netherlands - Bonaire,BO,BQ,ohi_region 247,Brunei Darussalam,BN,BRN,ohi_region 249,Sint Eustasius,EQ,Sint-Eustasius,ohi_region -86,Saint Helena/Asc./Trist.,SH,SHN,ohi_region 76,Turkiye,TR,TUR,ohi_region 76,Türkiye,TR,TUR,ohi_region NA,Azerbaijan,NA,NA,landlocked @@ -296,5 +295,4 @@ NA,Vatican,NA,NA,landlocked NA,World,NA,NA,largescale NA,Zambia,NA,NA,landlocked NA,Zimbabwe,NA,NA,landlocked -177,Netherlands (Kingdom of the),NL,NLD,ohi_region -86,saint helena ascension and tristan da cunha,SH,SHN,ohi_region +177,Netherlands (Kingdom of the),NL,NLD,ohi_region \ No newline at end of file From ae6cd9108c49c726e4ab60d42abaa20730425328 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Mon, 14 Aug 2023 15:15:23 -0700 Subject: [PATCH 26/40] removed saint helena synonyms as these need to be split --- data/rgn_synonyms.rda | Bin 3918 -> 3845 bytes data_raw/rgn_eez_v2013a_synonyms.csv | 4 +--- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index 415cb7d3aff36949b9a1ed384618409c13c3071f..b222f6d3287c3f6ef843175dc3579e109afaad9a 100644 GIT binary patch literal 3845 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 diff --git a/data_raw/rgn_eez_v2013a_synonyms.csv b/data_raw/rgn_eez_v2013a_synonyms.csv index d300470..468d5d8 100644 --- a/data_raw/rgn_eez_v2013a_synonyms.csv +++ b/data_raw/rgn_eez_v2013a_synonyms.csv @@ -200,7 +200,6 @@ rgn_id_2013,rgn_nam_2013,rgn_key_2013,eez_iso3,rgn_typ 245,Netherlands - Bonaire,BO,BQ,ohi_region 247,Brunei Darussalam,BN,BRN,ohi_region 249,Sint Eustasius,EQ,Sint-Eustasius,ohi_region -86,Saint Helena/Asc./Trist.,SH,SHN,ohi_region 76,Turkiye,TR,TUR,ohi_region 76,Türkiye,TR,TUR,ohi_region NA,Azerbaijan,NA,NA,landlocked @@ -296,5 +295,4 @@ NA,Vatican,NA,NA,landlocked NA,World,NA,NA,largescale NA,Zambia,NA,NA,landlocked NA,Zimbabwe,NA,NA,landlocked -177,Netherlands (Kingdom of the),NL,NLD,ohi_region -86,saint helena ascension and tristan da cunha,SH,SHN,ohi_region +177,Netherlands (Kingdom of the),NL,NLD,ohi_region \ No newline at end of file From 1361260402174fcce93cd6979e3480649366e1d2 Mon Sep 17 00:00:00 2001 From: CarloBroderick Date: Thu, 24 Aug 2023 12:22:03 -0700 Subject: [PATCH 27/40] region split function --- R/split_regions.R | 95 ++++++++++++++++++++++++++++++++++++++++ data/split_pops.rda | Bin 0 -> 1915 bytes data_raw/data_prepare.R | 5 ++- data_raw/split_pops.csv | 25 +++++++++++ 4 files changed, 123 insertions(+), 2 deletions(-) create mode 100644 R/split_regions.R create mode 100644 data/split_pops.rda create mode 100644 data_raw/split_pops.csv diff --git a/R/split_regions.R b/R/split_regions.R new file mode 100644 index 0000000..c7f8396 --- /dev/null +++ b/R/split_regions.R @@ -0,0 +1,95 @@ +### This function takes datesets that have country records that contain multiple OHI regions (macro-regions). +### This is a common occurrence and there are many different combinations of country records that hold multiple OHI regions. +### This function attempts to account for all currently known versions of this; however, future OHI prepers may need to update this function to account for new cases. +### The function works by checking for common country names that often contain multiple OHI regions and then breaks those countries into OHI regions. +### Each new OHI Region's data is filled by a population weighting of the data value column. +### The population weights are pulled from a CSV with populations for each OHI region in question (often small islands). +### The decision was made that when a dataset contains both a macro-region and a sub-region that the sub-region's data will be calculated by +### summing the population weight of the macro region and the record for the region together. This is an imperfect solution; however, we believe it to be the best solution. + +library(tidyverse) + +region_split <- function(m, country_column = "country", value_column = "value") { + + # List of macro-regions to break down + split_details <- list( + `Netherlands Antilles` = c("Bonaire", "Sint Eustatius", "Saba", "Curaçao", "Sint Maarten", "Aruba"), + `Bonaire/S.Eustatius/Saba` = c("Bonaire", "Sint Eustatius", "Saba"), + `Saint Helena/Asc./Trist.` = c("Tristan da Cunha", "Saint Helena", "Ascension"), + `Channel Islands` = c("Guernsey", "Jersey"), + `United States Minor Outlying Island` = c("Wake Island", "Jarvis Island", "Palmyra Atoll", "Howland Island and Baker Island", "Johnston Atoll"), + `French Southern Territories` = c("Glorioso Islands", "Juan de Nova Island", "Bassas da India", "Ile Europa", "Ile Tromelin", "Crozet Islands", "Amsterdam Island and Saint Paul Island", "Kerguelen Islands"), + `Bonaire, Sint Eustatius and Saba` = c("Bonaire", "Sint Eustatius", "Saba"), + `French Southern Terr` = c("Glorioso Islands", "Juan de Nova Island", "Bassas da India", "Ile Europa", "Ile Tromelin", "Crozet Islands", "Amsterdam Island and Saint Paul Island", "Kerguelen Islands"), + `United States Minor Outlying Islands` = c("Wake Island", "Jarvis Island", "Palmyra Atoll", "Howland Island and Baker Island", "Johnston Atoll"), + `Saint Helena, Ascension and Tristan da Cunha` = c("Saint Helena", "Ascension", "Tristan da Cunha"), + `Caribbean Netherlands` = c("Bonaire", "Sint Eustatius", "Saba"), + `Channel Isl. (UK)` = c("Jersey", "Guernsey"), + `Saba and Sint Eustatius (Netherlands)` = c("Saba", "Sint Eustatius"), + `Mozambique Channel Isl. (France)` = c("Juan de Nova Island", "Bassas da India", "Ile Europa") + ) + + # Rename data frame columns + m <- m %>% + rename(country = paste0(country_column), value = paste0(value_column)) + + # Load population weighting data + population <- split_pops + + # Loop over all macro region names within the country column + for (country_name in names(split_details)) { + + # Check to see if macro country name is present + if (country_name %in% m$country) { + + # Pull the regions associated with the macro country name + regions <- split_details[[country_name]] + + # Calculate total population for the regions + pop_sum <- sum(population$population[population$country %in% regions]) + + # Calculate area weights for the regions + area_weights <- population %>% + filter(country %in% regions) %>% + mutate(weight = population / pop_sum) %>% + select(country, weight) %>% + mutate(id = row_number()) + + # Split the data into different regions + m_new <- m %>% + filter(country == country_name) %>% + uncount(length(regions), .id = "id") %>% + left_join(area_weights, by = c("id" = "id")) %>% + mutate(value = value * weight) %>% + mutate(country = country.y) %>% + select(-country.x, -country.y, -id, -weight) + + # Update m to remove the original country and add broken down rows + m <- m %>% + filter(!(country %in% country_name)) %>% + rbind(m_new) + + # Sum duplicates + m <- m %>% + group_by(country, commodity, year, product) %>% + summarize(value = case_when(all(is.na(value)) ~ NA, + TRUE ~ sum(value, na.rm = TRUE))) %>% + ungroup() + + } # End if statement + + } # End for loop + + # Rename columns to match data frame input + m <- m %>% + rename(paste0(country_column) = country, paste0(value_column) = value) + + # Return the new data frame + return(m) + +} # End function + + + + + \ No newline at end of file diff --git a/data/split_pops.rda b/data/split_pops.rda new file mode 100644 index 0000000000000000000000000000000000000000..17a56eda5f8621a91641563aaa128f893d3ef57f GIT binary patch literal 1915 zcmV->2ZZ=ST4*^jL0KkKS?}=N3;+ca|NsC0?P$+O{`&v_{^P&@-}68sL`J|MAOJuh z0R#d-fHmL;?|n%n3>#3Yq>2KnMOY+|NR!mwsj{0>)X?=kKr{w`Xf)8#>NNE~R2xz1 zZ6nfpful_{WNGRKk0^rx0000000000000000001k00000000000000000000g8%>k z00000000000000003wi@0W<=JnNL*qDU|g+LuEFIG&D3D)dSQtXc`&-$Of3yXaY!t z8VG2OH9V%Csp@*3QR;d|o=_Py(9i%H03M(=h-d&b2A|!z!+vaQYYc{CTo%WJGOAFa zff+K3I<+Lsv7iZVsIp#cXJm1(niMEWQ>KagVq!`U6r{iVP|bn4tq=yNHwYj_Ovq+o z2QL4`OcC(4hTTApxN@M@+HNCJKZ3HSj(@TyrJz8nJy59*`@Efd;gP#7f%i~TqvgzG zl|*4un9N2!iU>~>ioSw|?6*=lPM0MY3*8hAF@UG4;%k^Jtm^x%T;Nw5OiWH4!Ks!u z$gNRLVgNv(FaZc3YBj(j5eowVDt?GEfd5b{SRxa&g=7F!vuHEHXb~M-Q5M!r8a2Zx z;TX|4N{v-QeRMp^(K(_O@_@*!2{}UaT#BG^!J0&>oCvD9t!miWGUi#GsJW0yk>v7P zT*vb@8KlI)u+jS^iMg9YW@f~m8#c9ZZz#ye!)DE6* zu`S$XC9XRoT+Fhv8KHGCSQZd75G=@N!evk0a)sfV!AUkd!|Q5|iMQ z>l6&H_2ObsSqMRcQ7Ho*P<^#=Nn(8!=vYe$Rg^;5Etv5Ns~GjGI==4g;~-`ODUwcS zFy&K4h2+Im-c>25Lq68;dh<3&>PHT8ins$BYHbPEq8DY{T!5(zGYG@8B-EW}Mn!E; z7LvLrW+*O0(Kf32F3QA~Oov~!&w8^{jHmAkka`rK$yBNUQHrekiD@Hems?Vo`gMTl zjIDHx)2HDi@k~u5Z)ZXZhR~XsXfYcR38c!EH0R;HXap~u-5q3{B&6j|t+_j{KTZAq zx2kNt`-GFuHgD4s-+JxKY(oS`qOgnDS&C5=HD1^8Z`jov&kdZ(yr13|k2w3TrAmQ#L?xHZKNJ8L(CwyoA$|-}&(-C6K=O zU|hME9eF=Tt$i@_k5>ofVh7vSy=MLDZd--iu@M9$1Ti*3NDg&^MzY8c4eqinX(o7B zK~G?0JAO(Bz^jsyLg;gEk)($FD(5*Efvl!<@H4X5TZhYAA7SU4;(AQkiz>ho3S!c3 zj_+#Z%2=u^W_>G&%qXQ|1IWPSY?f#+xm0)~hR+!qiSWPU`@97>pHvI{eZ4z7BQuE2 zWV@bS?G_xMII=3&sx5^sGO8>r2RZ;A8e4nk2DLaM&K$B!y4^y-;c1J5epxVUsf~ze z;oYmyrqUNu1@B2PkwiJ6bYO6Wb07+mGU|U9rH7Wyk?y`#|1@%jt>Ldhi7d$GF%=96 z8%Zt+ZLLAv915{(VY232^i^>@3_@K*bMFRVw5I{m2FOP!7#6Y3liaj#yo0F6bg5!Y zo{0d=3oBB`b`p8lMY{YRF!#EdHHIFh_lt3bJ{oIVpyY*f9ZN3Wpb9C0jHE>{*Ce-CGOp6T8hFRo8Re~GWaLmmK zo#^0kU5Ob%qP_ku!@_G`Yy-z3a9|uIuxyzmFotlM9;QubUCy`d=U32-SIx;Gkeq`6 zWO;zn=G4fo$4QzT9Su96NqP|RZQ*+^I-fG<5=lw+zFFO<737RJn6hc<9 z^AQJT1Du?LKu3B;ArnLh0Syp*>Q8}>%Mlg2cDZlYW9;_v&|(1Cux~u@){+8t3Nk#ZyFd1NQ$S9hj1!dwPAIEmq3mPPJrfQutL3Y!vjx>HTwV!J|(x^<};?@Z|k;; zfl$U7KE`hSP6aLSEGy|G34Np+_ZJd96=E90vMWOEI*>OCTPliBhC(sciH&9OG@40n zm%$neD-yp1*{6c+PP<NO$;d1^`l) BY(4-0 literal 0 HcmV?d00001 diff --git a/data_raw/data_prepare.R b/data_raw/data_prepare.R index bf467b7..91a0039 100644 --- a/data_raw/data_prepare.R +++ b/data_raw/data_prepare.R @@ -3,11 +3,11 @@ ### eventually this will have its own package ('rohiprep') library(devtools) +library(tidyverse) rgn_synonyms <- read_csv('data_raw/rgn_eez_v2013a_synonyms.csv') usethis::use_data(rgn_synonyms, overwrite = TRUE) - rgn_master <- read_csv('data_raw/eez_rgn_2013main.csv') usethis::use_data(rgn_master, overwrite = TRUE) @@ -26,4 +26,5 @@ usethis::use_data(sovregion_labels, overwrite = TRUE) sovregions <- read.csv('data_raw/sovregions.csv') usethis::use_data(sovregions, overwrite = TRUE) - +split_pops <- read_csv('data_raw/split_pops.csv') +usethis::use_data(split_pops, overwrite = TRUE) diff --git a/data_raw/split_pops.csv b/data_raw/split_pops.csv new file mode 100644 index 0000000..3cc9dc0 --- /dev/null +++ b/data_raw/split_pops.csv @@ -0,0 +1,25 @@ +country,associated_non_ohi_region,population,source,data_year,notes +Bonaire,Netherlands Antilles,22573,https://www.cbs.nl/en-gb/figures/detail/84712ENG?dl=88B72,2022, +Aruba,Netherlands Antilles,106440,https://data.worldbank.org/indicator/SP.POP.TOTL,2022, +Curacao,Netherlands Antilles,150000,https://data.worldbank.org/indicator/SP.POP.TOTL,2022, +Sint Eustatius,Netherlands Antilles,3242,https://www.cbs.nl/en-gb/figures/detail/84712ENG?dl=88B72,2022, +Sint Maarten,Netherlands Antilles,43390,https://data.worldbank.org/indicator/SP.POP.TOTL,2022, +Saba,Netherlands Antilles,1911,https://www.cbs.nl/en-gb/figures/detail/84712ENG?dl=88B72,2022, +Tristan da Cunha,Saint Helena/Asc./Trist.,245,https://www.un.org/dppa/decolonization/en/nsgt/saint-helena,2021,this 2021 data had the clearest breakdown of population between the islands +Saint Helena,Saint Helena/Asc./Trist.,4439,https://www.un.org/dppa/decolonization/en/nsgt/saint-helena,2021,this 2021 data had the clearest breakdown of population between the islands +Ascension,Saint Helena/Asc./Trist.,937,https://www.un.org/dppa/decolonization/en/nsgt/saint-helena,2021,this 2021 data had the clearest breakdown of population between the islands +Guernsey,Channel Islands,64234,"https://www.gov.gg/population#:~:text=On%2030th%20September%202022%2C%20Guernsey%27s,year%20ending%2030th%20September%202022.",2022, +Jersey,Channel Islands,107800,https://datareportal.com/reports/digital-2022-jersey,2022,"census data for 2021 also available: https://www.gov.je/StatisticsPerformance/Population/pages/census2021results.aspx#:~:text=The%20total%20resident%20population%20of,were%20present%20on%20Census%20Day" +Wake Island,United States Minor Outlying Islands,100,https://worldpopulationreview.com/regions/wake-island-population,2023,"technically uninhabited, but has about 100 workers at any given time" +Jarvis Island,United States Minor Outlying Islands,0,https://www.britannica.com/place/Jarvis-Island,2023,"uninhabited, so no population as of 2023" +Palmyra Atoll,United States Minor Outlying Islands,0,https://www.britannica.com/place/Palmyra-Atoll,2023,"uninhabited, so no population as of 2023" +Holland Island and Baker Island,United States Minor Outlying Islands,0,https://www.britannica.com/place/Howland-Island; https://www.britannica.com/place/Baker-Island,2023,"uninhabited, so no population as of 2023" +Johnston Atoll,United States Minor Outlying Islands,0,https://www.britannica.com/place/Johnston-Atoll,2023,"uninhabited, so no population as of 2023" +Glorioso Islands,French Southern Territories,0,https://www.indexmundi.com/glorioso_islands/population.html,2023,"uninhabited, so no population as of 2023" +Juan de Nova Island,French Southern Territories,0,https://www.cia.gov/the-world-factbook/countries/french-southern-and-antarctic-lands/,2023,"states a small French military garrison and a few meteorologists inhabit, but for our purposes we will call this 0/uninhabited as of 2023" +Bassas da India,French Southern Territories,0,https://www.cia.gov/the-world-factbook/countries/french-southern-and-antarctic-lands/,2023,considered uninhabitable as of 2023 +Ile Europa,French Southern Territories,0,https://www.cia.gov/the-world-factbook/countries/french-southern-and-antarctic-lands/,2023,"states a small French military garrison and a few meteorologists inhabit, but for our purposes we will call this 0/uninhabited as of 2023" +Ile Tromelin,French Southern Territories,0,https://www.cia.gov/the-world-factbook/countries/french-southern-and-antarctic-lands/,2023,"some scientists visit, but uninhabited" +Crozet Islands,French Southern Territories,24,https://www.cia.gov/the-world-factbook/countries/french-southern-and-antarctic-lands/,2023,"uninhabited, but 18 to 30 people staffing the Alfred Faure research station, using the average of this" +Amsterdam Island and Saint Paul Island,French Southern Territories,0,https://www.cia.gov/the-world-factbook/countries/french-southern-and-antarctic-lands/,2023,"uninhabited, but has meteorological station, visits by fishermen and scientists, but for our purposes we will call this 0/uninhabited as of 2023" +Kerguelen Islands,French Southern Territories,75,https://www.cia.gov/the-world-factbook/countries/french-southern-and-antarctic-lands/,2023,"technically uninhabited, 50 to 100 personnel at any given time as of 2023, using the average of this" \ No newline at end of file From c65735871a34799e26805067155bc3d6f700bb1f Mon Sep 17 00:00:00 2001 From: CarloBroderick Date: Thu, 24 Aug 2023 14:27:08 -0700 Subject: [PATCH 28/40] added duplication functionality --- R/split_regions.R | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/R/split_regions.R b/R/split_regions.R index c7f8396..83f9ea0 100644 --- a/R/split_regions.R +++ b/R/split_regions.R @@ -6,10 +6,11 @@ ### The population weights are pulled from a CSV with populations for each OHI region in question (often small islands). ### The decision was made that when a dataset contains both a macro-region and a sub-region that the sub-region's data will be calculated by ### summing the population weight of the macro region and the record for the region together. This is an imperfect solution; however, we believe it to be the best solution. +### The duplicate argument is used when the values should not be split up or subdevided between the new regions created such as when calculating sustainability scores. library(tidyverse) -region_split <- function(m, country_column = "country", value_column = "value") { +region_split <- function(m, country_column = "country", value_column = "value", duplicate = FALSE) { # List of macro-regions to break down split_details <- list( @@ -51,7 +52,7 @@ region_split <- function(m, country_column = "country", value_column = "value") # Calculate area weights for the regions area_weights <- population %>% filter(country %in% regions) %>% - mutate(weight = population / pop_sum) %>% + mutate(weight = ifelse(duplicate, 1, population / pop_sum)) %>% # Conditionally set weight select(country, weight) %>% mutate(id = row_number()) @@ -69,14 +70,23 @@ region_split <- function(m, country_column = "country", value_column = "value") filter(!(country %in% country_name)) %>% rbind(m_new) - # Sum duplicates - m <- m %>% - group_by(country, commodity, year, product) %>% - summarize(value = case_when(all(is.na(value)) ~ NA, - TRUE ~ sum(value, na.rm = TRUE))) %>% - ungroup() + # Sum duplicate rows if duplicate is False + if (!duplicate) { + m <- m %>% + group_by(country, commodity, year, product) %>% + summarize(value = case_when(all(is.na(value)) ~ NA, + TRUE ~ sum(value, na.rm = TRUE))) %>% + ungroup() + + # Remove duplicates if duplicate is True + } else { + + # Remove duplicates + m <- m[!duplicated(m), ] + + } # End duplicate if statement - } # End if statement + } # End country if statement } # End for loop @@ -87,8 +97,7 @@ region_split <- function(m, country_column = "country", value_column = "value") # Return the new data frame return(m) -} # End function - +} # End function From 8b0138cf457359c5aa1fc9f1973a0ee0592b07e9 Mon Sep 17 00:00:00 2001 From: CarloBroderick Date: Wed, 30 Aug 2023 10:38:52 -0700 Subject: [PATCH 29/40] Updated roxygen for split region function --- R/split_regions.R | 38 +++++++++++++++++++++++++++++--------- data_raw/data_prepare.R | 1 + 2 files changed, 30 insertions(+), 9 deletions(-) diff --git a/R/split_regions.R b/R/split_regions.R index 83f9ea0..4b799c2 100644 --- a/R/split_regions.R +++ b/R/split_regions.R @@ -1,12 +1,32 @@ -### This function takes datesets that have country records that contain multiple OHI regions (macro-regions). -### This is a common occurrence and there are many different combinations of country records that hold multiple OHI regions. -### This function attempts to account for all currently known versions of this; however, future OHI prepers may need to update this function to account for new cases. -### The function works by checking for common country names that often contain multiple OHI regions and then breaks those countries into OHI regions. -### Each new OHI Region's data is filled by a population weighting of the data value column. -### The population weights are pulled from a CSV with populations for each OHI region in question (often small islands). -### The decision was made that when a dataset contains both a macro-region and a sub-region that the sub-region's data will be calculated by -### summing the population weight of the macro region and the record for the region together. This is an imperfect solution; however, we believe it to be the best solution. -### The duplicate argument is used when the values should not be split up or subdevided between the new regions created such as when calculating sustainability scores. +#' Split Macro-Regions to OHI Regions +#' +#' This function takes datasets containing country records that include multiple OHI regions +#' (macro-regions) and breaks them down into individual OHI regions. It uses population-weighted +#' values to distribute data across the new regions. When a dataset contains both a macro-region +#' and a sub-region, the sub-region's data is calculated by summing the population weight of the +#' macro region and the record for the region. +#' +#' @param m The input dataset containing countries and associated values. +#' @param country_column The column name in the dataset `m` representing the countries. Defaults to "country". +#' @param value_column The column name in the dataset `m` representing the values associated with each country. Defaults to "value". +#' @param duplicate A logical value. If TRUE, the values will not be split between new regions, e.g., when calculating sustainability scores. Defaults to FALSE. +#' +#' @details The function is built to recognize common macro-region names and their corresponding OHI regions. +#' It's imperative for users to be aware that this function might require updates if new macro-regions +#' or changes to OHI regions occur in the future. +#' +#' Population data is used to weight the values for each newly split region. This data must be provided +#' in the `split_pops` data frame (external to this function). If `duplicate` is set to TRUE, values are +#' not divided among regions but duplicated instead. +#' +#' @return A dataset with macro-regions split into individual OHI regions. +#' +#' @examples +#' # This assumes existence of a dataset similar in structure to expected input and `split_pops` +#' # updated_data <- region_split(original_data) +#' +#' @keywords ohi, macro-region, split +#' @export library(tidyverse) diff --git a/data_raw/data_prepare.R b/data_raw/data_prepare.R index 91a0039..2bad5b0 100644 --- a/data_raw/data_prepare.R +++ b/data_raw/data_prepare.R @@ -28,3 +28,4 @@ usethis::use_data(sovregions, overwrite = TRUE) split_pops <- read_csv('data_raw/split_pops.csv') usethis::use_data(split_pops, overwrite = TRUE) + From 732825f724c6e8cf0b04a26279bd9d855b4ea4a1 Mon Sep 17 00:00:00 2001 From: Carlo Broderick Date: Wed, 30 Aug 2023 14:06:15 -0700 Subject: [PATCH 30/40] Update DESCRIPTION Included new function split_regions.R --- DESCRIPTION | 1 + 1 file changed, 1 insertion(+) diff --git a/DESCRIPTION b/DESCRIPTION index 152820d..dd026d5 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -57,6 +57,7 @@ Collate: 'rgn_eez_area.R' 'sovregion_labels.R' 'sovregions.R' + 'split_regions.R' URL: https://github.com/OHI-Science/ohicore BugReports: https://github.com/OHI-Science/ohicore/issues LazyData: TRUE From 18aaae7e825f97c36dbbfbae59cb7ed3376914fd Mon Sep 17 00:00:00 2001 From: CarloBroderick Date: Wed, 30 Aug 2023 14:12:13 -0700 Subject: [PATCH 31/40] update column name --- R/split_regions.R | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/R/split_regions.R b/R/split_regions.R index 4b799c2..ce24020 100644 --- a/R/split_regions.R +++ b/R/split_regions.R @@ -52,7 +52,7 @@ region_split <- function(m, country_column = "country", value_column = "value", # Rename data frame columns m <- m %>% - rename(country = paste0(country_column), value = paste0(value_column)) + rename(paste0(country_column) = country, paste0(value_column) = value) # Load population weighting data population <- split_pops @@ -117,8 +117,4 @@ region_split <- function(m, country_column = "country", value_column = "value", # Return the new data frame return(m) -} # End function - - - - \ No newline at end of file +} # End function \ No newline at end of file From 6f41d1106c82a8640ca85a613d98898caf24f158 Mon Sep 17 00:00:00 2001 From: Carlo Broderick Date: Wed, 30 Aug 2023 14:17:20 -0700 Subject: [PATCH 32/40] Update DESCRIPTION Included rlang for the !! operator for my new function --- DESCRIPTION | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index dd026d5..d099c05 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -25,7 +25,8 @@ Imports: tidyr, RColorBrewer, htmlwidgets, - here + here, + rlang Suggests: knitr, rmarkdown From 6b49f922bbdc0e43a86e41f7c6f7321770b38ae1 Mon Sep 17 00:00:00 2001 From: CarloBroderick Date: Wed, 30 Aug 2023 14:18:46 -0700 Subject: [PATCH 33/40] added bang bang syntax --- R/split_regions.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/split_regions.R b/R/split_regions.R index ce24020..03cff62 100644 --- a/R/split_regions.R +++ b/R/split_regions.R @@ -52,7 +52,7 @@ region_split <- function(m, country_column = "country", value_column = "value", # Rename data frame columns m <- m %>% - rename(paste0(country_column) = country, paste0(value_column) = value) + rename(!!paste0(country_column) := country, !!paste0(value_column) := value) # Load population weighting data population <- split_pops From a2543f3fc8594e43f00975d6b7e783f48631c3ef Mon Sep 17 00:00:00 2001 From: CarloBroderick Date: Thu, 31 Aug 2023 09:44:43 -0700 Subject: [PATCH 34/40] added second bang bang --- DESCRIPTION | 2 +- R/split_regions.R | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index d099c05..e7fe66b 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -63,5 +63,5 @@ URL: https://github.com/OHI-Science/ohicore BugReports: https://github.com/OHI-Science/ohicore/issues LazyData: TRUE VignetteBuilder: knitr -RoxygenNote: 7.2.2 +RoxygenNote: 7.2.3 Encoding: UTF-8 diff --git a/R/split_regions.R b/R/split_regions.R index 03cff62..46ac23c 100644 --- a/R/split_regions.R +++ b/R/split_regions.R @@ -112,7 +112,7 @@ region_split <- function(m, country_column = "country", value_column = "value", # Rename columns to match data frame input m <- m %>% - rename(paste0(country_column) = country, paste0(value_column) = value) + rename(!!country_column := country, !!value_column := value) # Return the new data frame return(m) From 2a2a584dab290f96aa172e4c827ff9caf2c0aac4 Mon Sep 17 00:00:00 2001 From: Carlo Broderick Date: Thu, 31 Aug 2023 09:59:46 -0700 Subject: [PATCH 35/40] Update NAMESPACE Added split_regions --- NAMESPACE | 1 + 1 file changed, 1 insertion(+) diff --git a/NAMESPACE b/NAMESPACE index d1c2963..704b509 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -18,6 +18,7 @@ export(compare_scores_df) export(layers_eez_base_updater) export(mapvalues) export(name_2_rgn) +export(split_regions) export(read_git_csv) export(score.clamp) export(score.max) From 08d07604bc3f924297b389c0400342f19ea70239 Mon Sep 17 00:00:00 2001 From: Carlo Broderick Date: Thu, 31 Aug 2023 10:01:53 -0700 Subject: [PATCH 36/40] Update NAMESPACE undo changes --- NAMESPACE | 1 - 1 file changed, 1 deletion(-) diff --git a/NAMESPACE b/NAMESPACE index 704b509..d1c2963 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -18,7 +18,6 @@ export(compare_scores_df) export(layers_eez_base_updater) export(mapvalues) export(name_2_rgn) -export(split_regions) export(read_git_csv) export(score.clamp) export(score.max) From 9dbb086b59e836d39371b02c6c2f8ea440d5d39d Mon Sep 17 00:00:00 2001 From: CarloBroderick Date: Thu, 31 Aug 2023 12:39:32 -0700 Subject: [PATCH 37/40] namespace --- NAMESPACE | 1 + 1 file changed, 1 insertion(+) diff --git a/NAMESPACE b/NAMESPACE index d1c2963..19acd8d 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -1,5 +1,6 @@ # Generated by roxygen2: do not edit by hand +export() export(AlignDataYears) export(AlignManyDataYears) export(CalculateAll) From 4916c2f3c85e6322038a5b3fbf426506f37eb918 Mon Sep 17 00:00:00 2001 From: CarloBroderick Date: Thu, 31 Aug 2023 13:24:26 -0700 Subject: [PATCH 38/40] updated roxygen --- NAMESPACE | 2 +- R/split_regions.R | 4 +--- man/split_regions.Rd | 49 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 51 insertions(+), 4 deletions(-) create mode 100644 man/split_regions.Rd diff --git a/NAMESPACE b/NAMESPACE index 19acd8d..f2a992b 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -1,6 +1,5 @@ # Generated by roxygen2: do not edit by hand -export() export(AlignDataYears) export(AlignManyDataYears) export(CalculateAll) @@ -24,6 +23,7 @@ export(score.clamp) export(score.max) export(score.rescale) export(score_check) +export(split_regions) export(trace_git_csv_value) exportClasses(Conf) exportClasses(Layers) diff --git a/R/split_regions.R b/R/split_regions.R index 46ac23c..98b0b23 100644 --- a/R/split_regions.R +++ b/R/split_regions.R @@ -28,9 +28,7 @@ #' @keywords ohi, macro-region, split #' @export -library(tidyverse) - -region_split <- function(m, country_column = "country", value_column = "value", duplicate = FALSE) { +split_regions <- function(m, country_column = "country", value_column = "value", duplicate = FALSE) { # List of macro-regions to break down split_details <- list( diff --git a/man/split_regions.Rd b/man/split_regions.Rd new file mode 100644 index 0000000..fe6f7af --- /dev/null +++ b/man/split_regions.Rd @@ -0,0 +1,49 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/split_regions.R +\name{split_regions} +\alias{split_regions} +\title{Split Macro-Regions to OHI Regions} +\usage{ +split_regions( + m, + country_column = "country", + value_column = "value", + duplicate = FALSE +) +} +\arguments{ +\item{m}{The input dataset containing countries and associated values.} + +\item{country_column}{The column name in the dataset `m` representing the countries. Defaults to "country".} + +\item{value_column}{The column name in the dataset `m` representing the values associated with each country. Defaults to "value".} + +\item{duplicate}{A logical value. If TRUE, the values will not be split between new regions, e.g., when calculating sustainability scores. Defaults to FALSE.} +} +\value{ +A dataset with macro-regions split into individual OHI regions. +} +\description{ +This function takes datasets containing country records that include multiple OHI regions +(macro-regions) and breaks them down into individual OHI regions. It uses population-weighted +values to distribute data across the new regions. When a dataset contains both a macro-region +and a sub-region, the sub-region's data is calculated by summing the population weight of the +macro region and the record for the region. +} +\details{ +The function is built to recognize common macro-region names and their corresponding OHI regions. +It's imperative for users to be aware that this function might require updates if new macro-regions +or changes to OHI regions occur in the future. + +Population data is used to weight the values for each newly split region. This data must be provided +in the `split_pops` data frame (external to this function). If `duplicate` is set to TRUE, values are +not divided among regions but duplicated instead. +} +\examples{ +# This assumes existence of a dataset similar in structure to expected input and `split_pops` +# updated_data <- region_split(original_data) + +} +\keyword{macro-region,} +\keyword{ohi,} +\keyword{split} From cfeb01f9edd8025bed7816fb1acfc7e460122531 Mon Sep 17 00:00:00 2001 From: adelaiderobinson Date: Wed, 6 Sep 2023 11:59:03 -0700 Subject: [PATCH 39/40] added additional synonyms --- data/rgn_synonyms.rda | Bin 3845 -> 3945 bytes data_raw/rgn_eez_v2013a_synonyms.csv | 7 ++++++- .../name_2_rgn/test_countries.csv | 3 +-- .../name_2_rgn/update_name_2_rgn.Rmd | 12 +++++++----- 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/data/rgn_synonyms.rda b/data/rgn_synonyms.rda index b222f6d3287c3f6ef843175dc3579e109afaad9a..a524275c65b56b977c54e9492b1a7ca947718cfd 100644 GIT binary patch literal 3945 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 Date: Wed, 6 Sep 2023 16:16:56 -0700 Subject: [PATCH 40/40] updated function with new column selection for duplicate case --- R/split_regions.R | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/R/split_regions.R b/R/split_regions.R index 98b0b23..0a4bb4e 100644 --- a/R/split_regions.R +++ b/R/split_regions.R @@ -90,8 +90,10 @@ split_regions <- function(m, country_column = "country", value_column = "value", # Sum duplicate rows if duplicate is False if (!duplicate) { + grouping_vars <- setdiff(names(m), "value") + m <- m %>% - group_by(country, commodity, year, product) %>% + group_by(across(all_of(grouping_vars))) %>% summarize(value = case_when(all(is.na(value)) ~ NA, TRUE ~ sum(value, na.rm = TRUE))) %>% ungroup()