【问题标题】:Student's T-distribution in C++学生在 C++ 中的 T 分布
【发布时间】:2013-11-08 22:12:45
【问题描述】:

我需要在 C++ 代码中使用相当于 Excel 的 TINV function 的代码,而没有与之链接的统计库。

问题是我不知道学生定律背后的数学原理。

您认为在不使用统计库的情况下从头开始重新实现此功能是否合理?

我无权访问 C++11,在这种情况下,我会使用 std::student_t_distribution

如果是,请给我提供代码参考。

如果没有,你知道提供它的轻量级库吗?

谢谢。

【问题讨论】:

  • 这种事情在软件开发中经常发生。缺少您想要使用的工具,您必须制作它们。对不起。有人问我关于软件工程学位的问题。我一直推荐双学位。软件工程将向您展示如何编写代码,但它不会为您提供完成现实世界任务所需的领域知识。鉴于有几个很好的了解学生 T 分布的景点。 Mathworld.wolfram.com 就是其中之一。祝你好运,可能永远对你有利。 :)
  • 我找到了这个副本。 stackoverflow.com/questions/2709753/…我拥有数学工程和机械工程两个学位。这并不意味着我对数学了如指掌。

标签: c++ excel statistics


【解决方案1】:

Boost 有一个带有统计功能的数学库。这是一个关于如何将其用于学生 t 检验的示例 http://www.boost.org/doc/libs/1_43_0/libs/math/doc/sf_and_dist/html/math_toolkit/dist/stat_tut/weg/st_eg/two_sample_students_t.html

【讨论】:

  • 酷。你见过这样的 C# 吗?
  • @garaber ExtremeOptimization 有 C# 实现。
【解决方案2】:

鉴于缺少此工具意味着您可能必须编写一个。我已经假设你看了但找不到。不过数学没那么差。它只是测试两个观察到的分布是否具有相同的平均值。 www.r-tutor.com 有一个关于这个发行版的很好的教程。 Math World 显示更深层的上下文。狩猎愉快。

【讨论】:

  • 我在 Javascript 中找到了一个实现(50 行代码)。请参阅我在对我的问题的评论中提到的副本。
  • 知道了。这是如何从这里工作的。我需要采取哪些措施?
  • 查看html页面的源码。从 Javascript 到 C/C++ 的转换很容易。
  • 这个问题 stats.stackexchange.com/questions/74874/students-t-distribution 也应该有帮助。
  • 使用学生 T 分布有一些假设。使用统计数据的问题是假设必须为真才能使分布有效。第一个链接概述了您在使用学生 T 分布时所做的假设。我不能夸大这一点(数学和 CompSci 学位)。您确定您的集合中有一些经过测试的分布值吗?第一个链接会让您对此有所了解。
【解决方案3】:

不使用统计库的工作量太大。

我要做的是在 Excel 中为我需要的值范围生成数值,并将其复制到我的代码中的数组中。

硬核风格。

【讨论】:

  • 您提到了学生 t 分布。您必须确保您生成的数据属于该分布。分发成为您的支票
猜你喜欢
  • 2021-04-08
  • 2015-06-30
  • 2016-04-09
  • 2018-10-24
  • 1970-01-01
  • 2011-01-19
  • 1970-01-01
  • 2019-09-27
  • 2015-12-07
相关资源
最近更新 更多