[R]階乗を計算する
factorial関数を使う。以下、実行例。なお、4の階乗(4!)は24である。
> factorial(4)
[1] 24
ガンマ関数の値を計算するgamma関数を使っても計算できる。ガンマ関数の以下の性質を利用する。
Γ(n + 1) = n! (nは整数かつn≧1)
> gamma(4 + 1)
[1] 24
factorial関数とgamma関数はその実行速度が異なる。gamma関数のほうが断然早いので、gamma関数の使用を推奨する。
> system.time(for (i in 1:1000000) factorial(4))
ユーザ システム 経過
0.39 0.00 0.39
> system.time(for (i in 1:1000000) gamma(4 + 1))
ユーザ システム 経過
0.11 0.00 0.11
« [Octave]標準正規分布に従う確率変数(乱数)を得る | トップページ | [R]ベクトルの要素を逆順に並び替える »
「R(数値計算)」カテゴリの記事
- [R]複数のパラメーターと定数を持つ関数の値が最大・最小となるパラメーターを求める(2026.03.30)
- [R]重み付き線形最小二乗法を行う(2026.03.20)
- [R]重み付き非線形最小二乗法を行う(2026.03.06)
- [R]計算機イプシロンを求める(2025.10.29)
- [R]複数の引数を持つ関数の値の最小値(最大値)を求める(2024.12.07)
« [Octave]標準正規分布に従う確率変数(乱数)を得る | トップページ | [R]ベクトルの要素を逆順に並び替える »

コメント