From 8e07556e4044520421e309ae52091282ddb53941 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Drago=C8=99=20Moldovan-Gr=C3=BCnfeld?= Date: Wed, 2 Mar 2022 12:09:21 +0000 Subject: [PATCH 1/2] added `epiyear()` binding --- r/NEWS.md | 1 + r/R/expression.R | 1 + r/tests/testthat/test-dplyr-funcs-datetime.R | 9 +++++++++ 3 files changed, 11 insertions(+) diff --git a/r/NEWS.md b/r/NEWS.md index c167c48d5e8..5a5bb33f2ae 100644 --- a/r/NEWS.md +++ b/r/NEWS.md @@ -23,6 +23,7 @@ * `tz()` to extract/get timezone * `semester()` to extract/get semester * `dst()` to get daylight savings time indicator. + * `epiyear()` to get epiyear # arrow 7.0.0 diff --git a/r/R/expression.R b/r/R/expression.R index 224a46745e8..eb37950c34a 100644 --- a/r/R/expression.R +++ b/r/R/expression.R @@ -67,6 +67,7 @@ "isoweek" = "iso_week", "epiweek" = "us_week", "isoyear" = "iso_year", + "epiyear" = "us_year", "minute" = "minute", "quarter" = "quarter", # second is defined in dplyr-functions.R diff --git a/r/tests/testthat/test-dplyr-funcs-datetime.R b/r/tests/testthat/test-dplyr-funcs-datetime.R index 2cc76d36f7a..f8b909178da 100644 --- a/r/tests/testthat/test-dplyr-funcs-datetime.R +++ b/r/tests/testthat/test-dplyr-funcs-datetime.R @@ -330,6 +330,15 @@ test_that("extract isoyear from timestamp", { ) }) +test_that("extract epiyear from timestamp", { + compare_dplyr_binding( + .input %>% + mutate(x = epiyear(datetime)) %>% + collect(), + test_df + ) +}) + test_that("extract quarter from timestamp", { compare_dplyr_binding( .input %>% From 81d193bda2caf10be15b28b5f032066ca9832180 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Drago=C8=99=20Moldovan-Gr=C3=BCnfeld?= Date: Wed, 2 Mar 2022 13:42:28 +0000 Subject: [PATCH 2/2] unit test for extracting epiyear from date --- r/tests/testthat/test-dplyr-funcs-datetime.R | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/r/tests/testthat/test-dplyr-funcs-datetime.R b/r/tests/testthat/test-dplyr-funcs-datetime.R index f8b909178da..5ac64059e2b 100644 --- a/r/tests/testthat/test-dplyr-funcs-datetime.R +++ b/r/tests/testthat/test-dplyr-funcs-datetime.R @@ -520,6 +520,15 @@ test_that("extract isoyear from date", { ) }) +test_that("extract epiyear from date", { + compare_dplyr_binding( + .input %>% + mutate(x = epiyear(date)) %>% + collect(), + test_df + ) +}) + test_that("extract quarter from date", { compare_dplyr_binding( .input %>%