Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 经验分位数比较效应大小_Python_Scipy_Quantile_Ecdf - Fatal编程技术网

Python 经验分位数比较效应大小

Python 经验分位数比较效应大小,python,scipy,quantile,ecdf,Python,Scipy,Quantile,Ecdf,我试图用经验数据重建以下积分: 其中F,G为CDF,其逆为分位数函数 这是我的密码: def eqces(u,v): import numpy as np import statsmodels.api as sm from scipy.stats.mstats import mquantiles ecdfu = sm.distributions.ECDF(u) ecdfv = sm.distributions.ECDF(v) p = np.co

我试图用经验数据重建以下积分:

其中F,G为CDF,其逆为分位数函数

这是我的密码:

def eqces(u,v):
    import numpy as np
    import statsmodels.api as sm
    from scipy.stats.mstats import mquantiles

    ecdfu = sm.distributions.ECDF(u)
    ecdfv = sm.distributions.ECDF(v)
    p = np.concatenate([ecdfu.y, ecdfv.y])
    p = np.unique(p) 
    p.sort()

    qfu = mquantiles(u, p)
    qfv = mquantiles(v, p)

    uvinv = ecdfu(qfv)
    vuinv = ecdfv(qfu)

    result = abs(uvinv - p) + abs(vuinv - p)
    return np.dot(result, np.ones(p.size))
有了这个,我希望
eqces(u,u)=0
对于
u=np.random.uniform(0,1,50)
,但通常情况并非如此。有人能告诉我我是否做错了什么,或者建议其他的选择吗

编辑

通过一些分析结果,此代码似乎工作得更好:

def eqces(u,v): 
    ecdfu = sm.distributions.ECDF(u)
    ecdfv = sm.distributions.ECDF(v)

    p = np.concatenate([ecdfu.y, ecdfv.y])
    X = np.concatenate([ecdfu.x, ecdfv.x])

    return 2*np.dot(np.abs(ecdfu(X)-p)+np.abs(ecdfv(X)-p), np.ones(p.size))/p.size

我的猜测是,
ECDF
mquantiles
不使用相同的打印位置

mquantiles
具有可选关键字
alphap=0.4,betap=0.4

在这种情况下,
p
uvinv
不会往返

然而,在大样本中,差异应该很小

scipy.stats.ks_2samp
也在做类似的事情,但直接使用numpy而不使用辅助函数


顺便说一句:这两个分布之间的距离度量有名称吗?

我的猜测是
ECDF
mquantiles
不使用相同的打印位置

mquantiles
具有可选关键字
alphap=0.4,betap=0.4

在这种情况下,
p
uvinv
不会往返

然而,在大样本中,差异应该很小

scipy.stats.ks_2samp
也在做类似的事情,但直接使用numpy而不使用辅助函数


顺便说一句:这两个发行版之间的距离度量值有名称吗?

你能修改你的格式吗?@tcaswell我不太确定如何在这个问题上添加latex格式。你能告诉我一些这方面的指导方针吗?我试着四处看看,但找不到如何做。所以我不会做tex标记(我知道)。我更关心的是你代码的缩进。你能修改你的格式吗?@tcaswell我不太确定如何在这个问题上添加latex格式。你能告诉我一些这方面的指导方针吗?我试着四处看看,但找不到如何做。所以我不会做tex标记(我知道)。我更关心代码的缩进。我发现它被引用为“分位数比较效应大小”,这是一个度量两个非正态、非参数(任意)分布之间的差异的指标。我发现它被引用为“分位数比较效应大小”,这是一个度量两个非正态、非参数(任意)分布之间的差异的指标分配。