全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
2354 3
2016-11-03
我想随机生成四组数,每组取4个值,每组都要求在-2.5到2.5之间取值,且要求每个组的均值为0。我写了这样的语法,但是生成的数据不能保证每组的均值为0,或接近于0。每组均值得到的结果是:1.2,-0.3,-0.5,0.05。这是什么原因?
d<-matrix(0,16,1)
d[1:4,1]<-runif(4,min=-2.5,max=2.5)
d1=ave(d[1:4,1])
d1=0
d[5:8,1]<-runif(4,min=-2.0,max=2.0)
d2=sum(d[5:8,1])/4
d2=0
d[9:12,1]<-runif(4,min=-2.0,max=2.0)
d3=sum(d[9:12,1])/4
d3=0

d[13:16,1]<-runif(4,min=-2.0,max=2.0)
d4=ave(d[13:16,1])
d4=0
print(d)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-11-4 07:56:14
抽样均值的期望值为0,不代表抽样均值一定为0,实际上,抽样均值服从正态分布(这就是大名鼎鼎的中心极限定理)。
如果一定要保证均值为0,则不是随机抽样了。但也可以达成,随机生成三个数,另外一个用均值公式倒推出来就可以了。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-5 08:22:14
因为样本太少啊,你这个均匀分布的均值的估计是需要大样本的,你取1000000个样本试试,肯定均值是0附近,最极端一点,假设你只有一个样本,你想均值为0,那么这个样本只能是0了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-7 04:28:24
同czrdiao
获取数据量较少导致的
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群