From cff736772322cbc4a41c07559c54bcacde4101be Mon Sep 17 00:00:00 2001 From: phgrosjean Date: Sun, 10 Sep 2023 16:20:59 +0200 Subject: [PATCH] Four datasets from {babynames} are added --- DESCRIPTION | 2 ++ NEWS.md | 2 ++ TODO.md | 2 +- inst/WORDLIST | 3 +++ inst/translation/applicants_en.R | 22 +++++++++++++++++++ inst/translation/applicants_fr.R | 22 +++++++++++++++++++ inst/translation/babynames_en.R | 26 +++++++++++++++++++++++ inst/translation/babynames_fr.R | 26 +++++++++++++++++++++++ inst/translation/births_en.R | 20 ++++++++++++++++++ inst/translation/births_fr.R | 20 ++++++++++++++++++ inst/translation/lifetables_en.R | 34 ++++++++++++++++++++++++++++++ inst/translation/lifetables_fr.R | 36 ++++++++++++++++++++++++++++++++ 12 files changed, 214 insertions(+), 1 deletion(-) create mode 100644 inst/translation/applicants_en.R create mode 100644 inst/translation/applicants_fr.R create mode 100644 inst/translation/babynames_en.R create mode 100644 inst/translation/babynames_fr.R create mode 100644 inst/translation/births_en.R create mode 100644 inst/translation/births_fr.R create mode 100644 inst/translation/lifetables_en.R create mode 100644 inst/translation/lifetables_fr.R diff --git a/DESCRIPTION b/DESCRIPTION index d9b372d..be8ef21 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -27,6 +27,8 @@ Suggests: writexl, datasets, ggplot2, + lme4, + babynames, nycflights13, palmerpenguins, covr, diff --git a/NEWS.md b/NEWS.md index 4ec5afc..2c9eac1 100644 --- a/NEWS.md +++ b/NEWS.md @@ -10,6 +10,8 @@ - The data sets `Penicillin` and `sleepstudy` from {lme4} are now translated (en and fr versions). +- The data sets `babynames`, `applicants`, `births`, and `lifetables` from {babynames} are now translated (en and fr versions). + # data.io 1.4.1 - There was a conflict in attributing units with the {units} package. So, when this package was loaded, `units(x) <- value` when `x` is numeric became a `units`object treated by {units}. We don't want this, so, the previous code is replaced by `attr(x, "units") <- value` to avoid this clash. diff --git a/TODO.md b/TODO.md index 4742412..9783acf 100644 --- a/TODO.md +++ b/TODO.md @@ -2,7 +2,7 @@ - Should we always convert ts and mts objects into data frames? + see `co2`, `nottem`, `pastecs::marbio`, `pastecs::marphy`, `pastecs::releve`. -- Also see `tidyr::who`, `tidyr::population`, `UsingR::babies`, `ca::wg93`, `faraway::eggs`, `mlbench::PimaIndianDiabetes2` +- Also see `tidyr::who`, `tidyr::population`, `vegan::BCI`, `vegan::mite`, `vegan::varespec`, `UsingR::babies`, `ca::wg93`, `faraway::eggs`, `mlbench::PimaIndianDiabetes2` - Reimplement `options(data.io.lang = "xx")` as `options(SciViews.lang = "xx")`, and make changes in all SciViews packages (this option is not solely for {data.io} indeed). diff --git a/inst/WORDLIST b/inst/WORDLIST index edd0ffa..f755d7e 100644 --- a/inst/WORDLIST +++ b/inst/WORDLIST @@ -2,6 +2,7 @@ allometric ambitus Anscombe's appveyor +babynames biometry Cen cmd @@ -25,6 +26,7 @@ labelled Leptograpsus LGA lividus +lme Loa Mauna micromol @@ -33,6 +35,7 @@ Morphometric Morphometry ORCID orthogonally +palmerpenguins Paracentrotus Ph phgrosjean diff --git a/inst/translation/applicants_en.R b/inst/translation/applicants_en.R new file mode 100644 index 0000000..baf4fb7 --- /dev/null +++ b/inst/translation/applicants_en.R @@ -0,0 +1,22 @@ +.applicants_en <- function(applicants, labels_only = FALSE, as_labelled = FALSE) { + + comment(applicants) <- c( + "Dataset 'applicants' from package 'babynames'") + + applicants <- labelise(applicants, self = FALSE, + label = list( + year = "Year", + sex = "Sex", + n_all = "Number"), + units = list( + year = NA, + sex = NA, + n_all = NA), + as_labelled = as_labelled) + + #if (!isTRUE(labels_only)) { + # # Nothing to do + #} + + applicants +} \ No newline at end of file diff --git a/inst/translation/applicants_fr.R b/inst/translation/applicants_fr.R new file mode 100644 index 0000000..416fe1e --- /dev/null +++ b/inst/translation/applicants_fr.R @@ -0,0 +1,22 @@ +.applicants_fr <- function(applicants, labels_only = FALSE, as_labelled = FALSE) { + + comment(applicants) <- c( + "Jeu de données 'applicants' du package 'babynames'") + + applicants <- labelise(applicants, self = FALSE, + label = list( + year = "Année", + sex = "Genre", + n_all = "Nombre"), + units = list( + year = NA, + sex = NA, + n_all = NA), + as_labelled = as_labelled) + + if (!isTRUE(labels_only)) { + applicants$sex[applicants$sex == "M"] <- "H" # Or "F" + } + + applicants +} \ No newline at end of file diff --git a/inst/translation/babynames_en.R b/inst/translation/babynames_en.R new file mode 100644 index 0000000..b98f3d1 --- /dev/null +++ b/inst/translation/babynames_en.R @@ -0,0 +1,26 @@ +.babynames_en <- function(babynames, labels_only = FALSE, as_labelled = FALSE) { + + comment(babynames) <- c( + "Data set 'babynames' from package 'babynames'") + + babynames <- labelise(babynames, self = FALSE, + label = list( + year = "Year", + sex = "Sex", + name = "Name", + n = "Number", + prop = "Proportion"), + units = list( + year = NA, + sex = NA, + name = NA, + n = NA, + prop = NA), + as_labelled = as_labelled) + + #if (!isTRUE(labels_only)) { + # Nothing to do! + #} + + babynames +} \ No newline at end of file diff --git a/inst/translation/babynames_fr.R b/inst/translation/babynames_fr.R new file mode 100644 index 0000000..e244fa5 --- /dev/null +++ b/inst/translation/babynames_fr.R @@ -0,0 +1,26 @@ +.babynames_fr <- function(babynames, labels_only = FALSE, as_labelled = FALSE) { + + comment(babynames) <- c( + "Jeu de données 'babynames' du package 'babynames'") + + babynames <- labelise(babynames, self = FALSE, + label = list( + year = "Année", + sex = "Genre", + name = "Nom", + n = "Nombre", + prop = "Proportion"), + units = list( + year = NA, + sex = NA, + name = NA, + n = NA, + prop = NA), + as_labelled = as_labelled) + + if (!isTRUE(labels_only)) { + babynames$sex[babynames$sex == "M"] <- "H" # Or "F" + } + + babynames +} \ No newline at end of file diff --git a/inst/translation/births_en.R b/inst/translation/births_en.R new file mode 100644 index 0000000..ad2081a --- /dev/null +++ b/inst/translation/births_en.R @@ -0,0 +1,20 @@ +.births_en <- function(births, labels_only = FALSE, as_labelled = FALSE) { + + comment(births) <- c( + "Dataset 'births' from package 'babynames'") + + births <- labelise(births, self = FALSE, + label = list( + year = "Year", + births = "Births"), + units = list( + year = NA, + births = NA), + as_labelled = as_labelled) + + #if (!isTRUE(labels_only)) { + # # Nothing to do + #} + + births +} \ No newline at end of file diff --git a/inst/translation/births_fr.R b/inst/translation/births_fr.R new file mode 100644 index 0000000..11e3f7d --- /dev/null +++ b/inst/translation/births_fr.R @@ -0,0 +1,20 @@ +.births_fr <- function(births, labels_only = FALSE, as_labelled = FALSE) { + + comment(births) <- c( + "Jeu de données 'births' du package 'babynames'") + + births <- labelise(births, self = FALSE, + label = list( + year = "Année", + births = "Naissances"), + units = list( + year = NA, + births = NA), + as_labelled = as_labelled) + + #if (!isTRUE(labels_only)) { + # # Nothing to do + #} + + births +} \ No newline at end of file diff --git a/inst/translation/lifetables_en.R b/inst/translation/lifetables_en.R new file mode 100644 index 0000000..f9b09fd --- /dev/null +++ b/inst/translation/lifetables_en.R @@ -0,0 +1,34 @@ +.lifetables_en <- function(lifetables, labels_only = FALSE, as_labelled = FALSE) { + + comment(lifetables) <- c( + "Data set 'lifetables' from package 'babynames'") + + lifetables <- labelise(lifetables, self = FALSE, + label = list( + x = "Age", + qx = "Mortality probability at x", + lx = "Survivors/100000 at x+1", + dx = "Mortality at x+1", + Lx = "Person-years (x - x+1)", + Tx = "Total person-years (>x)", + ex = "Life expectancy at x", + sex = "Sex", + year = "Year"), + units = list( + x = "years", + qx = NA, + lx = NA, + dx = NA, + Lx = NA, + Tx = NA, + ex = "years", + sex = NA, + year = NA), + as_labelled = as_labelled) + + #if (!isTRUE(labels_only)) { + # # Nothing to do + #} + + lifetables +} \ No newline at end of file diff --git a/inst/translation/lifetables_fr.R b/inst/translation/lifetables_fr.R new file mode 100644 index 0000000..8b790c7 --- /dev/null +++ b/inst/translation/lifetables_fr.R @@ -0,0 +1,36 @@ +.lifetables_fr <- function(lifetables, labels_only = FALSE, as_labelled = FALSE) { + + comment(lifetables) <- c( + "Jeu de données 'lifetables' du package 'babynames'") + + lifetables <- labelise(lifetables, self = FALSE, + label = list( + x = "Âge", + qx = "Probabilité de mortalité à x", + lx = "Survivants/100000 à x+1", + dx = "Mortalité à x+1", + Lx = "Personne-années (x - x+1)", + Tx = "Total personne-années (>x)", + ex = "Espérance de vie à x", + sex = "Genre", + year = "Année"), + units = list( + x = "années", + qx = NA, + lx = NA, + dx = NA, + Lx = NA, + Tx = NA, + ex = "années", + sex = NA, + year = NA), + as_labelled = as_labelled) + + if (!isTRUE(labels_only)) { + sex_levels <- levels(lifetables$sex) + sex_levels[sex_levels == "M"] <- "H" + levels(lifetables$sex) <- sex_levels + } + + lifetables +} \ No newline at end of file