admin 管理员组

文章数量: 1086019


2024年4月15日发(作者:pvg英文全称)

r语言均匀分布随机数

R语言生成均匀分布随机数的函数是runif()句法是:

runif(n,min=0,max=1)n表示生成的随机数数量,min表示均匀分布

的下限,max表示均匀分布的上限;若省略参数min、max,则默认生

成[0,1]上的均匀分布随机数。

例1:

>runif(5,0,1)#生成5个[0,1]的均匀分布的随机数

[1]0.5993 0.7391 0.2617 0.5077 0.7199

>runif(5)#默认生成5个[0,1]上的均匀分布随机数

[1]0.2784 0.7755 0.4107 0.8392 0.7455

例2

随机产生100个均匀分布随机数,作其概率直方图,再添加均匀

分布的密度函数线,程序如下:

>x=runif(100)

>hist(x,prob=T,col=gray(.9),main="uniform on[0,1]")

>curve(dunif(x,0,1),add=T)#添加均匀分布的密度函数线

3.1.2正态分布随机数

正态分布随机数的生成函数是rnorm()

句法是:rnorm(n,mean=0,sd=1)其中n表示生成的随机数数量,

mean是正态分布的均值,默认为0,sd是正态分布的标准差,默认

时为1;

例:

随机产生100个正态分布随机数,作其概率直方图,再添加正态

分布的密度函数线

>x=rnorm(100)

>hist(x,prob=T,main="normal mu=0,sigma=1")

>curve(dnorm(x),add=T)

3.1.3二项分布随机数

二项分布是指n次独立重复贝努力试验成功的次数的分布,每次

贝努力试验的结果只有两个,成功和失败,记成功的概率为p

生成二项分布随机数的函数是:rbinom()

句法是:rbinom(n,size,prob)n表示生成的随机数数量,size

表示进行贝努力试验的次数,prob表示一次贝努力试验成功的概率

例:

产生100个n为10,15,50,概率p为0.25的二项分布随机数:

>par(mfrow=c(1,3))

>p=0.25

>for(n in c(10,20,50))

{x=rbinom(100,n,p)

hist(x,prob=T,main=paste("n=",n))

xvals=0:n

points(xvals,dbinom(xvals,n,p),type="h",lwd=3)

}

>par(mfrow=c(1,1))

3.1.4指数分布随机数

R生成指数分布随机数的函数是:rexp()

其句法是:rexp(n,lamda=1)n表示生成的随机数个数,

lamda=1/mean

例:

>x=rexp(100,1/10)#生成100个均值为10的指数分布随机数

>hist(x,prob=T,col=gray(0.9),main=“均值为10的指数分布随机

数”)

>curve(dexp(x,1/10),add=T)#添加指数分布密度线

3.1.5常见的分布函数

产生分布的随机数,只需要在相应的分布前加r就行

表3-1常见分布函数表

分布中文名称R中的表达参数

Beta贝塔分布beta(a,b)shape1,shape2

Binomial二项分布binom(n,p)size,prob

Cauchy柯西分布cauchy()location,scale Chi-square卡方分布

chisq(df)

df Exponential指数分布exp(lamda)rate F F分布f(df1,df2)df1

df2

Gamma伽玛分布gamma()shape rate

Geometric几何分布geom()prob Hypergeometric超几何分布

hyper()m,n,k

Logistic逻辑分布logis()location scale

Negative binomial负二项分布nbinom()size prob

Normal正态分布norm()mean,sd Multivariate normal多元正态分

布mvnorm()mean,cov

Poisson泊松分布pois()lambda T t分布t()df

Uniform均匀分布unif()min,max Weibull威布儿分布

weibull()shape,scale

Wilcoxon威尔考可森分布wilcox()m,n

表3-2与分布相关的函数及代号

函数代号函数作用

r-生成相应分布的随机数

d-生成相应分布的密度函数

p-生成相应分布的累积概率密度函数

q-生成相应分布的分位数函数

例:

dnorm表示正态分布密度函数

pnorm表示正态分布累积概率密度函数

qnorm表示正态分布分位数函数(即正态累积概率密度函数的逆函数)

3.2随机抽样

3.2.1放回与无放回抽样

R可以进行有放回、无放回抽样

sample()函数即可以实现

句法为:sample(x,n,replace=F,prob=NULL)


本文标签: 函数 分布 生成 表示 正态分布