1

日付「2010-09-24」の値が100で、他のすべての期間の値がNAであるデータセットに対して、「var」と呼ばれる3番目の変数を生成しようとしています。

> dataset
           weight
2010-10-04  52495
2010-10-01  53000
2010-09-30  52916
2010-09-29  52785
2010-09-28  53348
2010-09-27  52885
2010-09-24  52174
2010-09-23  51461
2010-09-22  51286
2010-09-21  50968
2010-09-20  49250
> dataset=merge(dataset,var=NA)

ifelse(index(dataset)=="2010-09-24",100,NA)を使用して変数を生成できることはわかっています。しかし、サンプルを「2010-09-24」のみに制限し、その値をその右側の列と行に配置するために使用できる関数はありますか?

4

2 に答える 2

2

以前にこの方法で使用された merge() を見たことがなく、コマンドが機能していません。したがって、質問を誤解しているか、時系列データについて何かが欠けている可能性がありますが、次のようにします。

1: NA の新しいベクトルを追加する

データセット$var<-NA

2: 必要な日付にインデックスを付け、値 100 を変数 var に保存します

データセット[dataset$date=="24-09-2010","var"]<-100

それはあなたが探しているものですか?

于 2012-12-30T01:35:13.200 に答える
1

はい - Zooxtsなどの適切な時間インデックスを持つデータ型を使用する場合。

これら 2 つの以前の質問で SO を参照するか、 zooパッケージのビネットを読んでください。

于 2012-12-30T01:17:24.483 に答える