【问题标题】:Is there a t test table in python (numpy, scipy etc)?python 中是否有 t 测试表(numpy、scipy 等)?
【发布时间】:2018-08-11 15:42:31
【问题描述】:

我正在尝试作为一个练习,因为我对 python 和编程仍然相当陌生,以制作一个脚本,该脚本采用一个样本数字池并仅使用表中的 t 值来产生比 stdev 更准确的偏差.

示例: 10 个样本,我希望列中的 t 表值为 0.975。 在本例中为 10-1,第 9 行在第 0.975 列中的 t 值为 2.262

是否有任何简单的方法可以输入 python 或任何额外的库,我只想要行 X 列 0.975 中的 t 值并将其用于进一步计算?

或者我是否必须找到一个 CVS 文件并尝试以这种方式导入值? 我已经尝试过 scipy.stats 函数,但老实说,对于刚开始并且之前没有使用 p 值或类似统计数据做过任何事情的人来说,这有点不知所措。

【问题讨论】:

标签: python python-3.x numpy scipy


【解决方案1】:

可以使用scipy.stats.tppf方法(即分位数函数):

In [129]: from scipy.stats import t

In [130]: alpha = 0.025

In [131]: t.ppf(1 - alpha, df=9)
Out[131]: 2.2621571627409915

t.ppf() 最终调用scipy.special.stdtrit,因此您也可以使用该函数并避免通过t.ppf() 的轻微开销:

In [141]: from scipy.special import stdtrit

In [142]: alpha = 0.025

In [143]: stdtrit(9, 1 - alpha)
Out[143]: 2.2621571627409915

(如果您想知道函数是如何以名称 stdtrit 结尾的,它是 S学生 T DisTRibution 函数IT相反。清楚,对吗?)

【讨论】:

  • 嗯,有趣的解决方案。顺便说一句,我可以将“1-alpha”替换为例如:alpha = 0.975 df = 9 t.ppf (alpha, df) 并获得相同的结果吗?
  • 是的,您可以将1 - alpha 替换为实际值。我这样写是因为通常将 t 检验的显着性水平称为“alpha”(例如onlinecourses.science.psu.edu/statprogram/node/137onlinecourses.science.psu.edu/statprogram/node/137)。
  • 啊,我是自学,所以我不知道真正的实践。但很高兴知道我是否可以分享一些东西。
【解决方案2】:

我无法直接在 Python 中找到一个,但我找到了 rpy2,这使得 Python 中提供了许多 R 功能,以及它们的 t.test 功能。

【讨论】:

    猜你喜欢
    • 2012-03-01
    • 2014-01-08
    • 2014-11-27
    • 2011-05-17
    • 2011-10-29
    • 2015-01-14
    • 1970-01-01
    • 2021-12-03
    • 1970-01-01
    相关资源
    最近更新 更多