Вы можете написать функцию, которая вызывает sample
для случайного генерирования каждого столбца:
library(tibble)
library(purrr)
get_random_tbl <- function(tbl, n){
classes <- map_chr(tbl, class)
map_dfc(
classes,
~{
switch(
.x,
integer = sample(1:100, n, replace = TRUE),
character = sample(LETTERS, n, replace = TRUE),
Date = sample(seq(as.Date('1999/01/01'), as.Date('2019/01/01'), by = "day"), n, replace = TRUE),
list = sample(c(list("x"), list(1)), n, replace = TRUE),
stop()
)
}
)
}
get_random_tbl(my_tbl, 3)
# A tibble: 3 x 4
# x y w z
# <int> <chr> <date> <list>
#1 18 V 2015-11-30 <dbl [1]>
#2 34 D 2004-05-26 <chr [1]>
#3 76 B 2007-03-16 <chr [1]>