私はここで少し戸惑っていて、かなり基本的なものが欠けているに違いありません。複数の時系列オブジェクトから列を抽出したい。tsオブジェクトをデータフレームにしてから抽出することで実行できる可能性がありますが、この質問リンクに示されているように、時系列をサブセット化する直接的な方法があります。
tsオブジェクトに名前を割り当てる方法を理解するために、?tsは
ts(data = NA, start = 1, end = numeric(), frequency = 1,
deltat = 1, ts.eps = getOption("ts.eps"), class = , names = )
ただし、fits helpでコードを実行すると、namesパラメーターの有無にかかわらず
names(z)
NULLが返されます。
z <- ts(matrix(rnorm(300), 100, 3), start=c(1961, 1), frequency=12)
またz <- ts(matrix(rnorm(300), 100, 3), start=c(1961, 1), frequency=12, names=c("x1", "x2", "x3"))
主な質問:1。時系列オブジェクトtsおよびmtsの列に名前を割り当てるにはどうすればよいですか?2.時系列オブジェクトから時系列オブジェクトから直接列を抽出する方法は何ですか?zooまたはxtsクラスに変換する必要がありますか?または、時間インデックスを個別に追加しますか?
私が解決しようとしている問題のアイデアを与えるために:
# using inbuilt ldeaths time series dataset
ldeaths
d <- diff(ldeaths)
percen <- quantile(d, 0.9)
i <- ifelse(d>percen, 1,0)
signal <- cbind(d,i)
ここで、インジケーターが1であるデータセットを、時間インデックスを使用して抽出するために、どのように進めるかがわかりません。str(signal)はmtsオブジェクトですが、信号を出力すると時間インデックスが表示されません。
どうもありがとう。