excel随机抽样问题 就是现在有八个同学的成绩,抽取其中三个,列出放回和不放回抽样的所有可能性.
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/19 07:38:43
excel随机抽样问题 就是现在有八个同学的成绩,抽取其中三个,列出放回和不放回抽样的所有可能性.
要用Excel来做,列出所有抽取的样本啊,什么方法都试过了都没用.
八个同学成绩如下:65、72、77、83、85、88、94、97
要用Excel来做,列出所有抽取的样本啊,什么方法都试过了都没用.
八个同学成绩如下:65、72、77、83、85、88、94、97
抽样放不放回去都是56组. Sub 抽样()Dim Yb(1 To 10000, 1 To 10), Bh(1 To 10, 1 To 10), Gd(1 To 3), A, N, M, X
Range(Cells(2, 4), Cells(60000, 7)) = ""
For i = 1 To 8
Bh(i, 1) = i
Bh(i, 2) = Cells(i + 1, 2)
Bh(i, 3) = "N"
Next
For i = 1 To 8000
X = 0
For j = 1 To 3
line1:
A = Int(Rnd() * 8 + 1)
For k = 1 To 8
If Bh(k, 1) = A And Bh(k, 3) = "Y" Then GoTo line1
If Bh(k, 1) = A And Bh(k, 3) = "N" Then
Bh(k, 3) = "Y"
X = X + 1
If X = 3 Then N = N + 1
Gd(X) = Bh(k, 2)
Exit For
End If
Next
Next
'写入抽样样本
If X = 3 Then
M = M + 1
For j = 1 To 3
Yb(N, j) = Gd(j)
Gd(j) = ""
Next
'样本排序
For j = 1 To 2
For k = j + 1 To 3
If Yb(N, k) < Yb(N, j) Then
Ty = Yb(N, j): Yb(N, j) = Yb(N, k): Yb(N, k) = Ty
End If
Next
Next
Yb(N, 4) = Yb(N, 1) * 10000 + Yb(N, 2) * 100 + Yb(N, 3)
'
B = 2
If M = B Then
M = 0
For k = 1 To 8
Bh(k, 3) = "N"
Next
End If
End If
Next
'样本组合排序
For i = 1 To N - 1
For j = i + 1 To N
If Yb(j, 4) < Yb(i, 4) Then
Ty = Yb(i, 4): Yb(i, 4) = Yb(j, 4): Yb(j, 4) = Ty
For k = 1 To 3
Ty = Yb(i, k): Yb(i, k) = Yb(j, k): Yb(j, k) = Ty
Next
End If
Next
Next
'删除重复样本
For i = 1 To N - 1
If Yb(i, 5) <> "×" Then
For j = i + 1 To N
If Yb(j, 4) = Yb(i, 4) Then Yb(j, 5) = "×"
Next
End If
Next
M = 0
For i = 1 To N
If Yb(i, 5) = "" Then
M = M + 1
For j = 1 To 3
Yb(M, j) = Yb(i, j)
Next
End If
Next
For i = 1 To M
For j = 1 To 3
Cells(i + 1, j + 3) = Yb(i, j)
Next
Next
End Sub
再问: 哇~~好厉害~~其实我是文科小白一枚。。。。我还以为写一个函数就可以了,没想到要写程序啊。。。不过你好厉害,赞赞。(不知道有没有简单点的解法呢。。。。)
Range(Cells(2, 4), Cells(60000, 7)) = ""
For i = 1 To 8
Bh(i, 1) = i
Bh(i, 2) = Cells(i + 1, 2)
Bh(i, 3) = "N"
Next
For i = 1 To 8000
X = 0
For j = 1 To 3
line1:
A = Int(Rnd() * 8 + 1)
For k = 1 To 8
If Bh(k, 1) = A And Bh(k, 3) = "Y" Then GoTo line1
If Bh(k, 1) = A And Bh(k, 3) = "N" Then
Bh(k, 3) = "Y"
X = X + 1
If X = 3 Then N = N + 1
Gd(X) = Bh(k, 2)
Exit For
End If
Next
Next
'写入抽样样本
If X = 3 Then
M = M + 1
For j = 1 To 3
Yb(N, j) = Gd(j)
Gd(j) = ""
Next
'样本排序
For j = 1 To 2
For k = j + 1 To 3
If Yb(N, k) < Yb(N, j) Then
Ty = Yb(N, j): Yb(N, j) = Yb(N, k): Yb(N, k) = Ty
End If
Next
Next
Yb(N, 4) = Yb(N, 1) * 10000 + Yb(N, 2) * 100 + Yb(N, 3)
'
B = 2
If M = B Then
M = 0
For k = 1 To 8
Bh(k, 3) = "N"
Next
End If
End If
Next
'样本组合排序
For i = 1 To N - 1
For j = i + 1 To N
If Yb(j, 4) < Yb(i, 4) Then
Ty = Yb(i, 4): Yb(i, 4) = Yb(j, 4): Yb(j, 4) = Ty
For k = 1 To 3
Ty = Yb(i, k): Yb(i, k) = Yb(j, k): Yb(j, k) = Ty
Next
End If
Next
Next
'删除重复样本
For i = 1 To N - 1
If Yb(i, 5) <> "×" Then
For j = i + 1 To N
If Yb(j, 4) = Yb(i, 4) Then Yb(j, 5) = "×"
Next
End If
Next
M = 0
For i = 1 To N
If Yb(i, 5) = "" Then
M = M + 1
For j = 1 To 3
Yb(M, j) = Yb(i, j)
Next
End If
Next
For i = 1 To M
For j = 1 To 3
Cells(i + 1, j + 3) = Yb(i, j)
Next
Next
End Sub
再问: 哇~~好厉害~~其实我是文科小白一枚。。。。我还以为写一个函数就可以了,没想到要写程序啊。。。不过你好厉害,赞赞。(不知道有没有简单点的解法呢。。。。)
随机抽样为什么抽取后不放回?
不放回抽样 和放回抽样有何区别?为什么不放回逐个抽样的每个个体概率相等?
概率论 不放回抽样的问题
关于随机抽样随机抽样放回和不放回地抽,每次概率有什么不同么?
有关放回式抽取和不放回抽取的问题
袋中有5只白球,6只黑球,随机的取3次,求顺序为黑白的概率(分放回抽样和不放回抽样两种情况)
什么条件下放回抽样和不放回抽样概率相等
8.袋中有5只白球,6只黑球,随机地取三次,求顺序为黑白黑的概率(分放回抽样和不放回抽样两种情况).35.某工厂有三台机
求古典概率问题第一问的答案看不懂,明明是不放回抽样,前面抽取的情况应该影响第三次的抽样啊!求老师解惑...
已知一批产品共20个,其中有4个次品,1.不放回抽样,抽取6个产品,求样品中次品数的概率分布 2
袋中装有5个红球和3个白球,从中依次取出5个,分别按不放回抽样和又放回抽样计算最后一次取到红球的概率.
简单随机抽样为什么不用放回抽样