data.frame Objekt zu Objekt XTS Umwandlung in R
Frage
Ich möchte meine csv-Dateien in xts Objekte konvertieren so effizient wie möglich. Ich scheine stecken zu sein, obwohl mit dem ersten mit der read.zoo Methode Anwendung ein Zoo-Objekte zu erstellen, bevor es zu einem xts Objekt in der Lage zu konvertieren.
gold <- read.zoo("GOLD.CSV", sep=",", format="%m/%d/%Y", header=TRUE)
Gold <- as.xts (gold, order.by=index(gold), frequency=NULL)
Ist dies der effizienteste Weg, meine erste GOLD.CSV-Datei in ein R xts Objekt umzuwandeln?
Lösung
Wenn es eine Datei ist, müssen Sie es lesen.
So verwenden read.zoo()
wie Sie - aber dann konvertieren rightaway:
gold <- as.xts(read.zoo("GOLD.CSV", sep=",", format="%m/%d/%Y", header=TRUE))
Ok?
Andere Tipps
Sie können Ihre eigene read.xts
Funktion schreiben. Wir würden es eine Wrapper-Funktion aufrufen, und es sollte etwas entlang der Linien von
read.xts <- function(x, format = "%m/%d/%Y", header = TRUE, sep = ",") {
result <- as.xts(read.zoo(x, sep = sep, format = format, header = header))
return(result)
}
read.xts(file.choose()) # select your file
Beachten Sie die Argumente in function()
. Sie sind an dem Körper der Funktion (Code in geschweiften Klammern) übergeben. Wenn function()
Argumente Werte haben, bedeutet dies, dass dies der Standard. Wenn Sie neue Werte zuweisen (z function(x = "my.file.csv", sep = "\t")
), werden sie die Standardeinstellungen überschreiben. Die letzte Zeile zeigt Ihnen, wie Sie Ihre neue Funktion nutzen zu können. Fühlen Sie sich frei, diese Funktion mit dem Rest der read.zoo
Argumente zu erweitern. Sollten Sie spezielle Fragen haben, wie es zu tun, nicht von schüchternen und einfach fragen. :)
verwende ich ein paar Kleinode wie das in meiner täglichen Arbeit. Ich habe eine Datei erstellt namens workhorse.R und ich laden Sie es (zum Beispiel source("d:/workspace/workhorse.R")
), wann immer ich eine der kleinen Funktionen benötigen.