1

ここに含まれているようなデータ系列を取得しようとしています。

http://robjhyndman.com/tsdldata/roberts/beards.dat

...そしてそれをRの動物園の時系列オブジェクトにロードします。日付情報のテーブルはありませんが、定期的、毎年、y=1866から始まることがリストされています。これは私が試みていることです...

beard <- read.zoo('http://robjhyndman.com/tsdldata/roberts/beards.dat', 
header=FALSE, 
index.column=0,
start="1866-01-01",
format="%Y", 
skip=4)

ほとんど機能しますが、zooregからの「start」引数を無視します。

だから、私はこれを読んで、そのようにインデックスを変更する素晴らしい解決策を持っています...

index(beard) <- as.Date(paste(seq(1866,1911, by=1),'-01-01',sep=''), format="%Y-%m-%d")

read.zoo()...しかし、1回の呼び出しでこれを実行できるという議論があった場合、これはより滑らかになります。私はそれを見逃していますか、それとも2段階の問題ですか?

4

1 に答える 1

5

FUN=次のようなカスタムを指定します。

URL <- 'http://robjhyndman.com/tsdldata/roberts/beards.dat'
toDate <- function(x) as.Date(as.yearmon(x) + 1865)
beard <- read.zoo(URL, index = 0, skip = 4, FUN = toDate)
于 2012-05-24T03:38:32.097 に答える