- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用好R语言工具——以Monte Carlo方法为例 R语言的历史、R语言的特点和优势、R语言和其它统计软件(SAS、Stata、SPSS、MatLab等)的比较、R语言和大数据的关系、为什么要学习R语言(此处略去千余字) 人之学R有难易乎? 首先演示一段用R语言进行线性回归分析的简单例子: 很短的时间内用R语言完成了回归分析的一个例子; 这些内容,涵盖了统计学的线性模型或计量经济学的基础内容,在以前要用一本书学习一个学期; 能否认为,熟悉了某个例子,就能够很好的用R语言进行线性回归建模分析? 恐怕还不能。很多人有这个体会,看书上或别人的例子很好,一到解决自己面临的实际问题,情况变化了,就不会用R语言建模了,或者老是出错找不出原因; 建模思想、统计理论是R语言背后更重要的万变不离其宗的东西(难),R语言遇到不会还可以查看帮助。使用R语言工具在编程过程中可以促进对建模思想、统计理论的深刻理解。 R语言必须在分析问题、解决问题的实际使用中去学。 下面我们用R语言一起解决一个问题: 1777年法国科学家布丰提出的一种计算圆周率的方法——随机投针法,即著名的布丰投针问题。 像投针实验一样,用通过概率实验所求的概率来估计我们感兴趣的一个量,这样的方法称为蒙特卡罗方法(Monte Carlo method),是现代计算机模拟的基础。 针与平行线相交的充要条件是什么? 前辈们采取投掷的方法,今天我们通过计算机使用R语言编程来进行模拟: 均匀分布的概率密度函数 换一个环境来进行随机投点求π值 能否从均值(期望值)的角度考虑求π值? 进行坐标变换,总可以完成下面2图的转化: 积分I|A|+cb-a, A表示阴影区域。 事实上,本着积分就是求面积的思想,结合我们之前做的Monte Carlo分析,有: b-a是底边,后面一部分是高的均值。 利用R语言,求定积分变得简单而有趣: 思考: 1. 广义积分如何用R语言Monte Carlo方法求?不依概率收敛怎么办? 2. 还可以用其它分布的密度函数代替均匀分布吗?即gx/fx中的fx只能是均匀分布吗? 3.精度问题如何用R语言来控制? 下面以随机投点法为例来回答问题3: n次实验成功的次数k服从参数为n, p的二项分布。随机变量p的估计值为问题是解决当实验次数n取多大时,下式成立? 由中心极限定理,当n→∞时,因此有: 用均值法计算的π值如何确定达到精度要求的最小实验次数? 思路同随机投点法一样,运用中心极限定理。 将p1-p用样本方差S^2来代替。 可以看出: 精度提高10倍,实验次数增加100倍; 实验次数和方差关系密切,降低方差(专门研究)是加速Monte Carlo方法收敛的主要途径。 再看一下本PPT,Page5. 演讲结束 谢谢大家 请多指教 新浪微博RGino 取一枚长为L的针随意扔到平面上,求针与平行线相交的概率。 相交的充要条件是: 实验者 年代 投掷次数 相交次数 圆周率估计值 沃尔夫 1850 5000 2531 3.1596 史密斯 1855 3204 1219 3.1554 德摩根 1680 600 383 3.137 福克斯 1884 1030 489 3.1595 拉泽里尼 1901 3408 1808 3.1415929 赖纳 1925 2520 859 3.1795 期望:a+b/2方差:b-a^2/12 对任何定积分,总可以写成: 后半部分实际上是求期望,所以积分的本质就是求均值。可以用样本均值作为期望的无偏估计。 下面用R语言编程进行Monte Carlo 模拟估计EZ:
文档评论(0)