PHPMyAdmin -皮尔逊相关系数

3qpi33ja  于 2022-11-09  发布在  PHP
关注(0)|答案(1)|浏览(174)

我需要使用PHPMyAdmin将下面的公式转换为SQL,用于包含两列的表“Asia”- SurfaceArea和Population。
[皮尔逊相关系数公式] x1c 0d1x
我得到了下面的查询,但我得到错误,有人能让我知道什么是错误的,请?
SELECT(SUM(表面积-平均表面积))(人口-平均人口)/ STD((SUM((表面积-平均表面积))(表面积-平均表面积)))*(SUM((人口-平均人口))))AS相关系数人口FROM Asia;
多谢

z4bn682m

z4bn682m1#

您的查询将无法工作,因为在5.7版本中做了一个更改,在默认情况下,它现在将拒绝在SELECT子句中使用函数(sum、avg、max等)进行聚合的查询,并且无法将非聚合字段放入GROUP BY子句中。这种行为是所有其他RDBMS的一部分,MySQL最终也将加入进来。
然而,还有另一种方法可以得到皮尔逊系数。More on that here
请尝试以下查询:

SELECT (Avg(`Population` * `SurfaceArea`) - (Avg(`Population`) * Avg(`SurfaceArea`))) / 
(STDDEV_POP(`Population`) * STD(`SurfaceArea`)) as PearsonCoefficient FROM `Asia`

相关问题