比较两个N维数组

4 投票
1 回答
1211 浏览
提问于 2025-04-17 22:01

我有两组N维数组,我需要比较它们,找出一个值来表示它们有多“相似”。从统计学的角度来看,这其实是一个两样本拟合优度的问题,假设这两个数组是来自同一个母体分布。

为了简单起见,想象一下下面这样的二维数组:

enter image description here

我需要给出一个数字,来量化它们的“相似性”。

有没有什么python的库可以提供这样的统计测试?我可以使用numpyscipyscikit-learn等。


补充

我找到一个scipy的库,似乎可以满足我的需求,但它只适用于一维数组:scipy.stats.ks_2samp。而R统计软件有一个ks包,里面有kde.test函数。这个函数可以满足我的需求,但我希望能找到一个python的实现。

1 个回答

1

既然你知道有一个R语言的包可以解决你的问题,那你可以考虑从Python调用R语言。rpy2这个包可以让你在Python和R之间进行沟通,详细信息可以查看这个链接:https://pypi.python.org/pypi/rpy2/。如果你在使用IPython的话,还可以通过rmagic来进行互动操作,具体可以参考这个链接:http://ipython.org/ipython-doc/dev/config/extensions/rmagic.html。另外,pandas中也有一些实验性的rpy2支持,更多信息可以查看这里:http://pandas.pydata.org/pandas-docs/dev/r_interface.html

撰写回答