#r
#r
Вопрос:
Привет, я пытаюсь очистить следующий веб-сайт
https://data.bls.gov/timeseries/CUURS49FSA0
используя следующий код
library(rvest)
url <- read_html("https://data.bls.gov/timeseries/CUURS49FSA0")
xpath_node <- '//*[(@id = "table0")]//td | //*[(@id = "table0")]//th'
yr_CPI_pre2018.df <- url %>%
html_nodes(xpath = xpath_node) %>%
html_text() %>%
matrix(nrow = 16) %>%
t() %>%
data.frame()
colnames(yr_CPI_pre2018.df) <- yr_CPI_pre2018.df[1, ]
yr_CPI_pre2018.df <- yr_CPI_pre2018.df %>%
slice(-1)
Мой код может загружать только с 2011 по 2021 год, но я хотел бы получить данные с 2000 по 2021 год
Я также пытался использовать blscrapeR
, но эта библиотека не будет запрашивать этот набор данных до 2018 года.
month_HI_CPI_post2018.df <- bls_api("CUURS49FSA0", startyear = 2000, endyear = 2000)
Комментарии:
1. Я бы посоветовал перейти на веб-страницу, загрузить и прочитать Excel. В отличие от попыток узнать, как изменить и отправить форму. Мой совет — потратьте время на анализ и презентацию вместо того, чтобы выполнять один раз, данные с 2000 по 2017 год никогда не изменятся.
2. @Dave2e Я разрабатываю программу, которая обновляет данные CPI каждый месяц. Эта программа будет использоваться несколькими исследователями в подразделении. Я думаю, я просто хотел создать самодостаточный код, чтобы свести к минимуму вероятность ошибки (например, неправильная структура папок и т. Д.). Но я согласен, не нужно тратить время на статические данные. Спасибо!
3. Я это понимаю. Я хочу сказать, что исторические данные не меняются, поэтому прочитайте их один раз и сохраните. Они каждый месяц / год считывают изменения и обновляют набор данных. Это было бы более эффективно, чем чтение всех данных снова и снова.