R多元多项式参数(多态函数)

时间:2015-04-16 14:02:52

标签: r

我正在寻找最适合包含三个变量的数据:x,y,m,使用R。

为此,我使用函数“polym”,如:

fit <- lm(y~polym(x, m, degree = 2, raw=TRUE))         

我对3级做同样的事情,然后我与ANOVA测试进行比较,看看哪个更好。

但是,对于给定的度数,创建的多项式具有所有可能的组合。例如,如果我将degree = 2,则创建的多项形将为:

y = C0 + C1*x + *C2*x^2 + C3*x*m + C4*m^2

实际上,2度多项式也可以是:

y = C0 + C1*x + *C2*x^2 + C3*x*m 

y = C0 + C1*x + C2*x*m + C3*m^2

(没有术语x ^ 2或m ^ 2)

我不认为函数“polym”正在考虑那些情况,因为我已经生成了110次回归(通过改变x和y的值),并且2度的所有关系都具有所有可能的系数(相同的其他学位)。

如果你知道的话,“polym”(或者更好的函数......)如何产生多项式作为我写的最后两个?

1 个答案:

答案 0 :(得分:1)

首先,你的第二个等式只是第一个等式(原始)c3 = 0.除非你有理论上的理由要省略混合项,否则lm将决定混合项的系数是否应为零。如果你坚持,poly by column的输出是不同的度数。检查显示poly的第4列是你不想考虑的混合术语,所以fit&lt; -lm(y~polym(x,m,degree = 2,raw = TRUE)[, - 4] )会迫使回归考虑除混合术语之外的所有术语。