Rの確率分布をやっていた。確率分布はたくさんある。
Rでデフォルトではいっているものは何があるのだろうと思って探した。R 内の確率分布に関する関数は、累積密度p、確率点q、確率密度d、乱数r が用意されていて、21個とbirthday 分布が用意してあった。ただし、一部の関数は4つのpqdr が用意してあるとは限らない。
ゴリ推してこれらの関数を取得してみる。接頭辞としてpqdr のどれかを持つ関数名をapropos で取得して、接頭辞pqdr を除いて文字列一致を繰り返してみる。
pqdr <- c("p", "q", "d", "r") f <- mapply(function(z) apropos(paste0("^", z)), pqdr) g <- mapply(function(i, z) gsub(paste0("^", i), "", z), pqdr, f) h <- intersect(intersect(intersect(g[[1]], g[[2]]), g[[3]]), g[[4]]) h
[1] "beta" "binom" "cauchy" "chisq" "exp" "f" [7] "gamma" "geom" "hyper" "lnorm" "logis" "nbinom" [13] "norm" "pois" "signrank" "t" "unif" "weibull" [19] "wilcox"
multinom とturky を除く19種類の確率分布が取得できた。