Язык программирования R/Вероятностные функции
Внешний вид
Обзор
[править]В R реализовано множество вероятностных функций.
r
- стандартный префикс для генераторов случайных чисел, таких какrunif()
,rnorm()
.d
- стандартный префикс для функций вероятностных плотностей (pdf).p
- стандартный префикс для функций накопления плотности (cdf).q
- стандартный префикс для квантильных функций (или обратный cdf).
Дискретные распределения
[править]Распределение Бернулли
[править]Получить распределение Бернулли можно используя функции sample()
, runif()
или rbinom()
с параметром size = 1
.
n <- 1000 x <- sample(c(0,1), n, replace=T) x <- sample(c(0,1), n, replace=T, prob=c(.3,.7)) x <- runif(n) >.3 x <- rbinom(n, 1, .2)
Биномиальное распределение
[править]x <- rbinom(100,10,.5)
Мультиномиальное распределение
[править]sample(1:6, 100, replace=T, prob= rep(1/6,6))
Распределение Пуассона
[править]N <- 10000 x <- rpois(N, 1) x <- rpois(N, 3) x <- rpois(N, 100)
Гипергеометрическое распределение
[править]x <- rhyper(1000, 15, 5, 5)
Геометрическое распределение
[править]N <- 10000 x <- rgeom(N, .5) x <- rgeom(N, .01)
Отрицательное биномиальное распределение
[править]Отрицательное биномиальное распределение — это распределение дискретной случайной величины равной количеству произошедших неудач в последовательности испытаний Бернулли с вероятностью успеха , проводимой до -го успеха.
N <- 100000 x <- rnbinom(N, 10, .25) x <- rnbinom(N, 10, .5) x <- rnbinom(N, 10, .75)
Распределение Бенфорда
[править]Распределение первой цифры числа. Названо в честь Бенфорда (Benford) 1938[1] и Ньюкомба (Newcomb) 1881[2].
> library(VGAM) > dbenf(x <- c(1:10)) [1] 0.30103000 0.17609126 0.12493874 0.09691001 0.07918125 0.06694679 [7] 0.05799195 0.05115252 0.04575749 0.00000000
Распределение Ципфа
[править]Получить это распределение можно функциями dzipf()
и pzipf()
из пакета VGAM.
Непрерывные распределения математических пределов
[править]Непрерывное равномерное распределение
[править]runif(100)
Нормальное и непрерывное распределения
[править]- Гауссовское распределение
n <- 1000 x <- rnorm(n)
Квантиль нормального распределения
> qnorm(.95) [1] 1.644854 > qnorm(.975) [1] 1.959964 > qnorm(.99) [1] 2.326348
- The mvtnorm package includes functions for multivariate normal distributions.
Quantile of the distribution
> qchisq(.95,1) [1] 3.841459 > qchisq(.95,10) [1] 18.30704 > qchisq(.95,100) [1] 124.3421
- Student's t distribution
Quantile of the Student t distribution
> qt(.975,30) [1] 2.042272 > qt(.975,100) [1] 1.983972 > qt(.975,1000) [1] 1.962339
- Fisher Snedecor
- The lognormal distribution
Extreme values and related distribution
[править]- The Gumbel Distribution
- The logistic distribution : distribution of the difference of two gumbel distributions.
plogis, qlogis, dlogis, rlogis
- Frechet dfrechet() evd
- Generalized Extreme Value dgev() evd
- Gumbel dgumbel() evd
- Burr dburr pburr qburr rburr in actuar
Pareto Distributions
[править]- dpareto(), ppareto(), rpareto(), qpareto() in actuar
- Generalized Pareto dgpd() in evd
- The VGAM package has also functions for the Pareto distribution.
Beta and Dirichlet distributions
[править]- Beta
- Dirichlet in gtools and MCMCpack
library(gtools) ?rdirichlet library(bayesm) ?rdirichlet library(MCMCpack) ?Dirichlet
Exponential
[править]Weibull
[править]Gamma
[править]Cauchy
[править]Levy
[править]Distribution in circular statistics
[править]- Functions for circular statistics are included in the CircStats package.
- dvm() Von Mises density function
- dtri() triangular density function
- dmixedvm() Mixed Von Mises density
- dwrpcauchy() wrapped cauchy density
- dwrpnorm() wrapped normal density.
See also
[править]- Packages VGAM, SuppDists, actuar, fBasics, bayesm, MCMCpack