作业帮 > 综合 > 作业

R软件中factor()是用来干什么的?建模时什么样的参数需要用factor()进行处理?

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/12 20:44:10
R软件中factor()是用来干什么的?建模时什么样的参数需要用factor()进行处理?
> LGAclaims$SD
[1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 3 3
[46] 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7
[91] 7 7 7 7 7 7 7 7 7 9 9 9 9 9 9 9 9 9 9 9 8 9 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10
[136] 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13
> factor(LGAclaims$SD)
[1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
[37] 1 1 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5 5 5 6 6 6 6
[73] 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 9 9 9 9 9 9 9 9 9
[109] 9 9 8 9 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11
[145] 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13
Levels:1 2 3 4 5 6 7 8 9 10 11 12 13
不能明白上述中factor()函数到底起了什么作用?建模时什么样的参数需要进行这样的处理,什么样的参数不能呢?
请不要复制粘贴帮助文件,我看过但是不能理解它
在这个结果中,好像看不出factor的作用,事实上,factor是很重要的.其它目的是生成因子,或者说水平.比如下图:命令:library(ggplot2)qplot(Time,demand,data=BOD,geom="bar",stat="identity")
#发现上面图形毛病吗?缺根“弦”啊!解决办法:qplot(factor(Time),demand,data=BOD,geom="bar",stat="identity")
再问: 不好意思,能否解释一下“生成因子”的意思?我在一篇论文中看到说factor()是用来处理离散值的,但没有作具体说明。在你举的例子中:> BOD$Time[1] 1 2 3 4 5 7> factor(BOD$Time)[1] 1 2 3 4 5 7Levels: 1 2 3 4 5 7为什么Levels的产生会改变结果呢?另外在:中,factor()存在会改变残差,我不是很理解这些变化。
谢谢。
再答: [1] 1 2 3 4 5 7 > factor(BOD$Time) [1] 1 2 3 4 5 7 我解释过了,貌似相同,但其实不同。 你说的对,factor()是用来处理离散值的,这里的离散值就是我说的因子,或水平。 为什么Levels的产生会改变结果呢? 正是因为用了factor,所以改变了结果啊,这时TIME已经变成了因子。 至于为什么它会改变残差,我也不清楚,我想一想。 多交流!得意敬上 补充:知道了,为什么会改变残差。因为,如果不使用factor,则每多一个自变量,如SD,RSS会减少一个自由度。如果使用了factor,则RSS减少的自由度就不是1,而是factor生成的水平的个数减1.