可以用正则化(不完整)β函数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. Elasticsearch 查询数据的工作原理是什么?
  2. 云计算与边缘计算协同发展的一些思考
  3. iOS开发之网络编程--1、NSURLSession的基本使用
  4. 【Spark深入学习 -14】Spark应用经验与程序调优
  5. 网站图像防盗----Apache配置妙法
  6. 服务器端使用jsp还是asp_快速了解 ASP.NET Core Blazor
  7. Git本地分支版本过低导致的push错误 error: failed to push some refs to ... 及后续amend
  8. python方法items_Python字典items()方法与示例
  9. 产品经理是条狗:前端,你怎么看?
  10. Maven学习总结(42)——Maven多模块构建中常用的参数
  11. 移动Web开发与适配笔记
  12. C++中继承的父类与子类的关系
  13. 微软在华推广Win7拒绝“黑屏”
  14. Windows8中pid为4的system进程占用80端口的解决办法
  15. mysql mutex_MySQL 有关锁的简单介绍
  16. 【简历】不带简历就是潇洒?醒醒吧
  17. win10 64位装三菱PLC软件出现oleaut32.dll拒绝访问
  18. 光明区支持总部企业高质量发展实施办法(征求意见稿)
  19. Android中startActivities的准确用法
  20. C 语言 —— 循环结构

热门文章

  1. 图文详解win7实现局域网共享文件
  2. python表示倍数_python代表倍数
  3. python求两个向量的夹角
  4. 保存Windows11聚焦图片教程
  5. java项目上线发布的流程
  6. Android 4.1 Netd详细分析(一)概述与应用实例
  7. html让网页在手机端自动横屏,Css实现手机端页面强制横屏的方法示例
  8. “女主播翻车”骂声不断,店湾妹感慨:主播界怎么了?三观已毁!
  9. es7新特性随堂笔记
  10. jasperreport报表导出excel锁定行和列