知识库 > 数学方法

统计分布    

  •     介绍统计各种分布函数前,我们先简单的介绍下概率论理论下常使用的几个函数:
        1、perms
        列出样本的所有排列次序或者排列次序的种类
        

        perms (array(‘a’,’b’,’c’,’d’));//返回‘a’,’b’,’c’,’d’的各种排列方式
        perms(5);//计算 5个样品的排列种类数目
        

        2、Nchoosek
        Nchoosek 列出抽样的各种情况或者抽样的种类数目
        

        Nchoosek (array(‘a’,’b’,’c’,’d’),2);
        //返回‘a’,’b’,’c’,’d’中抽取2个样本的所有组合
        Nchoosek (5,3);//计算 5个样品中抽出3个样品的组合数目
        

        3、gamma
        Gamma函数,使用gamma函数可以计算阶乘:
        

        Return gamma(5); //计算的是5-1的阶乘
        

        TinySoft金融分析平台上提供了有关统计分布的函数:概率密度,(累计)分布函数,分位数函数(分布逆函数),随机数函数,估计函数。主要函数都罗列在下表中.
    概率密度分布函数分布逆函数随机数估计函数
    离散均匀分布sf_unidpdfsf_unidcdfsf_unidinvrandunid
    几何分布sf_geopdfsf_geocdfsf_geoinvRandgeo
    超几何分布sf_hygepdfsf_hygecdfsf_hygeinvRandhyge
    二项分布sf_binopdfsf_binocdfsf_binoinvRandbinobinofit
    负二项分布sf_nbinpdfsf_nbincdfsf_nbininvRandnbin
    均匀分布sf_unifpdfsf_unifcdfsf_unifinvRandunifuniffit
    泊松分布sf_poissonpdfsf_poissoncdfsf_poissoninvRandpoissonpoissfit
    指数分布sf_exppdfsf_expcdfsf_expinvRandexpexpfit
    正态分布sf_normpdfsf_normcdfsf_norminvRandnorm
    卡方分布sf_ch2pdfsf_ch2cdfsf_ch2invRandch2
    学生T分布sf_tpdfsf_tcdfsf_tinv1Randt
    F分布sf_fpdfsf_fcdfsf_finv1Randf
    gam分布sf_gampdfsf_gamcdfsf_gaminvRandgam
    beta分布sf_betapdfsf_betacdfsf_betainv1Randbeta
    瑞利分布sf_raylpdfsf_raylcdfsf_raylinv1Randrayl1
    威布尔分布sf_wblpdfsf_wblcdfsf_wblinvRandwbl
    对数正态分布sf_lognpdfsf_logncdfsf_logninvRandlohn
    拉普拉斯分布sf_Laplacepdfsf_Laplacecdfsf_LaplaceinvRandLaplace
    柯西分布sf_ Cauchypdfsf_ Cauchycdfsf_ CauchyinvRandCauchy

        函数命名规则:
        
        我们的概率分布函数(包括概率密度函数,分布函数,分布逆函数)输入的第一个变量参数是随机变量或分布函数值,都支持数组形式,中间的参数,一般为分布参数,参数个数不定,只支持符合要求的实数和整数类型.最后一个参数存在的主要原因是为了支持tinysoft金融分析平台以前的使用方法,该参数可缺省,而使用return输出结果,输出结果和第一个参数的维度是一样的.
        生成随机数的函数名称一般使用rand+分布类型(分布参数+行数目+列数目).
        如:
        

        return randrayl(5,array('a','b','c'));
        return randrayl(5,array('a','b','c','d','e','f'),4);
        return randrayl(5,4,array('a'));
        

               
        或使用rand函数:
        

        A := rand(100,100,array("normal"));    //标准正态分布
        a := rand(100,100,array("normal",0,1));   //标准正态分布
        

        支持如下类型(大小写无关):正态分布"normal",泊松分布"posisson",伽马分布"Gamma",均匀分布"Uniform",二项分布"Binomial",几何分布"Geometric",指数分布"Exp",beta分布"Beta",对数正态分布"Lognormal",威布尔分布"Weibull",柯西"Cauchy",拉普拉斯"Laplace",超几何"Hypergeometric",离散均匀"IntUniform",瑞利分布"Rayleigh"  
        估计函数的函数名称一般使用分布类型+fit(数据+显著性水平)如
        return normfit(rand(1000,5),0.05);
        结果以列为样本进行估计,muhat,muci为正态分布位置参数的点估计,区间估计,sigmahat,sigmaci为正态分布形态参数的点估计,区间估计.其中每一个样本区间的区间估计中含有两个值,upper是上限,lower是下限. 
        
内容