LVS JDK动态代理 Filter MyBatis powershell arraylist ip 多店版微信商城 纯html网页模板 mysql转字符串 jq入口函数 dwf文件怎么转成dwg mysql学习 mysql入门 mysql更新 python返回值 java继承 java日期类 java生成当前时间 java数组 unix操作系统下载 dll文件下载 su版本转换器 1660ti 自制题库答题考试软件 野德天赋 js保留两位小数 汽车配件查询软件 medcalc ps蒙版抠图详细教程 img写盘工具 oracle表分区 qq浏览器手机版 战地2地图包下载 速查表 齐论工具箱 cdr怎么填充颜色 机械换装 flash引导层动画 set函数
当前位置: 首页 > 学习教程  > 编程语言

R语言进行Box-Cox变换

2021/2/13 18:10:19 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

R语言进行Box-Cox变换 R语言进行Box-Cox变换 Box-Cox变换是Box和Cox在1964年提出的一种广义幂变换方法,是统计建模中常用的一种数据变换,用于连续的响应变量不满足正态分布的情况。Box-Cox变换的主要特点是引入一个参数,通过数据本身估计该…

@R语言进行Box-Cox变换

R语言进行Box-Cox变换

Box-Cox变换是Box和Cox在1964年提出的一种广义幂变换方法,是统计建模中常用的一种数据变换,用于连续的响应变量不满足正态分布的情况。Box-Cox变换的主要特点是引入一个参数,通过数据本身估计该参数进而确定应采取的数据变换形式,Box-Cox变换可以明显地改善数据的正态性、对称性和方差相等性,对许多实际数据都是行之有效的。

一个例子

对某百货公司连续十年的销售业绩进行线性拟合。其中Xi为年份,Yi为对应销售额。采用R语言进行分析:

导入数据:

#1.导入数据
mydata2 <- "
xi yi
0 98
1 135
2 162
3 178
4 221
5 232
6 283
7 300
8 374
9 385
"
mydata2 <- read.table(header=TRUE, text=mydata2)
head(mydata2)
attach(mydata2)   #使得mydata2中的xi,yi可以直接作为单独变量
head(xi)

绘制散点图观看大致走向:

#install.packages("ggplot2")     #下载ggplot2,仅第一需要
library(ggplot2)        #加载ggplot2包
ggplot(data=mydata2,aes(xi,yi))+
  geom_point(color="blue")+
  labs(title="3.17a ",
       x="year",y="annual sales")

在这里插入图片描述

进行Box-Cox变换

第一步:导入包(没有先安装)

#step1 read packages
#install.packages("MASS")  
library(MASS)   #基于此包进行box-cox转换
#install.packages("moments")
library(moments) #基于此包进行峰度偏度计算

第二步:构建模型并检验正态性

#step2 构建线性模型并检查是否满足正态分布
lm.sales1<-lm(yi~xi,data=mydata2)
res2<-lm.sales1$residual 
hist(res2)  #绘制残差频率分布图
#head(res2)
skewness(res2)  #计算偏度,结果:0.13
#通过残差频率分布图和偏度值可以发现残差并不满足正态分布

在这里插入图片描述
第三步:进行box-cox转换,确定lambda值

#step3 进行box-cox转换,确定λ值
b2=boxcox(yi~xi, data=mydata2) # 定义函数类型和数据
I=which(b2$y==max(b2$y))
b2$x[I]#lambda=0.55,即为图中最高点

第四步:检验转化效果

#step4 依据上一步box-cox转换的lambda值,带入模型
lm.sales2<-lm(yi^0.55~xi,data=mydata2)
hist(lm.sales2$residuals)
skewness(lm.sales2$residuals)
#此时的残差分布已经接近正态分布了

在这里插入图片描述
至此Box-Cox转换完成。


本文链接: http://www.dtmao.cc/news_show_700206.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?