作者Vulpix (Sebastian)
看板Statistics
标题[程式] 关於Excel中趋势线的R^2
时间Sun Jan 1 17:55:52 2017
[软体程式类别]:
Microsoft Excel 2007
[程式问题]:
线性回归的公式问题
[软体熟悉度]:
熟悉
[问题叙述]:
想藉由程式给出的数值做进一步分析,却不知道该怎麽下手。
一般的单变数线性回归公式在高中数学课程中已有提及:
回归直线的斜率、y 截距、相关系数的公式及意义。
在分析数据时偶尔会先规定好 y 截距(例如已知二变量成正比),
Excel 也有提供这个功能,而且仍能算出一个「R^2」,
但此时这个 R 与原始数据的相关系数并不相同。
(至於斜率则确定是由最小平方法决定:Sum(XY)/Sum(X^2)。)
经过测试,前述的「R^2」的公式如下:
<XY>^2-<X^2><Y>^2 + 2b * (<X^2><Y>-<X><XY>) - b^2 * (<X^2>-<X>^2)
-------------------------------------------------------------------,
<X^2>(<Y^2>-<Y>^2)
其中 b 是预设的 y 截距,<Z> 代表数据 {Z_i}_{i=1}^{n} 的平均值。
若考虑的是「Y 与 X 应该要成正比」,即 b=0,
则「R^2」的公式简化为
<XY>^2-<X^2><Y>^2
--------------------。
<X^2>(<Y^2>-<Y>^2)
已经知道的是:R^2≦1,且随着 b 而变化的最大值就是相关系数^2。
如同一开始所说,想要针对 R^2 这个数值去分析数据,
但是却遇到 R^2 可能出现负值(这点由公式可简单看出),
所以似乎难以将它诠释成与「相关系数」类似的概念。
那到底应该怎麽去诠释才合理呢?
以上就是想问的问题。因为关於统计大概只知道
高中程度+能用微积分计算一些分布,所以写得可能不是那麽专业,
还望各位大大海涵并先谢谢各位指导。
[题外]:
打完才发现我并不是对程式码有问题,这样的话分类在程式真的对吗?
不对的话请告诉我,我会改标题。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.230.122.4
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Statistics/M.1483264557.A.71F.html
1F:→ andrew43: 「先规定好 y 截距(例如已知二变量成正比)」你确定? 01/02 11:52
拟合用的模型是 y=ax (这就是手动规定 y 截距=0)
极小化 Σ(y_i - a*x_i)^2 得到 a=[Σ(x_i*y_i)]/[Σ(x_i^2)]
不过至少物理上这个做法满常用到。
因为很多模型已经确定是正确的,例如测量一物体的密度:D=M/V。
在校正过所使用的仪器後,
1. 把测得的质量对体积作图,计算回归直线斜率。
2. 把测得的质量对体积作图,计算最佳过原点直线的斜率。
3. 对每笔数据计算 M/V,再求其平均。
以上三个方法应该都可行,只是今天刚好选了2而已。
还是说这个方法就是胡说八道而已呢?
※ 编辑: Vulpix (61.230.122.4), 01/02/2017 13:08:51
2F:推 andrew43: 你的意思应该是截距为0而不是固定截距。就算不为0,变 01/02 13:14
3F:→ andrew43: 数间仍可存在正相关。 01/02 13:14
4F:→ andrew43: 有截距项的最小平方法回归的R2才会是Pearson相关的平方 01/02 13:17
5F:→ andrew43: 。 01/02 13:17
6F:→ Vulpix: 我说的「先」是指在选定模型的时候就不考虑截距非0的可能 01/02 13:20
7F:→ Vulpix: 那……这样跟我先固定了截距=0有差吗? 01/02 13:21
8F:→ arbiteron: 画资料散布图跟你的模型看看,配适结果可能比水平线还差 01/02 14:33
9F:→ Vulpix: 这个我知道,可是我想问的是这样的「R^2」应该如何诠释。 01/02 14:50
10F:→ andrew43: 我没检查你的R^2算对了没,但它不可能小於0。 01/02 15:41
11F:→ andrew43: 如果算对了,R^2的意义一直是存在的,和相关不必有关系 01/02 15:42
12F:→ andrew43: 意义就是「总变异能被回归线解释的量」。 01/02 15:43
13F:→ Vulpix: Excel给的数字就是会有负的,所以才难以想像… 01/02 17:29
14F:→ b99703117: 不放截距项,R2就可能会是负的;而且也不能用一般 01/02 18:14
15F:推 andrew43: 那就是算错了,或者不知道算成什麽东西。 01/02 18:15
16F:→ b99703117: 教科书上的叙述去解释。 01/02 18:15
17F:→ b99703117: 另外一提,我认为你的资料很可能不同意截距为0的假设 01/02 18:18
18F:→ b99703117: 你可以跑一个一般的OLS,然後检定常数项=0试试看 01/02 18:18
我想应该是我的说法有问题……
Excel 给了 R^2,
但没有一个地方找的到公式,那个公式是我自己尝试几笔数据後归纳而得。
(也经过多笔随机产生的数据验证过,所以程式给的 R^2 就是这麽算的。)
目前遇到的数据若真的「应该」成正比,那用这个模型拟合的效果其实不差。
而 R^2 也颇接近 1,通常也比相关系数^2小。
但是「从公式来看」,R^2 有可能是负值,
所以不应该单纯以相关系数的角度去诠释它。
甚至,它似乎应该当成某种更广义的东西,但那到底是什麽?
经过配方,公式可改写成:
R^2 = r^2 - (σ_X/σ_Y)^2 / <X^2> * (b-"最佳b")^2
其中 r 是 Pearson 相关系数,
σ_Z 表示 Z 这组数据的样本标准差,
"最佳b" 则是一般线性回归所得的 y 截距。
※ 编辑: Vulpix (61.230.122.4), 01/02/2017 18:49:06
21F:→ Vulpix: 抱歉,这麽晚才看到这篇。我要找的就是楼上给的,感恩! 04/09 14:24