机器学习2-中心极限定理及代码实现

本文通过抛掷骰子实验,直观展示中心极限定理的应用。实验以Python编程,模拟大量三次点数相加的随机事件,揭示其分布逼近正态分布的特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

中心极限定理定义

中心极限定理一般在同分布情况下,抽样样本值的规范和在总体数量趋于无穷时的极限分布近似于正态分布。

题目介绍

随机的抛六面的骰子,计算三次的点数的和,三次点数的和其实是一个事件A,问事件A发生的概率以及事件A所属的分布是什么?

代码实现

import random
import numpy as np
import matplotlib.pyplot as plt
#random.seed(2)
def get_random_value(b,a=1):           #产生一个指定范围的随机数
    return random.randint(a,b)

def get_A_value():                     #获取三次随机数加和
    return np.sum([get_random_value(6) for i in range(3)])

len = 200

if __name__ == '__main__':
    values = [get_A_value() for i in range(len)]  
    									#len次加和序列
    distri = {}							#最终分布统计  加和值:次数
    y = []                              #y序列,将字典转成列表便于显示
    x = [i for i in range(3,18+1)]      #x序列
    for key in values:					#遍历加和序列转成字典 加和值:次数 的形式		
        if key in distri:
            distri[key]+=1
        else:
            distri[key] = 1

    y = [distri[i] for i in range(3,19)]
    print(type(x), type(y))
    plt.plot(x,y)
    plt.xlim(0,19)
    plt.grid(True)
    plt.show()

效果截图

len=500
len=500
len = 1000
len = 1000
len = 10000
len = 10000
len = 100000
len = 100000
len = 1000000
len = 1000000

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值