【最新】R语言马尔科夫链蒙特卡洛MCMC分析报告 附代码数据
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
## -1.933969 1.936913 mean(z)# mean ## [1] -0.01259031 sd(z)# standard deviation ## [1] 0.9970053 rm(list=ls())# clear memory # Generate one uniform and map it to a normal random number set.seed(123)u0=round(runif(1),digits=2) # Generate a single uniform on (0,1) print(u0) ## [1] 0.29 z0=round(qnorm(u0),digits=2)# Transform it using the normal quantile function print(z0) ## [1] -0.55 curve(pnorm,-5,5,ylab="CDF",xlab="z", xaxt='n', yaxt='n',lwd=2,b=1.5) # plot axis(side=2, at=c(u0,0,1),cex.axis=1.5)axis(side=1, at=c(z0,-5,5),cex.axis=1.5) abline(v=z0,lty=2,col="blue"); abline(h=u0,lty=2,col="blue")points(z0,u0,col="red",pch=20,cex=2)
#####################3 rm(list=ls())# clear memory # Generate 10,000 uniform numbersu=runif(10000)# Apply the quantile normal function z=qnorm(u)# histogramhist(z,breaks=100,probability=T)curve(dnorm,-5,5,add=T,col="blue",lwd=2)box()
##############################################################################################################################
示例 1:逆 CDF 方法#########################################################################################################
【原创】附代码数据 有问题到淘宝找“大数据部落”就可以了
MCMC 简介
MCMC 采样器
方法 1:逆累积分布函数
Aim: we want to simulate from FF, a (cumulative) distribution function. Ingredients :
目标:我们想要从 FF 中模拟一个(累积)分布函数。 成分: 1.累积分布函数 FF 的倒数 F-1F-1,又名分位数函数。 2.从统一(0,1)分布产生随机数,这是(0,1)(0,1)上的随机数。 想法:如果我们在(0,1)(0,1)上生成数字 uiui,那么变换的数字 F-1(ui)F-1(ui)根据 FF 分配。 这是一个被称 为“概率积分变换”的理论结果,抽样方法被称为“逆变换抽样”。 下面的 R 代码包含一个关于使用这种方法从 N(0,1)中产生 10,000 万个数字的 R。
目标:我们想要从 FF 中模拟一个(累积)分布函数。 成分: 1.累积分布函数 FF 的倒数 F-1F-1,又名分位数函数。 2.从统一(0,1)分布产生随机数,这是(0,1)(0,1)上的随机数。 想法:如果我们在(0,1)(0,1)上生成数字 uiui,那么变换的数字 F-1(ui)F-1(ui)根据 FF 分配。 这是一个被称 为“概率积分变换”的理论结果,抽样方法被称为“逆变换抽样”。 下面的 R 代码包含一个关于使用这种方法从 N(0,1)中产生 10,000 万个数字的 R。
【原创】附代码数据 有问题到淘宝找“大数据部落”就可以了
# Summary statisticsmedian(z)# median ## [1] -0.02004848 quantile(z,c(0.025,0.975))# 95% probability interval ## 2.5% 97.5%
【原创】附代码数据 有问题到淘宝找“大数据部落”就可以了
R 语言马尔科夫链蒙特卡洛 MCMC 简介
MCMC 采样器
方法 1:逆累积分布函数 来自Aim: we want to simulate from FF, a (cumulative) distribution function. Ingredients :
【原创】附代码数据 有问题到淘宝找“大数据部落”就可以了
# Generate one uniform and map it to a normal random number (again with a different seed) set.seed(12345)u0=round(runif(1),digits=2) # Generate a single uniform on (0,1)print(u0) ## [1] 0.72 z0=round(qnorm(u0),digits=2)# Transform it using the normal quantile functionprint(z0) ## [1] 0.58 curve(pnorm,-5,5,ylab="CDF",xlab="z", xaxt='n', yaxt='n',lwd=2,b=1.5) # plot axis(side=2, at=c(u0,0,1),cex.axis=1.5)axis(side=1, at=c(z0,-5,5),cex.axis=1.5)abline(v=z0,lty=2,col="blue"); abline(h=u0,lty=2,col="blue")points(z0,u0,col= "red",pch=20,cex=2)