可以用正则化(不完整)β函数I(x; a, b)来计算F分布的CDF(以及因此的p值),参见例如MathWorld。从这个blog,只使用math使用I(x; a, b)代码,p值是

1 - incompbeta(.5*df1, .5*df2, float(df1)*F/(df1*F+df2))

这里的结果对于一些样本值,匹配scipy.stats.f.sf:

In [57]: F, df1, df2 = 5, 20, 18

In [58]: 1 - incompbeta(.5*df1, .5*df2, float(df1)*F/(df1*F+df2))

Out[58]: 0.0005812207389501722

In [59]: st.f.sf(F, df1, df2)

Out[59]: 0.00058122073922042188

以防万一的博客中消失,这里的代码:

import math

def incompbeta(a, b, x):

''' incompbeta(a,b,x) evaluates incomplete beta function, here a, b > 0 and 0 <= x <= 1. This function requires contfractbeta(a,b,x, ITMAX = 200)

(Code translated from: Numerical Recipes in C.)'''

if (x == 0):

return 0;

elif (x == 1):

return 1;

else:

lbeta = math.lgamma(a+b) - math.lgamma(a) - math.lgamma(b) + a * math.log(x) + b * math.log(1-x)

if (x < (a+1)/(a+b+2)):

return math.exp(lbeta) * contfractbeta(a, b, x)/a;

else:

return 1 - math.exp(lbeta) * contfractbeta(b, a, 1-x)/b;

def contfractbeta(a,b,x, ITMAX = 200):

""" contfractbeta() evaluates the continued fraction form of the incomplete Beta function; incompbeta().

(Code translated from: Numerical Recipes in C.)"""

EPS = 3.0e-7

bm = az = am = 1.0

qab = a+b

qap = a+1.0

qam = a-1.0

bz = 1.0-qab*x/qap

for i in range(ITMAX+1):

em = float(i+1)

tem = em + em

d = em*(b-em)*x/((qam+tem)*(a+tem))

ap = az + d*am

bp = bz+d*bm

d = -(a+em)*(qab+em)*x/((qap+tem)*(a+tem))

app = ap+d*az

bpp = bp+d*bz

aold = az

am = ap/bpp

bm = bp/bpp

az = app/bpp

bz = 1.0

if (abs(az-aold)

return az

print 'a or b too large or given ITMAX too small for computing incomplete beta function.'

python如何求p值_在python中计算F分布p值?相关推荐

  1. python 卡方分布值_饱和模型与偏差计算R方与p值

    引言:logistic回归中,我们了解到R2和P值的计算方法.但josh starmer老师指出,广义线性模型中R2更常见的计算方法还包括饱和模型(参考:Logistic回归:R2与P-value的计 ...

  2. java求30度的正弦值_获取Java中给定值的双曲正弦值

    为了获取Java中给定值的双曲正弦值,我们使用java.lang.Math.sinh()方法.该sinh()方法接受一个以弧度为单位的参数,并返回该参数的双曲正弦值作为角度. 声明-java.lang ...

  3. 用python递归求兔子总量_在Python中优化递归Padovan(即Fibonacci和垂死的兔子)算法...

    当谈到Python时,我有点新手(我两周前才开始学习它),但是在完成挑战时我有很多乐趣.给我带来麻烦的一个挑战是凡人兔子斐波那契序列的变异(即Padovan序列,但寿命可变).在 经过多次尝试和错误之 ...

  4. java jcombobox 获取值_从java中的JComboBox获取字符串值

    我正在做一个testJComboBox程序.一旦我选择了jCombobox的输出,我就会得到我需要的字符串值.但是,它不起作用. 这是我的代码: import java.awt.*; import j ...

  5. mysql 查询不重复的值_在 MySQL 中查询不重复记录值的方法

    使用 WordPress 的过程中,我一直很好奇 WordPress 的一个功能,大家都知道在 WordPress 的编写文章的时候,可以自定义栏目,而这个自定义栏目的数据保存到 wp_postmet ...

  6. python求斐波那契数列第n个数及前n项和_使用python求斐波那契数列中第n个数的值示例代码...

    斐波那契数列(Fibonacci sequence),又称黄金分割数列.因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为"兔子数列&qu ...

  7. python求定积分程序_在python中用sympy求定积分失败

    用python sympy 求定积分,代码如下: E=210000 from sympy import * x=symbols('x') T_2=(125-x)/50*(21-18)+18 Radiu ...

  8. python牛顿法解非线性方程组_利用python求非线性方程

    最近在做的东西中有一件任务,相当于一个函数已知y来求x,网上找了各种办法最终得以实现.在此说明方法,并记录一些坑. 要求的函数比如:*log(x) - log(1-x) + 2.2 * (1 -2x) ...

  9. python使用函数的目的_在Python 3.x中经常看到定义函数有一个单独的 * 参数?定义这样参数的目的是?怎样对其取值呢?...

    参数在python中总是通过赋值进行传递的.在默认情况下,参数是通过其位置进行匹配的,从左到右,而且必须精确的传递和函数头部参数名一样多的参数. 这种默认的传递方式很简单 def f(a,b,c): ...

  10. python计算文件md5值_用python 正确计算大文件md5 值

    python 计算文件的md5值很方便,但如果只是简单的把文件都入到内存中,大文件会导致问题,一般采用切片的方式分段计算,下面的几个函数可以很好的解决这个问题. 使用 hashlib import h ...

最新文章

  1. 大数据计算引擎发展的四个阶段
  2. Visual C# 3.0 新特性概览
  3. NYOJ 士兵杀敌(二) 树状数组
  4. curd什么意思中文_每日一句英译英:She's a ten什么意思?
  5. 狗窝里的小日子- 8 ...
  6. 流量管理系统产品选型常见问答(FAQ)
  7. java 任务_Java-定时任务
  8. [置顶] 杂七杂八
  9. ubuntu安装cuda(转精华)
  10. mysql怎么模拟死锁_mysql 模拟产生死锁
  11. linux中断--进程上下文和中断上下文
  12. ENVI学习总结(十一)——NDVI的计算
  13. linux系统uptime解读,Linux中的uptime命令详解
  14. C语言员工信息管理系统
  15. AI2019下载Adobe Illustrator CC2019安装教程
  16. Quartus II三种方式实现D触发器
  17. Linux为sh脚本文件添加执行权限
  18. 怎么用python电商文本挖掘?(5)
  19. 【 爬虫解决了什么问题】
  20. IDEA将项目打包成jar包

热门文章

  1. python自动提交网页表单_Python 自动化表单提交实例代码
  2. excel合并工作簿怎么做?
  3. excel流程图折线箭头_如何绘制excel箭头图形
  4. STM32F429DISCO+AT070TN92 7寸LCD
  5. 软路由虚拟服务器,带你入门软路由 篇三:软路由也玩虚拟化——轻松几步教你配置Esxi网卡直通和软路由虚拟机设置(保姆级教程)...
  6. NSX-T业务转发04—— 多层Tier0Tier1路由
  7. wordpress插件_哪个是最好的WordPress画廊插件? (性能比较)
  8. 主成分分析(PCA)与线性判别分析(LDA)的区别与联系
  9. 分享磁盘空间不足的5个处理方法
  10. 南大计算机技术复试分数线,南大计算机复试分数线