请高手们帮我用MATLAB程序实现求概率问题
请高手们帮我用MATLAB程序实现下面这个概率式:在70个球中随机抽取,求出第n+1次,抽到第i个球的概率,给出概率式为:p(n+1,i)=p(n,i)+u(n+1)(d...
请高手们帮我用MATLAB程序实现下面这个概率式:在70个球中随机抽取,求出第n+1次,抽到第i个球的概率,给出概率式为:p(n+1,i)=p(n,i)+u(n+1)(d(n+1,i)-p(n,i)),其中n是抽取次数,p(n+1,i)是第n+1次抽到第i个球的概率,u(n+1)=1/(n+1),d(n+1,i)是70行1列的矢量,第i个位置是1,其他位置都是0。谢谢啦
这个抽取是不放回抽取,忘了说初始化条件:初始化第0次抽到第0个球,(数组好像以1开始吧),这里p,d都应该是矩阵,p是70行1列,每一列代表一个球的概率。wanglyee朋友的答案好像有误,你那d好像不能变啊,以3个球抽5次为例,算第一次第一个球被抽中时,d(1,1)应该是(1,0,0),第一次抽中第2个球时,d(1,2)=(0,1,0),第一次第3个球被抽中时,d(1,3)=(0,0,1),第2次也是这样变换。 展开
这个抽取是不放回抽取,忘了说初始化条件:初始化第0次抽到第0个球,(数组好像以1开始吧),这里p,d都应该是矩阵,p是70行1列,每一列代表一个球的概率。wanglyee朋友的答案好像有误,你那d好像不能变啊,以3个球抽5次为例,算第一次第一个球被抽中时,d(1,1)应该是(1,0,0),第一次抽中第2个球时,d(1,2)=(0,1,0),第一次第3个球被抽中时,d(1,3)=(0,0,1),第2次也是这样变换。 展开
展开全部
对哈,你是不放回,还是放回的呀,如果是非放回的是可以算的。假设每次取都是次数与d(n+1)的行数相等,即第n次总是取第n行的球,只要i不停的在d数组中变动,还是能满足楼主的条件的:
p=sym(zeros(70,1))
p(1)=1/70
d=sym(zeros(70,1))
d(50)=1
for n=[1:69]
p(n+1)=p(n)+1/(n+1)*[d(n+1)-p(n)]
end
我不知道你算的是什么概率,不过这个概率和不为1,原因很简单,因为
d(n+1)-p(n)很多情况下是负数,所以p(n+1)很多情况下是小于p(n)的,除非取到第i球(我设置i=50,直接写i不能非常难讨论了)时d(n+1)-p(n)才是正值,p(n+1)大于p(n)。
也可能是我理解楼主的问题不到位,忘各位不吝赐教!答案如下: 1/70
1/70
1/140
1/210
1/280
1/350
1/420
1/490
1/560
1/630
1/700
1/770
1/840
1/910
1/980
1/1050
1/1120
1/1190
1/1260
1/1330
1/1400
1/1470
1/1540
1/1610
1/1680
1/1750
1/1820
1/1890
1/1960
1/2030
1/2100
1/2170
1/2240
1/2310
1/2380
1/2450
1/2520
1/2590
1/2660
1/2730
1/2800
1/2870
1/2940
1/3010
1/3080
1/3150
1/3220
1/3290
1/3360
1/3430
71/3500 第五十行
71/3570
71/3640
71/3710
71/3780
71/3850
71/3920
71/3990
71/4060
71/4130
71/4200
71/4270
71/4340
71/4410
71/4480
71/4550
71/4620
71/4690
71/4760
71/4830
71/4900由此可见p(n)=1/n*70(n<i)时,p(n)=71/n*70(n>=i)时
p=sym(zeros(70,1))
p(1)=1/70
d=sym(zeros(70,1))
d(50)=1
for n=[1:69]
p(n+1)=p(n)+1/(n+1)*[d(n+1)-p(n)]
end
我不知道你算的是什么概率,不过这个概率和不为1,原因很简单,因为
d(n+1)-p(n)很多情况下是负数,所以p(n+1)很多情况下是小于p(n)的,除非取到第i球(我设置i=50,直接写i不能非常难讨论了)时d(n+1)-p(n)才是正值,p(n+1)大于p(n)。
也可能是我理解楼主的问题不到位,忘各位不吝赐教!答案如下: 1/70
1/70
1/140
1/210
1/280
1/350
1/420
1/490
1/560
1/630
1/700
1/770
1/840
1/910
1/980
1/1050
1/1120
1/1190
1/1260
1/1330
1/1400
1/1470
1/1540
1/1610
1/1680
1/1750
1/1820
1/1890
1/1960
1/2030
1/2100
1/2170
1/2240
1/2310
1/2380
1/2450
1/2520
1/2590
1/2660
1/2730
1/2800
1/2870
1/2940
1/3010
1/3080
1/3150
1/3220
1/3290
1/3360
1/3430
71/3500 第五十行
71/3570
71/3640
71/3710
71/3780
71/3850
71/3920
71/3990
71/4060
71/4130
71/4200
71/4270
71/4340
71/4410
71/4480
71/4550
71/4620
71/4690
71/4760
71/4830
71/4900由此可见p(n)=1/n*70(n<i)时,p(n)=71/n*70(n>=i)时
参考资料: matlab应用
展开全部
很简单,将以下语句粘贴到一个新建的MATLAB函数文件里并取名为rgb2gray2.m(缺省即是如此)
function J = rgb2gray2(I)
J = 0.29894 * I(:,:,1) + 0.58704 * I(:,:,2) + 0.11402 * I(:,:,3);
接下来读入一幅RGB图像到矩阵I中后调用J = rgb2gray2(I)即可,J就是转换后的灰度图像矩阵。
需要注意的是,自编函数未考虑太多情况,因此输入必须是RGB图像的矩阵(可用imshow()函数读取
自硬盘里的照片),如果原本就是灰度图像或其它非法输入的话将会报错。
function J = rgb2gray2(I)
J = 0.29894 * I(:,:,1) + 0.58704 * I(:,:,2) + 0.11402 * I(:,:,3);
接下来读入一幅RGB图像到矩阵I中后调用J = rgb2gray2(I)即可,J就是转换后的灰度图像矩阵。
需要注意的是,自编函数未考虑太多情况,因此输入必须是RGB图像的矩阵(可用imshow()函数读取
自硬盘里的照片),如果原本就是灰度图像或其它非法输入的话将会报错。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
抽签不是与顺序没有关系吗?第N+1次抽取到第I个球的概率应该为70分之1。
好象不需要用MATLAB来算。
不大懂:也许你仅要一个MATLAB程序,而不是算一个数学问题?
好象不需要用MATLAB来算。
不大懂:也许你仅要一个MATLAB程序,而不是算一个数学问题?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询