【问题标题】:How can I perform a factor analysis in PHP or SQL?如何在 PHP 或 SQL 中执行因子分析?
【发布时间】:2015-03-09 16:57:48
【问题描述】:

我以前使用 SPSS 对数据集执行factor analysis。我使用连接到 SQL 数据库的 PHP 收集数据。有没有办法直接在 PHP 或 SQL 中对数据进行因子分析?

我发现这个问题 (SPSS and PHP/MySQL Integration) 解决了如何将 SPSS 和 SQL 连接在一起以便它们共享信息,但我想知道是否可以直接实施。 PHP stats library (http://php.net/manual/en/ref.stats.php) 中似乎有许多函数,但文档大多不完整。

【问题讨论】:

  • 我以前没有听说过 stats 扩展,但是您可能通过浏览源代码获得一些关于如何使用它的线索。不理想,但总比没有好。
  • 数据库并不是真正为高级统计分析而设计的。你可以编写自己的例程。更常见的是,使用 SAS、SPSS、R、Matlab 甚至 Python 等统计软件包来读取数据并进行分析。
  • @halfer stats 包中的大部分文档都不存在。我在 SO 上阅读了一些关于它的帖子,但它们似乎是指深入研究 C 库。
  • 很公平。您也可以在命令行中使用某些东西(请参阅 Gordon 的建议),然后在 PHP 中解析输出。如果它特别繁重(即长时间运行),则将其添加到队列中。
  • @GordonLinoff 我之前使用过 SPSS,通过导出数据然后在本地执行分析。 R 似乎是统计语言的最佳选择,我只是想要一些东西来自动化当前的过程。感谢您的帮助。

标签: php mysql machine-learning statistics


【解决方案1】:

我也不知道 stats 包(SVN source code,我无法通过简单搜索 fact 找到任何看起来对您的问题有用的东西)但是在 PHP 中实现它应该相当简单,如果您了解算法和/或拥有另一个实现的源代码。当然,这个任务也将帮助你完全理解算法,因为编程会自动教你。最重要的是使用正确的数学函数来确保最高精度(例如BCGMP)。

另一个实现的源代码可以在scikit learn Python projectdocumentationsource code中找到。

提供直接解决方案而言,我的回答可能不是一个好的答案,但这是我现在可以给你的最佳答案。最后一点,我认为这是一项具有挑战性且有趣的任务,但 Stackoverflow 并不是要让开发人员为某人编写代码。

PS:忘记 SQL,它一开始就不是为此类任务设计的,也不应该用于这些任务。

【讨论】:

  • 刚刚在相关问题中找到this question,好像很多人都在搜索统计库。对我来说,从 PHP 开始听起来像是一个非常有趣的开源项目。 ;)
  • 感谢您的回复。我没有接受,因为我认为它不能回答问题,但它很有帮助,并为我指明了正确的方向。我不希望有人为我编写代码,但我试图避免重新编程可能已经存在的函数。我当然同意你的观点,SQL 不是这项工作的工具。
  • 没关系。我猜大多数人仍然使用其他编程语言,因为他们认为 PHP 不适合此类工作,这就是没有库存在的原因。我找到了this library,但话又说回来,它没有因子分析。你见过this answer regarding RCurl for PHP吗?
猜你喜欢
  • 1970-01-01
  • 2020-09-24
  • 1970-01-01
  • 1970-01-01
  • 2020-02-21
  • 2017-12-30
  • 2013-03-23
  • 1970-01-01
  • 2010-12-21
相关资源
最近更新 更多