Nothing
test_that("vignette_when", {
w_date <- when()
## ---------------------------------------------------------------------------------------------------------
w_time <- when(type = 'time')
## ---------------------------------------------------------------------------------------------------------
w_time_2 <- when() |>
define_characteristics(type = 'time')
i1 <- identical(w_time, w_time_2)
## ---------------------------------------------------------------------------------------------------------
# w_date <- w_date |>
# define_characteristics(locale = Sys.setlocale("LC_TIME", "English"))
## ---------------------------------------------------------------------------------------------------------
w_date <- w_date |>
define_instances(start = lubridate::today(),
end = lubridate::today() + lubridate::years(5))
## ---------------------------------------------------------------------------------------------------------
w_date_2_1 <-
when(
values = c(
"2023-12-31",
"2023-01-01",
"2022-12-31",
"2022-01-01",
"2021-12-31",
"2021-01-01"
)
)
w_date_2_2 <- w_date |>
define_instances(values = 2020:2030)
## ---------------------------------------------------------------------------------------------------------
w_date_3 <- w_date |>
define_instances(start = 2020, end = 2030)
## ---------------------------------------------------------------------------------------------------------
w_date_4 <- w_date |>
define_instances(start = "2020-01-01", end = "2030-01-01")
i2 <- identical(w_date_3, w_date_4)
## ---------------------------------------------------------------------------------------------------------
w_time_3 <- w_time |>
define_instances(start = "00:00:00", end = "23:59:59")
i3 <- identical(w_time, w_time_3)
## ---------------------------------------------------------------------------------------------------------
w_time_4 <- w_time |>
define_instances(start = 8, end = 17)
w_time_5 <- w_time |>
define_instances(start = "08:00:00", end = "17:00:00")
i4 <- identical(w_time_4, w_time_5)
## ---------------------------------------------------------------------------------------------------------
n1 <- w_date |>
get_level_attribute_names(selected = TRUE)
n2 <- w_date |>
get_level_names()
n3 <- w_date |>
get_level_attribute_names(name = 'month', selected = TRUE)
n4 <- w_date |>
get_level_attribute_names(name = 'month')
## ---------------------------------------------------------------------------------------------------------
n5 <- w_time |>
get_level_attribute_names()
n6 <- w_time |>
get_level_names()
## ---------------------------------------------------------------------------------------------------------
w_date_5 <- w_date |>
select_month_level(month_name = FALSE)
w_date_6 <- when(
start = lubridate::today(),
end = lubridate::today() + lubridate::years(5),
month_name = FALSE
)
i5 <- identical(w_date_5, w_date_6)
n7 <- w_date_5 |>
get_level_attribute_names(name = 'month', selected = TRUE)
## ---------------------------------------------------------------------------------------------------------
w_date_7 <- w_date |>
select_month_level(exclude_all = TRUE, month_name = TRUE)
n8 <- w_date_7 |>
get_level_attribute_names(name = 'month', selected = TRUE)
## ---------------------------------------------------------------------------------------------------------
w_date_8 <- w_date |>
select_date_levels(month_level = FALSE)
n9 <- w_date_8 |>
get_level_attribute_names(name = 'month', selected = TRUE)
## ---------------------------------------------------------------------------------------------------------
w_date_9 <- when(
start = lubridate::today(),
end = lubridate::today() + lubridate::years(5),
month_level = FALSE
)
## ---------------------------------------------------------------------------------------------------------
n10 <- w_time |>
get_level_names()
## ---------------------------------------------------------------------------------------------------------
w_time_6 <- w_time |>
select_time_level(exclude_all = TRUE)
n11 <- w_time_6 |>
get_level_attribute_names(selected = TRUE)
w_time_7 <- w_time |>
select_time_level(minute = FALSE)
n12 <- w_time_7 |>
get_level_attribute_names(selected = TRUE)
## ---------------------------------------------------------------------------------------------------------
n13 <- w_date |>
get_table_attribute_names(as_string = FALSE)
## ---------------------------------------------------------------------------------------------------------
w_date <- w_date |>
generate_table()
w_time <- w_time |>
generate_table()
## ---------------------------------------------------------------------------------------------------------
t_date <- w_date |>
get_table()
t1 <- rbind(head(t_date, 5), tail(t_date, 5))
## ---------------------------------------------------------------------------------------------------------
t_date <- w_date |>
select_date_levels(day_level = FALSE) |>
select_week_level(include_all = TRUE) |>
generate_table() |>
get_table()
## ----results = "asis"-------------------------------------------------------------------------------------
t2 <- rbind(head(t_date, 5), tail(t_date, 5))
## ---------------------------------------------------------------------------------------------------------
t_time <- w_time |>
get_table()
## ----results = "asis"-------------------------------------------------------------------------------------
t3 <- rbind(head(t_time, 5), tail(t_time, 5))
## ---------------------------------------------------------------------------------------------------------
t_time <- w_time |>
select_time_level(second = FALSE) |>
generate_table() |>
get_table()
## ----results = "asis"-------------------------------------------------------------------------------------
t4 <- rbind(head(t_time, 5), tail(t_time, 5))
## ----database---------------------------------------------------------------------------------------------
my_db <- DBI::dbConnect(RSQLite::SQLite())
w_date |>
get_table_rdb(my_db)
w_time |>
get_table_rdb(my_db)
tables <- DBI::dbListTables(my_db)
DBI::dbDisconnect(my_db)
## ---------------------------------------------------------------------------------------------------------
wd_1 <- when(name = 'dim_where')
wd_2 <- when() |>
define_characteristics(name = 'dim_where')
## ---------------------------------------------------------------------------------------------------------
my_db <- DBI::dbConnect(RSQLite::SQLite())
wd_1 |>
generate_table() |>
get_table_rdb(my_db)
n14 <- DBI::dbListTables(my_db)
DBI::dbDisconnect(my_db)
## ---------------------------------------------------------------------------------------------------------
n15 <- wd_2 |>
generate_table() |>
get_table_csv()
n15 <- basename(n14)
## ---------------------------------------------------------------------------------------------------------
n16 <- when() |>
get_table_attribute_names(as_string = FALSE)
n17 <- when(surrogate_key = FALSE) |>
get_table_attribute_names(as_string = FALSE)
## ---------------------------------------------------------------------------------------------------------
wd_3 <- when() |>
generate_table()
## ---------------------------------------------------------------------------------------------------------
n18 <- wd_3 |>
get_table_attribute_names()
wd_3 <- wd_3 |>
set_table_attribute_names(
c(
'id_when',
'date',
'month_day',
'week_day',
'day_name',
'day_num_name',
'year_week',
'week',
'year_month',
'month',
'month_name',
'month_num_name',
'year'
)
)
n19 <- wd_3 |>
get_table_attribute_names(as_string = FALSE)
## ---------------------------------------------------------------------------------------------------------
n20 <- when() |>
get_day_part()
n21 <- when() |>
set_day_part(hour = c(20:23, 0:5), name = "Night") |>
set_day_part(hour = c(6:19), name = "Day") |>
get_day_part()
## ---------------------------------------------------------------------------------------------------------
wd_1 <- when(week_starts_monday = FALSE)
wd_2 <- when() |>
define_characteristics(week_starts_monday = FALSE)
## ---------------------------------------------------------------------------------------------------------
wd <- when()
f1 <- wd |>
get_attribute_definition_function(name = "year")
f2 <- wd |>
get_attribute_definition_function(name = "year_week")
## ---------------------------------------------------------------------------------------------------------
f <- function(table, values, ...) {
dots <- list(...)
type <- dots[['type']]
table[['year']] <- as.character(lubridate::year(values))
if (type == 'iso') {
table[['week_year']] <- as.character(lubridate::isoyear(values))
} else if (type == 'epi') {
table[['week_year']] <- as.character(lubridate::epiyear(values))
}
table
}
wd <- wd |>
set_attribute_definition_function(name = "year", f)
## ---------------------------------------------------------------------------------------------------------
t <- wd |>
define_characteristics(type = 'iso') |>
generate_table() |>
get_table()
t5 <- names(t)
expect_equal(i1, TRUE)
expect_equal(i2, TRUE)
expect_equal(i3, TRUE)
expect_equal(i4, TRUE)
expect_equal(i5, TRUE)
expect_equal(
names(t1),
c(
"id",
"date",
"month_day",
"week_day",
"day_name",
"day_num_name",
"year_week",
"week",
"year_month",
"month",
"month_name",
"month_num_name",
"year"
)
)
expect_equal(
names(t2),
c(
"id",
"year_week",
"week",
"year_month",
"month",
"month_name",
"month_num_name",
"year"
)
)
expect_equal(t3, structure(
list(
id = c(1L, 2L, 3L, 4L, 5L, 86396L, 86397L, 86398L,
86399L, 86400L),
time = c(
"00:00:00",
"00:00:01",
"00:00:02",
"00:00:03",
"00:00:04",
"23:59:55",
"23:59:56",
"23:59:57",
"23:59:58",
"23:59:59"
),
hour = c("00", "00", "00", "00", "00", "23", "23",
"23", "23", "23"),
minute = c("00", "00", "00", "00", "00", "59",
"59", "59", "59", "59"),
second = c("00", "01", "02", "03", "04",
"55", "56", "57", "58", "59"),
day_part = c(
"Night",
"Night",
"Night",
"Night",
"Night",
"Night",
"Night",
"Night",
"Night",
"Night"
)
),
row.names = c(NA,-10L),
class = c("tbl_df", "tbl",
"data.frame")
))
expect_equal(t4, structure(
list(
id = c(1L, 2L, 3L, 4L, 5L, 1436L, 1437L, 1438L,
1439L, 1440L),
time = c(
"00:00:00",
"00:01:00",
"00:02:00",
"00:03:00",
"00:04:00",
"23:55:00",
"23:56:00",
"23:57:00",
"23:58:00",
"23:59:00"
),
hour = c("00", "00", "00", "00", "00", "23", "23", "23", "23",
"23"),
minute = c("00", "01", "02", "03", "04", "55", "56", "57",
"58", "59"),
day_part = c(
"Night",
"Night",
"Night",
"Night",
"Night",
"Night",
"Night",
"Night",
"Night",
"Night"
)
),
row.names = c(NA,-10L),
class = c("tbl_df", "tbl", "data.frame")
))
expect_equal(
t5,
c(
"id",
"date",
"month_day",
"week_day",
"day_name",
"day_num_name",
"year_week",
"week",
"year_month",
"month",
"month_name",
"month_num_name",
"year",
"week_year"
)
)
expect_equal(
n1,
c(
"date",
"month_day",
"week_day",
"day_name",
"day_num_name",
"year_week",
"week",
"year_month",
"month",
"month_name",
"month_num_name",
"year"
)
)
expect_equal(n2, c("day", "week", "month", "quarter", "semester", "year"))
expect_equal(n3, c("year_month", "month", "month_name", "month_num_name"))
expect_equal(
n4,
c(
"year_month",
"month",
"month_name",
"month_num_name",
"month_abbr",
"month_num_abbr"
)
)
expect_equal(n5, c("time", "hour", "minute", "second", "day_part"))
expect_equal(n6, "time")
expect_equal(n7, c("year_month", "month", "month_num_name"))
expect_equal(n8, "month_name")
expect_equal(n9, character(0))
expect_equal(n10, "time")
expect_equal(n11, "hour")
expect_equal(n12, c("time", "hour", "day_part"))
expect_equal(
n13,
c(
"id",
"date",
"month_day",
"week_day",
"day_name",
"day_num_name",
"year_week",
"week",
"year_month",
"month",
"month_name",
"month_num_name",
"year"
)
)
expect_equal(n14, "dim_where")
expect_equal(n15, "dim_where")
expect_equal(
n16,
c(
"id",
"date",
"month_day",
"week_day",
"day_name",
"day_num_name",
"year_week",
"week",
"year_month",
"month",
"month_name",
"month_num_name",
"year"
)
)
expect_equal(
n17,
c(
"date",
"month_day",
"week_day",
"day_name",
"day_num_name",
"year_week",
"week",
"year_month",
"month",
"month_name",
"month_num_name",
"year"
)
)
expect_equal(
n18,
"c('id', 'date', 'month_day', 'week_day', 'day_name', 'day_num_name', 'year_week', 'week', 'year_month', 'month', 'month_name', 'month_num_name', 'year')"
)
expect_equal(
n19,
c(
"id_when",
"date",
"month_day",
"week_day",
"day_name",
"day_num_name",
"year_week",
"week",
"year_month",
"month",
"month_name",
"month_num_name",
"year"
)
)
expect_equal(
n20,
c(
`00` = "Night",
`01` = "Night",
`02` = "Night",
`03` = "Night",
`04` = "Night",
`05` = "Morning",
`06` = "Morning",
`07` = "Morning",
`08` = "Morning",
`09` = "Morning",
`10` = "Morning",
`11` = "Morning",
`12` = "Afternoon",
`13` = "Afternoon",
`14` = "Afternoon",
`15` = "Afternoon",
`16` = "Afternoon",
`17` = "Evening",
`18` = "Evening",
`19` = "Evening",
`20` = "Evening",
`21` = "Night",
`22` = "Night",
`23` = "Night"
)
)
expect_equal(
n21,
c(
`00` = "Night",
`01` = "Night",
`02` = "Night",
`03` = "Night",
`04` = "Night",
`05` = "Night",
`06` = "Day",
`07` = "Day",
`08` = "Day",
`09` = "Day",
`10` = "Day",
`11` = "Day",
`12` = "Day",
`13` = "Day",
`14` = "Day",
`15` = "Day",
`16` = "Day",
`17` = "Day",
`18` = "Day",
`19` = "Day",
`20` = "Night",
`21` = "Night",
`22` = "Night",
`23` = "Night"
)
)
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.