2016-11-14 1 views
1

Ich habe eine Spalte von Daten, exportiert von Excel als CSV in Dataframe, der Standardtyp in "Datenmenge importieren ..." "... von CSV" ie d<-read_csv(data.csv). Von einem Dataframe möchte ich ein Zoo und/oder XTS-Objekt erstellen.Lesen Sie eine Spalte von Daten aus Excel in Zoo (oder XTS)

Die Daten sind:

30/04/2016 
31/05/2016 
30/06/2016 

ich folgende Fehler:

dates <- c('30/04/2016','31/05/2016','30/06/2016') 
d <- dates 
z <- read.zoo(d) 

Error in read.zoo(d) : index has bad entry at data row 1

z <- read.zoo(d, FUN = as.Date()) 

Error in as.Date() : argument "x" is missing, with no default

z <- read.zoo(d, FUN = as.Date(format="%d/%m/%Y")) 

Error in as.Date(format = "%d/%m/%Y") : argument "x" is missing, with no default

Alternativ bekomme ich einen anderen Fehler, wenn ich direkt in Zoo mit Format arguemnt lesen:

ts.z <- read.zoo(d,index=1,tz='',format="%d/%m/%Y") 

Error in read.zoo(d, index = 1, tz = "", format = "%d/%m/%Y") :
index has bad entry at data row 1

Was die schlechte Eingabezeile 1 Fehler ist? Was sind die richtigen Möglichkeiten, um FUN =? Was sind die richtigen Eingabeklassen und Unterscheidungen für read.zoo?

Antwort

1

Von ?read.zoo über die file -parameter:

character string or strings giving the name of the file(s) which the data are to be read from/written to. See read.table and write.table for more information. Alternatively, in read.zoo , file can be a connection or a data.frame (e.g., resulting from a previous read.table call) that is subsequently processed to a "zoo" series.

Was in Ihrem Beispiel läuft falsch ist, dass d ist weder ein Dateiname, eine Verbindung oder ein data.frame. Sie müssen es in data.frame() wickeln.

Ein Arbeitsbeispiel:

z <- read.zoo(data.frame(dates), FUN = as.Date, format='%d/%m/%Y') 

die gibt:

> z 

2016-04-30 
2016-05-31 
2016-06-30 
> class(z) 
[1] "zoo" 

Gebrauchte Eingangsdaten:

dates <- c('30/04/2016','31/05/2016','30/06/2016') 
Verwandte Themen