具有相同拟合值的回归模型,当在r [duplicate]中使用相等的运算符进行比较时,它们输出FALSE的结果>> [

问题描述 投票:1回答:1
给出odor数据包中faraway数据集的模型:

> lmod <- lm(odor ~ I(temp) + I(gas) + I(pack)+I(temp^2)+I(gas^2)+I(pack^2)+I(temp*gas)+I(gas*pack)+I(pack*temp),odor) > lmod6 <- lm(odor ~ polym(temp,gas,pack,degree = 2),odor)

两个型号都具有相同的拟合值:

> lmod$fitted 1 2 3 4 5 6 7 8 9 10 11 12 86.62500 45.87500 36.12500 28.37500 42.50000 15.25000 -3.25000 -24.50000 59.87500 29.37500 20.62500 -16.87500 13 14 15 -30.66667 -30.66667 -30.66667 > lmod6$fitted 1 2 3 4 5 6 7 8 9 10 11 12 86.62500 45.87500 36.12500 28.37500 42.50000 15.25000 -3.25000 -24.50000 59.87500 29.37500 20.62500 -16.87500 13 14 15 -30.66667 -30.66667 -30.66667

但是,当将这些拟合值相互比较时,它们并不相同,为什么呢?

> table(lmod6$fitted==lmod$fitted) FALSE TRUE 13 2

给出遥远包中气味数据集的模型:> lmod
r regression equals
1个回答
1
投票
这是浮点陷阱的经典示例,如R Inferno by Patric BurnsR FAQ的第1章中所述
© www.soinside.com 2019 - 2024. All rights reserved.