基本概念: 均值,期望,中位数,众数,极差,总体方差,样本方差,协方差

# --*-- coding:utf-8 --*--
import math
import itertools

def Mean(t):
    """均值"""
    return float(sum(t)) / len(t)

def E(x, p):
    """
    离散性随即变量的数学期望(也称为均值): 随机变量X与其概率P乘积的和
    """
    return sum([x[i] * p[i] for i in range(len(x))])

def Median(t):
    """中位数"""
    arr = sorted(t)
    idx = (len(arr) - 1) / 2
    if type(idx) is int:
        return arr[idx]
    if type(idx) is float:
        return Mean(arr[int(math.floor(idx)):int(math.ceil(idx)) + 1])

def Mode(t):
    """众数"""
    if not t:
        return None
    arr = __getfreq(t)
    if arr[0][0] == 1:
        return None
    else:
        for k, g in itertools.groupby(arr, key=lambda x: x[0]):
            return [t[1] for t in g]

def __getfreq(t):
    """获取t中每个值及其出现次数"""
    arr = sorted(t)
    alist = []
    for k, g in itertools.groupby(arr):
        alist.append((len(list(g)), k))
    alist.sort(key=lambda x: x[0], reverse=True)
    return alist

def Var(t, mu=None):
    """方差"""
    if mu is None:
        mu = Mean(t)

    # compute the squared deviations and return their mean.
    dev2 = [(x - mu)**2 for x in t]
    var = Mean(dev2)
    return var

def D(x, p):
    """
    离散性随机变量的方差: ((X与X的期望(均值)的差值)的平方)的期望(均值)
    """
    # 由定义计算_0
    # e = E(x, p)
    # return sum([(x[i] - e) ** 2 * p[i] for i in range(len(x))])

    # 由定义计算_1,构造新的随机变量Y
    # e = E(x, p)
    # y = [(x[i] - e) ** 2 for i in range(len(x))]
    # return E(y, p)

    # 由简化公式计算
    e = E(x, p)
    e_1 = E([x[i] ** 2 for i in range(len(x))], p)
    return e_1 - e ** 2

def SVar(t):
    """样本方差"""
    if not t:
        return None
    mu = Mean(t)
    return sum([(x - mu) ** 2 for x in t]) / (len(t) - 1)

def MeanVar(t):
    """均值和方差"""
    mu = Mean(t)
    var = Var(t, mu)
    return mu, var

def StdVar(t, mu=None):
    """标准差"""
    if mu is None:
        mu = Mean(t)
    import math
    return math.sqrt(Var(t, mu))

def Range(t):
    """极差"""
    if not t:
        return None
    return max(t) - min(t)

def Cov(X, Y):
    """
    协方差
    X与Y的对应离均差(x-mu)的乘积的均值
    功能:
    如果离均差变化方向一致,则正负号相同,乘积为正数
    缺陷:
    X Y 例如是身高和体重, cm * kg 没有意义,所以一般用标准分数来解决
    详见相关系数 ==> def pearson_correlation(X, Y): 标准分数单位为1,均值为0,方差为1
    相关系数的单位为1,相比于协方差的单位更好理解
    """
    mu_x = Mean(X)
    mu_y = Mean(Y)
    # 计算离均差:如果X Y的变化方向一致,那么X,Y的离均差应该有相同的正负号
    # d_x = [x - mu_x for x in X]
    # d_y = [y - mu_y for y in Y]
    # # 离均差的均值 ==> 协方差
    # return Mean([d_x[i] * d_y[i] for i in range(len(X))])

    total = 0.0
    for x, y in zip(X, Y):
        total += (x-mu_x) * (y-mu_y)
    return total / len(X)

def standardsocre(x, mu, sigma):
    """
    标准分数
    x-mu ==> 离差:x与均值的差
    x-mu / sigma 实现归一化
    功能:转换后的标准化变量Z的单位为 1 , 均值为0, 方差为 1
    """
    return (x - mu) / sigma

def pearson_correlation(X, Y):
    """
    相关系数:
    将协方差中的X,Y 转化为标准分数,标准分数的乘积的均值即为相关系数
    (x-mu)/ sigma 实现了 归一化
    相关系数的单位为1,相比于协方差的单位更好理解
    协方差为1,二者完全相关,知道其中的一个值,可以准确预测另外一个值
    协方差为-1,而这完全负相关
    """
    # 计算均值(期望)
    mu_x = Mean(X)
    mu_y = Mean(Y)
    # 计算标准差
    sigma_x = StdVar(X)
    sigma_y = StdVar(Y)
    # 标准分数的均值即为:相关系数
    p = [standardsocre(X[i], mu_x, sigma_x) * standardsocre(Y[i], mu_y, sigma_y) for i in range(len(X))]
    return Mean(p)

    # 采用简易公式计算相关系数
    # sigma_x = stdvar(X)
    # sigma_y = stdvar(Y)
    # return Cov(X, Y) / (sigma_x * sigma_y)

    #相关系数=X,Y的协方差除以X的标准差*Y的标准差
    # xbar, varx = MeanVar(X)
    # ybar, vary = MeanVar(Y)
    # corr = Cov(xs, ys) / math.sqrt(varx * vary)
    # return corr

if __name__ == ‘__main__‘:
    astr = ‘93 62 51 93 75 82 93 62 65 51‘
    alist = [int(e) for e in astr.split()]
    print ‘均值:‘, Mean(alist)
    print ‘中位数:‘, Median(alist)
    print ‘众数:‘, Mode(alist)

    print ‘极差:‘, Range(alist)
    print ‘总体方差:‘, Var(alist)
    print ‘样本方差‘, SVar(alist)
    print ‘标准差:‘, StdVar(alist)

    print ‘验证协方差 Cov(X, X) == Var(X)‘
    print Cov(alist, alist)
    print Var(alist)
    print ‘协方差与方差相等,说明公式编写的函数是正确的‘

基本概念: 均值,期望,中位数,众数,极差,总体方差,样本方差,协方差

时间: 2024-10-13 00:38:33

基本概念: 均值,期望,中位数,众数,极差,总体方差,样本方差,协方差的相关文章

描述统计学:极差、方差、标准差

变异程度的度量(离散程度的度量) 交货时间的变异性造成按时完成生产任务的不确定性 极差 极差=最大值-最小值 最简单的变异程度的度量 但很少单独用来度量变异程度.仅有两个观测值,异受极端值的影响 四分位数间距 能够克服极端值的影响,因为四分位数是中间的50%数据的极差. 方差 是用所有数据对变异程度所做的一种度量. 对于样本平均数的离差= 对于总体平均数的离差= 总体方差 样本方差 样本方差是总体方差的点估计,平均数的离差之和永远为0. 例子: 第一组的鸡的斤数分别是 2.5,3,3.5 第二组

方差、协方差、协方差矩阵的概念及意义

期望 离散型随机变量的一切可能的取值xi与对应的概率Pi(=xi)之积的和称为该离散型随机变量的数学期望(设级数绝对收敛),记为 E(x).随机变量最基本的数学特征之一.它反映随机变量平均取值的大小.又称期望或均值. 若随机变量X的分布函数F(x)可表示成一个非负可积函数f(x)的积分,则称X为连续性随机变量,f(x)称为X的概率密度函数(分布密度函数). 方差 方差是各个数据与平均数之差的平方的平均数.在概率论和数理统计中,方差(英文Variance)用来度量随机变量和其数学期望(即均值)之间

均值、方差、协方差等定义与基本运算

一.均值 定义: 设P(x)是一个离散概率分布函数自变量的取值范围是.那么其均值被定义为: 设P(x)是一个连续概率分布函数 ,那么他的均值是: 性质: 1.线性运算: 期望服从先行性质,因此线性运算的期望等于期望的线性运算: 我们可以把它推广到任意一般情况: 2.函数的期望: 设f(x)是x的函数,则f(x)的期望为: 离散: 连续: 3.乘积的期望: 一般来说,乘积的期望不等于期望的乘积,除非变量相互独立.因此,如果x和y相互独立,则 期望的运算构成了统计量的运算基础,因为方差.协方差等统计

极差,方差,标准差

def Var(t, mu=None): """方差""" if mu is None: mu = Mean(t) # compute the squared deviations and return their mean. dev2 = [(x - mu)**2 for x in t] var = Mean(dev2) return var def StdVar(t, mu=None): """标准差"

均值、方差、协方差、协方差矩阵、特征值、特征向量

均值:描述的是样本集合的中间点. 方差:描述的是样本集合的各个样本点到均值的距离之平均,一般是用来描述一维数据的. 协方差: 是一种用来度量两个随机变量关系的统计量. 只能处理二维问题. 计算协方差需要计算均值. 如下式: 方差与协方差的关系 协方差矩阵: 协方差矩阵能处理多维问题: 协方差矩阵是一个对称的矩阵,而且对角线是各个维度上的方差. 协方差矩阵计算的是不同维度之间的协方差,而不是不同样本之间的. 样本矩阵中若每行是一个样本,则每列为一个维度,所以计算协方差时要按列计算均值. 如果数据是

估计量|估计值|置信度|置信水平|非正态的小样本|t分布|大样本抽样分布|总体方差|

5 估计量和估计值是什么? 估计量不是估计出来的量,是用于估计的量. 估计量:用于估计总体参数的随机变量,一般为样本统计量.如样本均值.样本比例.样本方差等.例如:样本均值就是总体均值的一个估计量. 估计值就是估计出来的数值. 可以在点估计上使用样本方差估计总体方差吗? 可以,是无偏的. 置信度与置信水平的关系? 置信度是0.05,置信水平是0.95 来自非正态的小样本如何处理? 按照样本原生分布处理 两总体均值之差两种方差情况下的自由度? 使用t分布的动机是什么? 抽样分布正态,但是总体方差未

平均数 中位数 众数的实际意义

平均数:反映了一组数据的平均大小,常用来一代表数据的总体 "平均水平". 中位数:像一条分界线,将数据分成前半部分和后半部分,因此用来代表一组数据的"一般水平". 众数:反映了出现次数最多的数据,用来代表一组数据的"多数水平". 平均数:与每一个数据都有关,其中任何数据的变动都会相应引起平均数的变动.主要缺点是易受极端值的影响,这里的极端值是指偏大或偏小数,当出现偏大数时,平均数将会被抬高,当出现偏小数时,平均数会降低. 中位数:与数据的排列位置

数学概念——E 期望(经典问题)

E - 期望(经典问题) Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%lld & %llu Submit Status Description Given a dice with n sides, you have to find the expected number of times you have to throw that dice to see all its faces at least once.

Mathematics Base - 期望、方差、协方差、相关系数总结

参考:<深度学习500问> 期望 ?在概率论和统计学中,数学期望(或均值,亦简称期望)是试验中每次可能结果的概率乘以其结果的总和.它反映随机变量平均取值的大小. 线性运算: \(E(ax+by+c) = aE(x)+bE(y)+c\) ?推广形式: \(E(\sum_{k=1}^{n}{a_ix_i+c}) = \sum_{k=1}^{n}{a_iE(x_i)+c}\) 函数期望:设\(f(x)\)为\(x\)的函数,则\(f(x)\)的期望为 离散函数: \(E(f(x))=\sum_{k=