2

私はCSVにこのデータを持っています:

Date  ALICORC1 ALT   ATACOBC1 AUSTRAC1 CONTINC1 BVN   DNT
40886 5.8      0.1   0.9      0.28     5.45     38.2  1.11
40889 5.8      0.1   0.88     0.28     5.37     37.7  1.04
40890 5.8      0.09  0.87     0.27     5.33     37.4  0.99
40891 5.7      0.1   0.85     0.27     5.3      37.5  0.91

これらはペルー株式市場の終値で、最適なポートフォリオなどを見つけるために xts に変換したいのですが、この CSV を xts に変換する方法が見つかりません。ここで多くの質問に対する回答を確認しましたが、どれもうまくいきませんでした。

私が持っているエラーのいくつかは次のとおりです。

  • インデックスのデータ行に XXXX の不正なエントリがあります
  • あいまいなデータ。

誰でも私を助けることができますか?

4

1 に答える 1

6

csv はカンマ区切り値を表すため、質問に示されているレイアウトは csv ではありません。データは実際には csv 形式であり、質問に示されている形式ではないと仮定します。本当にcsvではなく、質問に示されている形式である場合は、以下のsep=","引数を省略してくださいread.zoo。また、他の逸脱がある場合は、引数をさらに変更する必要がある場合があります。?read.zooとzooパッケージのReading Data in Zoo vignetteを参照してください。

ここではread.zoo、zoo パッケージで を使用してデータを Zoo オブジェクト として読み込み、zそれを xts に変換しxます。

R News 4/1を参照してください。具体的には、Excel の日付の日付処理を扱います。Mac バージョンの Excel を使用している場合は、以下のコードを少し変更する必要があるかもしれないことに注意してください (参照で説明されているように)。

library(xts) # this also loads zoo which has read.zoo

toDate <- function(x) as.Date(x, origin = "1899-12-30")
z <- read.zoo("myfile.csv", header = TRUE, sep = ",", FUN = toDate)
x <- as.xts(z)

アップデート

Zoo が read.csv.zoo になったので、read.zoo の行を次のように記述できます。

z <- read.csv.zoo("myfile.csv", FUN = toDate)
于 2012-02-18T12:46:15.040 に答える