反復によるルートを計算するために単純なルート検索アルゴリズムが必要な時系列を扱っています。これを行うために、パッケージを使用しますrootSolve
。apply
ただし、一度に1つずつではなく、データセット全体を使用して複数の観測に対してこのアルゴリズムを拡張したい場合に、ファミリのどの関数を使用するかを特定しようとすると、いくつかの問題が発生します。
これは、1 つの観測用に記述されたコードを簡略化したものです。
Z1, Z2, Z3,Z4 and are discount factors between 0 and 1
Z5 a percentage
f<- function(x) (z1*(1-exp(-.25*x))
+z2*(exp(-.25*x)-exp(-.5*x))
+z3*(exp(-.5*x)-exp(-.75*x))
+z4*(exp(-.75*x)-exp(-x)))/
(z1*exp(-.25*x)+z2*exp(-.5*x)+z3*exp(-.75*x)+z4*exp(-x))-z5
then I find a root using
uni<-uniroot(f, c(0,1))
割引とパーセンテージの各セットの関数の根を見つけることができるように、それぞれ 780 個の観測値を含むベクトルに対して、、、およびapply
を変更する関数 (必要だと思います) をどのように記述しますか? これは簡単かもしれませんが、正しく理解できませんでした。Z1
Z2
Z3
Z4
Z5