token <- get_twitter_token()
train <- TRUE
method <- ifelse(train, 'all', 'since')
dir_data <- get_dir_data()
valid_stems <- get_valid_stems()
cols_lst <- get_cols_lst(valid_stems[1])
tweets <- retrieve_tweets(method = method, token = token, export = FALSE)
.f_transform <- function() {
tweets %>% transform_tweets(train = train)
}
tweets_transformed <-
do_get(
f = .f_transform,
dir = dir_data,
overwrite = FALSE, # TRUE,
export = FALSE
# file = 'tweets_transformed'
)
tweets_transformed <- tweets %>% transform_tweets(train = train)
.display_info('Reduced {nrow(tweets)} tweets to {nrow(tweets_transformed)} transformed tweets.')
res_fit <-
valid_stems %>%
setNames(., .) %>%
purrr::map(
~ do_fit(
tweets_transformed = tweets_transformed,
stem = .x,
.overwrite = list(tune = train, fit = TRUE)
)
)
res_fit
.pluck_fit <- function(stem) {
.validate_stem(stem)
res_fit %>% purrr::pluck(stem) %>% purrr::pluck('fit')
}
fit_favorite <- .pluck_fit('favorite')
fit_retweet <- .pluck_fit('retweet')
usethis::use_data(fit_favorite, fit_retweet, overwrite = TRUE)
res_preds <-
dplyr::tibble(
stem = valid_stems,
fit = list(fit_favorite, fit_retweet)
) %>%
dplyr::mutate(
res = purrr::map2(
stem, fit,
~ xengagement::do_predict(
tweets_transformed = tweets_transformed,
stem = ..1,
fit = ..2,
.overwrite = list(preds = TRUE, shap = TRUE)
)
)
)
res <-
res_preds %>%
dplyr::select(stem, res) %>%
tidyr::unnest_wider(res) %>%
dplyr::select(stem, preds) %>%
tidyr::unnest(preds)
res
res %>% dplyr::relocate(matches('trans$')) %>% tail()
# res %>% visdat::vis_dat()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.