1

我有一个数据库,其中包含我运行的许多模型的结果。我需要计算每个模型的 chi^2 值。我正在使用 python 和 psycopg2包来连接我的 PostgreSQL 数据库。我可以想到两种方法来做到这一点,我不确定哪个更快,或者是否有区别。

方法1:从我的数据库中选择每个模型对应的行,然后在python中进行chi^2计算。每个模型都有大约 500-1000 行与之相关联,我必须读取这些行,并且有 20,000 个模型。

方法2:编写一个SQL函数,计算数据库本身的chi^2,然后为每个模型选择这个数字。

我对 Python 比对 SQL 更熟悉,所以我很想单独使用方法 1。但是,我可以看到让 postgres 优化关系代数然后只需为每个模型读入我的 python 脚本的单个数字的优势。在选择一种方法而不是另一种方法时,我应该遵循一个一般策略吗?

4

1 回答 1

1

首先,chi^2 不是一个复杂的计算。无论您使用哪种方法都无关紧要。但是我还是推荐你使用方法2,因为方法1可能会导致你的应用程序出现OUT OF MEMORY错误。

于 2013-11-13T23:16:11.323 回答