如何用Python计算BMI值?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用Python计算BMI值?相关的知识,希望对你有一定的参考价值。
参考技术A例子如下:
直接编译,程序输出结果中随意输入身高体重,程序运行结果如下图所示:
知识扩展:
BMI指数(即身体质量指数,简称体质指数又称体重,英文为Body Mass Index,简称BMI),是用体重公斤数除以身高米数平方得出的数字,是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。主要用于统计用途,当我们需要比较及分析一个人的体重对于不同高度的人所带来的健康影响时,BMI值是一个中立而可靠的指标。
BMI值原来的设计是一个用于公众健康研究的统计工具。当我们需要知道肥胖是否对某一疾病的致病原因时,我们可以把病人的身高及体重换算成BMI值,再找出其数值及病发率是否有线性关联。不过,随着科技进步,现时BMI值只是一个参考值。要真正量度病人是否肥胖,还需要利用微电力量度病人的阻抗,以推断病者的脂肪厚度。因此,BMI的角色也慢慢改变,从医学上的用途,变为一般大众的纤体指标。
如何用python计算临界值(critical value)和p值(p value)(scipy)
z检验:
计算临界值:scipy.stats.norm.ppf(level_of_confidence)
计算p值:scipy.stats.norm.sf(abs(z_score)) 或 1-scipy.stats.norm.cdf(abs(z_score))---左尾或右尾,双尾检验需在此基础上乘以2
计算临界值例子:
from scipy.stats import norm critical1=norm.ppf(0.95) #左尾或右尾 critical2=norm.ppf(0.975) #双尾
t检验:
计算临界值:scipy.stats.t.ppf(level_of_confidence, degree_of_freedom)
计算p值:scipy.stats.t.sf(abs(t_score),df) 或 1-scipy.stats.t.cdf(abs(t_score),df)---左尾或右尾,双尾检验需在此基础上乘以2
计算临界值例子:
from scipy.stats import t critical1=t.ppf(0.95,10) #左尾或右尾 critical2=t.ppf(0.975,10) #双尾
卡方检验:
计算临界值:scipy.stats.chi2.ppf(level_of_confidence, degree_of_freedom)
计算p值:scipy.stats.chi2.sf(abs(chi2_score),df) 或 1-scipy.stats.chi2.cdf(abs(chi2_score),df)---左尾或右尾,双尾检验需在此基础上乘以2
计算临界值例子:
from scipy.stats import chi2 critical1=chi2.ppf(0.95,10) #左尾或右尾 critical2=chi2.ppf(0.975,10) #双尾
F检验:
计算临界值:scipy.stats.f.ppf(level_of_confidence, dfn, dfd)
计算p值:scipy.stats.f.sf(abs(chi2_score),dfn,dfd) 或 1-scipy.stats.chi2.cdf(abs(chi2_score),dfn,dfd)---左尾或右尾,双尾检验需在此基础上乘以2
计算临界值例子:
from scipy.stats import f critical1=f.ppf(0.95,30,28) #左尾或右尾 critical2=f.ppf(0.975,30,28) #双尾
注:
cdf是概率的累积分布,即小于等于某个值出现的概率总和。
ppf是cdf的逆运算,也就是已知概率总和,求对应的统计量的值。
参考:https://machinelearningmastery.com/critical-values-for-statistical-hypothesis-testing/
以上是关于如何用Python计算BMI值?的主要内容,如果未能解决你的问题,请参考以下文章