garyxu
[未知用户] 感谢你耐心解答我的问题^_^ 现在大致明白了,这里有几个参数的意义你看我理解的对不对:
1. nmax表示动画的帧数,同时也决定了样本量的数目,因为动画是从样本量为1,逐渐增加到nmax为止;
2. obs(默认值300),是样本均值的数目,或者说是对每个样本抽样了obs次,决定绘制直方图时的精细程度(但是试了下图片上没有变化)
3. 自定义函数中的n呢?和obs是什么关系?和nmax有什么关系?感觉好像n就是去了obs的值。如果我吧常熟A写成用n索引的一个数组,是不是能实现对不同分布的演示,即clt.ani(FUN = function(n) A[n]*sin(runif(n)), mean = NULL),试了下好像不行,估计这个n的意义理解的不对,或者clt.ani只能做同分布的演示
yihui
[未知用户] 1、完全正确。
2、完全正确。300已经够大了,所以你要是再增加,效果应该也差不多,但是要是减少的话,应该就能看出来直方图没那么精细了。
3、这个动画的过程是这样:对于特定样本量n,重复随机生成obs批样本,每一批样本计算一个均值,这样就出来了obs个均值,也就可以画一个直方图了。如此,逐渐增加n,也就出来一幅幅直方图。n便是样本量。如果你写A[n],那么意思是从向量A中取出第n个元素(只是一个数字),也就是随着样本量增加,sin前面的系数在向量A中向后移动。
李翛然
[未知用户] 中心极限定理是 大数定理往后的延伸,先有大数定理,才能有中心极限,不然中心极限定理的最核心的就是样本量的扩大化后,呈正态分布 ,这个就不能成立了……
yihui
[未知用户] 没看懂你的意思。中心极限定理从特征函数来,大数定律从Chebyshev不等式来,为什么说“先有大数定理,才能有中心极限”?
这个表述比较到位:
http://en.wikipedia.org/wiki/Central_limit_theorem#Relation_to_the_law_of_large_numbers
autoban
SAS的macro和R的函数在是不是文本替代的问题上其实区别不大。R的函数里面其实很大程度上也是经过parse的所谓“文本”。我觉得更大的区别在于variable scoping。SAS的macro variables有一定的规则来决定是%local的还是%global的,但是它的macro variable本质上不是data set,而它的data set是没有这种默认的scoping——如不特殊指定,一切都在work库下面。所以,写大程序的时候,数据名冲突很容易发生。R的函数则不用去分什么是数据,什么是变量,一切皆为object;除非特殊指定,几乎所有scoping都是局部的,因此,用R写函数要比用SAS安全许多。至于更细节的(enclosing) environment与evaluation frame的问题对大多数使用R的人来说,都不必了解很深就可以写出非常reliable的代码。Being functional is highly desirable to most statisticians.
Michael-michael.hsieh
你不应该死抠字眼,通常我们所说的正态分布随机数或者说我们需要的正态分布随机数都不是完全正态分布的。
真正的正态分布的随机数只会被用在理论研究和一些消耗随机数很大的项目中,大部分情况下,随机模拟需要的正态分布随机数不能是完全正态分布的,因为其中有些数据在实际生活中不会出现(实际上很少统计结果真的是正态分布的),这些数据必须被筛选掉(比如在±2σ之外的数),使用中央极限定理是一种优化,他能很好的控制随机数的范围和分布,一来产生随机数所需的计算量显著降低了,而来产生的随机数符合实际需要以至于根本不需要筛选,我们甚至可以省略变换的需要。
supercreamge
为什么有时候用hist()画出来的密度直方图的纵坐标刻度范围不是0到1???
Ihavenothing
[未知用户] 加一个参数freq = FALSE
。
yihui
[未知用户] 画密度的时候,要保证的是直方图的矩形面积加起来为1,这并不代表单个矩形的高度要小于1。如果数据的范围很小,那么相应的密度值也就要大一些。例如:
hist(runif(1000,0,.1), freq=FALSE)
换句话说,密度不是概率,没有[0, 1]的要求。
tato27
话说就没一个POSITION要求用到R和SAS的么?
截然不同的2条道路啊