#r #list #loops #for-loop #tweetr
#r #Список #циклы #для цикла #tweetr
Вопрос:
Из текстового документа у меня будет список компаний, скажем, Telstra, Optus и Samsung.
После импорта этого списка в R мне нужен цикл, который будет выполнять эквивалент приведенного ниже кода. Список может состоять из любого количества компаний, поэтому моя главная проблема здесь в том, что его необходимо автоматизировать.
df1 <- search_tweets2("Telstra", retryonratelimit = TRUE,include_rts=FALSE)
df2 <- search_tweets2("Optus", retryonratelimit = TRUE,include_rts=FALSE)
df3 <- search_tweets2("Samsung", retryonratelimit = TRUE,include_rts=FALSE)
Спасибо.
Ответ №1:
Мы можем использовать lapply
map
функции или purrr для перебора каждого названия компании. Если есть много компаний, которые нужно искать, используйте Sys.sleep
, чтобы не превысить лимит.
df <- data.frame(companies = c("Telstra", "Optus", "Samsung"))
result <- purrr::map_df(df$companies, ~{
search_tweets2(.x, retryonratelimit = TRUE,include_rts=FALSE)
#Sys.sleep(5)
}, .id = 'id')
Комментарии:
1. Эй, Ронак, появляется сообщение «Ошибка в векторе («список», ntimes): недопустимый аргумент «длина»». Вы знаете, почему это может быть?
2. Это странно. Не уверен, что может быть причиной этого. Вы пытались перезапустить R / RStudio и повторить попытку?
3. Это был мой брандмауэр!!