R Letto.Zoo Errore per il formato di data errato
Domanda
Ho un dato che ha una colonna data e altre 10 colonne. La colonna della data ha il formato del 199010. Quindi è yyyymm. Sembra che lo zoo / XTS richieda che la data abbia informazioni sui giorni in esso. C'è un modo per affrontare questo problema?
hier ist i miei dati
structure(list(Date = 198901:198905, NoDur = c(5.66, -1.44, 5.51,
5.68, 5.32)), .Names = c("Date", "NoDur"), class = "data.frame", row.names = c(NA,
5L))
data<-read.zoo("C:/***/data_port.csv",sep=",",format="%Y%m",header=TRUE,index.column=1,colClasses=c("character",rep("numeric",1)))
. Soluzione
Il codice ha questi problemi:
- .
- I dati sono spazi separati ma il codice specifica che è la virgola separata
- I dati non descrivono le date poiché non c'è giorno ma il codice utilizza il valore predefinito delle date
- I dati non sono forniti in forma riproducibile.Nota come si può semplicemente copiare i dati e il codice qui sotto e incollarlo in R senza alcun lavoro aggiuntivo.
Prova questo:
Lines <- "Date NoDur
198901 5.66
198902 -1.44
198903 5.51
198904 5.68
198905 5.32
"
library(zoo)
read.zoo(text = Lines, format = "%Y%m", FUN = as.yearmon, header = TRUE,
colClasses = c("character", NA))
.
Quanto sopra converte l'indice in classe "yearmon"
che probabilmente rende il senso di più senso qui ma sarebbe alternativamente possibile convertirlo in classe "Date"
utilizzando FUN = function(x, format) as.Date(as.yearmon(x, format))
al posto del posto del
Argomento FUN
sopra.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow