2017-04-16 5 views
2

Ich mag den 10-jährigen Bundesobligation Ertrag aus der Staatskasse Website herunterladen: https://www.treasury.gov/resource-center/data-chart-center/interest-rates/Pages/TextView.aspx?data=yieldBundesobligation Ertrag Tabelle aus der Treasury-Website

Um die obige Webseite zu analysieren und rufen Sie den letzten 10 yr Schatzschein Ertrag, Früher habe ich die hier angegebenen Hinweise zu beachten: Parsing 10-year federal note yield from the website

library(httr) 
URL = "https://www.treasury.gov/resource-center/data-chart-center/interest-rates/Pages/TextView.aspx?data=yield" 

urldata <- GET(URL) 
data <- readHTMLTable(rawToChar(urldata$content), 
         stringsAsFactors = FALSE) 

data <- as.data.frame((data[69])) 
names(data) <- gsub("NULL.","", names(data)) # Take out "NULL." 

Aber es funktioniert nicht mehr.

Irgendwelche Gedanken, was falsch oder alternative Vorschläge sein könnten?

+0

Ich konnte nicht auf die Website zugreifen, es heißt "Ein unerwarteter Fehler ist aufgetreten". Wenn Sie das gleiche Problem haben, können Sie die Daten nicht extrahieren. –

+0

@ FernandoIrarrázavalG Ich kann darauf zugreifen, und hier ist der direkte Link nur für den Fall Oposum

+0

Auch nicht funktioniert, das ist, was ich bekomme: https://snag.gy/tQl2ya.jpg –

Antwort

3

Dies beantwortet nicht die spezifische Frage, warum Ihr Code nicht mehr funktioniert. Hier ist eine Alternative mit rvest Paket, das viele Schabvorgänge vereinfacht. Insbesondere wird die Auswahl der Tabelle mit dem Klassen-ID-CSS-Selektor .t-chart getroffen. Dies macht es viel toleranter gegenüber Seitenformatierungsänderungen. Die Verkettung mit dem Operator%>% sorgt für einen sehr kompakten Code.

library(rvest) 
t_url = "https://www.treasury.gov/resource-center/data-chart-center/interest-rates/Pages/TextView.aspx?data=yield" 
rates <- read_html(t_url) %>% 
    html_node(".t-chart") %>% 
    html_table() 

rates 

#  Date 1 mo 3 mo 6 mo 1 yr 2 yr 3 yr 5 yr 7 yr 10 yr 20 yr 30 yr 
# 1 04/03/17 0.73 0.79 0.92 1.02 1.24 1.47 1.88 2.16 2.35 2.71 2.98 
# 2 04/04/17 0.77 0.79 0.92 1.03 1.25 1.47 1.88 2.16 2.36 2.72 2.99 
# 3 04/05/17 0.77 0.80 0.93 1.03 1.24 1.44 1.85 2.14 2.34 2.71 2.98 
# 4 04/06/17 0.78 0.79 0.94 1.05 1.24 1.45 1.87 2.15 2.34 2.72 2.99 
# 5 04/07/17 0.77 0.82 0.95 1.08 1.29 1.52 1.92 2.20 2.38 2.74 3.00 
# 6 04/10/17 0.77 0.82 0.97 1.07 1.29 1.52 1.91 2.18 2.37 2.72 2.99 
# 7 04/11/17 0.74 0.82 0.94 1.05 1.24 1.45 1.84 2.11 2.32 2.67 2.93 
# 8 04/12/17 0.77 0.81 0.95 1.04 1.24 1.44 1.81 2.09 2.28 2.65 2.92 
# 9 04/13/17 0.76 0.81 0.94 1.03 1.21 1.40 1.77 2.05 2.24 2.62 2.89 
+0

Ausgezeichnet, vielen Dank – Oposum