R中的Box-Cox变换
来源:互联网 发布:淘宝附近的人取消了吗 编辑:程序博客网 时间:2024/06/03 17:45
在许多情况下,为了满足经典线性模型的正态性假设,常常需要使用指数变换或者对数转化,使其转换后的数据接近正态,比如数据是非单峰分布的,或者各种混合分布,虽然不一定起作用,但是不妨试试。
我们使用平日最常见的box-cox转换,因为之前看到有人问到如何使用spss进行转换,到网上找了资料,是需要语法的,在spss中进行语法指令,显然相比较用R,还是很不方便。
分两步,第一步需要计算出,lambda值,然后把转化后的lambda值带入方程中,同时对于转换后的数据拟合出来的方程依然进行正态性的检验
第一步:
语句如下:
library(MASS)
D=read.csv("/Users/hjs/Documents/train_test_model/ridgereg1.csv",sep=",") # 加载数据
#2拟合BOXCOX 模型
b=boxcox(y~., data=D) # 定义函数类型和数据
I=which(b$y==max(b$y))
b$x[I]#lambda=0.83
#得到0.828就是下图的最高点
第二步:
依据上一步boxcox转化的lambda值,即0.83次方,代入模型
c=lm(y^0.83 ~ long + touwei + weight,data=D) # 定义一个多元回归,同理y x1 x2 x3 是cvs文件中,带变量名的字母
d=step(c) # 使用逐步法,进入多个自变量
summary(d) # 模型汇总
anova(d) # 用方差分析法对拟合的模型进行检验
shapiro.test(d$res) # 用残差对boxcox变化后的这个逐步回归方程 正态性进行检验
结果如下
- R中的Box-Cox变换
- Box-Cox变换
- Box-Cox变换
- R语言Box-Cox变换与多重共性线
- Box-Cox变换 SPSS代码
- 数据变换的万能钥匙:Box-Cox变换
- 结构化数据转换方式之一:box-cox转换
- Logistic、Cox回归之图形化呈现(R语言中绘制Nomogram)
- mail.box中的死信
- box unbox 中的 NullPointException
- PDF中的box
- CSS3中的display: box
- ionic中的slide-box
- 关于css中的box-sizing:border-box
- 使用Sublime和R-Box编写并运行R代码
- Cox风险回归分析
- css3 阴影box-shadow transition渐变 transform变换
- Box容器中的"支架"概念
- 逆置反转单链表
- 记录一下我悲催的OI生涯
- activeMQ消息队列之JMS基础(附了一些代码帮助理解前期可跳过)
- HDU 5812 Distance 暴力+素数打表
- 机房重构之学生查看上机记录
- R中的Box-Cox变换
- 实验 6-1 1.针对符号连接文件和硬连接文件。测试以下函数,分析其执行过程并给出结论。 link() unlink() symlink() readlink() stat() lstat(
- 很强大的HTML+CSS+JS面试题(附带答案)
- CFgym:Painting the Wall(BFS)
- Linux下安装mysql
- 开始,做一个自己不认识的人
- 详解mysql的for update
- 爬虫小程序
- HDU 1071 The area 详解