作者dreamson (做不完的事情)
看板Statistics
标题Re: [问题] negative R^2
时间Wed Sep 8 16:07:58 2010
R^2是在算回归模型中,自变数对应变数变异的解释能力
因此你用70% data估计出回归参数後,算出来的R^2当然是用原本
70%的data去算出来的,你不能再拿另外30%data带入去算R^2,那没有
意义,要有意义的话,就是在用剩下30%的data再去估计出另一条回归式
跑出来的R^2才是有意义的。
你也可以去看一下R^2的公式,他所带入的实际资料一定就是估计出参数的那些资料
而不是另外在代资料
※ 引述《musicmen ()》之铭言:
: 如果是跟统计软体有关请重发文章
: 如果跟论文有关也烦请您重发文章
: 文章类别是为了帮助大家搜寻资料与解答,造成不便之处请见谅
: 请各位帮忙, 想请教一个问题, 小弟统计真的很嫩
: 我在做multiple regression的model
: y = a0*x0 + a1*x1 + a2*x2 (a0 这项基本上就是intercept )
: 我把data 分作70% and 30%
: 利用70%的data去算a1和a2和intercept这些参数
: 算出来之後, R^2大概平均是0.12这样
: 然後我把剩下的30%data套用算出来的参数, 然後再计算R^2
: 我用的是 residual = y - a*x (a = [a0 a1 a2], x是对应的矩阵)
: SSerr = sum(residual.^2)
: SStot = sum((y - mean(y)).^2)
: R^2 = 1 - (SSerr / SStot) 是负的, 因为 SSerr> SStot
: 为什麽会这样呢? 为什麽在70%的data里面 R^2就可以算的出来
: 而30%的data得到负的结果, 我看了一下数据, 也就是说
: y-mean(y) 的预测要比 model来的好.. 是不是我有弄错的地方?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.110.233