私は時系列データ(GPS速度データ、具体的には)があり、信号が失われた場所に欠損値の隙間が含まれています。短期間が欠落している場合は、単にna.splineを使用するだけですが、これは長い期間は不適切です。あらかじめ定義された加速限界に基づいて、最後の真の値からゼロまでの値をランプアップしたいと思います。速度がゼロ(すなわち、最後の速度[4.19] +(ヘルツ*ランプ))に達するまでRamp up/down missing R時系列データR
#create sample data frame
test <- as.data.frame(c(6,5.7,5.4,5.14,4.89,4.64,4.41,4.19,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,5,5.1,5.3,5.4,5.5))
names(test)[1] <- "speed"
#set rate of acceleration for ramp
ramp <- 6
#set sampling rate of receiver
Hz <- 1/10
そこで欠落データ用ランプを得、次のデータ点を取得する前の値と加速度の速度を使用します次の値:
3.59
2.99
2.39
1.79
1.19
0.59
0
最後には、私は信号が再び拾ったときに、ゼロから立ち上げるために、逆の方法でこれを実行する必要があります。
これは明らかです。
乾杯
おかげで、素晴らしい仕事!はい、私は次のNAsもゼロに変更する必要があったので、それは問題ありませんでした。今度は、このセクションを逆の順序で実行できるようにする必要があります。その結果、信号が戻ってきたときに、ゼロから信号がピックアップしたときの速度まで急激にジャンプすることはありません。単純にこれを逆に実行する方法はありますか? – user8605861
上記のコードで 'test_speed < - rev(test $ speed)'( 'test_speed < - test $ speed'の代わりに)を設定し、結果は' rev(result) 'です。 –