You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python与Matlab中gammainc函数计算结果差异问题求助

Python与Matlab中gammainc函数计算结果差异问题求助

各位大佬,我最近在把Matlab代码迁移到Python的过程中,遇到了gammainc函数计算结果不匹配的问题,折腾了好一阵没解决,想请教下大家!

我先说说具体的情况:

首先是Python这边的代码和输出:

from scipy.special import gammainc

result_py = gammainc([1, 2, 3, 4], 5)
print(result_py)
# 输出:array([0.99326205, 0.95957232, 0.87534798, 0.73497408])

而Matlab那边我用了'lower'参数,代码和输出是这样的:

result_matlab = gammainc([1,2,3,4],5,'lower')
% 输出:[0.00365984682734371, 0.0526530173437111, 0.184736755476228, 0.371163064820127]

我一开始猜测是不是互补函数的问题,就尝试用了scipy.special.gammaincc:

from scipy.special import gammaincc

result_py_cc = gammaincc([1, 2, 3, 4], 5)
print(result_py_cc)
# 输出:array([0.00673795, 0.04042768, 0.12465202, 0.26502592])

结果确实比之前的gammainc更接近Matlab的输出,但还是对不上。有没有大佬知道怎么调整Python的代码,才能让计算结果和Matlab的完全一致呀?

备注:内容来源于stack exchange,提问作者jim_athon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 10:32:57