数式の扱い sympyをRで

  • ここで尤度比を扱っている
  • 尤度比は、尤度1と尤度2の比(割り算)である
  • 尤度の計算は、「場合分け」をして、それを足し合わせたりするので、式が整理統合されずに長くなっていく…
  • たとえば尤度L=\frac{1}{8}*2*p*q+\frac{1}{4}*p^2+\frac{1}{4}*2*p*qである。
  • これをRに処理してもらおう
library(rSymPy)
p<-Var("p")
q<-Var("q")
L<-1/8*2*p*q+1/4*p*p+1/4*2*q*p
print(L)
  • 結果
> L
[1] "0.75*p*q + 0.25*p**2"
  • これの背景はPython library for symbolic mathematics(こちら
    • 式の因数分解とかもしてほしいのだけれど、それは装備されていないらしい。どちらかというと、「展開」が得意(展開の方が手でやるのも簡単だから、仕方ない)