4

csvファイルをできるだけ効率的にxtsオブジェクトに変換したいと思います。xtsオブジェクトに変換する前に、最初にread.zooメソッドを適用してzooオブジェクトを作成する必要があるので、行き詰まっているようです。

gold <- read.zoo("GOLD.CSV", sep=",", format="%m/%d/%Y", header=TRUE)

Gold <- as.xts (gold, order.by=index(gold), frequency=NULL)

これは、最初のGOLD.CSVファイルをR xtsオブジェクトに変換する最も効率的な方法ですか?

4

2 に答える 2

3

ファイルの場合は、それを読む必要があります。

だからあなたとして使用read.zoo()してください-しかし、すぐに変換してください:

 gold <- as.xts(read.zoo("GOLD.CSV", sep=",", format="%m/%d/%Y", header=TRUE))

Ok?

于 2010-08-18T01:38:54.393 に答える
2

read.xts独自の関数を書くことができます。これをラッパー関数と呼び、次のようになります。

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

の引数に注意してくださいfunction()。それらは関数の本体(中括弧の間のコード)に渡されます。引数に値がある場合function()、これはこれがデフォルトであることを意味します。新しい値(たとえばfunction(x = "my.file.csv", sep = "\t"))を割り当てると、デフォルトが上書きされます。最後の行は、新しい関数の使用方法を示しています。この関数を残りのread.zoo引数で自由に拡張してください。それを行う方法について具体的な質問がある場合は、恥ずかしがらずに質問してください。:)

私は毎日の仕事でそのような小さな宝石をいくつか使用しています。私はworkhorse.Rというファイルを作成しsource("d:/workspace/workhorse.R")、小さな関数が必要なときはいつでもそれをロードします(例:)。

于 2010-08-18T06:10:42.793 に答える