使用R拟合分布
几个常用的概率函数介绍
这里,参考R语言实战,以及[Fitting Distribution with R]的附录。
一.认识各种分布的形态
1.1 连续型随机变量的分布
分布,F−分布,Wishart
分布。
先上个图,一睹为快。
以上几个分布之间的关系如以下结构图所示。
[广义线性模型导论3rd edition,p10]
1.1.1 正态分布
正态分布N(μ,σ2)
的密度函数:
正态分布的形态如图。
library(ggplot2)ggtitle
("正态分布密度函数")
正态分布可以衍生出如下的分布。
若Zi∼ i.i.dN(0,1)
,则有
set.seed(123)
data_chisq<-data.frame(x1 = rchisq(200, 10, ncp = 0),
x2 = rchisq(200, 50, ncp =0),
x3 = rchisq(200, 100, ncp = 0))
data_chisq_long<-melt(data_chisq)
## No id variables; using all as measure variables
ggplot(data = data_chisq_long, aes(x = value, colour = variable))+
geom_density()+
ggtitle
("卡方分布密度函数")
1.1.3t−
分布
若,并且Z和X2独立,则有
set.seed(123)
data_t<-data.frame(x1 = rt(200, 10, ncp = 0),
x2 = rt(200, 50, ncp =0),
x3 = rt(200, 100, ncp = 0))
data_t_long<-melt(data_t)
## No id variables; using all as measure variables
ggplot(data = data_t_long, aes(x = value, colour = variable))+
geom_density()+
ggtitle
("t-分布密度函数")
1.1.4F−
分布
若,并且X1和X2相互独立,则有
set.seed(123)
data_f<-data.frame(x1 = rf(200,df1 = 10, df2 = 10, ncp = 0),
x2 = rf(200,df1 = 5, df2 = 3, ncp =0),
x3 = rf(200, df1 = 3, df2 = 5, ncp = 0))
data_f_long<-melt(data_f)
## No id variables; using all as measure variables
ggplot(data = data_f_long, aes(x = value, colour = variable))+
geom_density()+
ggtitle
1.1.5Wishart
分布
Wishart
分布是χ2分布在p
维正态情况下的推广。这里对多维情况暂不展开介绍。
1.2 离散型随机变量的分布
1.2.1 伯努利(Bernoulli
)分布
伯努利分布记为Bernoulli(p)
,只有0和1两种取值。概率测度函数如下:
1.2.2 二项(Binomial
二项分布B(n,p)
的可能取值范围为0,1,...,n。其概率测度函数如下:
ggtitle
("二项分布概率分布图")
1.2.3 负二项(NegativeBinomial
)分布
负二项分布。
1.2.4 几何(Geometric
)分布
1.2.5 泊松(Poission
)分布
1.3 指数分布族及其相互联系
1.3.1 指数分布族
[广义线性模型导论3rd edition,p58]
1.3.2 指数分布
1.3.3 Weibull分布
1.3.4 Beta分布
1.3.5 Gama分布
1.3.6 双指数(DoubleExponential
)分布
1.4 其他分布
1.4.1 均匀(Uniform
)分布
1.4.2 柯西(Cauchy
)分布
1.4.3 对数正态(Lognormal
)分布
1.5 可视化探索的步骤举例
首先,通过直方图,经验累积分布形态等来观察数据的分布形态。
#产生一组服从N(10,2)分布的随机数#拟合密度曲线
#绘制累积经验分布图
#绘制QQ图
二.模型选择
三.参数估计
模拟估计
矩估计
极大似然估计
四.拟合优度指标
五.拟合优度检验
数据分析咨询请扫描二维码