#r #list #loops #brackets #square
#r #Список #циклы #скобки #квадрат
Вопрос:
Я хочу получить информацию о качестве воздуха для Великобритании и Европы и использовал команду FromJSON в R для доступа к API, доступному по адресу api.waqi.info .
boxStations <- read.csv('ukAqiStations.csv') # import air quality stations in lat/lon 'box'
boxID <- list(select(boxStations, stationIDX)) # select only the 'stationIDX' column
# now iterate down station IDs in boxID
for (i in 1:length(boxID[[1]][[1]])) {
waqiAccess <- paste0("http://api.waqi.info/feed/@", boxID[[1]][[1]][i], "/?token=###")
try(APIreply <- fromJSON(txt = waqiAccess), silent = TRUE)
...
}
Код работает, но я хочу упростить его, я пробовал разные варианты расположения квадратных скобок, пока он не сработал. Заранее благодарю вас.
Комментарии:
1. проверьте это: purrr.tidyverse.org/reference/pluck.html
2. Спасибо AlexB, я импортировал purrr, и это работает:
> pluck(boxID, 1, 1, 3) [1] 3160
дает тот же результат,> boxID[[1]][[1]][3] [1] 3160
что и мне, возможно, придется признать, что R для этого должен использовать мощную векторную нотацию. Я также рассмотрю преобразование импорта из одного столбца csv в простой список.