裏 RjpWiki

Julia ときどき R, Python によるコンピュータプログラム,コンピュータ・サイエンス,統計学

ダメ出し:数式は整理して!

2012年06月12日 | ブログラミング

R で計量ミクロ」にあるんだけど,よくまあ,こんなに複雑な式を入力したものだと思う。よく出てくる部分式をまとめて置き換えると,実に簡単な式になることがわかった。1/2 乗しているけど,そんなもの必要ない。だって,中身が2乗なのだから。2乗したものを計算してあとで平方根をとるなんて,???どうかしてるぜ~

ヘックマンのρの導出プログラム Written by Akihiko NODA †
Stata10ではヘックマンのρを直接推定していません(Stata10 Reference A-H pp.557を参照)。よって、論文に掲載する際にはちょっとした数値計算が必要となります。以下では、デルタ法(J.Wooldridge(2002) pp.44を参照)を用いてヘックマンのρを計算します。
x<- 2.5         # insert the "coef" of "/athrho"
y<- 1.2         # insert the "sd" of "/athrho"
rho<-(exp(x*2)-1)/(1+exp(x*2))
rhosd<-((exp(2*x)*2/(1+exp(2*x))-(exp(2*x)-1)*(exp(2*x)*2)/(1+exp(2*x))^2)*y^2*(exp(2*x)*2/(1+exp(2*x))-(exp(2*x)-1)*(exp(2*x)*2)/(1+exp(2*x))^2))^(1/2)
rho
rhosd

x <- 2.5  # insert the 'coef' of '/athrho'
y <- 1.2  # insert the 'sd' of '/athrho'
a <- exp(2 * x) - 1
b <- exp(2 * x) + 1
c <- exp(2 * x) * 2
rho <- a / b
rhosd <- (1 - rho) * y * c / b
rho
rhosd

同じ答えになるのはいうまでもない。すごくないだろ~~。

> x<- 2.5         # insert the "coef" of "/athrho"
> y<- 1.2         # insert the "sd" of "/athrho"
> rho<-(exp(x*2)-1)/(1+exp(x*2))
> rhosd<-((exp(2*x)*2/(1+exp(2*x))-(exp(2*x)-1)*(exp(2*x)*2)/(1+exp(2*x))^2)*y^2*(exp(2*x)*2/(1+exp(2*x))-(exp(2*x)-1)*(exp(2*x)*2)/(1+exp(2*x))^2))^(1/2)
> rho
[1] 0.9866143
> rhosd
[1] 0.03191067

> x <- 2.5  # insert the 'coef' of '/athrho'
> y <- 1.2  # insert the 'sd' of '/athrho'
> a <- exp(2 * x) - 1
> b <- exp(2 * x) + 1
> c <- exp(2 * x) * 2
> rho <- a / b
> rhosd <- (1 - rho) * y * c / b
> rho
[1] 0.9866143
> rhosd
[1] 0.03191067


コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« ダメ出し:ダミー変数の作成 | トップ | ダメ出し:繰り返しをそのま... »
最新の画像もっと見る

コメントを投稿

ブログラミング」カテゴリの最新記事