![](/img/trans.png)
[英]Consolidating Result Summary in new sheet in same excel from different sheets on a existing excel file using python
[英]Want the same result in Python with using TINV in Excel
a= 0.05 b= 10.8
excel TINV(a,b) 中的结果是 2.228138852
from scipy import stats
result = stats.t.ppf(1 - a, b)
结果是 1.7989330052096262
如何在 Python 中获得与在 Excel 中使用 TINV 获得的相同结果?
我认为你需要知道两个因素。 首先,在 Excel TINV 函数中截断自由度数(来源:微软)
如果 deg_freedom 不是整数,则将其截断。
因此,在 Excel 中执行TINV(0.05 , 10.8)
和TINV(0.05 , 10)
将返回相同的值。
第二个因素,Excel TINV 函数返回学生 t 分布的双尾倒数。 但是在 Python 中,您只使用了 1 个尾巴:
所以你需要做a/2
。 在 Python 中,你可以这样做:
from scipy import stats
a= 0.05
b= 10 # Integer because Excel truncates degrees of freedom
result = stats.t.ppf(1-a/2, b)
print(result)
2.2281388519649385
如您所见,输出2.2281388519649385
非常接近您在 Excel 上获得的2,22813884242587
不一样(我不知道为什么,我想这是一个小数问题)但非常接近。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.