首页 > 解决方案 > Python(或R)中连续分布的总变异距离

问题描述

我想计算两个连续概率分布之间的总变异距离(TVD)。我想指出,虽然有两个相关问题(参见此处此处),但它们都在处理离散分布。

对于那些不熟悉 TVD 的人,

非正式地,这是两个概率分布可以分配给同一事件的概率之间的最大可能差异。

正如相应的Wikipedia 页面中所描述的那样。在连续分布的情况下,TVD 等于两者之间绝对差的积分的一半(因为我无法添加数学符号,请参见此作为证明和符号)。

到目前为止,我还没有找到适合我在 Python 中工作的工具。如果存在,我会对此感兴趣。另外,虽然我在 R 方面没有经验,但我知道它通常用于此类任务,所以我也会对其中一个感兴趣(TVD 计算是我算法的最后一步,所以我想阅读一些内容并不难来自文件的数据,进行计算并打印一个数字,即使我对 R 完全陌生)。

我想补充一点,我主要对正态分布感兴趣,所以一个严格用于这些的工具是非常受欢迎的。

如果不存在这样的工具,那么任何帮助调整这个问题的答案以使用内置概率函数也将有很大帮助。

先感谢您。

标签: pythonrstatisticsprobabilityprobability-distribution

解决方案


推荐阅读