scipy.stats —— 概率、随机变量与分布

import numpy as np
import scipy.stats as st
  • 1
  • 2
  • 几率(odds)

    p(B)=120:二十场比赛只赢一场
    odds against B winning: o(B)=1p(B)p(B)=19
    A赢19场比赛,B才会赢一场

1. 创建随机变量(rv:random variable)

  • 泊松分布

    F_true = 1000
    N = 50
    F = st.poisson(F_true).rvs(N)
                    # 泊松分布为离散型概率分布
    • 1
    • 2
    • 3
    • 4

    也可以这样:

    mu_true, sigma_true = 1000, 15
    N = 100
    F_true = st.norm(mu_true, sigma_true).rvs(N)
    F = st.poisson(F_true).rvs()
    • 1
    • 2
    • 3
    • 4
  • 二项分布

    
    # python
    
    >>> import scipy.stats as st
    >>> n, p = 100, .5
    >>> X = st.binom(n, p)
                            # 随机变量X:投100次硬币正面出现的个数
                            # 用二项分布表示
    >>> X.mean()
    50.0                        # mu = n*p = 100*.5 
    >>> X.std()
    5.0                         # sigma = sqrt(n*p*q)=sqrt(100*.5*.5)
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    st.binom(100, .5).rvs() ⇒ 采样(trial);

2. 连续性概率分布函数:pdf

pdf 表示的是函数,给一定输入值,就会得到一个输出值,而不是随机变量。

  • st.norm.pdf(0, loc=0, scale=1) ⇒ 12π

    如下代码绘制出 f(x)=12πexp((x1)22)

    mu, sigma = 1, 1
    xs = np.linspace(-5, 5, 1000)
    plt.plot(x, st.norm.pdf(xs, loc=mu, scale=sigma))
    plt.show()
    • 1
    • 2
    • 3
    • 4
  • st.multivariate_normal:多元正态分布;
    scipy.stats.multivariate_normal

    • 直接传递x,根据概率密度函数(pdf)获得其值;
    x = np.linspace(0, 5, 10, endpoint=False)
    y = st.multivariate_normal.pdf(x, mean=2.5, cov=.5)
    • 1
    • 2
    • 首先定义随机变量,再取得 pdf 在各个位置上的值;
    x, y = np.mgrid[-1:1:.01, -1:1:.01]
    pos = np.empty(x.shape + (2,))
    pos[:, :, 0] = x; pos[:, :, 1] = y
    rv = multivariate_normal([0, 0], [[1, 0], [0, 1]])
    plt.contourf(x, y, rv.pdf(pos))

http://blog.csdn.net/lanchunhui/article/details/50357280

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值