2013-04-10 8 views
6

Sto scaricando dati da FRED con la libreria quantmod (autore Jeffrey A. Ryan). Con i dati YAHOO e GOOGLE, sono in grado di impostare date di inizio e fine. Lo stesso può essere fatto per i dati FRED?download di dati FRED con quantmod: possono essere specificate le date?

La pagina di aiuto non elenca "da" e "a" come opzioni della funzione getSymbols di quandmod, da cui deduco che non è attualmente possibile.

C'è un modo per impostare un intervallo per i dati da scaricare o devo scaricare l'intero set di dati e scartare i dati che non mi servono?

Grazie per il vostro aiuto. Di seguito il codice che illustra il contesto:

Le date vengono ignorati durante il download da FRED:

# environment in which to store data 
data <- new.env() 

# set dates 
date.start <- "2000-01-01" 
date.end <- "2012-12-31" 

# set tickers 
tickers <- c("FEDFUNDS", "GDPPOT", "DGS10") 

# import data from FRED database 
library("quantmod") 
getSymbols(tickers 
    , src = "FRED" # needed! 
    , from = date.start # ignored 
    , to = date.end # ignored 
    , env = data 
    , adjust = TRUE 
) 

head(data$FEDFUNDS) 

head(data$FEDFUNDS) 
      FEDFUNDS 
1954-07-01  0.80 
1954-08-01  1.22 
1954-09-01  1.06 
1954-10-01  0.85 
1954-11-01  0.83 
1954-12-01  1.28 

EDIT: Soluzione

Grazie al suggerimento GSEE s' al di sotto, io sto usando il seguente codice per suddividere i dati nell'intervallo di date specificato sopra:

# subset data to within time range 
    dtx <- data$FEDFUNDS 
    dtx[paste(date.start,date.end,sep="/")] 

Qui ho estratto i dati xts dall'ambiente prima di agire su di esso. La mia domanda di follow-up esplora le alternative.

Follow-Up Domanda

ho chiesto alcune domande di follow-up ci: get xts objects from within an environment

risposta

5

È necessario scaricare tutti i dati e sottoinsieme più tardi. getSymbols.FRED non supporta l'argomento from come getSymbols.yahoo.

+0

... perché lo stesso FRED non consente di specificare un intervallo di date. Fornisce solo tutti i dati. –

+0

Capito, grazie! – PatrickT

5

In alternativa è possibile scaricare i dati da FRED quandl (http://www.quandl.com/help/r), che offre più di 4 milioni di set di dati, tra cui tutti i dati FRED. È disponibile un pacchetto API e R. ("Quandl"). I dati possono essere restituiti in diversi formati formati, ad es. data frame ("raw"), ts ("ts"), zoo ("zoo") e xts ("xts"). Ad esempio, per scaricare GDPPOT10 e specificare le date e lo hanno restituito come un oggetto XTS tutto quello che dovete fare è:

require(Quandl) 
mydata = Quandl("FRED/GDPPOT", start_date="2005-01-03",end_date="2013-04-10",type="xts") 
+0

Oh è fantastico, non ho ancora usato il pacchetto Quandl, ora vado a scoprirlo! Il tuo suggerimento è davvero semplice. Bello sapere – PatrickT

+0

btw, ho già accettato la risposta di GSee, quindi un grande grazie per aver aggiunto il tuo suggerimento. – PatrickT

1

quandl non sembra offrire tutti i dati da FRED, almeno in termini di frequenza dei dati . Quandl offre molto probabilmente solo dati annuali che non sono utili in molte circostanze.

+0

puoi dare un esempio specifico e una sorgente di download alternativa? – PatrickT

+0

Divertente come ho raggiunto questo thread un anno dopo. Ho scoperto che, in alcuni casi, '' Quandl'' ha cambiato il nome dei set di dati '' Fred''. Esempio: Questi dati possono essere trovati sul sito '' Fred'' come '' LRHUTTTTUSA156N'' e sul sito '' Quandl'' come '' AUSURHARMADSMEI''. Ho trovato dati trimestrali e annuali, ma il cambio di nome è molto scomodo ... – PatrickT

Problemi correlati