前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >两个有趣的统计学问题

两个有趣的统计学问题

作者头像
jeanron100
发布2019-05-08 17:58:06
1.4K0
发布2019-05-08 17:58:06
举报

这是学习笔记的第 1913 篇文章

今天在学习统计学的时候,碰到了一个很有趣的统计学问题。这个场景是如何统计大学生中考试作弊的比例,假设样本是100个学生。

看起来这个问题很好解决,我们可以直接问这100个学生,一对一来问或者是举手来投票统计即可。 但是从一个客观的事实来说,人对于这类敏感的问题都有先天的排斥性,所以能够主动承认和反馈问题的相比会是少数。

假设做调查的人拍胸脯说会对学生的信息保密,那么从人性的角度来说,我们也不一定放心,因为我们毕竟通过一种直接的交流方式来承认了一件难以直接坦白的事情,如果真有什么其他的目的和原因,我们也无法控制。

我们把这件事情的难度升级,假设这件事情发生在一个大教室内,大家都互相认识,虽然举手表决很容易分辨出来是谁有作弊的行为,一目了然,但是我们肯定都不愿意这么做,得到的数据是严重失衡的。

怎么能够让大家不带有心理压力,同时还能够真诚的反馈这个数据呢, 我们用统计的方法来协助,我们可以把这个问题拆分为两个问题:

  1. 一个无关痛痒的问题,比如你的手机尾号是否为奇数
  2. 你大学考试的时候是否有作弊的行为

可能很多同学说,这不跟没问一样吗?

我们可以加一些策略,通过严密的统计方法来实现,我们把这个场景改进一下。现在大家需要从1和2两个数选择一个数,这个数字不能说出来,自己记在心里即可,然后下面的两个问题只需要回答一次。

我们把问题重新修正一下:

  1. 你选择的数字是否为1? 回答是或者否
  2. 你大学考试的时候是否有作弊的行为? 回答是或者否

然后我们按照这样的策略来回答,如果你选择的是1,则回答第1个问题即可,如果你选择的是2,则回答第2个问题。

按照这样的测试方案,其实大家坐在一起,无论是说是还是否,其实互相都不知道你在回答哪个问题,这是一种透明而且开放的环境,那么你说真话的概率就很大许多,没有了心理压力。

我会在最后给出答案。

第2个问题是如果一个班级里面有70个人,那么一个班级里面的学生同一天生日的概率有多大,按照我们常规的理念,可能概率很小吧,其实这个概率有99.9%以上。

我们直接用程序来做论证,年龄段的时间范围是1970-2001年,样本从9个学生到70个学生,测试测试是1万次。

# _#_ coding:utf-8 _*_

from __future__ import division

import time

import random

a1=(1970,1,1,0,0,0,0,0,0)

a2=(2000,1,1,0,0,0,0,0,0)

start=time.mktime(a1) #生成开始时间戳

end=time.mktime(a2) #生成结束时间戳

result_list = []

date_list = []

SAMPLE_START = 9

SAMPLE_MAX = 70

RUN_TIMES = 10000

for i in range(SAMPLE_START,SAMPLE_MAX+1):

SAMPLE_NO = i

for j in range(RUN_TIMES):

for k in range(SAMPLE_NO):

t=random.randint(start,end)

date_touple=time.localtime(t)

rand_date=time.strftime("%m-%d",date_touple)

date_list.append(rand_date)

if len(set(date_list)) < len(date_list):

result_list.append(1)

date_list = []

print SAMPLE_NO,round(len(result_list)/RUN_TIMES,4)

result_list=[]

运行结果如下:

9 0.3127

10 0.3384

11 0.3697

12 0.4

13 0.4299

14 0.4478

15 0.4738

16 0.5006

17 0.5213

18 0.5466

19 0.567

20 0.5823

21 0.6037

22 0.6269

23 0.6465

24 0.6639

25 0.6879

26 0.7011

27 0.7195

28 0.737

29 0.7537

30 0.7666

31 0.7857

32 0.7966

33 0.8185

34 0.8303

35 0.8401

36 0.8548

37 0.8713

38 0.881

39 0.8904

40 0.9068

41 0.9049

42 0.9211

43 0.9341

44 0.935

45 0.9436

46 0.9524

47 0.9548

48 0.9643

49 0.9661

50 0.9711

51 0.9763

52 0.9776

53 0.9822

54 0.9847

55 0.9859

56 0.9878

57 0.9891

58 0.9933

59 0.9932

60 0.9935

61 0.9943

62 0.9958

63 0.9962

64 0.9978

65 0.9979

66 0.9988

67 0.9985

68 0.9987

69 0.9986

70 0.9993

把这个结果用图表来表示,就是如下的形式了。

然后对第一个问题做下解释,如果200个学生,有70个人说是,那么作弊的概率就是 (70-(200/4))/(200/2)=20%

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 杨建荣的学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档