在许多情况下,为了满足经典线性模型的正态性假设,常常需要使用指数变换或者对数转化,使其转换后的数据接近正态,比如数据是非单峰分布的,或者各种混合分布,虽然不一定起作用,但是不妨试试。

我们使用平日最常见的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变化后的这个逐步回归方程 正态性进行检验

结果如下

Start:  AIC=-21.51
y^0.83 ~ long + touwei + weightDf Sum of Sq     RSS      AIC
<none>                 5.7518 -21.5136
- touwei  1    4.7894 10.5412 -10.1865
- long    1    6.5893 12.3411  -6.7184
- weight  1   11.3733 17.1251   0.4891
Call:
lm(formula = y^0.83 ~ long + touwei + weight, data = D)Residuals:Min       1Q   Median       3Q      Max
-0.88677 -0.36357 -0.05594  0.38686  1.33507 Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept)  7.1472866  0.8353396   8.556 9.29e-08 ***
long         0.8158515  0.1796633   4.541 0.000253 ***
touwei      -1.0078211  0.2603217  -3.871 0.001118 **
weight       0.0033182  0.0005562   5.966 1.21e-05 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 0.5653 on 18 degrees of freedom
Multiple R-squared:  0.9753,    Adjusted R-squared:  0.9712
F-statistic: 237.4 on 3 and 18 DF,  p-value: 1.173e-14
  Df Sum Sq Mean Sq F value Pr(>F)
long 213.896784  213.8967840  669.377918  1.086794e-15
touwei 2.271354  2.2713536  7.108073  1.574365e-02
weight 11.373302  11.3733018  35.592106  1.208578e-05
Residuals 18  5.751821  0.3195456  NA  NA
   Shapiro-Wilk normality testdata:  d$res
W = 0.96598, p-value = 0.6184
可以看到Shapiro-Wilk normality test是通过的,也就是说,本次box-cox转换是成功的。

R中的Box-Cox变换相关推荐

  1. R语言构建回归模型并进行模型诊断(线性关系不满足时)、进行变量变换(Transforming variables)、使用car包中的boxTidwell函数对预测变量进行Box–Tidwell变换

    R语言构建回归模型并进行模型诊断(线性关系不满足时).进行变量变换(Transforming variables).使用car包中的boxTidwell函数对预测变量进行Box–Tidwell变换 目 ...

  2. 简单介绍一下R中的几种统计分布及常用模型

    统计学上分布有很多,在R中基本都有描述.因能力有限,我们就挑选几个常用的.比较重要的简单介绍一下每种分布的定义,公式,以及在R中的展示. 统计分布每一种分布有四个函数:d――density(密度函数) ...

  3. ⅰcp经济模型_简单介绍一下R中的几种统计分布及常用模型

    统计学上分布有很多,在R中基本都有描述.因能力有限,我们就挑选几个常用的.比较重要的简单介绍一下每种分布的定义,公式,以及在R中的展示. 统计分布每一种分布有四个函数:d――density(密度函数) ...

  4. 闪亮蔚蓝_在R中构建第一个闪亮的Web应用

    闪亮蔚蓝 数据科学 (DATA SCIENCE) Do you want to make your R code publicly available for others to use? If yo ...

  5. r中如何求变量的对数转换_对数转换以求阳性。

    r中如何求变量的对数转换 In Simple terms, log transform squashes or compresses range of large numbers and expand ...

  6. r中汇率市场_如何在Word 2013表中汇总行和列

    r中汇率市场 If you're working in Word and you need to total values in a table, you can do so without havi ...

  7. unity3d 可视化编程_R编程系列:R中的3D可视化

    unity3d 可视化编程 In the last blog, we have learned how to create "Dynamic Maps Using ggplot2" ...

  8. OpenCV中霍夫直线变换

    OpenCV中霍夫直线变换 首先要知道,一条直线的通用表达式为y=ax+b\color{#F00}y=ax+by=ax+b,a为直线的斜率,b为直线的截距,知道这两个参数可以唯一确定一条直线.通常我们 ...

  9. r语言中的shiny教程_如何使用Shiny在R中编写Web应用程序

    r语言中的shiny教程 新年快乐! 这个月我忙于撰写一些较大的文章,因此请在接下来的几周内查找这些文章. 对于本月的Nooks和Crannies,我想简要指出一个我一直在用它进行自我教育的出色R库. ...

  10. 在R中创建晶须和盒图

    Box plots in R are a good way to measure and visualize how closely your data is distributed. These a ...

最新文章

  1. 体验Office 2013预览版
  2. 电脑不能访问服务器指定端口6,windows server2008 无法访问本机及其他服务器的所有端口...
  3. Session 的钝化与活化
  4. Boost:构造一个流对象,任何发送到此流将标准输出
  5. lucene和elasticsearch的前世今生、elasticsearch的核心概念、elasticsearch核心概念 vs. 数据库核心概念(来自学习资料)
  6. 如何在Raspberry Pi上设置两因素身份验证
  7. 前端拆分_如何在消费者驱动的合同测试的帮助下拆分前端和后端的部署
  8. win7 apache php mysql 配置64,win7 64位 Apache+php+mysql配置方法
  9. 关于单例模式中,饿汉式和懒汉式有什么区别?
  10. word-vba应用
  11. 【联想拯救者R7000】安装nvidia驱动Perform MOK management 界面键盘失灵现象(已解决)
  12. 不会写代码也可以, 手把手教你制作炫酷生日祝福网页(程序员专属情人节表白网站)
  13. 非极大值抑制( Non-max suppression)
  14. 原来这就是公文写作领导讲话稿万能模板(1)
  15. 手机开发APP整体界面设计工具之墨刀---没用过就知道它很牛掰
  16. 服务器sni协议,SNI协议分析
  17. 如何管理NVivo的查询结果
  18. 垂死挣扎还是涅槃重生 -- Delphi XE5 发布会归来感想
  19. 零基础搭建基于知识图谱的电影问答系统
  20. 物联网是如何工作的?

热门文章

  1. 企业宣传片拍摄制作经验
  2. Master PDF Editor v5.7.91 最小巧的PDF编辑器便携版
  3. 新概念英语2课后题答案
  4. 如何下载全球航拍影像地图
  5. 第一篇博客(关于IT学习的初步想法)
  6. 怎样使用手机浏览器查看电脑上的html文件
  7. 关于ADSL宽带多重拨号的探究
  8. 【论文解读】医学AI论文解读 | 超声心动图在临床中的自动化检测 | Circulation | 2018 | 中英双语...
  9. 构建逻辑回归模型(某金融数据集)
  10. infoq中一些好文章